ADuC845單片機和PTR2000的無線數據采集系統設計
3.2 LED顯示與鍵盤電路設計
LED顯示與鍵盤電路的設計主要是用于采集、顯示、打印等操作。ZLG7289是一片具有串行接口,可同時驅動8位共陰式數碼管的智能顯示驅動芯片。該芯片同時還可連接多達64鍵的鍵盤矩陣,單片即可完成LED顯示、鍵盤接口的全部功能,且不占用單片機系統資源。
電路的兩個下拉電阻R1、R2阻值為100 kΩ,8個按鍵與位選線DIG0~DIG7相連的8只電阻為位選電阻。SG~DP引腳為行掃描輸出,DIG7~DIG0引腳為列掃描輸出。LED顯示與鍵盤電路如圖5所示。本文引用地址:http://www.j9360.com/article/194455.htm
4 軟件設計
根據數據采集系統的功能要求,進行系統軟件的設計。包括主程序部分和子程序部分,主程序部分主要完成系統對各個硬件的初始化工作,子程序主要是完成和單片機進行交互并實現本部分的功能。主程序流程如圖6所示。
子程序包括A/D轉換、LED顯示與鍵盤、通信模塊和無線收發模塊等。數據采集子程序用來啟動A/D轉換,將采集值存放在內部RAM以及將采樣值送入顯示緩存區。ADC的設置和控制是通過專用寄存器中的一組寄存器來實現的,在進行數據采集時可以采取每隔一段時間采集一次、采集多次取平均值的方法來減小系統帶來的誤差。A/D數據采集流程如圖7所示。
編寫ADC程序中的主要函數有:
◆ void InitTIATION(),主要功能是端口初始化、主要包括初始化ADC、RAM、讀寫初始化;
◆ void ADC_Int(),ADC初始化函數;
◆ void Delay(),延時功能;
◆ void Extern_Interrupt_Open(),開外部中斷函數;
◆ void Extern_Interrupt_Close(),關外部中斷函數;
◆ void ADC_Conversion_Start(),A/D轉換啟動函數。
顯示子程序負責將顯示緩存區的數據進行顯示。監控子程序負責系統的正常運行,以及調用各種子程序和管理中斷服務程序。系統的通信發送子程序負責與PC機的通信和發送采集的數據。PC機通信接收子程序負責接收單片機發送來的數據并處理。
5 結論
數據采集系統充分利用ADuC845具有多通道高速數據采集特性,實現了對溫度、濕度、壓力等信號的采集和處理功能;ADuC845具有2個獨立的高分辨(24位)的A/D轉換器,溫漂和失調系數都很小,符合高速數據采集系統的要求。PTR2000無線數據傳輸模塊是一種超小型、低功耗、高速率的無線收發傳輸模塊,通過PTR2000無線傳輸芯片,構建了一個數據采集、處理、顯示、控制為一體的無線數據采集系統。該系統具有精度高、速度快、成本低等優點。
評論