通用線(xiàn)陣CCD采集系統設計
2.3 軟件設計
軟件設計主要包括3方面工作:USB驅動(dòng)程序設計、動(dòng)態(tài)鏈接庫設計以及應用處理軟件設計。
2.3.1 USB驅動(dòng)程序設計
EZ-USB提供的FPD(通用設備驅動(dòng)程序)是一個(gè)通用的設備驅動(dòng)程序。利用Microsoft WDM DDK和Visiual C++5.0以上版本就可以修改和編譯驅動(dòng)程序,生成文件ezusb.sys。具體操作如下:①修改驅動(dòng)程序的PID。在工程里EzUsbDevice.cpp文件中修改PID.VID延用0x0547不變,PID自行設定。②利用hex2c.exe將USB固件Intel HEX記錄格式的代碼文件轉換為C文件,打開(kāi)該C文件,用其中的firmware[]數組代替在工程里zUsbFirmware.cpp文件中提供的數組。③編譯生成ezusb.sys文件并編寫(xiě)相應的INF文件。
2.3.2 動(dòng)態(tài)鏈接庫設計
動(dòng)態(tài)鏈接庫主要是通過(guò)I/O控制調用來(lái)訪(fǎng)問(wèn)EZ-USBGPD。通過(guò)調用CreateFile()來(lái)取得訪(fǎng)問(wèn)設備驅動(dòng)程序的句柄,然后使用DeviceIoControl()提交不同I/O控制碼,從而完成USB的控制和輸入/輸出操作。
2.3.3 應用處理軟件設計
應用軟件通過(guò)訪(fǎng)問(wèn)動(dòng)態(tài)鏈接庫(DLL)獲取采集譜線(xiàn)數據,其主要功能有顯示、設置積分時(shí)間、定格譜線(xiàn)、保存、捕捉、局部放大、添加譜線(xiàn)。
3 測試結果
采用通用CCD采集系統分別對3款CCD進(jìn)行驅動(dòng)和采集。這3種CCD的參數如表2所示。使用應用軟件EMSpectro采集上述CCD譜線(xiàn),采集效果如圖4所示。

4 結束語(yǔ)
采用該系統對3種不同型號CCD成功驅動(dòng)并采集,測試結果達到了預期的效果。系統體積小、功耗低、兼容性好、可擴展性高。該系統已成功應用于實(shí)驗室開(kāi)發(fā)CCD相關(guān)項目中。
評論