(一)ICL7135功能介紹
ICI7135是4位雙積分A/D轉換芯片,可以轉換輸出±20000個數字量,有STB選通控制的BCD碼輸出,與微機接口十分方便.ICL7135具有精度高(相當于14位A/D轉換),價格低的優點.其轉換速度與時鐘頻率相關,每個轉換周期均有:自校準(調零),正向積分(被測模擬電壓積分),反向積分(基準電壓積分)和過零檢測四個階段組成,其中自校準時間為10001個脈沖,正向積分時間為10000個脈沖,反向積分直至電壓到零為止(最大不超過20001個脈沖).故設計者可以采用從正向積分開始計數脈沖個數,到反向積分為零時停止計數.將計數的脈沖個數減10000,即得到對應的模擬量.圖1給出了ICL7135時序,由圖可見,當BUSY變高時開始正向積分,反向積分到零時BUSY變低,所以BUSY可以用于控制計數器的啟動/停止.
圖1 1CL7135時序
ICL7135引腳圖
ICL7135為DIP28封裝,芯片引腳排列如圖2所示
圖2 1CL7135芯片引腳
ICL7135引腳功能及含義如下:
(1)與供電及電源相關的引腳(共7腳)
.-V:ICL7135負電源引入端,典型值-5V,極限值-9V;
.+V:ICL7135正電源引入端,典型值+5V,極限值+6V;
.DGND:數字地,ICL7135正,負電源的低電平基準;
.REF:參考電壓輸入,REF的地為AGND引腳,典型值1V,輸出數字量=10000×(VIN/VREF);
.AC:模擬地,典型應用中,與DGND(數字地)"一點接地";
.INHI:模擬輸入正;
.INLO:模擬輸入負,當模擬信號輸入為單端對地時,直接與AC相連.
(2)與控制和狀態相關的引腳 (共12腳)
.CLKIN:時鐘信號輸入.當T=80ms時,fcp=125kHz,對50Hz工頻干擾有較大抑制能力,此時轉換速度為3次/s.極限值fcp=1MHz時,轉換速度為25次/s.
.REFC+:外接參考電容正,典型值1μF.
.REFC-:外接參考電容負.
.BUFFO:緩沖放大器輸出端,典型外接積分電阻.
.INTO:積分器輸出端,典型外接積分電容.
.AZIN:自校零端.
.LOW: 欠量程信號輸出端,當輸入信號小于量程范圍的10%時,該端輸出高電平.
.HIGH:過量程信號輸出端,當輸入信號超過計數范圍(20001)時,該端輸出高電平.
.STOR:數據輸出選通信號(負脈沖),寬度為時鐘脈沖寬度的一半,每次A/D轉換結束時,該端輸出5個負脈沖,分別選通由高到低的BCD碼數據(5位),該端用于將轉換結果打到并行I/O接口.
.R/H:自動轉換/停頓控制輸入.當輸入高電平時;每隔40002個時鐘脈沖自動啟動下一次轉換;當輸入為低電平時,轉換結束后需輸入一個大于300ns的正脈沖,才能啟動下一次轉換.
.POL:極性信號輸出,高電平表示極性為正.
.BUSY:忙信號輸出,高電平有效.正向積分開始時自動變高,反向積分結束時自動變低.
(3)與選通和數據輸出相關的引腳(共9腳)
.B8~B1:BCD碼輸出.B8為高位,對應BCD碼;
.D5:萬位選通;
.D4~D1:千,百,十,個位選通.
ICL7135主要參數:
電源電壓
| V+
| +6V
| 溫度范圍
| 0℃ to 70℃
| ||
V-
| -9V
| 熱電阻
| PDIP封裝
| qJA(℃/W)
| 55
| |
模擬輸入電壓
|
| V+ to V-
| 最大結溫
| 150℃
| ||
參考輸入電壓
|
| V+ to V-
| 最高儲存溫度范圍
| -65℃ to 150℃
| ||
時鐘輸入電壓
|
| GND to V+
|
|
ICL7135典型應用電路圖
ICL7135外接阻容的典型應用如圖3所示.
由于單片機資源的寶貴,如果采用MCl4433的接口方法,將占用8條以上端口線,下面重點介紹一種利用BUSY信號特點的"轉換"方式,大大地減少了對單片機資源的占用.
圖3 ICL7135典型應用
ICL7135與MCS-51的連接可參照MCLl4433與處理器連接方法,依次讀出萬位到個位的BCD碼.本節采用另外一種方法,重點推薦采用計數法進行A/D"轉換"的方法.ICL7135與MCS-51連接如圖4所示.
圖4 1CL7135與MCS51連接
(1)硬件連接.
設MCS-51的外接晶振fosc=6MHz,則ALE輸出約為1MHz,將ALE信號輸入CD4040的CLK引腳.CD4040是由12個T型觸發器組成的串行二進制計數器/分頻器,有12個分頻輸出端,Q1~Q12,最大分頻系數為212=4096,由于CD4040的所有輸入,輸出端都設有緩沖器,所以有較好的噪聲容限.CD4040的Q2輸出是對ALE進行了22=4分頻,故輸入ICL7135的時鐘為1MHz/4=250kHz,可得TCP=1/250ms=0.004mS,由于一次轉換最多需(10001+10000+20001)=40002個脈沖,故轉換一次需0.004×40002≈160ms,因此ICL7135的轉換速度為6.25次/s.選擇這一頻率,以犧牲ICL7135抗工頻干擾為代價,使MCS-51的16位計數器能一次計數A/D"轉換"的CP脈沖數.在滿電壓輸入時,BUSY寬度為正向積分10000個CP脈沖,反向積分20001個CP脈沖(總計30001個CP脈沖).在fosc=6MHz情況下,8031內部定時頻率為6MHz/12=500kHz,比ICL7135時鐘頻率250kHz大了1倍.在滿刻度電壓輸入時,定時器計數值應為30 001×2=60002,不超過MCS-51的16位計數的最大可計數值(216),故在BUSY高電平期間,計數器計數值除以2,再減去10000(2710H),余數就是被測電壓的數值.
(2)程序設計.
假定將轉換的結果(二進制)存放在R3,R2寄存器中,其中R3存放高位.
程序清單如下:
JB P3.2,$ ;等待BUSY變低(A/D轉換結束)
MOV TL0,#0
MOV THO,#0 ;16位計數器初值清0
MOV TMOD,#01H ;TO定時,方式1(16位定時)
JNB P3.2,$ ;等待BUSY變高(A/D轉換開始)
SETB TR0 ;啟動定時
JB P3.2,$ ;等待A/D結束
CLR TR0 ;停定時
CLR C
MOV A,THO
RRC A ;高位除以2
MOV R3,A ;存高位
MOV A,TL0
RRC A ;低位除以2
MOV R2,A ;存低位
CLR C
SUBB A,#10H ;低位減10H
MOV R2,A
MOV A,R3
SUBB A,#27H ;高位減27H
MOV R3,A
RET
提示:現在市場上許多常見的4位半數字萬用表就是采用類似上述轉換芯片
圖5 UART接口電路
圖6 UART接口電路
圖7 典型應用示意圖
圖8 驅動液晶顯示器電路圖
圖9 41/2位數的A/D復用共陽極LED顯示屏電路
圖10 ICL7135的8255,80C48接口電路
圖11 LM311時鐘源
ICL7135的MC6800,MCS650X接口電路
圖12 ICL7135的MC6800,MCS650X接口電路