基于89c51單片機(jī)的數(shù)字電壓表設(shè)計
2.1初始化程序
系統(tǒng)上電,初始化程序?qū)?0H~77H內(nèi)存單元清0,P2口置0.系統(tǒng)默認(rèn)為循環(huán)顯示8個通道的電壓值,當(dāng)進(jìn)行一次測量后,將顯示每一通道的A/D轉(zhuǎn)換值,每個通道顯示時間為1s.70H~77H內(nèi)存單元存放采樣值,78H~7BH內(nèi)存單元存放顯示數(shù)據(jù),依次為個位、十位、百位、通道標(biāo)志位。
2.2 A/D轉(zhuǎn)換子程序
A/D轉(zhuǎn)換子程序用來控制對0809/k路模擬輸入電壓的A/D轉(zhuǎn)換,并將對應(yīng)的數(shù)值存入70H~77H內(nèi)存單元。
2.3示子程序
顯示子程序采用動態(tài)掃描實現(xiàn)四位數(shù)碼管的數(shù)值顯示。測量數(shù)據(jù)在顯示時需轉(zhuǎn)換成BCD碼放在78H~7BH內(nèi)存單元中,其中7BH存放通道標(biāo)志數(shù)。
R3作為8路循環(huán)控制,R0用作顯示數(shù)據(jù)指針。
3結(jié)論
數(shù)字電壓表可以測量0~5的8路電壓值。89C51為8位處理器,當(dāng)0809輸入電壓為5.00V時,輸出數(shù)據(jù)為255(FFH)。因此最大分辯率為O.0196V(5/255)。如要獲得更高的精度要求,應(yīng)采用12位、13位的A/D轉(zhuǎn)換器。數(shù)字電壓顯示可能有偏差,可以通過校正0809的基準(zhǔn)電壓來解決,或者用軟件編程來校正測量值。
本系統(tǒng)用單片機(jī)89C51構(gòu)成數(shù)字電壓表控制系統(tǒng),具有精度高、速度快、性能穩(wěn)定和電路簡單且工作可靠等特點,具有很好的使用價值。
參考文獻(xiàn):
[1].AT89c51datasheethttp://www.dzsc.com/datasheet/AT89c51_810155.html.
[2].ADC0809datasheethttp://www.dzsc.com/datasheet/ADC0809_123186.html.
[3].ROMdatasheethttp://www.dzsc.com/datasheet/ROM_1188413.html.
[4].BCDdatasheethttp://www.dzsc.com/datasheet/BCD_1225719.html
評論