基于I2C總線(xiàn)接口的AD芯片PCF8591設(shè)計(jì)
3.2 控制字節(jié)
控制字節(jié)用于實(shí)現(xiàn)器件的各種功能,如模擬信號(hào)由哪幾個(gè)通道輸入等。控制字節(jié)存放在控制寄存器中。總線(xiàn)操作時(shí)為主控器發(fā)送的第二字節(jié)。其格式如下所示:
其中:D1、D0兩位是A/D通道編號(hào):00通道0,01通道1,10通道2,11通道3
D2 自動(dòng)增益選擇(有效位為1)
D5、D4模擬量輸入選擇:00為四路單數(shù)入、01為三路差分輸入、10為單端與差分配合輸入、11為模擬輸出允許有效
當(dāng)系統(tǒng)為A/D轉(zhuǎn)換時(shí),模擬輸出允許為0。模擬量輸入選擇位取值由輸入方式?jīng)Q定:四路單端輸入時(shí)取00,三路差分輸入時(shí)取01,單端與差分輸入時(shí)取10,二路差分輸入時(shí)取11。最低兩位時(shí)通道編號(hào)位,當(dāng)對(duì)0通 /道的模擬信號(hào)進(jìn)行A/D轉(zhuǎn)換時(shí)取00,當(dāng)對(duì)1通道的模擬信號(hào)進(jìn)行A/D轉(zhuǎn)換時(shí)取01,當(dāng)對(duì)2通道的模擬信號(hào)進(jìn)行A/D轉(zhuǎn)換時(shí)取10,當(dāng)對(duì)3通道的模擬信號(hào)進(jìn)行A/D轉(zhuǎn)換時(shí)取11。
在進(jìn)行數(shù)據(jù)操作時(shí),首先是主控器發(fā)出起始信號(hào),然后發(fā)出讀尋址字節(jié),被控器做出應(yīng)答后,主控器從被控器讀出第一個(gè)數(shù)據(jù)字節(jié),主控器發(fā)出應(yīng)答,主控器從被控器讀出第二個(gè)數(shù)據(jù)字節(jié),主控器發(fā)出應(yīng)答…一直到主控器從被控器中讀出第n個(gè)數(shù)據(jù)字節(jié),主控器發(fā)出非應(yīng)答信號(hào),最后主控器發(fā)出停止信號(hào)。
3.3 應(yīng)用電路
如圖3所示電路是暖水鍋爐水溫檢測(cè)和A/D轉(zhuǎn)換電路。AD581作為電流型溫度傳感器AD590的基準(zhǔn)電源。兩只AD590分別用來(lái)采集上水和回水的溫度。
溫度變化時(shí)通過(guò)AD590的電流發(fā)生變化,溫度每升高1℃,電流增加1mA。兩只遠(yuǎn)放電路的作用是將電流信號(hào)轉(zhuǎn)變?yōu)殡妷盒盘?hào)。圖中R6、R7、R8、R9 是溫度校準(zhǔn)電位器,均采用精細(xì)電位器。圖中R6和R7分別用來(lái)校準(zhǔn)0℃時(shí)兩運(yùn)放的輸出電壓,即將傳感器置于冰水混合液中時(shí),調(diào)節(jié)R6或R7使運(yùn)放的輸出電壓,即將傳感器置于冰水混合液中時(shí),調(diào)節(jié)R6或R7使運(yùn)放的輸出電壓為0V。圖中R8和R9分別用來(lái)校準(zhǔn)100℃時(shí)兩運(yùn)放的輸出電壓,即將傳感器置于沸水時(shí),調(diào)節(jié)R8或R9使兩運(yùn)放的輸出電壓為某一確定值。此值由使用者決定,當(dāng)然,其值大小要考慮A/D轉(zhuǎn)換器選用的基準(zhǔn)電源值。
A/D轉(zhuǎn)換器PCF8591靠數(shù)據(jù)線(xiàn)SDL和時(shí)鐘線(xiàn)SCL與CPU聯(lián)系。由軟件決定水溫?cái)?shù)據(jù)的采集時(shí)間和數(shù)據(jù)的存儲(chǔ)以及送去顯示。
4 結(jié)論
Philips公司推出的I2C總線(xiàn)系統(tǒng)較通用單片機(jī)系統(tǒng)電路簡(jiǎn)單。由普通CPU芯片同I2C專(zhuān)用器件組成的系統(tǒng)為模擬I2C系統(tǒng),它性能穩(wěn)定,價(jià)格較低,具有較大的應(yīng)用前景.
參考文獻(xiàn):
1. 何立民.I2C總線(xiàn)應(yīng)用系統(tǒng)設(shè)計(jì)[M].北京:北京航空航天大學(xué)出版社,1997.
2. 何立民.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)系統(tǒng)配置與接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,1999.
評(píng)論