一種工業(yè)級數(shù)據(jù)采集監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
2.2 USB接口電路設(shè)計(jì)
PDIUSBD12是飛利浦公司推出的一款高性價比的 USB固件,完全符合 USB 1.1的協(xié)議規(guī)范,自帶并行接口,可與多種 MCU相結(jié)合。其硬件接口如圖 3所示。另外,它還支持本地的 DMA傳輸,為微控制系統(tǒng)與 PC機(jī)進(jìn)行大規(guī)模數(shù)據(jù)傳輸提供了解決方案。PDIUSBD12所具有的掛起低功耗功能,可以滿足 USB電源管理的要求,可使其應(yīng)用于使用總線供電的外部設(shè)備。此外,它集成了內(nèi)部上拉電阻、連通指示等功能。AT89S52控制器與 PDIUSBD12通過 8位并行總線連接(采用地址總線與數(shù)據(jù)總線復(fù)用的方式),采用 MCU與 PDIUSBD12結(jié)合的形式實(shí)現(xiàn) USB數(shù)據(jù)的高速傳輸,使系統(tǒng)變得形式靈活、編程簡潔、成本低廉。
2.3 顯示模塊及存儲器擴(kuò)展設(shè)計(jì)系統(tǒng)的顯示是使用 MAX7219實(shí)現(xiàn)的 8位穩(wěn)定靜態(tài)顯示 ,MAX7219是串行共陰極數(shù)碼管
動態(tài)掃描顯示驅(qū)動芯片,僅使用3線串行接口傳送數(shù)據(jù) ,可直接與單片機(jī)接口,用戶還可以方便地修改其內(nèi)部參數(shù)以實(shí)現(xiàn)多位 LED顯示,因此可以方便地使用單片機(jī)的 USB口送出顯示數(shù)據(jù),并且其占用的時間少,方便編程及對信號的檢測。
存儲器擴(kuò)展采用了 8片 8K的 6264芯片。他們通過地址所存芯片 74LS373和譯碼芯片 74LS138進(jìn)行地址的所存和芯片的選擇。采用 A0-A12作為它們的地址線 ,A13-A15作為 74LS138芯片的 3個引腳 ,用來與 8片 6264的選通信號相連。因此 ,第一片 6264的地址對應(yīng)范圍是:0000H-1FFFFH;第二片為 2000H-3FFFH,依次類推,第 7片 6264對應(yīng)的地址范圍是 E000-FFFFH。 3 軟件部分設(shè)計(jì)
3.1 系統(tǒng)軟件算法
采集系統(tǒng)的主要功能是采集各模擬量輸入通道的數(shù)據(jù) ,并將收到的信息進(jìn)行存儲。程序結(jié)構(gòu)分為主程序和中斷程序 ,其中包括初始化、信號的采集和數(shù)據(jù)處理顯示輸出。初始化包括定時器、終端系統(tǒng)、工作狀態(tài)和 USB接口的初始化等。系統(tǒng)每隔 20ms采集一次信號 ,保證對信號有很好的跟隨性。在下位機(jī)固件程序中 ,在設(shè)備接入主機(jī)后 ,首先對下位機(jī)進(jìn)行系統(tǒng)初始化,然后進(jìn)行 USB連接,被主機(jī)識別并能正常驅(qū)動,進(jìn)入正常使用狀態(tài),等待數(shù)據(jù)傳輸。如果有 PC數(shù)據(jù)傳輸,則調(diào)用通訊模塊接收數(shù)據(jù),并將數(shù)據(jù)存入下位機(jī)存儲器,然后調(diào)用讀數(shù)據(jù)模塊與顯示模塊進(jìn)行顯示;否則直接執(zhí)行讀數(shù)據(jù)模塊并調(diào)用顯示模塊進(jìn)行顯示(顯示上次存儲的數(shù)據(jù))。系統(tǒng)軟件的流程圖如圖4所示。
評論