版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、一、選題的背景和意義:隨著數(shù)字電子技術(shù)的迅速發(fā)展,用數(shù)字電路來(lái)處理模擬信號(hào)的情況更加普及。這就涉及到模擬信號(hào)與數(shù)字信號(hào)間的相互轉(zhuǎn)換:從模擬信號(hào)到數(shù)字信號(hào)的轉(zhuǎn)換稱模/數(shù)轉(zhuǎn)換(又稱A/D轉(zhuǎn)換),完成A/D轉(zhuǎn)換的電路稱A/D轉(zhuǎn)換器(簡(jiǎn)稱ADC); 從數(shù)字信號(hào)到模擬信號(hào)的轉(zhuǎn)換稱數(shù)/模轉(zhuǎn)換(又稱D/A轉(zhuǎn)換),完成D/A轉(zhuǎn)換的電路稱D/A轉(zhuǎn)換器(簡(jiǎn)稱DAC)。 二、課題研究的主要內(nèi)容:A/D轉(zhuǎn)換是將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)。轉(zhuǎn)換過(guò)程通過(guò)取樣、保持、量化和編碼四個(gè)步驟完成。通常取樣和保持是利用同一個(gè)電路連續(xù)過(guò)程進(jìn)行的,量化和編碼也是在轉(zhuǎn)換過(guò)程中同時(shí)實(shí)現(xiàn)。 模擬/數(shù)字(A/D)轉(zhuǎn)換一,逐次逼近式模/數(shù)(A/D)
2、轉(zhuǎn)換器原理二,逐次逼近A/D本組成三,典型模/數(shù)轉(zhuǎn)換器AT89C2051 三、本課題要研究或解決的問(wèn)題和擬采用的研究手段(途徑):?jiǎn)纹瑱C(jī)系統(tǒng): AT89C2051是一個(gè)低電壓,高性能CMOS 8位單片機(jī),片內(nèi)含2k bytes的可反復(fù)擦寫的只讀Flash程序存儲(chǔ)器和128 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲(chǔ)單元,功能強(qiáng)大AT89C2051單片機(jī)可為您提供許多高性價(jià)比的應(yīng)用場(chǎng)合。摘要 AT89C2051是一個(gè)功能強(qiáng)大的單片機(jī),它將AT89C51的P0口、P2口、EA
3、/Vcc、ALE/PROG、 口線簡(jiǎn)化后,形成的一種僅20個(gè)引腳的單片機(jī),相當(dāng)于INTEL8031的最小應(yīng)用系統(tǒng)。這對(duì)于一些不太復(fù)雜的控制場(chǎng)合,僅用一片AT89C2051就足夠了。由于將多功能的8位CPU和2KB閃速存儲(chǔ)器以及模擬電壓比較器集成到單個(gè)芯片上,從而成為一種多功能的微處理器,這為許多嵌入式控制提供了一種極佳的方案,使傳統(tǒng)的51系列單片機(jī)的體積大、功耗大、可選模式少等諸多困擾設(shè)計(jì)工程師們的致命弱點(diǎn)不復(fù)存在。 關(guān)鍵詞:AT89C2051 閃速存儲(chǔ)器 模擬電壓比較器 多功能的微處理器目 錄第一章 引言 21.1A/D轉(zhuǎn)換器 21.1.1 A/D轉(zhuǎn)換器的基本原理 21.1.2 A/D轉(zhuǎn)換器
4、的構(gòu)成 21.1.3 集成A/D轉(zhuǎn)換器及應(yīng)用 22.1器件和原理 22.1.1 AT89C2051為什么可以不需要外部的AD芯片? 22.1.2 AT89C2051的AD轉(zhuǎn)換是如何實(shí)現(xiàn)的? 23.1電路 23.1.1電路原理和器件選擇 23.1.2地址分配和連接 24.1逐次逼近式 24.1.1逐次逼近式模/數(shù)(A/D)轉(zhuǎn)換器原理 24.1.2逐次逼近式A/D轉(zhuǎn)換器基本組成 24.1.3典型模/數(shù)轉(zhuǎn)換器AT89C2051 24.1.3.1芯片簡(jiǎn)介 24.1.3.2 AT89C2051工作時(shí)序 24.1.3.3 AT89C2051與微處理器的連接 25.1程序設(shè)計(jì) 25.1.1程序功能 25.1
5、.2主要器件和變量的說(shuō)明 25.1.3程序代碼 2參考文獻(xiàn) 4附錄 A 4附錄 B 4致謝 4引言 AT89C2051是一個(gè)低電壓,高性能CMOS 8位單片機(jī),片內(nèi)含2k bytes的可反復(fù)擦寫的只讀Flash程序存儲(chǔ)器和128 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲(chǔ)單元,功能強(qiáng)大AT89C2051單片機(jī)可為您提供許多高性價(jià)比的應(yīng)用場(chǎng)合。 AT89C2051是一個(gè)功能強(qiáng)大的單片機(jī),但它只有20個(gè)引腳,15個(gè)雙向輸入/輸出(I/O)端口,其中P1是一個(gè)完整的8位雙向I/
6、O口,兩個(gè)外中斷口,兩個(gè)16位可編程定時(shí)計(jì)數(shù)器,兩個(gè)全雙向串行通信口,一個(gè)模擬比較放大器。 同時(shí)AT89C2051的時(shí)鐘頻率可以為零,即具備可用軟件設(shè)置的睡眠省電功能,系統(tǒng)的喚醒方式有RAM、定時(shí)/計(jì)數(shù)器、串行口和外中斷口,系統(tǒng)喚醒后即進(jìn)入繼續(xù)工作狀態(tài)。省電模式中,片內(nèi)RAM將被凍結(jié),時(shí)鐘停止振蕩,所有功能停止工作,直至系統(tǒng)被硬件復(fù)位方可繼續(xù)運(yùn)行。 1.1 A/D轉(zhuǎn)換器1.1.1, A/D轉(zhuǎn)換器的基本原理 模擬電子開關(guān)S在采樣脈沖CPS的控制下重復(fù)接通,斷開的過(guò)程.S接通時(shí),ui(t)對(duì)C充電,為采樣過(guò)程;S斷開時(shí),C上的電壓保持不變,為保持過(guò)程.在保持過(guò)程中,采樣的模擬電壓經(jīng)數(shù)字化編碼電路轉(zhuǎn)
7、換成一組n位的二進(jìn)制數(shù)輸出.t0時(shí)刻S閉合,CH被迅速充電,電路處于采樣階段.由于兩個(gè)放大器的增益都為1,因此這一階段uo跟隨ui變化,即uo=ui.t1時(shí)刻采樣階段結(jié)束,S斷開,電路處于保持階段.若A2的輸入阻抗為無(wú)窮大,S為理想開關(guān),則CH沒有放電回路,兩端保持充電時(shí)的最終電壓值不變,從而保證電路輸出端的電壓uo維持不變.(1)分辨率 A/D轉(zhuǎn)換器的分辨率用輸出二進(jìn)制數(shù)的位數(shù)表示,位數(shù)越多,誤差越小,轉(zhuǎn)換精度越高.例如,輸入模擬電壓的變化范圍為05V,輸出8位二進(jìn)制數(shù)可以分辨的最小模擬電壓為5V2-8=20mV;而輸出12位二進(jìn)制數(shù)可以分辨的最小模擬電壓為5V2-121.22mV.(2)相
8、對(duì)精度 在理想情況下,所有的轉(zhuǎn)換點(diǎn)應(yīng)當(dāng)在一條直線上.相對(duì)精度是指實(shí)際的各個(gè)轉(zhuǎn)換點(diǎn)偏離理想特性的誤差.(3)轉(zhuǎn)換速度 轉(zhuǎn)換速度是指完成一次轉(zhuǎn)換所需的時(shí)間.轉(zhuǎn)換時(shí)間是指從接到轉(zhuǎn)換控制信號(hào)開始,到輸出端得到穩(wěn)定的數(shù)字輸出信號(hào)所經(jīng)過(guò)的這段時(shí)間0uiVREF/14ui<3VREF/14時(shí),7個(gè)比較器中只有C1輸出為1,CP到來(lái)后,只有觸發(fā)器FF1置1,其余觸發(fā)器仍為0.經(jīng)編碼器編碼后輸出的二進(jìn)制代碼為d2d1d0=001.1.1.2, A/D轉(zhuǎn)換器的構(gòu)成 3VREF/14 ui<5VREF/14時(shí),比較器C1,C2輸出為1,CP到來(lái)后,觸發(fā)器FF1,FF2置1.經(jīng)編碼器編碼后輸出的二進(jìn)制代碼
9、為d2d1d0=010.5VREF/14uiuo,說(shuō)明數(shù)字過(guò)大了,故將最高位的1清除;若ui<UO,說(shuō)明數(shù)字還不夠大,應(yīng)將這一位保留.然后,再按同樣的方式將次高位置成1,并且經(jīng)過(guò)比較以后確定這個(gè)1是否應(yīng)該保留.這樣逐位比較下去,一直到最低位為止.比較完畢后,寄存器中的狀態(tài)就是所要求的數(shù)字量輸出.基本原理3位逐次逼近型A/D轉(zhuǎn)換器轉(zhuǎn)換開始前,先使Q1=Q2=Q3=Q4=0,Q5=1,第一個(gè)CP到來(lái)后,Q1=1,Q2=Q3=Q4=Q5=0,于是FFA被置1,FFB和FFC被置0.這時(shí)加到D/A轉(zhuǎn)換器輸入端的代碼為100,并在D/A轉(zhuǎn)換器的輸出端得到相應(yīng)的模擬電壓輸出uo.uo和ui在比較器中
10、比較,當(dāng)若ui第二個(gè)CP到來(lái)后,環(huán)形計(jì)數(shù)器右移一位,變成Q2=1,Q1=Q3=Q4=Q5=0,這時(shí)門G1打開,若原來(lái)uc=1,則FFA被置0,若原來(lái)uc=0,則FFA的1狀態(tài)保留.與此同時(shí),Q2的高電平將FFB置1.第三個(gè)CP到來(lái)后,環(huán)形計(jì)數(shù)器又右移一位,一方面將FFC置1,同時(shí)將門G2打開,并根據(jù)比較器的輸出決定FFB的1狀態(tài)是否應(yīng)該保留.第四個(gè)CP到來(lái)后,環(huán)形計(jì)數(shù)器Q4=1,Q1=Q2=Q3=Q5=0,門G3打開,根據(jù)比較器的輸出決定FFC的1狀態(tài)是否應(yīng)該保留.第五個(gè)CP到來(lái)后,環(huán)形計(jì)數(shù)器Q5=1,Q1=Q2=Q3=Q4=0,FFA,FFB,FFC的狀態(tài)作為轉(zhuǎn)換結(jié)果,通過(guò)門G6,G7,G8
11、送出.工作原理基本原理:對(duì)輸入模擬電壓和基準(zhǔn)電壓進(jìn)行兩次積分,先對(duì)輸入模擬電壓進(jìn)行積分,將其變換成與輸入模擬電壓成正比的時(shí)間間隔T1,再利用計(jì)數(shù)器測(cè)出此時(shí)間間隔,則計(jì)數(shù)器所計(jì)的數(shù)字量就正比于輸入的模擬電壓;接著對(duì)基準(zhǔn)電壓進(jìn)行同樣的處理.1.1.3, 集成A/D轉(zhuǎn)換器及應(yīng)用 A/D轉(zhuǎn)換器的功能是將輸入的模擬信號(hào)轉(zhuǎn)換成一組多位的二進(jìn)制數(shù)字輸出.不同的A/D轉(zhuǎn)換方式具有各自的特點(diǎn).并聯(lián)比較型A/D轉(zhuǎn)換器轉(zhuǎn)換速度快,主要缺點(diǎn)是要使用的比較器和觸發(fā)器很多,隨著分辨率的提高,所需元件數(shù)目按幾何級(jí)數(shù)增加.雙積分型A/D轉(zhuǎn)換器的性能比較穩(wěn)定,轉(zhuǎn)換精度高,具有很高的抗干擾能力,電路結(jié)構(gòu)簡(jiǎn)單,其缺點(diǎn)是工作速度較低
12、,在對(duì)轉(zhuǎn)換精度要求較高,而對(duì)轉(zhuǎn)換速度要求較低的場(chǎng)合,如數(shù)字萬(wàn)用表等檢測(cè)儀器中,得到了廣泛的應(yīng)用逐次逼近型A/D轉(zhuǎn)換器的分辨率較高,誤差較低,轉(zhuǎn)換速度較快,在一定程度上兼顧了以上兩種轉(zhuǎn)換器的優(yōu)點(diǎn),因此得到普遍應(yīng)用. 系統(tǒng)板上硬件連線1) 把“單片機(jī)系統(tǒng)板”區(qū)域中的P1端口的P1.0P1.7用8芯排線連接到“動(dòng)態(tài)數(shù)碼顯示”區(qū)域中的A B C D E F G H端口上,作為數(shù)碼管的筆段驅(qū)動(dòng)。(2) 把“單片機(jī)系統(tǒng)板”區(qū)域中的P2端口的P2.0P2.7用8芯排線連接到“動(dòng)態(tài)數(shù)碼顯示”區(qū)域中的S1 S2 S3 S4 S5 S6 S7 S8端口上,作為數(shù)碼管的位段選擇。(3) 把“單片機(jī)系統(tǒng)板”區(qū)域中的P
13、0端口的P0.0P0.7用8芯排線連接到“模數(shù)轉(zhuǎn)換模塊”區(qū)域中的D0D1D2D3D4D5D6D7端口上,A/D轉(zhuǎn)換完畢的數(shù)據(jù)輸入到單片機(jī)的P0端口(4) 把“模數(shù)轉(zhuǎn)換模塊”區(qū)域中的VREF端子用導(dǎo)線連接到“電源模塊”區(qū)域中的VCC端子上;(5) 把“模數(shù)轉(zhuǎn)換模塊”區(qū)域中的A2A1A0端子用導(dǎo)線連接到“單片機(jī)系統(tǒng)”區(qū)域中的P3.4P3.5P3.6端子上;(6) 把“模數(shù)轉(zhuǎn)換模塊”區(qū)域中的ST端子用導(dǎo)線連接到“單片機(jī)系統(tǒng)”區(qū)域中的P3.0端子上;(7) 把“模數(shù)轉(zhuǎn)換模塊”區(qū)域中的OE端子用導(dǎo)線連接到“單片機(jī)系統(tǒng)”區(qū)域中的P3.1端子上;(8) 把“模數(shù)轉(zhuǎn)換模塊”區(qū)域中的EOC端子用導(dǎo)線連接到“單片
14、機(jī)系統(tǒng)”區(qū)域中的P3.2端子上;(9) 把“模數(shù)轉(zhuǎn)換模塊”區(qū)域中的CLK端子用導(dǎo)線連接到“分頻模塊”區(qū)域中的/4端子上;(10) 把“分頻模塊”區(qū)域中的CK IN端子用導(dǎo)線連接到“單片機(jī)系統(tǒng)”區(qū)域中的ALE端子上;(11) 把“模數(shù)轉(zhuǎn)換模塊”區(qū)域中的IN3端子用導(dǎo)線連接到“三路可調(diào)壓模塊”區(qū)域中的VR1端子上;程序設(shè)計(jì)內(nèi)容(1) 進(jìn)行A/D轉(zhuǎn)換時(shí),采用查詢EOC的標(biāo)志信號(hào)來(lái)檢測(cè)A/D轉(zhuǎn)換是否完畢,若完畢則把數(shù)據(jù)通過(guò)P0端口讀入,經(jīng)過(guò)數(shù)據(jù)處理之后在數(shù)碼管上顯示。(2) 進(jìn)行A/D轉(zhuǎn)換之前,要啟動(dòng)轉(zhuǎn)換的方法:ABC110選擇第三通道ST0,ST1,ST0產(chǎn)生啟動(dòng)轉(zhuǎn)換的正脈沖信號(hào)匯編源程序CH EQ
15、U 30HDPCNT EQU 31HDPBUF EQU 33HGDATA EQU 32HST BIT P3.0OE BIT P3.1EOC BIT P3.2ORG 00HLJMP STARTORG 0BHLJMP T0XORG 30HSTART: MOV CH,#0BCHMOV DPCNT,#00HMOV R1,#DPCNTMOV R7,#5MOV A,#10MOV R0,#DPBUFLOP: MOV R0,AINC R0DJNZ R7,LOPMOV R0,#00HINC R0MOV R0,#00HINC R0MOV R0,#00HMOV TMOD,#01HMOV TH0,#(65536-40
16、00)/256MOV TL0,#(65536-4000) MOD 256SETB TR0SETB ET0SETB EAWT: CLR STSETB STCLR STWAIT: JNB EOC,WAITSETB OEMOV GDATA,P0CLR OEMOV A,GDATAMOV B,#100DIV ABMOV 33H,AMOV A,BMOV B,#10DIV ABMOV 34H,AMOV 35H,BSJMP WTT0X: NOPMOV TH0,#(65536-4000)/256MOV TL0,#(65536-4000) MOD 256MOV DPTR,#DPCDMOV A,DPCNTADD A
17、,#DPBUFMOV R0,AMOV A,R0MOVC A,A+DPTRMOV P1,AMOV DPTR,#DPBTMOV A,DPCNTMOVC A,A+DPTRMOV P2,AINC DPCNTMOV A,DPCNTCJNE A,#8,NEXTMOV DPCNT,#00HNEXT: RETIDPCD: DB 3FH,06H,5BH,4FH,66HDB 6DH,7DH,07H,7FH,6FH,00HDPBT: DB 0FEH,0FDH,0FBH,0F7HDB 0EFH,0DFH,0BFH,07FHEND 2.1 器件和原理2.1.1AT89C2051為什么可以不需要外部的AD芯片? AT89
18、C2051和89C51相比,除去掉了Po口和P2口,并在P1口的P1.0、P1.1與P3口的P3.6間嵌入了一個(gè)精確的模擬比較器外,其他硬件資源完全相同。 AT89C2051是ATMEL公司生產(chǎn)的帶2K字節(jié)閃速可編程可擦除只讀存儲(chǔ)器(EEPROM)的8位單片機(jī),它具有如下主要特性:·和MCS-51產(chǎn)品的兼容·2K字節(jié)可重編程閃速存儲(chǔ)器·耐久性:1,000寫擦除周期·2.7V6V的操作范圍·全靜態(tài)操作:0Hz24MHz·兩級(jí)加密程序存儲(chǔ)器·128×8位內(nèi)部RAM·15根可編程I/O引線·兩個(gè)16位
19、定時(shí)器/計(jì)數(shù)器·六個(gè)中斷源·可編程串行UART通道·直接LED驅(qū)動(dòng)輸出·片內(nèi)模擬比較器·低功耗空載和掉電方式 此外,AT89C2051設(shè)有靜態(tài)邏輯,可以在低到零頻率的條件下工作,支持兩種軟件可選的省電模式。 AT89C2051有20個(gè)引腳,AT89C2051的硬件引腳如圖1-1所示。從圖中可以看出,除了缺少89C51通用單片機(jī)的一些常用引腳外,AT89C2051的P1.0、P1.1與P3口的P3.6還被賦予了其他的功能,即含有模擬輸入和比較的功能,這就是我們?yōu)槭裁纯梢圆捎肁T89C2051而不需要外部AD芯片實(shí)現(xiàn)數(shù)據(jù)采集的關(guān)鍵。 圖1-1 AT
20、89C2051的引腳封裝 AT89C2051芯片的20個(gè)引腳功能為: 1). Vcc:電源電壓。 2). GND:地。 3). P1口:P1口是一8位雙向I/O口??谝_P1.2P1.7提供內(nèi)部上拉電阻。 P1.0和P1.1要求外部上拉電阻。P1.0和P1.1還分別作為片內(nèi)精密模擬比較器的同相輸入(AIN0)和反相輸入(AIN1)。P1口輸出緩沖器可吸收20mA電流并能直接驅(qū)動(dòng)LED顯示。當(dāng)P1口引腳寫入“1”時(shí),其可用作輸入端。當(dāng)引腳P1.2P1.7用作輸入并被外部拉低時(shí),它們將因內(nèi)部的上拉電阻而流出電流(IIL)。 P1口還在閃速編程和程序校驗(yàn)期間接收代碼數(shù)據(jù)。 4). P3口:P3口的P
21、3.0P3.5、P3.7是帶有內(nèi)部上拉電阻的七個(gè)雙向I/0引腳。P3.6用于固定輸入片內(nèi)比較器的輸出信號(hào)并且它作為一通用I/O引腳而不可訪問(wèn)。P3口緩沖器可吸收20mA電流。當(dāng)P3口引腳寫入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可用作輸入端。用作輸入時(shí),被外部拉低的P3口引腳將用上拉電阻而流出電流(IIL)。 P3口還用于實(shí)現(xiàn)AT89C2051的各種功能,如下表1-1所示。 表1-1 P3口的功能 P3口引腳 功能 P3.0 RXD(串行輸入端口) P3.1 TXD(串行輸出端口) P3.2 INT0(外中斷0) P3.3 INT1(外中斷1) P3.4 TO(定時(shí)器0外部輸入) P3.5 T1(
22、定時(shí)器1外部輸入) P3口還接收一些用于閃速存儲(chǔ)器編程和程序校驗(yàn)的控制信號(hào)。 5). RST:復(fù)位輸入。RST一旦變成高電平,所有的I/O引腳就復(fù)位到“1”。當(dāng)振蕩器正在運(yùn)行時(shí),持續(xù)給出RST引腳兩個(gè)機(jī)器周期的高電平便可完成復(fù)位。每一個(gè)機(jī)器周期需12個(gè)振蕩器或時(shí)鐘周期。 6). XTAL1:作為振蕩器反相放大器的輸入和內(nèi)部時(shí)鐘發(fā)生器的輸入。 7). XTAL2:作為振蕩器反相放大器的輸出。 從上述引腳說(shuō)明可看出,AT89C2051沒有提供外部擴(kuò)展存儲(chǔ)器與I/O設(shè)備所需的地址、數(shù)據(jù)、控制信號(hào),因此利用AT89C2051構(gòu)成的單片機(jī)應(yīng)用系統(tǒng)不能在AT89C2051之外擴(kuò)展存儲(chǔ)器或I/O設(shè)備,也即A
23、T89C2051本身即構(gòu)成了最小單片機(jī)系統(tǒng)。 可知,P1.0引腳與比較器的同相輸入端相接,P1.1與比較器的反相輸入端相接,比較器的輸出端在片內(nèi)與P3.6相接。而P3.6并無(wú)片外引腳,因此,AT89C2051的P1口有完整的8條片外引腳,而P3口只有7條IO線的片外引腳,可供片外使用的IO線為15條。 2.1.2AT89C2051的AD轉(zhuǎn)換是如何實(shí)現(xiàn)的? AT89C2051AD轉(zhuǎn)換電路如圖1-2所示,其AD轉(zhuǎn)換原理如下:比較器IC1的同相輸入端P1.0與P1.4之間接有電阻R0,而被測(cè)電壓是通過(guò)P1.1輸入至比較器IC1的反相端,這樣,當(dāng)被測(cè)電壓u從Pl輸入并開始測(cè)量時(shí),先使P1.4置低電位、
24、C4對(duì)地放電,使P1.0的電位為零。由于此時(shí)P1.1的電位高于P1.0的電位,因此,IC1的輸出端P3.6為低電位。圖1-2 AT89C2051A/D轉(zhuǎn)換電路進(jìn)入測(cè)量程序后,具體的轉(zhuǎn)換步驟如下。·先使P1.4為高電位,VCC就會(huì)通過(guò)R9、R10向C4充電,P1.0的電位就會(huì)隨時(shí)間按指數(shù)規(guī)律上升。·當(dāng)P1.0的電位上升至與P1.1的電位相同或稍高一點(diǎn)時(shí),IC1的輸出端P3.6會(huì)由低電位變?yōu)楦唠娢弧?#183;由此,我們可用程序控制C4充電的同時(shí),不間斷檢測(cè)P3.6的電位,當(dāng)P3.6電位發(fā)生高跳時(shí),就認(rèn)為P1.0的電壓與P1.1的電壓相等·由于C4的充電電壓是可以通過(guò)
25、充電時(shí)間的長(zhǎng)短來(lái)準(zhǔn)確計(jì)算的,所以,計(jì)算出C4的充電壓,也就間接地測(cè)出了被測(cè)電壓的值。 89C2051有很寬的工作電源電壓,可為2.76V,當(dāng)工作在3V時(shí),電流相當(dāng)于6V工作時(shí)的1/4。89C2051工作于12Hz時(shí),動(dòng)態(tài)電流為5.5mA,空閑態(tài)為1mA,掉電態(tài)僅為20nA。這樣小的功耗很適合于電池供電的小型控制系統(tǒng)。 89C2051片內(nèi)含有2k字節(jié)的Flash程序存儲(chǔ)器,128字節(jié)的片內(nèi)RAM,與80C31內(nèi)部完全類似。由于2051內(nèi)部設(shè)計(jì)全靜態(tài)工作,所以允許工作的時(shí)鐘為020MHz,也就是說(shuō),允許在低速工作時(shí),不破壞RAM內(nèi)容。相比之下,一般8031對(duì)最低工作時(shí)鐘限制為3.5MHz,因?yàn)槠鋬?nèi)
26、部的RAM是動(dòng)態(tài)刷新的。89C2051不允許構(gòu)造外部總線來(lái)擴(kuò)充程序/數(shù)據(jù)存儲(chǔ)器,所以它也不需要ALEPSEN、RD、WR一類的引腳。 89C2051在內(nèi)部I/O控制上繼承了MCS51的特性: 5路2級(jí)優(yōu)待中斷,串等口,2路定時(shí)器/計(jì)數(shù)器,內(nèi)部組成參見圖4。 89C2051設(shè)計(jì)有2個(gè)程序保密位,保密位1被編程之后,程序存儲(chǔ)器不能再被編程除非做一次擦除,保密位2被編程之后,程序不能被讀出。3.1 電路 由于不需要外部的AD芯片,所以本例的電路非常簡(jiǎn)單,只需要最簡(jiǎn)單的單片機(jī)系統(tǒng),而輸入的信號(hào)只需要接入規(guī)定的引腳就可以了。具體的電路如圖1-3所示。3.1.1電路原理和器件選擇在這里列出和本例相關(guān)的、關(guān)
27、鍵部分的器件名稱及其在電路中的主要功能。·89C2051:?jiǎn)纹瑱C(jī),進(jìn)行數(shù)據(jù)采集和轉(zhuǎn)換的工作。·WU1:12MHz的晶振。·SW-PB:復(fù)位開關(guān)。3.1.2地址分配和連接只列出和本例相關(guān)的、關(guān)鍵部分的單片機(jī)與各個(gè)模塊管腳的連接和相關(guān)的地址分配。·P1.0:模擬量輸入。·P1.1:DA輸入比較基準(zhǔn)電壓。·P3.7:LED的顯示輸出。·XTAL1:晶振的引腳1。·XTAL2:晶振的引腳2。·U1:外部的信號(hào)輸入。·U2:比較電壓輸入。 GND 圖1-3轉(zhuǎn)換電路示意圖4.1 逐次逼近式4.1.1、逐次逼
28、近式模/數(shù)(A/D)轉(zhuǎn)換器原理 實(shí)現(xiàn)A/D轉(zhuǎn)換的方法有多種,而逐次逼近式A/D轉(zhuǎn)換具有速度快,分辨率高等優(yōu)點(diǎn)獲得了廣泛的應(yīng)用。這種A/D轉(zhuǎn)換器的比較過(guò)程與天平的稱重的過(guò)程相似。若一臺(tái)天平具有32克、16克、 8克、 4克、 2克和1克等6種砝碼,需要稱量的物體重量為27.4克。稱量從最重的砝 M=D5*32+D4*16+D3*8+D2*4+D1*2+D0*1=27(克)4.1.2、逐次逼近式A/D轉(zhuǎn)換器基本組成控制邏輯(SAR):移位寄存器、數(shù)據(jù)寄存器、時(shí)序電路及去留碼邏輯電路;DAC:產(chǎn)生電子砝碼;比較器:對(duì)輸入電壓與電子砝碼進(jìn)行比較,并由控制邏輯決定該砝碼的去留。設(shè)轉(zhuǎn)換器的位數(shù)n=4,相應(yīng)
29、的電子砝碼分別為2.5V、1.25V、0.625V、0.3125V。Vi=3V,則轉(zhuǎn)換過(guò)程及結(jié)果如表所示。4.1.3、典型模/數(shù)轉(zhuǎn)換器AT89C20514.1.3.1. 芯片簡(jiǎn)介主要功能分辨率:8位轉(zhuǎn)換誤差:±1/2LSB±1LSB轉(zhuǎn)換時(shí)間:100 S時(shí)鐘頻率:640KHZ測(cè)量路數(shù):8路輸出:三態(tài)緩沖單一5V供電,對(duì)應(yīng)輸入模擬電壓范圍3V至6V4.1.3.2. AT89C2051工作時(shí)序選擇當(dāng)前轉(zhuǎn)換的通道,即將通道編碼送地址鎖存器;通過(guò)執(zhí)行OUT指令在START,ALE上產(chǎn)生一個(gè)正脈沖,鎖存通道編碼并啟動(dòng)A/D;A/D轉(zhuǎn)換開始后,EOC變低,經(jīng)過(guò)64個(gè)時(shí)鐘周期后,轉(zhuǎn)換結(jié)束,
30、EOC變高;轉(zhuǎn)換結(jié)束后,通過(guò)執(zhí)行IN指令設(shè)法在OE腳上產(chǎn)生一個(gè)正脈沖,打開輸出緩沖器的三態(tài)門讀入轉(zhuǎn)換數(shù)據(jù)。4.1.3.3.AT89C2051與微處理器的連接 直接連接AT89C2051具有三態(tài)輸出緩沖器,可以與CPU直接連接。若地址譯碼器的輸出Y1的地址為84H87H,則采用無(wú)條件傳送方式從輸入通道IN7讀入一個(gè)模擬量的程序?yàn)椋篗OV AL,07HOUT 84H,ALCALL DELAY120IN AL,84H若采用中斷方式,可用AT89C2051的EOC輸出端作為CPU的中斷申請(qǐng)信號(hào),在中斷服務(wù)程序中讀入轉(zhuǎn)換后的數(shù)據(jù)。 通過(guò)并行接口芯片同CPU連接問(wèn)題:用一片8255A并行接口芯片控制AT8
31、9C2051的轉(zhuǎn)換過(guò)程;分析:8255A有三個(gè)8位的并行口,可用PB口輸出0809的通道選擇編碼和控制ADC的啟動(dòng),PC口輸入ADC的狀態(tài)。 PA口作為他用,實(shí)現(xiàn):首先完成CPU與8255的連接,然后根據(jù)分析完成ADC與8255的連接Y0地址為80H83HY1 地址為84H87H例:對(duì)AT89C2051的IN0至IN7巡回進(jìn)行采樣一次,并將采樣的數(shù)據(jù)存放在以DATA開始的內(nèi)存單元中。第一步:程序初始化第二步:輸出通道號(hào)啟動(dòng)ADC第三步:判ADC轉(zhuǎn)換結(jié)束否?結(jié)束則讀入數(shù)據(jù),存入內(nèi)存。否則再判第四步:修改循環(huán)變量判測(cè)量完否?MOV AL,98H ; 8255方式0,PA口輸入,OUT 83H,AL
32、 ; PB口輸出,PC口高四位輸入MOV SI,OFFSET DATA ; 置內(nèi)存首址MOV AX,0H ; 開關(guān)初始編碼MOV CX,8AGA:MOV AL,AH ; 輸出開關(guān)編碼 OUT 81H,AL ADD AL,10H ; 啟動(dòng)ADC OUT 81H,AL SUB AL,10H OUT 81H,ALLOP: IN AL,82H ; 檢查EOC TEST AL,80H JZ LOP ; EOC=0,繼續(xù)查詢 IN AL,84H ; EOC=1,讀入數(shù)據(jù) MOV SI,AL ; 存入內(nèi)存INC SI ; 修改指針I(yè)NC AH ; 修改開關(guān)編碼LOOP AGA ; 5.1
33、 程序設(shè)計(jì)5.1.1程序功能該程序的功能是查詢當(dāng)前的AD轉(zhuǎn)換是否完成,并且完成對(duì)AD轉(zhuǎn)換后的數(shù)據(jù)的讀取。5.1.2主要器件和變量的說(shuō)明程序中的變量及功能如表1-2所示。表1-2 變量及功能 變量 說(shuō)明 P1.0 模擬量輸入 P1.1 DA輸入比較基準(zhǔn)電壓 P36 比較器內(nèi)部判斷腳 adcdata ad轉(zhuǎn)換變量 Delay() 延時(shí)程序 adcread(void) adc轉(zhuǎn)換程序 5.1.3程序代碼 由于沒有片外的器件,在程序編制時(shí),也較為簡(jiǎn)單。在主程序中定義函數(shù)和變摹,并通過(guò)延時(shí)程序完成對(duì)外部信號(hào)AD采樣的時(shí)間控制。單片機(jī)進(jìn)行AD轉(zhuǎn)換的源程序流程圖如圖1-4所示,代碼如下。圖1-4 單片機(jī)A/D轉(zhuǎn)換程序流程圖 #include<reg52.h>#include<absacc.h>#include<stdio.h>#include<math.h>#define
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026上半年云南事業(yè)單位聯(lián)考省藥品監(jiān)督管理局所屬事業(yè)單位招聘5人筆試模擬試題及答案解析
- 2026四川成都航空有限公司飛行員招聘筆試備考題庫(kù)及答案解析
- 2026年上半年齊齊哈爾大學(xué)公開招聘碩士工作人員27人筆試模擬試題及答案解析
- 2026上半年云南事業(yè)單位聯(lián)考曲靖市師宗縣遴選24人(含遴選計(jì)劃)筆試備考試題及答案解析
- 2026年笙和音協(xié)調(diào)訓(xùn)練課程
- 2026上半年安徽事業(yè)單位聯(lián)考五河縣招聘20人筆試模擬試題及答案解析
- 2026中交天津航道局有限公司疏浚技術(shù)與裝備研發(fā)中心系統(tǒng)集成崗招聘筆試模擬試題及答案解析
- 2026寧夏國(guó)運(yùn)煤業(yè)有限公司社會(huì)招聘9人筆試備考試題及答案解析
- 2026浙江省財(cái)開集團(tuán)有限公司社會(huì)招聘筆試參考題庫(kù)及答案解析
- 2026年熱老化對(duì)材料性能的影響
- 醫(yī)院物資采購(gòu)管理流程及規(guī)范
- 風(fēng)電場(chǎng)運(yùn)維安全責(zé)任書2025年版
- 浙江省杭州市上城區(qū)2024-2025學(xué)年七年級(jí)上學(xué)期語(yǔ)文1月期末試卷(含答案)
- 【普通高中地理課程標(biāo)準(zhǔn)】日常修訂版-(2017年版2025年修訂)
- 2025年招待員考試試題及答案
- 集成電路公司介紹
- 2025年CFA二級(jí)公司金融真題匯編試卷(含答案)
- 《健康體檢質(zhì)量控制規(guī)范》
- 單純皰疹課件
- 道路建設(shè)工程設(shè)計(jì)合同協(xié)議書范本
- 2025年安徽阜陽(yáng)市人民醫(yī)院校園招聘42人筆試模擬試題參考答案詳解
評(píng)論
0/150
提交評(píng)論