基于12C總線(xiàn)接口的智能溫度傳感器TMPl01的設計
溫度寄存器為16位可讀寄存器,溫度寄存器存儲經(jīng)A/D轉換后的12位溫度數據,后4位全補為O,以構成2字節的可讀寄存器。也可以通過(guò)設置配置寄存器的內容來(lái)獲得9、10、ll、12位不同的轉換結果。
配置寄存器為8位可讀/寫(xiě)寄存器,數據格式如表2所列。通過(guò)配置寄存器設置器件的工作方式。Rl/R0為溫度傳感器轉換分辨率配置位,可以設定內部.A/D轉換器的分辨率及轉換時(shí)間:F1/F0為故障排隊次數配置位,當被測溫度連續超過(guò)n次(通過(guò)設置Fl/F0位),就會(huì )有報警輸出;POL為ALERT極性位,通過(guò)POL的設置,可以使控制器和ALERT輸出的極性一致:SD用來(lái)設置器件是否工作在關(guān)斷模式:在關(guān)斷模式下,向OS/ALERT位寫(xiě)l可以開(kāi)啟一次溫度轉換,在溫度比較模式下,該數據位可提供比較模式的狀態(tài)。
4 與PICl8F458單片機的接口
TMP101以高精度的測量結果和超小型貼片封裝廣泛應用于各種溫度測量系統、電源管理系統、溫度監控裝置以及恒溫控制裝置中,通過(guò)其串行數據接口線(xiàn)SDA和串行時(shí)鐘接口線(xiàn)SCL可方便地與微控制器相連接,構成一個(gè)溫度測量系統。圖4所示為PIC18F458單片機與TMP101的連接應用電路。
4.1 PICl8F458簡(jiǎn)介
PICl8F458是美國Microchip公司生產(chǎn)的單片機。片內集成了A/D轉換器、EEPROM存儲器、比較輸出、捕捉輸入、PWM輸出、I2C和SPI接口、異步串行通信(USART)接口電路、CAN總線(xiàn)接口電路、Flash程序存儲器等,功能強大,設計電路簡(jiǎn)單可靠。
4.2 TMP101初始化設置
要獲取TMP101中的溫度值數據,首先應通過(guò)PICl8F458單片機對TMP101內部的配置寄存器、上限溫度寄存器和下限溫度寄存器進(jìn)行初始化設置。其過(guò)程為:PICl8F458單片機對TMP101寫(xiě)地址,然后寫(xiě)配置寄存器地址到指針寄存器,最后寫(xiě)入數據到配置寄存器。PICl8F458單片機對TMP101配置寄存器寫(xiě)操作的時(shí)序如圖5所示,上、下限溫度寄存器的寫(xiě)時(shí)序和配置寄存器的寫(xiě)時(shí)序同理。
4.3 TMP101讀數據
讀取TMP101內部溫度寄存器當前值的過(guò)程是:首先寫(xiě)入要讀的TMP101,然后寫(xiě)入要讀的TMP101內部溫度寄存器,向I2C總線(xiàn)上發(fā)送一個(gè)"重啟動(dòng)信號",并將TMP101地址字節也重發(fā)一次,改變數據的傳輸方向,從而再進(jìn)行讀取溫度寄存器的操作。單片機對TMPl01溫度寄存器讀操作的時(shí)序如圖6所示。
圖6可以解釋為:在串行數據線(xiàn)SDA和串行時(shí)鐘線(xiàn)SCL的時(shí)序配合下,將PICl8F458單片機的啟動(dòng)使能位SEN置位建立啟動(dòng)信號時(shí)序,緊接著(zhù)單片機將要讀的TMP101地址字節寫(xiě)入緩沖器,并通過(guò)單片機內部移位寄存器將字節移送至SDA引腳,8位地址字節的前7位是TMP101的受控地址,后l位為讀/寫(xiě)控制位(為"O"時(shí)表示寫(xiě)操作)。寫(xiě)地址字節完成后,在第9個(gè)時(shí)鐘脈沖周期內,單片機釋放SDA,以便TMP101在地址匹配后,能夠反饋一個(gè)有效應答信號供單片機檢測接收。第9個(gè)時(shí)鐘脈沖之后,SCL引腳保持為低電平,SDA引腳電平保持不變,直到下一個(gè)數據字節被送入緩沖器為止。然后再寫(xiě)入要讀的TMP101內部溫度寄存器地址字節,其過(guò)程與TMPl01地址字節的寫(xiě)操作同理。通過(guò)向總線(xiàn)上發(fā)送"重啟動(dòng)信號",改變數據的傳輸方向,此時(shí)尋址字節也要重發(fā)一次,但對TMP101的地址字節已變?yōu)樽x操作,再讀取TMP101內部溫度寄存器的地址字節,最后讀出TMP101內部溫度寄存器中的溫度值數據字節,被測溫度值以符號擴展的16位數字量方式串行輸出。單片機每接收一個(gè)字節都要反饋一個(gè)應答信號,此時(shí)要注意單片機反饋的應答信號和TMP101反饋的應答信號是不同的,最后通過(guò)設置停止使能位,發(fā)送一個(gè)停止信號時(shí)序到總線(xiàn)上,表明此次通信終止。
5 結束語(yǔ)
介紹了基于I2C串行總線(xiàn)接口的數字智能溫度傳感器TMP101的性能、結構和工作原理,以及與PICl8F458單片機的實(shí)際應用,并成功地運用到"基于單片機的智能教室控制系統"中,該系統能顯示教室內實(shí)際檢測到的溫度值,并通過(guò)RS-485通訊數據線(xiàn)傳輸到上位機進(jìn)行實(shí)時(shí)顯示,測量結果精度高,系統運行穩定。
評論