當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀]一般來說,內(nèi)部帶A/D轉(zhuǎn)換器的單片機價格都比較昂貴,而且一般只有8到10位的分辨率,這在高分辨率要求的場合顯然不適用;而普通的單片機則根本沒有 A/D轉(zhuǎn)換器。隨著現(xiàn)代電子技術(shù)的發(fā)展,出現(xiàn)了一些體積小、內(nèi)含模擬

一般來說,內(nèi)部帶A/D轉(zhuǎn)換器的單片機價格都比較昂貴,而且一般只有8到10位的分辨率,這在高分辨率要求的場合顯然不適用;而普通的單片機則根本沒有 A/D轉(zhuǎn)換器。隨著現(xiàn)代電子技術(shù)的發(fā)展,出現(xiàn)了一些體積小、內(nèi)含模擬比較器的單片機,如ATMAL的AT89C2051、ZILOG的Z86E04、 MICROCHIP的PIC16C620等,這些單片機在使用時連接比較器的端口一般只作普通I/O使用,而對其內(nèi)置的模擬比較器的應(yīng)用卻很少。下面以 AT89C2051為例,談?wù)劺脝纹瑱C內(nèi)置模擬比較器來構(gòu)成A/D轉(zhuǎn)換器的新方法。

1 硬件轉(zhuǎn)換電路

AT89C2051 是MCS51單片機系列中的一種,它雖然只有20個引腳,卻集成了51系列單片機的標(biāo)準(zhǔn)內(nèi)核,其中包括2k程序存儲器、128字節(jié)數(shù)據(jù)存儲器、2個16位定時計數(shù)器、一個標(biāo)準(zhǔn)全雙工UART和一個精確的模擬比較器,而這個模擬比較器是以前產(chǎn)品所沒有的。圖1是利用AT89C2051的模擬比較器來構(gòu)成雙積分式A/D轉(zhuǎn)換器的電路原理圖。其中:內(nèi)置模擬比較器的結(jié)構(gòu)如圖中虛線包圍部分所示,比較器的正、反相輸入端分別與P1.0、P1.1連接,這是兩個漏極開路無上拉電阻的輸出和輸入端口,當(dāng)向P1.0、P1.1寫“1”時,M1、M2截止,相當(dāng)于P1.0、P1.1對數(shù)字部分懸空,這時比較器的輸入不受單片機端口輸出的影響;由于P1.0、P1.1具有很強的灌電流能力,當(dāng)寫入“0”時,P1.0、P1.1能吸入20mA的灌電流,而且M1、M2的飽和電壓很低,利用這一特點可為積分電容徹底放電。比較器輸出端在單片機內(nèi)部與P3.6連接,讀P3.6就可得到比較器的輸出結(jié)果。因此,利用 AT89C2051這個內(nèi)置的比較器,再加上少量的外圍器件就可組成雙積分式A/D轉(zhuǎn)換器。圖1中,I0為恒流源,其電流約為0.5~2mA,Cf是積分電容,Cf與I0的選擇取決于A/D轉(zhuǎn)換的位數(shù),Vref為參考電壓,一般取模擬輸入電壓最大值的一半,U2是一個模擬開關(guān),其中通道0接參考電壓,通道1至7接模擬輸入,即該A/D轉(zhuǎn)換器有7個輸入通道。

2 轉(zhuǎn)換過程

當(dāng)恒流源對電容器積分時,積分電容上的電壓與時間成線性比例關(guān)系,這樣利用單片機內(nèi)部的定時計數(shù)器就可分別測量參考電壓及模擬輸入電壓的積分時間,再通過 CPU的運算來得到轉(zhuǎn)換的結(jié)果。單片機的端口P1.2至P1.4可用來輸出模擬開關(guān)通道選擇地址,定時計數(shù)器T0可設(shè)定為方式1,16 位定時狀態(tài),用來測定積分時間。該轉(zhuǎn)換過程可分5個步驟:

第一步為積分電容的放電,主要是向P1.1寫“0”,利用其吸入灌電流大的特點為Cf放電,同時定時計數(shù)器T0清零。

第二步是參考電壓積分,即模擬開關(guān)選擇通道0,相當(dāng)于Vref接至比較器的正輸入端,并向P1.1寫“1”,同時啟動定時計數(shù)器,這樣,I0開始對Cf積分;程序循環(huán)讀P3.6狀態(tài),以檢測比較器的輸出結(jié)果,當(dāng)積分電容上的積分電壓稍大于(由于比較器有極高的增益,故可近似地看作等于)參考電壓時,比較器的輸出反轉(zhuǎn),P3.6發(fā)生由高至低的跳變。程序檢測到這個跳變后,停止定時計數(shù)器,保存此時的定時計數(shù)器結(jié)果Tref,此時可由恒流源對電容積分的關(guān)系式得出:Vref=(I0 Tref)/Cf

第三步為積分電容放電,也就是重復(fù)第一步對Cf放電和定時計數(shù)器T0清零。

第四步為輸入電壓積分,此時模擬開關(guān)可選擇通道1~7中的一個,相當(dāng)于模擬輸入電壓Vx接至比較器的正輸入端,重復(fù)第二步對輸入電壓積分,則可得到積分時間Tx,因此,Vx=(I0Tx)/Cf

以上4步積分電容Cf上的積分電壓波形如圖2所示。

第五步是通過CPU的運算來求得A/D轉(zhuǎn)換的結(jié)果,由第二步結(jié)果除以第四步結(jié)果,可以得到:
    Vref/Vx=Tref/Tx

變換后得:
    Vx=(VrefTx)/Tref

上式即A/D轉(zhuǎn)換的結(jié)果。

從上式可以看出:A/D轉(zhuǎn)換結(jié)果Vx只與Vref、Tx、Tref有關(guān)而與I0、Cf無關(guān)。這一點非常重要。因為它意味著在轉(zhuǎn)換過程中抑制了恒流源和積分電容溫漂所造成的誤差,從而保證了該A/D轉(zhuǎn)換器工作的穩(wěn)定性,這也正是積分式A/D轉(zhuǎn)換器的優(yōu)點。理論上,該A/D轉(zhuǎn)換器的精度只取決于參考電壓的穩(wěn)定性和單片機定時計數(shù)器的精確度,而這兩點都相對比較容易保證。當(dāng)然,這是指在恒流源為理想恒流源的情況,實際上恒流源的特性決定了該A/D轉(zhuǎn)換器的非線性誤差,因此,在要求較高的場合,應(yīng)選用線性好的恒流源集成電路,如LM334等,而在要求不高的情況下則可用圖3所示的由分立元件組成的恒流源電路來實現(xiàn)A/D轉(zhuǎn)換。這時積分電容可選擇溫度系數(shù)較小的滌綸電容等。

需要注意的是,由于單片機采用端口查詢的方式來檢測比較器的輸出結(jié)果,MCS51系列單片機端口查詢命令需要占用2個機器周期,而定時計數(shù)器則需要在每個機器周期上加1。因此,在使用時有可能在比較器的輸出反轉(zhuǎn)時,程序不能立刻停止定時計數(shù)器,而是要等到下一個機器周期運行到CLRTR0語句時才停止。這樣,定時計數(shù)器的值總為偶數(shù),這一問題如果不在程序中進行處理就會造成誤差。解決的方法是增加I0、Cf的積分時間,即把積分時間加大一倍,再把定時計數(shù)器的讀數(shù)即Tref和Tx除以2,這樣就能把定時計數(shù)器多加了1的誤差去掉而得到正確的結(jié)果。也就是說,如果要得到12位的分辨率,那么就需要有13位的定時計數(shù)器的讀數(shù)。這種算法雖然犧牲了定時計數(shù)器的1位分辨率,加長了轉(zhuǎn)換周期,但是確保了測量結(jié)果的準(zhǔn)確性。對于有模擬比較器輸出跳變中斷的單片機如Z86E08等,上述過程處理起來會更簡單,可用程序在比較器輸出反轉(zhuǎn)時來設(shè)定中斷,并在中斷子程序的開始時停止定時計數(shù)器,其讀數(shù)減去從比較器中斷到執(zhí)行中斷子程序之間的機器周期數(shù)即為實際積分時間。

由于AT89C2051的定時計數(shù)器為16位,所以該A/D轉(zhuǎn)換器的分辨率實際上可以達(dá)到15位。調(diào)整I0和Cf的值就能改變A/D轉(zhuǎn)換器的分辨率,I0和Cf的取值與分辨率和單片機時鐘頻率之間的關(guān)系,應(yīng)滿足下式:

12×2N+1/(f0 Vmax)≤Cf/IO≤12×216/(f0Vmax)

式中Vmax 為最大模擬輸入電壓,N為分辨率位數(shù),f0為單片機的時鐘頻率。根據(jù)上式,在設(shè)計時應(yīng)保證足夠長的積分時間以保證分辯率的要求。同時還應(yīng)保證積分時間不能超過單片機的最大定時值,以免引起定時計數(shù)器的溢出。

3 軟件編程

整個工作過程的主要程序如下(該程序采用MCS51匯編語言編寫)。除法子程序和20μs延時子程序分別為:

(1)初始化主程序:


4 結(jié)束語

上述所述,采用內(nèi)部帶模擬比較器的單片機加上少量的外國元件,并在程序上稍作處理,就能夠構(gòu)成一種新的A/D轉(zhuǎn)換器,該方法可節(jié)約因擴展A/D而占用的大量I/O,而且這種A/D轉(zhuǎn)換器能達(dá)到很高的分辯率和精度,并且有抗干擾能力強、分辯率可由程序調(diào)整的特點,從而增加了單片機的應(yīng)用范圍和使用靈活性,同時就應(yīng)用系統(tǒng)的設(shè)計也顯得簡潔和不效。

參考文獻(xiàn)
1.AT89 系列單片機。愛迪爾電子有限公司
2.Discrete Z8 Microcontrollers Databook.Zilong,Inc

 

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉