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