應(yīng)用CPLD及EPP技術(shù)對CCD信號像素級的高速采集
采集系統(tǒng)的驅(qū)動程序
VC++對底層的操作能力非常強(qiáng)大,可以方便地實(shí)現(xiàn)對并行口的讀寫及操作,而且后期對采集的信號進(jìn)行分析處理也非常方便,通過VC++封裝動態(tài)鏈接庫(DLL)作為采集系統(tǒng)的驅(qū)動程序,主要封裝以下幾個函數(shù)。
BOOL PASCAL EXPORT PTC_Open (PTC_HANDLE *phPTC);//打開并行口
void PASCAL EXPORT PTC_Close(PTC_HANDLE hPTC);//關(guān)閉并行口
BYTE PASCAL EXPORT PTC_Readdata (PTC_HANDLE hPTC);//讀取并行口數(shù)據(jù)寄存器
void PASCAL EXPORT PTC_Writedata (PTC_HANDLE hPTC, BYTE data);//寫并行口數(shù)據(jù)寄存器
BYTE PASCAL EXPORT PTC_Readstatus (PTC_HANDLE hPTC);//讀取并行口狀態(tài)寄存器
BYTE PASCAL EXPORT PTC_Readcontrol (PTC_HANDLE hPTC); //讀取并行口控制寄存器
void PASCAL EXPORT PTC_Writecontrol (PTC_HANDLE hPTC, BYTE data);//寫并行口控制寄存器
詳細(xì)的代碼由于篇幅關(guān)系不再一一列舉了。
結(jié)束語
利用CCD信號的采集脈沖信號和數(shù)據(jù)輸入信號的同步性,采集卡可以實(shí)現(xiàn)對CCD信號的每個像素進(jìn)行采集,使得采集數(shù)據(jù)達(dá)到很高的精度,而且可以通過靈活地更改CPLD的主控電路來實(shí)現(xiàn)FIFO不同的讀取方式,滿足不同工作的要求。此外FIFO的速度和精度都非常高,可以通過更換高速、高精度的AD來達(dá)到更好的采集效果。最好通過并行口和計算機(jī)通信,避免了計算機(jī)內(nèi)部電路對CCD信號的影響,也大大改善了采集的效果。
評論