用89S51單片機(jī)實(shí)現(xiàn)模擬信號(hào)和數(shù)字信號(hào)的轉(zhuǎn)換-2019年文檔_第1頁(yè)
用89S51單片機(jī)實(shí)現(xiàn)模擬信號(hào)和數(shù)字信號(hào)的轉(zhuǎn)換-2019年文檔_第2頁(yè)
用89S51單片機(jī)實(shí)現(xiàn)模擬信號(hào)和數(shù)字信號(hào)的轉(zhuǎn)換-2019年文檔_第3頁(yè)
用89S51單片機(jī)實(shí)現(xiàn)模擬信號(hào)和數(shù)字信號(hào)的轉(zhuǎn)換-2019年文檔_第4頁(yè)
用89S51單片機(jī)實(shí)現(xiàn)模擬信號(hào)和數(shù)字信號(hào)的轉(zhuǎn)換-2019年文檔_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余1頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、用8 9s 5 1單片機(jī)實(shí)現(xiàn)模擬信號(hào)和數(shù)字信號(hào)的轉(zhuǎn)換在現(xiàn)實(shí)生活中不少地方需要使用到模擬信號(hào)和數(shù)字信號(hào)之間的轉(zhuǎn)換,即A/D 轉(zhuǎn)換,本文中提出一種A/D 轉(zhuǎn)換方法,與其他方法相比占用較少的單片機(jī)資源,成本低,能耗也比較小,有很強(qiáng)的實(shí)用價(jià)值。其電路如圖一所示1 電路及硬件說(shuō)明在圖1電路需要一個(gè)穩(wěn)定電壓,該電壓由一個(gè)穩(wěn)壓源提供, 穩(wěn)壓源由電阻R1和N1 (TL431)組成,TL431是一是一個(gè)有良 好的熱穩(wěn)定性能的三端可調(diào)分流基準(zhǔn)源。它的輸出電壓用兩個(gè)電阻就可以任意地設(shè)置到從Vref(2.5V)至U 36V范圍內(nèi)的任何值,該器件的典型動(dòng)態(tài)阻抗為0.2歐姆, 可以等效位一個(gè)穩(wěn)壓二極管。TL431 的內(nèi)部

2、含有一個(gè)2.5V的基準(zhǔn)電壓,所以當(dāng)在RE嘲引入輸出反饋時(shí),器件可以通過(guò)從 陰極到陽(yáng)極很寬范圍的分流,控制輸出電壓。如圖2所示的電路中,當(dāng) R1和R2的阻值確定時(shí),兩者對(duì)Vo的分壓引入反饋,若 V o增大,反饋量增大,TL431的分流也就增加,從而又導(dǎo)致Vo 下降。顯見(jiàn),這個(gè)深度的負(fù)反饋電路必然在 VI 等于基準(zhǔn)電壓處穩(wěn)定,此時(shí)Vo=(1+R1/R2)Vref 。選擇不同的R1和R2的值可以得到從2.5V到36V范圍內(nèi)的任意電壓輸出,特別地,當(dāng)R1=R2時(shí),Vo=5M需要注意的是,在選擇電阻時(shí)必須保證TL431 工作的必要條件,就是通過(guò)陰極的電流要大于1mA。穩(wěn)壓源提供2.5V 的電壓, 作為

3、A/D 轉(zhuǎn)換比較基準(zhǔn)。電阻R2、三極管VI、二極管VD1、VD2和電阻R3構(gòu)成一個(gè)恒流源電路給電容器 C1 充電, C1 上的電壓以及電荷多少與恒流源的充電時(shí)間及電流大小成正比。MC74HC405為8選1模擬開(kāi)關(guān),其輸入通道由單片機(jī)控制來(lái)選擇。LM39掘一個(gè)低功率偏置電壓雙比較器,它具有 2 個(gè)獨(dú)立的高精密度電壓比較器,其偏置電壓可低至2.0mV。 使用單電源供電,供電壓寬。優(yōu)點(diǎn)是可減少溫度單的VOS漂移,不用雙電源供電,全部用一致的邏輯格式,而且適用于電池供電。當(dāng)C1 上的電壓由低到高上升到超過(guò)模擬開(kāi)關(guān)輸出電壓時(shí),其輸出端會(huì)從低電平轉(zhuǎn)變?yōu)楦唠娖?。P1.0、 P1.1 和 P1.2 是單片機(jī)的

4、3 個(gè) I/O 引腳,可以用普通的雙向I/O 口, P1.0 設(shè)置為輸入狀態(tài),用于檢測(cè)比較器輸出電平,P1.1 和 P1.2 設(shè)置為輸出狀態(tài),P1.1輸出高電平時(shí),三極管 V2導(dǎo)通,用于將電容器 C1上的電荷放空,P1.2 用于選擇模擬開(kāi)關(guān)的輸入通道。2 A/D 轉(zhuǎn)換過(guò)程首先讓單片機(jī)的I/O 口 P1.2 輸出低電平,設(shè)定一個(gè)基準(zhǔn)電壓,作為模擬開(kāi)關(guān)的輸入,P1.1輸出高電平,使三極管V2導(dǎo)通, 三極管V2導(dǎo)通以后,電容器C1處于放電狀態(tài),當(dāng)電容上的電量放完以后,我們使P1.1 的輸出電壓轉(zhuǎn)換成低電平,由于三極管V2的集電極變換成了低電平,V2截止,此時(shí)C1上的電容開(kāi)始重新充電,同時(shí)計(jì)數(shù)器開(kāi)始計(jì)

5、數(shù),當(dāng)C1 上的電壓不斷上升,并達(dá)到比較器輸入負(fù)端的電壓(此時(shí)為基準(zhǔn)電壓Vref )時(shí), 比較器的輸出端由低電平轉(zhuǎn)為高電平,并記錄下計(jì)數(shù)器的計(jì)數(shù)值,為T1。接著單片機(jī)的I/O 口 P1.2 輸出高電平,使模擬開(kāi)關(guān)選擇X1(被測(cè)電壓)作為輸入,P1.1輸出高電平,使三極管 V2導(dǎo)通,此時(shí)電容器C1 又開(kāi)始放電,并且一直把電量放完,然后使P1.1輸出低電平,使三極管 V2截止,V2截止以后C1上的電容被重新充電,同時(shí)計(jì)數(shù)器開(kāi)始計(jì)數(shù),當(dāng)C1 上的電壓不斷上升,并達(dá)到比較器輸入負(fù)端的電壓(此時(shí)為基準(zhǔn)電壓)時(shí),比較器的輸出端由低電平轉(zhuǎn)為高電平,此時(shí)記錄下計(jì)數(shù)器的計(jì)數(shù)值,為T2。由于 C1 是被恒流源充電

6、,因此 C1 上的電壓與充電時(shí)間成正比,即V=T* ko當(dāng)C1的容值與充電的恒流值不變時(shí),k是一個(gè)固定不變的常數(shù)。由此可以得到:Vref/T1=V1/T2 ,即 V1=Vref*T2/T1由于Vref是基準(zhǔn)電壓(2.5V),因此只要利用單片機(jī)的定時(shí)器測(cè)出T1和T2,就可以計(jì)算出被測(cè)電壓 V1的值。這樣,就把基準(zhǔn)電壓附近的模擬電平信號(hào)轉(zhuǎn)換成了1和0表示的數(shù)字信號(hào),當(dāng)然,1和0的信號(hào)也可以反轉(zhuǎn)成。和1 ,它們的時(shí)間長(zhǎng)短由 T1 和 T2 表示,這和模擬信號(hào)的高低電壓是一致的。但是A/D轉(zhuǎn)換的輸入電壓測(cè)量范圍為 0V至4.5V,當(dāng)C1被充電至大于4.5V時(shí),恒流源輸出將不再恒流,C1 上的電壓與時(shí)間

7、將不成正比,因此測(cè)量范圍只到4.5V。若要提高被測(cè)電壓范圍,可將輸入電壓通過(guò)電阻分壓后進(jìn)行測(cè)量,但其 A/D 轉(zhuǎn)換的誤差會(huì)受分壓電阻影響。另外圖中的8 選一模擬開(kāi)關(guān)只用到其中的2 路, 實(shí)際應(yīng)用中其它的 6 路也可使用,這樣 A/D 轉(zhuǎn)換的通道可擴(kuò)展到7 路, 因此在用 4個(gè) I/O 口情況下,可實(shí)現(xiàn) 3 路 A/D 轉(zhuǎn)換, 在用 5個(gè) I/O 口情況下,可實(shí)現(xiàn)7 路 A/D 轉(zhuǎn)換。3 誤差分析A/D 轉(zhuǎn)換的誤差主要由基準(zhǔn)電壓、定時(shí)器、比較器、和輸入的干擾信號(hào)等幾個(gè)方面決定,其中基準(zhǔn)電壓是造成A/D 轉(zhuǎn)換誤差的主要原因,如果使基準(zhǔn)電壓Vref 精度越高,則A/D 轉(zhuǎn)換誤差就越小,在Vref電壓

8、精度為1 %青況下,實(shí)際的A/D轉(zhuǎn)換誤差小于1 .8%。對(duì)基準(zhǔn)電壓Vref造成的誤差,只能通過(guò)提高電壓的精度來(lái)解決。如果定時(shí)器誤差較大,或單片機(jī)對(duì)比較器輸出端的電位變化反應(yīng)不靈敏,則測(cè)量到的T1 與 T2 值不準(zhǔn),也會(huì)導(dǎo)致測(cè)量誤差。對(duì)于定時(shí)器誤差,在單片機(jī)中可使P1.0 口采用帶電平變化中斷功能的 I/O 口,以提高反應(yīng)速度,同時(shí)減小恒流源的電流大小,或加大C1電容容量,可以增加T1、T2的測(cè)量時(shí)間,使計(jì)數(shù)值加大, 達(dá)到提高A/D 轉(zhuǎn)換精度的目的。但是減少恒流源的電流大小,或加大 C1 電容容量又會(huì)直接使A/D 轉(zhuǎn)換速度降低,這在本文后面會(huì)提到。3 比較器輸入端的失調(diào)電壓對(duì)A/D 轉(zhuǎn)換精度有一

9、定影響,但影響較小。選用靈敏度高的比較器可解決比較器輸入端導(dǎo)致的誤差問(wèn)題。4 運(yùn)算誤差:由于V1 值要經(jīng)過(guò)乘除法運(yùn)算后得到,在進(jìn)行運(yùn)算過(guò)程中如果數(shù)據(jù)處理不當(dāng),如余數(shù)處理不當(dāng),也會(huì)產(chǎn)生誤差。對(duì)運(yùn)算誤差,可以通過(guò)軟件上的改進(jìn)來(lái)解決。5 干擾誤差:當(dāng)輸入電壓不穩(wěn)時(shí),恒流源的輸出電流會(huì)有一定的影響,會(huì)產(chǎn)生干擾誤差。對(duì)于干擾造成的誤差,可對(duì)A/D 轉(zhuǎn)換值進(jìn)行數(shù)字濾波,如多次轉(zhuǎn)換求平均值等方法來(lái)解決。數(shù)字濾波消除誤差的方法很多,在此不再贅述。6如何提高A/D轉(zhuǎn)換速度:由于該轉(zhuǎn)換是通過(guò)恒流源對(duì)C1 電容充電后再進(jìn)行比較來(lái)完成的, C1 電容的充電過(guò)程需要一定的時(shí)間,因此其A/D 轉(zhuǎn)換速度取決于C1 的充電時(shí)

10、間,所以轉(zhuǎn)換速度有限。A/D 轉(zhuǎn)換速度也由恒流源的電流大小、C1 電容的大小、單片機(jī)的工作頻率等因素決定。其中恒流源的充電電流越大,C1 上的電壓上升速度就越快,到達(dá)被比較電壓的時(shí)間也就越短,轉(zhuǎn)換速度就越快。當(dāng)C1 電容容量越小時(shí),電壓上升速度就越快,到達(dá)被比較電壓的時(shí)間也會(huì)越短,轉(zhuǎn)換速度就越快。但由于計(jì)數(shù)值小,由定時(shí)器造成的測(cè)量誤差也有可能加大。由于 A/D 轉(zhuǎn)換值是經(jīng)過(guò)乘除運(yùn)算后完成的,因此單片機(jī)的運(yùn)算速度也會(huì)對(duì)A/D 轉(zhuǎn)換速度有影響,尤其當(dāng)計(jì)數(shù)器值為 16 位時(shí)。7 結(jié)束語(yǔ)綜上所述,A/D 轉(zhuǎn)換的速度可以通過(guò)提高單片機(jī)的工作頻率,增大恒流源的輸出電流,減小 C1 電容容值來(lái)加快A/D 轉(zhuǎn)換速

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論