多慣組脈沖輸出同步計數系統設計
3 系統軟件設計
3.1 CY68013的固件程序設計
擔任著一個系統最基礎工作的程序才可稱之為固件程序,比如計算機主板上的BIOS。固件程序的作用就是輔助硬件完成預期的設備功能。如下圖7所示,同件程序在CY68013上電之后,首先通過調用TD_Init()函數來完成對多個狀態寄存器的配置。接著,固件程序會不停檢查FIFO中寫入的數據大小,當足夠一包的數據時自動發送數據包。當發生最后一包的數據不足一包的大小時,INPKTEND引腳在接收到信號后會強制打包上傳FIFO中的數據。本文引用地址:http://www.104case.com/article/189660.htm
3.2 應用程序設計
應用程序的開發采用MFC框架來設計應用程序,實現從USB芯片的FIFO中讀取一定大小的數據包并進行實時的處理,以及在用戶界面上實時地顯示數據。由于文巾的數據包為每4ms的實時數據,數據包讀取頻率很高,因此.應用程序采用多個函數連續讀取多個數據包以后再去啟動數據處理和顯示的線程,通過實驗發現這樣可以有效地降低數據處理線程的啟動頻率,保證MFC應用程序的穩定運行。首先,對所有的函數類進行初始化,并調用Win32函數CreateFile來得到設備句柄,根據設備句柄來連接USB設備。通過接收USB總線的數據包,來獲得實時的數據。然后,再對實時的4ms的數據進行處理,求出每秒的脈沖數并進行實時的顯示和保存為txt文檔。應用程序數據采集流程圖如圖8所示。
4 實驗結果
本系統的測試實驗是使用SP1641D信號發生器作為脈沖信號源,將此單路脈沖信號使用多路開關板擴展為48路同源的脈沖信號,當信號源輸出信號為771Hz方波信號時,測量結果以及應用程序界面如圖9所示。圖中T (S)為測試進行中的實時時間,其它各列為對應的4個慣導組件的48路的脈沖計數值。通過實驗驗證,本系統能夠滿足對4個慣導組件的48路脈沖信號進行多路同步計數的要求。
5 結束語
文中改進后的測試系統,具有操作簡單,穩定性及實時性好等特點,該系統設計可作為慣導組件的新型測量設備,提高慣導組件測試系統的效率,并且能自動輸出數據文檔,方便操作和管理。SlaveFIFOs模式可以有效使用USB2.0的帶寬,很好地滿足了在數據傳輸速度上的要求。VC與Matlab的混編充分利用了兩個編程語言各自的優勢。
評論