基于AD574的高精度數(shù)字電壓表設(shè)計(jì)
AD574A是單片高速12位逐次比較型A/D轉(zhuǎn)換器,內(nèi)置雙極性電路構(gòu)成的混合集成轉(zhuǎn)換顯片,具有外接元件少,功耗低,精度高等特點(diǎn),并且具有自動(dòng)校零和自動(dòng)極性轉(zhuǎn)換功能,只需外接少量的阻容件即可構(gòu)成一個(gè)完整的A/D轉(zhuǎn)換器,其主要功能特性如下:分辨率:12位
非線性誤差:小于±1/2LBS或±1LBS 轉(zhuǎn)換速率:25us模擬電壓輸入范圍:0—10V和0—20V,0—±5V和0—±10V兩檔四種電源電壓:±15V和5V數(shù)據(jù)輸出格式:12位/8位
芯片工作模式:全速工作模式和單一工作模式
我們利用AD574與ATMEL公司的低價(jià)高性能單片機(jī)AT89C2051組成一個(gè)高精度的數(shù)字電壓表,電原理圖如圖1,AD574是12位逐次比較型A/D轉(zhuǎn)換器,共有12根數(shù)據(jù)線,AT89C2051的P1與AD574的高8位數(shù)據(jù)線直接相接,AD574的低4位數(shù)據(jù)線與單片機(jī)的高半4位P1.4——P1.7直接相接,數(shù)據(jù)的讀取是依靠單片機(jī)的控制線進(jìn)行分時(shí)選通進(jìn)行。P3.5接AD574的字節(jié)短周期控制線(A0),P3.4接讀轉(zhuǎn)換數(shù)據(jù)控制腳(
),P3.7直接與工作狀態(tài)指示端(STS)相連,這樣的結(jié)構(gòu)決定只能是8位輸出形式,故
數(shù)據(jù)模式選擇端直接接地即可。AT89C2051只有15根I/O口線,上述用了11根,只余下4根口線,我們將輸出的數(shù)據(jù)通過單片機(jī)的串行口輸出,外接一片74LS164(串入并出)譯碼器進(jìn)行擴(kuò)展,同時(shí)顯示的數(shù)據(jù)為4位,剩下的2根口線仍不能滿足要求,還需要一片74LS138三——八譯碼器對(duì)顯示LED進(jìn)行地址選通。
這里我們采用10V量程的輸入模式,故AD574的Pin13為被測電壓的輸入端,因?yàn)橹皇褂昧艘黄珹D574轉(zhuǎn)換芯片,所以CS端直接接地即可。轉(zhuǎn)換器使用±12V電源電壓供電,工作電壓為+5V。
74LS164為串入并出譯碼器,AT89C2051通過串行口輸出的BCD串行碼經(jīng)74LS164譯碼輸出為七段BCD碼,直接與LED的a——g相連,同時(shí)四位LED的數(shù)據(jù)線都一一對(duì)應(yīng)連接在一起。LED數(shù)碼管選用共陽型,74LS138輸出的地址碼經(jīng)一個(gè)三極管2SA1015(PNP)接LED的公共端,四位LED的顯示是通過地址線進(jìn)行分時(shí)選通的,這就是我們常用的動(dòng)態(tài)掃描顯示方式。
值得一提的是,動(dòng)態(tài)掃描顯示方式中,動(dòng)態(tài)掃描的頻率有一定的要求,頻率太低,LED將出現(xiàn)閃爍現(xiàn)象。如頻率太高,由于每個(gè)LED點(diǎn)亮的時(shí)間太短,LED的亮度太低,肉眼無法看清,所以一般均取10ms左右為宜,這就要求在編寫程序時(shí),選通某一位LED使其點(diǎn)亮并保持一定的時(shí)間,程序上常采用的是調(diào)用延時(shí)子程序。在C51指令中,延時(shí)子程序是相當(dāng)簡單的,并且延時(shí)時(shí)間也很容易更改。
評(píng)論