論文重點介紹了基于采集芯片 TLC2543和USB接口芯片PDIUSBD12的數據采集監控系統的硬件和軟件設計。此系統采用主從式結構,上位機軟件采VC++.NET2005編寫,對系統實現監控;下位機以AT89S52單片機為核心 , 通過A/D轉換芯片TLC2543進行采集轉換 ,最后將數據傳送。上位機與下位機采用PDIUSBD12接口方式進行通信。
引言
隨著現代電子技術的發展 ,單片機的可靠性和高性價比 ,使它成為控制系統、智能儀表和數據采集等各個領域發展的主流。在當今工業生產和科學研究的各行業中 ,經常會遇到利用微機控制,需要輸入各種模擬信號的情況,這時需要進行 A/D轉換。在某些實際項目中,為了采集某些模擬量而選用一些數據采集卡 ,其特點是:可擴展性差、安裝麻煩、易受機箱內環境的干擾,在許多場合尤其是便攜式應用場合不適用。USB是為解決計算機外設種類日益增加與有限的主板插槽和端口的矛盾,由 Intel、Microsoft、IBM及 NEC共同制定的微機總線接口規范。當前的計算機外部設備,都在追求高速度和高通用性,USB總線接口技術適用了這種要求,并以速度快、使用方便、成本低、可靠性高等優點,使外設向 USB過渡成為必然趨勢。
1 系統體系結構
基于 AT89S52的數據采集系統的體系結構如圖 1所示。系統的工作過程就是一個數據采集的過程 ,其中的每一步都需要不同組的支持。首先 ,溫度和壓力參數經傳感器轉換成模擬信號,模擬信號經過 A/D轉換芯片 TLC2543變為單片機可識別的數字信號。單片機將數字信號進行處理之后,就可以送往 LED顯示或者通過 USB接口發送給上位機 ,同時如果檢測出現了異常,通過蜂鳴報警模塊來加以警示。系統也可以通過按鍵來設定相關的操作。USB接口在主機需要的時候把接收到的數據發送給主機進行處理和顯示,同樣主機也可以通過USB口對下位機進行控制。
2.1 采集模塊設計
TLC2543是一種開關電容結構的逐次逼近式 A/D轉換器,片內提供轉換時鐘,12位或 8位串行數據輸出。可采集 11路模擬輸入電壓 ,由片內多路開關選通,并采樣保持。在本芯片工作溫度(0℃ ~70℃)范圍內 ,A/D轉換時間 10微秒,具有單+5V電源工作的一大優點。通過對該芯片內數據輸入寄存器的編程,可實現:僅輸出轉換的高 8位或 12位、輸出二進制數的格擴展存儲器 PDIUSBD12 USB通信式為無符號數或有符號數、是最高有效位( MSB)導前輸出還是最低有效位( LSB)導前輸出。采集模塊電路如圖 2所示。89S52單片機的 P1.0、P1.1與 P1.2作輸出,其中 P1.0模擬片選,P1.1產生時鐘輸出 ,P1.2輸出地址與控制信息。TLC2543C數據輸出寄存器中的數據通過 P1.3輸入單片機 ,轉換結束信號通過 P1.4進入單片機并被查詢。
2.2 USB接口電路設計
PDIUSBD12是飛利浦公司推出的一款高性價比的 USB固件,完全符合 USB 1.1的協議規范,自帶并行接口,可與多種 MCU相結合。其硬件接口如圖 3所示。另外,它還支持本地的 DMA傳輸,為微控制系統與 PC機進行大規模數據傳輸提供了解決方案。PDIUSBD12所具有的掛起低功耗功能,可以滿足 USB電源管理的要求,可使其應用于使用總線供電的外部設備。此外,它集成了內部上拉電阻、連通指示等功能。AT89S52控制器與 PDIUSBD12通過 8位并行總線連接(采用地址總線與數據總線復用的方式),采用 MCU與 PDIUSBD12結合的形式實現 USB數據的高速傳輸,使系統變得形式靈活、編程簡潔、成本低廉。
2.3 顯示模塊及存儲器擴展設計系統的顯示是使用 MAX7219實現的 8位穩定靜態顯示 ,MAX7219是串行共陰極數碼管動態掃描顯示驅動芯片,僅使用3線串行接口傳送數據 ,可直接與單片機接口,用戶還可以方便地修改其內部參數以實現多位 LED顯示,因此可以方便地使用單片機的 USB口送出顯示數據,并且其占用的時間少,方便編程及對信號的檢測。
存儲器擴展采用了 8片 8K的 6264芯片。他們通過地址所存芯片 74LS373和譯碼芯片 74LS138進行地址的所存和芯片的選擇。采用 A0-A12作為它們的地址線 ,A13-A15作為 74LS138芯片的 3個引腳 ,用來與 8片 6264的選通信號相連。因此 ,第一片 6264的地址對應范圍是:0000H-1FFFFH;第二片為 2000H-3FFFH,依次類推,第 7片 6264對應的地址范圍是 E000-FFFFH。
3 軟件部分設計
3.1 系統軟件算法
采集系統的主要功能是采集各模擬量輸入通道的數據 ,并將收到的信息進行存儲。程序結構分為主程序和中斷程序 ,其中包括初始化、信號的采集和數據處理顯示輸出。初始化包括定時器、終端系統、工作狀態和 USB接口的初始化等。系統每隔 20ms采集一次信號 ,保證對信號有很好的跟隨性。在下位機固件程序中 ,在設備接入主機后 ,首先對下位機進行系統初始化,然后進行 USB連接,被主機識別并能正常驅動,進入正常使用狀態,等待數據傳輸。如果有 PC數據傳輸,則調用通訊模塊接收數據,并將數據存入下位機存儲器,然后調用讀數據模塊與顯示模塊進行顯示;否則直接執行讀數據模塊并調用顯示模塊進行顯示(顯示上次存儲的數據)。系統軟件的流程圖如圖4所示。
3.2 基于 TLC2543的軟件編程
將采集程序編成一個子摸塊 ,由主程序訪問。由主程序確定采集模擬通道、采集次數以及數據處理 ,并對子程序進行帶參調用。由子程序完成查詢式轉換 ,首先查詢轉換結束信號 , 若轉換結束則執行 I/O操作,并啟動下一次轉換 ,最后將轉換結果作為出口參數返回到主程序。
本文的創新點是由TLC2543和AT89S52單片機組成的數據采集監控系統結構簡單、接口方便、集成度高、可靠性強、功能豐富;其次,通過USB接口與PC機連接不僅使數據存儲量大,而且更易于進行數據處理,經濟簡單, 采樣數據精度較高 ,在實際應用中有較高的實用價值。設計TLC2543和AT89S52單片機組成的數據采集監控系統和 VC++.NET語言組成的上位機,在數據監測系統在傳感器接收外界信號的同時對信號進行轉換、采集、通信和圖形顯示輸出, 實時反映傳感器的信號變化和理解被測目標的新特性 , 是現場監控、信息預報的必要方法,在應用方面有很大的現實意義。
-
數據采集
+關注
關注
38文章
6073瀏覽量
113635 -
AT89S52
+關注
關注
9文章
358瀏覽量
87836 -
TLC2543
+關注
關注
3文章
42瀏覽量
23077
發布評論請先 登錄
相關推薦
評論