基于串行接口方式單片機通用數據采集系統設計
1 引言
本文引用地址:http://www.104case.com/article/171818.htm在傳統微機化的數據采集系統中,均是以總線方式來擴展各功能部件,如A/D轉換器、程序存儲器、數據存儲器、日歷/時鐘器件、顯示器件及微型打印機等,由三總線方式構成的數據采集系統,突出的問題是由于總線引出,易受干擾,造成系統的可靠性降低,同時也帶來了布線密度高,占用電路板空間大,外圍元件較多,時序復雜等問題。近年來隨著片內具有FLASH存儲器的非總線型單片機及具有串行接口的外圍器件的推出,使得設計出基于串行接口方式的數據采集系統成為可能。
2 硬件結構
基于串行接口方式的單片機通用數據采集系統硬件系統框圖如圖1所示。
圖1 串行接口方式單片機數據采集系統框圖
本系統根據實際采集數據的需要,分別設計了模擬量采集接口電路、開關量采集接口電路、數字量采集接口電路及頻率量采集接口電路,基本涵蓋了各種數據信息的采集。為了將采集的信息保存下來,擴展了一片容量為64K字節的E2PROM AT24C512,為實現數據的定時采集和按時間日期保存數據而擴展了一片實時時鐘日歷芯片SD2001E,為便于輸入各種數據而擴展了鍵盤接口管理器件 SK5278,為便于實時顯示采集的數據及人機交互而擴展了中文液晶圖文顯示器OCMJ4X8C,為便于將采集的數據打印輸出而擴展了MP-A16-8型漢字微型打印機,為便于將采集的數據傳送給上位計算機進行數據的處理分析而使用MAX232擴展了RS-232接口,下面對上述各串行接口器件予以介紹。
2.1 模擬數轉換器TLC2543
TLC2543是具有11個模擬量輸入通道,12位分辨率的A/D轉換器,因而本系統最多可實現11路模擬量的采集任務,為了保證測量結果的準確性,該器件具有3路內置自測試方式,可分別測試REF+高基準電壓值,REF-低基準電壓值和REF+/2值,該器件的模擬量輸入范圍為REF+-REF-,一般模擬量的變化范圍為0-5V,但為了能滿足一些傳感器輸出的非標準電壓值的數據采集任務,這里利用了TLC2543的基準電壓設定功能,設計了模擬量輸入范圍設定調整電路,采用電阻分壓的方式設定采集基準電壓值。其中R1和RP1用于設定滿度電壓值,調整RP1可使滿度電壓值在1/2VDD-VDD之間變化,R2和RP2用于設定零值電壓,調整RP2可使零基準電壓在0-1/2 VDD之間變化,RP1和RP2應采用多圈精密電位器。TLC2543的基準電壓設定功能,使得本系統可滿足各種非0-5V標準輸出的傳感器數據采集任務,TLC2543與單片機的接口采用4線SPI串行接口,三個控制輸入端分別為“CS”(片選)輸入/輸出時鐘(CLK)及地址輸入端“DI”,片內的 14通道多路器可以選擇11個輸入端的任何一個或3個內部自測電壓中的一個且采樣保持是自動完成的,轉換結束后“EOC”輸出變高,轉換結果由三態輸出端 “DO”輸出,AT89C52單片機與TLC2543的硬件接口電路如圖2所示。
2.2 I/O擴展器GM8164
為了實現開關量采集及開關量輸出控制的功能,這里使用了一片具有大量I/O擴展功能的串行芯片GM8164,該器件的主要特點如下:
圖2 單片機與TLC2543的硬件接口電路
⑴擴展I/O口數量眾多,可提供32位數據輸入口和40位數據輸出口;
⑵同時提供8個開漏輸出口,方便電平轉換和驅動;
⑶可達1MHz的全速率同步串行接口,非常方便與通用MCU接口;
⑷可多個芯片級聯,擴展I/O口的數量;
評論