單片機控制的多參數實時采集與處理系統設計
ADC0809內部結構如圖2所示。啟動ADC0809進行A/D轉換,首先輸入3位地址信號,并使ALE為高電平,將地址存入地址鎖存器中,經譯碼器譯碼選通8路模擬輸入之一到比較器;START上升沿將逐次逼近寄存器復位,下降沿啟動A/D轉換,EOC輸出信號變低,指示轉換正在進行。直到EOC變為高電平,表示A/D轉換結束,轉換結果存入鎖存器。當OE輸入高電平時,輸出三態門打開,轉換結果的數字量輸出到數據總線上。
1.2 鍵盤及顯示模塊
參數采集與處理系統的人機交互采用2×8矩陣鍵盤和靜態數碼管顯示,如圖3所示。設計上為節省單片機I/O口線,人機交互采用兩條線控制,利用模擬開關CD4052切換,控制鍵盤和數碼管的數據信號。本文引用地址:http://www.104case.com/article/173381.htm
1.3 串行通信模塊
由于單片機和PC機使用不同的邏輯電平,在設計串行接口電路時,必須考慮電平的匹配、驅動能力的匹配、元器件的選擇以及其它電氣特性。PC機通常有兩個標準的RS232串行口,為了提高抗干擾能力,這種接口采用EIA電平邏輯,如表1所示。
為實現單片機與PC機電平兼容,單片機與PC機通訊時,必須經過電平轉換。通常使用MCl488租MCl489芯片實現電平轉換,但這兩種轉換芯片組成電路結構復雜,電源需±12V電源供電,工作不穩定,易燒壞芯片。本設計使用MAX232集成電路芯片,僅用+5V供電,其內部有兩組電壓轉換電路,外圍電路配上4個升壓電容,實現在EIA電平和TTL電平之間互相轉換,具有電路結構簡單、元器件數量少、電源單一、功耗低等特點,MAX232芯片組成的串行接口電路如圖4所示。
AT89C52單片機內有一個可編程、全雙工的串行口,串行收發的數據在通訊時,通過特殊功能寄存器SFR的串行數據緩沖器SUBF實現數據交換,故可做多機通訊,特別適合于終端和系統主機間的通訊。
1.4 單片機與A/D接口模塊
單片機采用ATMEL公司生產的AT89C52單片機。它采用先進工藝制造,具有高性能的MCS51內核設計,帶有非易失性Flash程序存儲器,是一種高性能、低功耗的8位CMOS微處理芯片,市場應用廣泛,在實現信號采集、數據處理、串行傳輸、實時控制等有較大優勢。
本設計采用查詢法采集數據,合理分配單片機的資源,大部分時間單片機用來運行控制程序,只有在采集時間到來時單片機才用來執行采集程序。圖5所示為ADC0809與單片機的接口電路,需要采集數據時,單片機首先輸出地址信號,指定采集的通道,接著使ALE和START為高電平,啟動A/D轉換,然后單片機處理其它事務,稍后查詢EOC是否為高電平,若為高電平,轉換結束,需要讀取轉換結果時,發送讀取命令使OE為高電平讀取轉換結果,存入指定單元,供數碼管顯示和上傳給PC機。
評論