<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > PIC單片機C語言程序設(shè)計(14)

          PIC單片機C語言程序設(shè)計(14)

          作者: 時間:2013-02-05 來源:網(wǎng)絡(luò) 收藏
            RA3 可接參考電壓。

            TRISA=0X07;

            ADCON0=0X81;// 打開通道0 作數(shù)據(jù)采樣

            PORTA=0XFF;

            ADRESH=0;

            ADRESL=0;// 轉(zhuǎn)換結(jié)果寄存器清零

            INTCON=0x00;// 關(guān)閉所有中斷

            GIE=1;// 打開總中斷

            PEIE=1;// 打開第一外圍中斷

            ADIE=1;// 打開AD 中斷

            ADIF=0;// 清除AD 中斷標(biāo)志位

            }

            以下是中斷服務(wù)函數(shù):

            void interrupt AD(void)

            {

            unsigned int ad_1=0;

            // 定義一個ad 轉(zhuǎn)換結(jié)果寄存器

            if(k16)

            {

            ADIF=0; // 清楚AD 標(biāo)志位

            ad_1=(ADRESH0X03)*256+ ADRESL;

            // 讀取AD 轉(zhuǎn)換結(jié)果

            ad_sum=ad_sum+ad_1;

            k++;

            if(k16)

            ADGO=1; // 啟動AD

            }

            if(k==16)

            {

            ad_1=ad_sum/16;

            if( b>16)

            {

            if(ad_1>ad_temp)

            ad_1=ad_1-ad_temp;

            else if(ad_1ad_temp)

            ad_1=ad_temp-ad_1;

            else if(ad_1==ad_temp)

            ad_1=0;

            AD_

            value=(float)(ad_1);

            }

            d=1;

            ad_sum=0;

            k=0;

            if(b32)

            {

            b++;

            ADGO=1;

            }

            if(b==15)

            ad_temp=ad_1;

            }

            }

            上述A/D 轉(zhuǎn)換的C 程序,初學(xué)時有些難度,但結(jié)合A/D 轉(zhuǎn)換相關(guān)的專用寄存器功能,也不難理解的,待下次連載15,筆者對A/D 轉(zhuǎn)換方法,還有一些說明的,讀者可以關(guān)注。


          上一頁 1 2 3 4 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();