機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
ICL7135的串行采集方式在單片機(jī)電壓表中的應(yīng)用
ICL7135的串行采集方式在單片機(jī)電壓表中的應(yīng)用
 更新時(shí)間:2009-12-30 11:29:48  點(diǎn)擊數(shù):0
【字體: 字體顏色

摘要:介紹了對(duì)a/d芯片icl7135進(jìn)行串行數(shù)據(jù)采集的具體方法,同時(shí)利用該方式結(jié)構(gòu)簡(jiǎn)單、編程簡(jiǎn)潔、占用單片機(jī)資源少的特點(diǎn),給出了用icl7135與at89c52單片機(jī)構(gòu)成電壓表系統(tǒng)的硬件和軟件設(shè)計(jì)方法。

關(guān)鍵詞:單片機(jī) adc 電壓表 icl7135

在常用的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的測(cè)量周期

icl7135的測(cè)量周期包括下列四相(節(jié)拍):

(1)auto-zero(自動(dòng)調(diào)零)相

在該相時(shí),內(nèi)部in 和in-輸入與引腳斷開,且在內(nèi)部連接到anlg-common,基準(zhǔn)電容被充電至基準(zhǔn)電壓,系統(tǒng)接成閉環(huán)并為自動(dòng)調(diào)零(autozero)電容充電以補(bǔ)償緩沖放大器、積分器和比較器的失調(diào)電壓。此時(shí),自動(dòng)調(diào)零精度令受系統(tǒng)噪聲的限制,以輸入為基準(zhǔn)的總失調(diào)小于10μv。

(2)singal-integrate(信號(hào)積分)相

在該相,自動(dòng)調(diào)零環(huán)路被打開,內(nèi)部的in 和in-輸入被連接至外部引腳。在固定的時(shí)間周期內(nèi),這些輸入端之間的差分電壓被積分。當(dāng)輸入信號(hào)相對(duì)于轉(zhuǎn)換器電源不反相(no-return)時(shí),in-可直接連接至anjg-common以便輸出正確的共模電壓。同時(shí),在這一相完成的基礎(chǔ)上,輸入信號(hào)的極性將被系統(tǒng)所記錄。

(3)deintegrate(去積分)相

該相的基準(zhǔn)用于完成去積分(deintegrate)任務(wù),此時(shí)內(nèi)部in-在內(nèi)部連接anlg-common,in 跨接至先前已充電的基準(zhǔn)電容,所記錄的輸入信號(hào)的極性可確保以正確的極性連接至電容以使積分器輸出極性回零。輸出返回至零所需的時(shí)間正比于輸入信號(hào)的幅度。返回時(shí)間顯示為數(shù)字讀數(shù),并由1000(vid/vref)確定。滿度或最大轉(zhuǎn)換值發(fā)生在vid等于vref的兩倍時(shí)。

(4)zero-integrate(積分器返回零)相

內(nèi)部的in-連接到anlg-common,系統(tǒng)接成閉環(huán)以使積分器輸出返回到零。通常這相需要100~200個(gè)時(shí)鐘脈沖,但是在超范圍(overrange)轉(zhuǎn)換后,則需要6200個(gè)脈沖。

1.2 icl7135時(shí)序圖

圖1所示是vid為常數(shù)時(shí)的icl7135時(shí)序圖,由圖1可知:在signal-integrate(即信號(hào)積分)相開始時(shí),icl7135的busy信號(hào)線跳高并一直保持高電平,直到de integrate(去積分)相結(jié)束時(shí)才跳回低電平。在滿量程情況下,這個(gè)區(qū)域中的最多脈沖個(gè)數(shù)為30002個(gè)。其中de integrate(去積分)相的脈沖個(gè)數(shù)反映了轉(zhuǎn)換結(jié)果。

圖2是不同vid值時(shí)的icl7135時(shí)序。由圖2可見:對(duì)于不同模擬量輸入,icl7135的busy信號(hào)的高電平寬度也不同。

2 與單片機(jī)系統(tǒng)的串行連接

在icl7135與單片機(jī)系統(tǒng)進(jìn)行連接時(shí),如果使用icl7135的并行采集方式,則不但要連接bcd碼數(shù)據(jù)輸出線,又要連接bcd碼數(shù)據(jù)的位驅(qū)動(dòng)信號(hào)輸出端,這樣至少需要9根i/o口線。因此,系統(tǒng)的連接比較麻煩,且編程也非常復(fù)雜。

而icl7135的串行接法是通過計(jì)脈沖數(shù)的方法來獲得測(cè)量轉(zhuǎn)換結(jié)果的。由其時(shí)序分析可知,在deintegrate(去積分)相,其脈沖數(shù)與轉(zhuǎn)換結(jié)果具有一一對(duì)應(yīng)關(guān)系。

實(shí)際上,可以通過單片機(jī)(例如atmel公司的51系列單片機(jī)at89c52)的定時(shí)器t0(也可以使用定時(shí)器t1)來計(jì)脈沖器。由于,定時(shí)器t0所用的clk頻率是系統(tǒng)晶振頻率的1/12。因此可利用單片機(jī)(at89c52)的ale信號(hào)作為icl7135的脈沖(clk)輸入。但要注意,在軟件設(shè)計(jì)編程中,若指令中不出現(xiàn)movx指令,ale端產(chǎn)生的脈沖頻率將是晶振的1/6。至此,便可找到定時(shí)器所使用的頻率與單片機(jī)系統(tǒng)晶振頻率的關(guān)系,以及icl7135所需的頻率輸入與單片機(jī)系統(tǒng)晶振頻率的關(guān)系。

為了使定時(shí)器t0的計(jì)數(shù)脈沖的icl7135工作所需的脈沖同步,可以將icl7135的busy信號(hào)接至at89c52的p3.2(int0)引腳上,并且將定時(shí)器t0的選通控制信號(hào)gate倍1。此時(shí)定時(shí)器t0是否工作將受busy信號(hào)的控制。由上述時(shí)序圖可知,當(dāng)icl7135開始工作時(shí),即在積分波形的signal-integrate相開始時(shí),也就是icl7135的busy信號(hào)跳高時(shí),定時(shí)器t0才開始工作,且定時(shí)器t0的th0、tl0所記錄的數(shù)據(jù)與icl7135的測(cè)試脈沖(從積分波形的signal-integrate相開始時(shí)deintegrate相結(jié)束這一區(qū)域內(nèi)的脈沖稱為測(cè)量脈沖)存在一定的比例關(guān)系。其系統(tǒng)連接圖如圖3所示。

在這種情況下,由于定時(shí)器t0和icl7135所用的時(shí)鐘不是同一路。因此,應(yīng)當(dāng)找到定時(shí)器t0所記錄的數(shù)據(jù)和測(cè)量脈沖之間的某種比例關(guān)系。其比例關(guān)系如下:

ftime=fosc/12

fale=fosc/6

freal=fosc/24

ficl=fale/n

其中,fosc為系統(tǒng)晶振頻率;ftime為定時(shí)器所用頻率;fale為單片機(jī)ale輸出的頻率;freal為icl7135的測(cè)量脈沖頻率;ficl為icl7135所用的輸入頻率,該頻率可通過dale分頻得到。n為分頻比,該系統(tǒng)中n應(yīng)選為4。

圖4 icl7135a/d轉(zhuǎn)換器與系統(tǒng)的連接圖

由上述頻率之間的比率關(guān)系可知,at98c52的定時(shí)器t0所用的頻率是icl7135的測(cè)量脈沖頻率的兩倍。因此,定時(shí)器t0所記錄的脈沖數(shù)也是icl7135的測(cè)量脈沖的兩倍。圖中,分頻數(shù)可根據(jù)icl7135的要求和單片機(jī)的時(shí)鐘頻率來選擇。在這里,提倡使用四分頻,這樣可使定時(shí)器t0在對(duì)測(cè)量脈沖計(jì)數(shù)時(shí)不會(huì)溢出。若使用4以上的分頻數(shù),則需在軟件上作一下改進(jìn)。

要得到測(cè)量脈沖的個(gè)數(shù),只需將定時(shí)器所記錄的脈沖個(gè)數(shù)除以2即可。而要得到a/d轉(zhuǎn)換結(jié)果所對(duì)應(yīng)的脈沖數(shù)則應(yīng)用測(cè)量脈沖的個(gè)數(shù)減去10001。這些轉(zhuǎn)換通?赏ㄟ^軟件完成,因此非常簡(jiǎn)單。通過a/d轉(zhuǎn)換結(jié)果所對(duì)應(yīng)的脈沖數(shù)可得到被測(cè)的模擬量。通過對(duì)串行方式的討論可以看出:使用這種方法可以不再使用8255芯片來擴(kuò)展口線。其優(yōu)點(diǎn)是占用口線少,能節(jié)省系統(tǒng)的硬件資源,提高系統(tǒng)的抗干擾能力,不用添加任何擴(kuò)展口線器件,從而使系統(tǒng)的成本得到降低。

3 基于單片機(jī)系統(tǒng)的電壓表設(shè)計(jì)

3.1 系統(tǒng)的硬件

圖4所示是單片機(jī)電壓表系統(tǒng)中icl7135與單片機(jī)系統(tǒng)的典型連接示意圖。圖中,單片機(jī)系統(tǒng)的晶振為6mhz,單片機(jī)的ale信號(hào)頻率為1mhz;考慮到系統(tǒng)連接方面和單片機(jī)ale信號(hào)頻率范圍等因素,筆者取icl7135的輸入頻率為ale信號(hào)的四分頻,即選用125khz。這樣選用的好處是t0定時(shí)器在對(duì)測(cè)量脈沖計(jì)數(shù)時(shí)不會(huì)產(chǎn)生溢出。

3.2 系統(tǒng)的軟件設(shè)計(jì)

icl7135a/d與單片機(jī)連接電路的軟件設(shè)計(jì)系統(tǒng)的程序流程圖如圖5所示。

該軟件流程圖由三部分組成。其中轉(zhuǎn)換子程序是在主程序中調(diào)用的,目的是為了不占用很長(zhǎng)的中斷時(shí)間。t0計(jì)數(shù)器設(shè)定為方式1、定時(shí)狀態(tài)、選通控制設(shè)為“1”。故tmod控制字設(shè)置為“05h”。由于t0計(jì)數(shù)器用的是系統(tǒng)的晶振頻率,因此與設(shè)定為計(jì)數(shù)狀態(tài)效果一樣。

4 結(jié)束語(yǔ)

icl7135的串行方式在實(shí)踐中的應(yīng)用效果很好。與并行方式相比,其突出的優(yōu)點(diǎn)是結(jié)構(gòu)簡(jiǎn)單、程序簡(jiǎn)潔、占用單片機(jī)的資源少、可提高抗干擾能力,同時(shí)可提高儀器的檢測(cè)可靠性,并且可在不添加任何擴(kuò)展口線器件的情況下使系統(tǒng)的成本得到降低。

  • 上一篇: P87LPC767單片機(jī)及其在微功耗智能定位器中的應(yīng)用
  • 下一篇: 沒有了
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁(yè)  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1