范禮平
【摘要】 隨著大規(guī)模集成電路的發(fā)展,單片機(jī)技術(shù)飛速發(fā)展,其功能也不斷增強(qiáng),單片機(jī)應(yīng)用已經(jīng)滲透到了各個(gè)領(lǐng)域,已經(jīng)成為嵌入式控制系統(tǒng)的主流,是開發(fā)新產(chǎn)品不可或缺的器件,現(xiàn)代人類生活中所用的幾乎每件電子和機(jī)械產(chǎn)品中或多或少都會(huì)集成有單片機(jī)。
【關(guān)鍵字】 單片機(jī) 模數(shù)轉(zhuǎn)換 protues仿真
本次數(shù)字電壓表設(shè)計(jì)是通過常用模數(shù)轉(zhuǎn)換芯片ADC0809與AT89C51單片機(jī)連接制作一個(gè)數(shù)字電壓表,說明ADC0809與單片機(jī)的接口方法,目前單片機(jī)使用的A/D轉(zhuǎn)換電路通常也是以集成芯片的形式出現(xiàn)的,ADC0809是最常用的一種模數(shù)轉(zhuǎn)換芯片。
一、硬件電路設(shè)計(jì)
1.1單片機(jī)最小系統(tǒng)
單片機(jī)的最小系統(tǒng)是讓單片機(jī)能正常工作并發(fā)揮其功能時(shí)所必須的組成部分,用最少的元件組成的單片機(jī)可工作系統(tǒng)。51 系列單片機(jī)的最小系統(tǒng)一般應(yīng)該包括: 單片機(jī)、時(shí)鐘電路、復(fù)位電路、輸入/ 輸出設(shè)備等。
1.2模數(shù)轉(zhuǎn)換模塊
此模塊主要由模數(shù)轉(zhuǎn)換芯片ADC0809、鎖存器74ls373以及74ls02、74ls04等邏輯門電路組成。P2.7(A15)作為片選信號(hào),由單片機(jī)的寫信號(hào)WR和P2.7控制ADC0809的地址鎖存和轉(zhuǎn)換啟動(dòng)。用單片機(jī)的RD和P2.7引腳引腳經(jīng)一級(jí)“或非”門后,產(chǎn)生的正脈沖作為OE信號(hào),用以打開三態(tài)讀出鎖存器。ADC0809口地址可以為7FF9H選通IN1。ADC0809的EOC發(fā)出高電平,經(jīng)反相器接到P3.5來判斷轉(zhuǎn)換是否結(jié)束。通過定時(shí)計(jì)數(shù)器0由P3.4引腳產(chǎn)生一時(shí)鐘脈沖作為ADC0809的時(shí)鐘。
1.3顯示模塊
此模塊電路主要由四位一體的LED數(shù)碼顯示器構(gòu)成,本次設(shè)計(jì)選取共陽極結(jié)構(gòu)的數(shù)碼管,采用動(dòng)態(tài)顯示的方式完成顯示,單片機(jī)的P2.0-P2.3接四位一體數(shù)碼管的1,2,3,4,作為位選信號(hào),單片機(jī)的P1口接數(shù)碼管的A,B,C,D,E,F(xiàn),G,DP,作為段碼信息傳送。
二、軟件設(shè)計(jì)
程序開始部分通過偽指令設(shè)計(jì)ADC0809口地址以及顯示緩沖區(qū)等;主程序部分包括設(shè)置堆棧、啟動(dòng)定時(shí)計(jì)數(shù)器、開始模數(shù)轉(zhuǎn)換、等待啟動(dòng)結(jié)束后,將模擬輸入量轉(zhuǎn)換成數(shù)字量,在四位一體的數(shù)碼管上顯示;子程序包括定時(shí)中斷、數(shù)據(jù)處理、數(shù)碼管動(dòng)態(tài)顯示以及延時(shí),部分參考程序代碼如下:
IN1 EQU 7FF9H;設(shè)置ADC0809口地址
LED_0 EQU 30H;顯示緩沖區(qū)
···
MAIN: MOV SP,#60H;設(shè)置堆棧
MOV TMOD,#02H;設(shè)置定時(shí)計(jì)數(shù)器
···
TOBCD: MOV A,ADC;轉(zhuǎn)換結(jié)果轉(zhuǎn)換成BCD碼
MOV B,#0C3H;乘以19.5MV
···
HB2: CLR A;BCD碼初始化
···
RET
DISP: MOV DPTR,#TABLE;數(shù)碼管動(dòng)態(tài)顯示
···
RET
INT_T0: CPL P3.4
RETI
DELAY: MOV 50H,#0AH;延時(shí)5毫秒
···
RET
TABLE: DB 0C0H,0F9H,0A4H,0B0H,99H;共陽數(shù)碼管0-9段碼
DB 92H,82H,0F8H,80H,90H
END
三、protues軟件仿真
為方便軟硬件綜合調(diào)試,通過protues軟件進(jìn)行電路原理圖設(shè)計(jì)、程序設(shè)計(jì)以及仿真調(diào)試,仿真結(jié)果如下圖所示:
本數(shù)字電壓表設(shè)計(jì)可以顯示0-5V的電壓值,并且精確到了小數(shù)點(diǎn)后3位,其顯示誤差可以通過校正ADC0809轉(zhuǎn)換器的基準(zhǔn)參考電壓來解決,本次設(shè)計(jì),電路簡單,成本較低,速度快且較穩(wěn)定,如要進(jìn)一步提高精度可選用12或13位的AD轉(zhuǎn)換器。
參 考 文 獻(xiàn)
[1] 吳金成.單片機(jī)實(shí)踐與應(yīng)用.清華大學(xué)出版社
[2] 陶春鳴.單片機(jī)實(shí)用技術(shù).人民郵電出版社
[3] 李群芳.單片機(jī)原理與應(yīng)用.武漢大學(xué)出版社