在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 從零開始學(xué)單片機(五)A/D轉(zhuǎn)化

            從零開始學(xué)單片機(五)A/D轉(zhuǎn)化

            作者: 時間:2016-11-22 來源:網(wǎng)絡(luò) 收藏
            所謂A/D轉(zhuǎn)換器就是模擬/數(shù)字轉(zhuǎn)換器(Analog to Digital Converter 簡稱ADC)是將輸入的模擬信號轉(zhuǎn)換成為數(shù)字信號。這里我們用ADC0804做這個試驗,下面的圖示它的引腳圖。

            /CS:芯片選擇信號。
            VREF:輔助參考電壓。
            /WR:用來啟動轉(zhuǎn)換的控制,當(dāng)/WR自1變?yōu)?時,轉(zhuǎn)換器被清除;當(dāng)/WR回到1時,轉(zhuǎn)換正式啟動。
            /RD:外部讀取轉(zhuǎn)換結(jié)果的控制腳輸出信號。
            /INTR:中斷請求信號輸出,低電平動。
            AGND,DGND:模擬信號以及數(shù)字信號接地。
            CLK IN,CLK R:時鐘輸入或接振蕩元件(R,C),頻率約限制在100KHz~1460KHz。
            VIN(+),VIN(-):差動模擬電壓輸入。輸入單端正電壓時,VIN(-)接地。
            DB0~DB7:8位數(shù)字輸出。
            ADC0804電壓輸入與數(shù)字輸出關(guān)系如表所示


            十六進(jìn)制

            二進(jìn)制碼
            與滿刻度的比率相對電應(yīng)值VREF=2.560伏
            高四位字節(jié)低四位字節(jié)高四位字節(jié)電壓低四位字節(jié)電壓
            F111115/1615/2564.8000.300
            E111014/1614/2564.4800.280
            D110113/1613/2564.1600.260
            C110012/1612/2563.8400.240
            B101111/1611/2563.5200.220
            A101010/1610/2563.2000.200
            910019/169/2562.8800.180
            810008/168/2562.5600.160
            701117/167/2562.2400.140
            601106/166/2561.9200.120
            501015/165/2561.6000.100
            401004/164/2561.2800.080
            300113/163/2560.9600.060
            200102/162/2560.6400.040
            100011/161/2560.3200.020
            0000000

            接下來看看實驗電路的原理圖

            片選CS接P2.4,RD接P3.7,WR接P3.6,為了簡單起見INTR沒有使用它
            AD芯片的VIN(+)接一個可調(diào)電阻,改變阻值能夠帶來不同的電壓,以此作為輸入。
            寫程序前還得看看時序圖

            不同的電阻值顯示0-255不同大小的值,延時時間略長,有點閃爍
            #include
            #include
            sbit ADCS = P2^4; //ADC0804片選信號,低電平有效
            sbit ADWR = P3^6; //ADC0804寫信號,低電平有效
            sbit ADRD = P3^7; //ADC0804讀信號,低電平有效
            unsigned char code_table[]=
            {
            0x3f,0x06,0x5b,0x4f,
            0x66,0x6d,0x7d,0x07,
            0x7f,0x6f,0x77,0x7c,
            0x39,0x5e,0x79,0x71,0
            };
            sbit Led8En = P2^6; //數(shù)碼管,鎖存器使能信號,高電平有效 ,數(shù)碼管輸出P0
            sbit Led8CS = P2^7; //數(shù)碼管片選,鎖存器使能信號,電平有效,低電平選中
            void delay(unsigned int times);
            void dlight(unsigned char i, unsigned char number, unsigned int duration);
            void ADC0804();
            void main()
            {
            while(1)
            {
            ADC0804();
            delay(100);
            }
            }
            void delay(unsigned int times)
            {
            unsigned int i,j;
            for (i=0; i
            for (j=0; j<125; j++)
            _nop_();
            }
            void ADC0804()
            {
            unsigned char temp;
            ADCS = 0;
            ADWR = 0;
            delay(1);
            ADWR = 1;
            ADCS = 1;
            delay(10);
            ADCS = 0;
            ADRD = 0;
            _nop_();
            temp = P1;
            ADRD = 1;
            ADCS = 1;
            dlight(0xEE,code_table[temp % 10],1);
            dlight(0xDD,code_table[temp / 100],1);
            dlight(0xBB,code_table[(temp/10 )% 10],1);
            }
            void dlight(unsigned char cs, unsigned char display, unsigned int duration)
            {
            Led8CS = 1;
            P0=cs; //片選
            Led8CS = 0;
            Led??8En = 1;
            P0=display; //. a b c d e f g, 高電平亮
            Led8En = 0;
            delay(duration);
            }


            關(guān)鍵詞: 單片機AD轉(zhuǎn)

            評論


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

            關(guān)閉