基于MAX1069的單片機數據采集系統的設計
1概述
在MCS-51系列不具備I2C總線接口的單片機組成的智能儀器和工業(yè)測控系統中,當數據傳輸速度要求不太高時通過模擬I2C總線可以增加應用系統的接口器件的種類,提高應用系統的性能。
I2C總線,即IC與IC之間溝通的總線,是一種雙向二進制總線,即串行時鐘線SCL和串行數據線SDA兩條線路組成,提高了硬件的效率和簡化電路設計。I2C總線接口已經集成在片上,不需要單獨設計總線接口和譯碼電路,電路的互連減少。MAX1069采用單電源供電,利用內部4MHz時鐘對其單端模擬輸入進行單極性轉換。具有自動關斷、內部+4.096V基準和兼容于I2C、提供快速及高速模式的2線串行接口。對于不帶I2C串行總線接口的MCS-51系列單片機來說,可以利用軟件模擬的方法實現帶有I2C串行總線接口的I/O芯片的連接。
2MAX1069功能原理
3. MAX1069與MCS-51單片機組成的數據采集系統的實現
3.1. 硬件接口
利用MCS-51單片機的I/O口線控制I2C串行總線的串行時鐘和數據傳送,操作過程由軟件控制數據傳送以及時序。與MAX1069的接口即數據采集系統原理圖,如圖5所示。由于I2C總線端口輸出為開漏 結構,故SDA和SCL上必須有上拉電阻RP,通常選擇500Ω或更大些。8051的P1.0、P1.1分別與MAX1069的SCL、SDA連接。MAX1069的I2C器件地址為0110111。模擬信號由MAX1069的AIN輸入,數據轉換及傳送均由軟件來完成。數據傳送遵循高位在前的原則,即MSB在前的方式傳送。
3.2. 軟件流程圖
如圖5所示,數據采集系統原理圖由P1.0、P1.1模擬I2C串行總線的SCL和SDA端,構成模擬的I2C串行總線系統??偩€功能的實現除簡單的硬件連接,大部分功能需要軟件模擬來完成。I2C總線的啟動信號S、應答信號A、非應答信號 和SCL時鐘傳送數據均應用歸一的I2C程序(參考何利民:單片機高級教程—應用與提高)即可。流程圖如圖6所示。
4.結束語
本文介紹了基于MAX1069的單片機數據采集系統的硬件接口及模擬I2C總線的軟件設計,同時說明了MCS-51系列單片機上I2C總線接口的實現數據傳輸的方法。本系統可廣泛應用于溫度控制設備、管道測漏系統以及系統監(jiān)控等。
參考文獻:
[1] MAXIM Data Sheet of MAX1069
[2] 何利民. 單片機高級教程[M]. 北京:北京航空航天大學出版社,2000.8
[3] 陳志輝. I2C總線在MCS51系列單片機數據采集系統中的實現[J]. 微計算機信息,2005年第一期
評論