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

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