音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊(cè) 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場(chǎng)網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

各位高手達(dá)人救命,看看我的AD7705

作者:jiangnansh 欄目:單片機(jī)
各位高手達(dá)人救命,看看我的AD7705


各位高手達(dá)人救命,看看我的AD7705

補(bǔ)充:就是AD7705調(diào)不出來,INT0中斷一直不出現(xiàn)

/*********************************聲明*********************************************************/

各位高手請(qǐng)救命啊!本人目前正被人陷害,老總現(xiàn)在已經(jīng)認(rèn)為我只回書本知識(shí),
什么都不回做,跟我擺明了說過年之前不能完成項(xiàng)目或調(diào)試出全部功能就淘汰我,
過了年就不用來上班了。我是第一次做這么復(fù)雜的程序,現(xiàn)在液晶,模擬量輸出
和PWM芯片調(diào)制,大電流輸出控制都已經(jīng)調(diào)出來了,就是AD7705調(diào)不出來
,INT0中斷一直不出現(xiàn)
麻煩各位看看怎么會(huì)事?
以上決非虛構(gòu),我以人格擔(dān)保!
/***********************************************************************************************/

/******************************使用環(huán)境*****************************************************/

AD7705用來測(cè)兩路雙極性模擬量,CS接0V,RESET接5V,REF+接2.7V,REF-
接0V,GND接0V,VDD接5V.DRDY接INT0中斷引腳
轉(zhuǎn)換后數(shù)據(jù)為int型。

以下為示意程序,其中還牽涉到端口復(fù)用,已略去

如有消息,請(qǐng)與我聯(lián)系,我的郵箱:jiangnanshanshang@yahoo.com.cn
手機(jī):13814275710
/**********************************************************************************************/




/*******************************AD7705****************************************************/

void ADC_Init(void)
{
     void ADC_Write(UCHAR tempdata);

     unsigned CHAR   i;

        ADC_CLK=1;
                  ADC_DIN=1;
           
        for (i=0;i<40;i++)                                         // AD7705復(fù)位
        {
            ADC_CLK=0;
            ADC_CLK=1;
        }                  



        ADC_Write(0x20);   // 通道1,下一個(gè)寫時(shí)鐘寄存器
        ADC_Write(0x14);//(0x04);   // 寫時(shí)鐘寄存器設(shè)置更新速率為50Hz?    //主時(shí)鐘需要禁止嗎
        ADC_Write(0x10);   // 通道1,下一個(gè)寫設(shè)置寄存器
        ADC_Write(0x42);   // 寫設(shè)置寄存器,設(shè)置成自校準(zhǔn)、增益為1、雙極性、有緩沖、濾波器工作(正常,不工

作不正常)
        //ADC_Write(0x00);   // 寫設(shè)置寄存器,設(shè)置成  正常、增益為1、雙極性、無緩沖、濾波器工作(正常,不工

作不正常)

        delayX10ms(5);          //還有通道2

        ADC_Write(0x21);   // 通道2,下一個(gè)寫時(shí)鐘寄存器
        ADC_Write(0x14);//(0x04);   // 寫時(shí)鐘寄存器設(shè)置更新速率為50Hz    //主時(shí)鐘需要禁止嗎
        ADC_Write(0x11);   // 通道2,下一個(gè)寫設(shè)置寄存器
        ADC_Write(0x42);   // 寫設(shè)置寄存器,設(shè)置成自校準(zhǔn)、增益為1、雙極性、有緩沖、濾波器工作(正常,不工

作不正常)
        //ADC_Write(0x00);   // 寫設(shè)置寄存器,設(shè)置成  正常、增益為1、雙極性、無緩沖、濾波器工作(正常,不工

作不正常)

        delayX10ms(5);          //還有通道2
        
}
//*****************************************************/
void ADC_Write(UCHAR tempdata)                  //寫入8位
{                                             
    unsigned CHAR      i;
    unsigned CHAR      adbyte;
    unsigned CHAR      adtemp;
    
    ADC_CLK=1;
    adtemp=0x80;
    adbyte=tempdata;
    for(i=0;i<8;i++)
    {
    
       if (adbyte&adtemp)
           ADC_DIN=1 ;              
       else
          ADC_DIN=0 ;


        ADC_CLK=1;
        
        ADC_CLK=0;

        ADC_CLK=1;

        adtemp=adtemp>>1;

    }
    ADC_CLK=1;
    ADC_DIN=1;                        //結(jié)束

}
//*************************************************/
int ADC_Read(unsigned CHAR channel)    //讀出16位
{                                     

    int    adword;

    unsigned CHAR   i;                                      //注意數(shù)據(jù)的先后次序轉(zhuǎn)換。

    ADC_Write(0x38|channel);            //設(shè)置讀當(dāng)前通道數(shù)據(jù)
                                                             //chanel      0 0    1+ 1-;
                                                             //  
2樓: >>參與討論
netscaner
告訴你對(duì)不起自己,不告訴你又……
你液晶,模擬量輸出和PWM芯片調(diào)制,大電流輸出控制都已經(jīng)調(diào)出來了,應(yīng)該過年前就能調(diào)出來AD7705了。我剛學(xué)單片機(jī)沒多久就做了用AD7705的數(shù)模采集卡,用了大概一個(gè)月。以你的水平,肯定不用到過年啦。

提示你幾點(diǎn):1、好好看數(shù)據(jù)手冊(cè)。2、每次讀寫寄存器要復(fù)位串口,需要32個(gè)連續(xù)時(shí)鐘周期的邏輯“1”的寫操作,以保證串行接口回到已知狀態(tài)。3、注意檢查硬件電路,一不小心,7705的模擬電路部分就廢了。7705數(shù)字電路部分必須比模擬電路部分先上電,晶振也不要用錯(cuò)哦。
好好看看ad公司的數(shù)據(jù)手冊(cè)、應(yīng)用示例和評(píng)估板的資料吧。
用google好好搜搜。你的代碼還有什么錯(cuò)誤我就不看了,好好和數(shù)據(jù)手冊(cè)上的流程對(duì)照一下,相信你自己,過年前肯定能搞定。

3樓: >>參與討論
laoshan
耐心點(diǎn),很好調(diào)的!
主要是耐心 和 恒心!

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
做軟件的怎樣向硬件轉(zhuǎn)行?
根據(jù)環(huán)境光強(qiáng)自動(dòng)調(diào)節(jié)的數(shù)碼管亮度一般如何實(shí)現(xiàn)?
戶外的超大顯示屏幕的顯示材料是什么?
什么情況下用c什么情況下用匯編?
我的光電隔離轉(zhuǎn)換電路 大家給個(gè)意見 6N137
免費(fèi)注冊(cè)為維庫電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào)