- 相關(guān)推薦
ICL7135的串行采集方式在單片機(jī)電壓表中的應(yīng)用
摘要:介紹了對A/D芯片ICL7135進(jìn)行串行數(shù)據(jù)采集的具體方法,同時利用該方式結(jié)構(gòu)簡單、編程簡潔、占用單片機(jī)資源少的特點(diǎn),給出了用ICL7135與AT89C52單片機(jī)構(gòu)成電壓表系統(tǒng)的硬件和軟件設(shè)計(jì)方法。在常用的A/D轉(zhuǎn)換芯片(如ADC0809、ICL7135、ICL7109等)中,ICL7135與其余幾種有所不同,它是一種四位半的雙積分A/D轉(zhuǎn)換器,具有精度高(精度相當(dāng)于14位二進(jìn)制數(shù))、價(jià)格低廉、抗干擾能力強(qiáng)等優(yōu)點(diǎn)。通常情況下,設(shè)計(jì)者都是用單片機(jī)來并行采集ICL7135的數(shù)據(jù),本文介紹用單片機(jī)串行方式采集ICL7135的數(shù)據(jù)以實(shí)現(xiàn)單片機(jī)電壓表和小型智能儀表的設(shè)計(jì)方案。
1 ICL7135的串行工作方式
1.1 ICL7135的測量周期
ICL7135的測量周期包括下列四相(節(jié)拍):
(1)AUTO-ZERO(自動調(diào)零)相
在該相時,內(nèi)部IN 和IN-輸入與引腳斷開,且在內(nèi)部連接到ANLG-COMMON,基準(zhǔn)電容被充電至基準(zhǔn)電壓,系統(tǒng)接成閉環(huán)并為自動調(diào)零(AUTOZERO)電容充電以補(bǔ)償緩沖放大器、積分器和比較器的失調(diào)電壓。此時,自動調(diào)零精度令受系統(tǒng)噪聲的限制,以輸入為基準(zhǔn)的總失調(diào)小于10μV。
(2)SINGAL-INTEGRATE(信號積分)相
在該相,自動調(diào)零環(huán)路被打開,內(nèi)部的IN 和IN-輸入被連接至外部引腳。在固定的時間周期內(nèi),這些輸入端之間的差分電壓被積分。當(dāng)輸入信號相對于轉(zhuǎn)換器電源不反相(NO-RETURN)時,IN-可直接連接至ANJG-COMMON以便輸出正確的共模電壓。同時,在這一相完成的基礎(chǔ)上,輸入信號的極性將被系統(tǒng)所記錄。
(3)DEINTEGRATE(去積分)相
該相的基準(zhǔn)用于完成去積分(DEINTEGRATE)任務(wù),此時內(nèi)部IN-在內(nèi)部連接ANLG-COMMON,IN 跨接至先前已充電的基準(zhǔn)電容,所記錄的輸入信號的極性可確保以正確的極性連接至電容以使積分器輸出極性回零。輸出返回至零所需的時間正比于輸入信號的幅度。返回時間顯示為數(shù)字讀數(shù),并由1000(Vid/Vref)確定。滿度或最大轉(zhuǎn)換值發(fā)生在Vid等于Vref的兩倍時。
(4)ZERO-INTEGRATE(積分器返回零)相
內(nèi)部的IN-連接到ANLG-COMMON,系統(tǒng)接成閉環(huán)以使積分器輸出返回到零。通常這相需要100~200個時鐘脈沖,但是在超范圍(OVERRANGE)轉(zhuǎn)換后,則需要6200個脈沖。
1.2 ICL7135時序圖
圖1所示是Vid為常數(shù)時的ICL7135時序圖,由圖1可知:在Signal-Integrate(即信號積分)相開始時,ICL7135的BUSY信號線跳高并一直保持高電平,直到De integrate(去積分)相結(jié)束時才跳回低電平。在滿量程情況下,這個區(qū)域中的最多脈沖個數(shù)為30002個。其中De integrate(去積分)相的脈沖個數(shù)反映了轉(zhuǎn)換結(jié)果。
圖2是不同Vid值時的ICL7135時序。由圖2可見:對于不同模擬量輸入,ICL7135的BUSY信號的高電平寬度也不同。
2 與單片機(jī)系統(tǒng)的串行連接
在ICL7135與單片機(jī)系統(tǒng)進(jìn)行連接時,如果使用ICL7135的并行采集方式,則不但要連接BCD碼數(shù)據(jù)輸出線,又要連接BCD碼數(shù)據(jù)的位驅(qū)動信號輸出端,這樣至少需要9根I/O口線。因此,系統(tǒng)的連接比較麻煩,且編程也非常復(fù)雜。
而ICL7135的串行接法是通過計(jì)脈沖數(shù)的方法來獲得測量轉(zhuǎn)換結(jié)果的。由其時序分析可知,在Deintegrate(去積分)相,其脈沖數(shù)與轉(zhuǎn)換結(jié)果具有一一對應(yīng)關(guān)系。
實(shí)際上,可以通過單片機(jī)(例如ATMEL公司的51系列單片機(jī)AT89C52)的定時器T0(也可以使用定時器T1)來計(jì)脈沖器。由于,定時器T0所用的CLK頻率是系統(tǒng)晶振頻率的1/12。因此可利用單片機(jī)(AT89C52)的ALE信號作為ICL7135的脈沖(CLK)輸入。但要注意,在軟件設(shè)計(jì)編程中,若指令中不出現(xiàn)MOVX指令,ALE端產(chǎn)生的脈沖頻率將是晶振的1/6。至此,便可找到定時器所使用的頻率與單片機(jī)系統(tǒng)晶振頻率的關(guān)系,以及ICL7135所需的頻率輸入與單片機(jī)系統(tǒng)晶振頻率的關(guān)系。
為了使定時器T0的計(jì)數(shù)脈沖的ICL7135工作所需的脈沖同步,可以將ICL7135的BUSY信號接至AT89C52的P3.2(INT0)引腳上,并且將定時器T0的選通控制信號GATE倍1。此時定時器T0是否工作將受BUSY信號的控制。由上述時序圖可知,當(dāng)ICL7135開始工作時,即在積分波形的Signal-Integrate相開始時,也就是ICL7135的BUSY信號跳高時,定時器T0才開始工作,且定時器T0的TH0、TL0所記錄的數(shù)據(jù)與ICL7135的測試脈沖(從積分波形的Signal-Integrate相開始時Deintegrate相結(jié)束這一區(qū)域內(nèi)的脈沖稱為測量脈沖)存在一定的比例關(guān)系。其系統(tǒng)連接圖如圖3所示。
在這種情況下,由于定時器T0和ICL7135所用的時鐘不是同一路。因此,應(yīng)當(dāng)找到定時器T0所記錄的數(shù)據(jù)和測量脈沖之間的某種比例關(guān)系。其比例關(guān)系如下:
Ftime=Fosc/12
Fale=Fosc/6
Fre
【ICL7135的串行采集方式在單片機(jī)電壓表中的應(yīng)用】相關(guān)文章:
串行接口鍵盤控制器SK5278及其在單片機(jī)系統(tǒng)中的應(yīng)用03-18
嵌入式系統(tǒng)中FPGA的被動串行配置方式03-19
VHDL在高速圖像采集系統(tǒng)中的應(yīng)用設(shè)計(jì)03-18
閃存在大容量數(shù)據(jù)采集系統(tǒng)中的應(yīng)用03-07
DMA結(jié)合McBSP在數(shù)據(jù)采集系統(tǒng)中的應(yīng)用設(shè)計(jì)03-18
PIC單片機(jī)在智能雙電源裝置中的應(yīng)用03-19