《電子技術應用》
您所在的位置:首頁 > 測試測量 > 設計應用 > 通用線陣CCD采集系統設計
通用線陣CCD采集系統設計
摘要: 隨著微型光譜儀快速發展,CCD和PDA廣泛使用,CCD和PDA的種類型號越來越多,每種型號都需要專門的驅動采集板,使得開發產品周期長、費用大。這里提出一種基于FPGA和USB的通用CCD采集系統設計方案。該系統在不改變硬件的情況下可以采集多種CCD,并上傳至PC機,使用軟件處理采集到的數據。
Abstract:
Key words :

 

1 引言
  隨著微型光譜儀快速發展,CCD和PDA廣泛使用,CCD和PDA的種類型號越來越多,每種型號都需要專門的驅動采集板,使得開發產品周期長、費用大。這里提出一種基于FPGA和USB的通用CCD采集系統設計方案。該系統在不改變硬件的情況下可以采集多種CCD,并上傳至PC機,使用軟件處理采集到的數據。

2 通用CCD采集系統設計
  系統部署圖如圖1所示。系統硬件分為接口板、通用驅動采集板、計算機。接口板匹配驅動信號,將CCD輸出視頻信號通過前置處理后鏈接到CCD通用采集板。在CCD通用采集板中,A/D轉換器對視頻信號進行模數轉換后,按幀暫存在FPGA內的FIFO中,通過USB快速塊傳輸模式上傳到計算機中.最后計算機軟件MEMSpector處理并顯示采集到的譜線。




  

  通用性是由通用CCD驅動模塊和16In8Out異步FIFO實現的。根據不同類型的CCD編制不同的CCD驅動模塊,采用16In8Out異步FIFO,FIFO根據CCD驅動模塊提供的FS幀同步來確定暫存A/D轉換一幀像元數,實現了采集A/D轉換數據與USB傳輸的分離,在修改或升級CCD驅動時,無需修改采集和數據輸出代碼,實現了通用性。
2.1 CCD接口板
  由于大多數CCD管腳不兼容,視頻輸出電壓也不同。CCD接口板提供CCD插座和轉接CCD驅動信號以及輸出信號電壓匹配。CCD接口板是各種類型CCD鏈接到通用CCD采集板的紐帶。

 

 

2.2 通用驅動采集板
  通用驅動采集板由A/D轉換、FPGA(通用CCD驅動器模塊和16In8Out異步FIFO模塊)、USB 3部分組成。A/D轉換部分完成系統的A/D轉換;FPGA部分完成系統的CCD驅動、數據采集、CDS實現;USB部分完成數據的傳輸。
2.2.1 A/D轉換部分
  系統需采集多種CCD并實現CDS,而且系統主要由USB供電,這就要求A/D轉換速度快,供電電壓低,最好參考電壓內置。AD9235-40屬于12位、40 MS/s模數轉換器系列,采用3 V單電源供電,該系列均內置一個高性能采樣保持放大器(SHA)和基準電壓源。AD923540采用多級差分流水線架構,內置輸出糾錯邏輯,在40 MSP/S數據速率時可提供12位精度,并保證在整個工作溫度范圍內無失碼。
  FPGA中采集信號發生器提供A/D采集時鐘,同時也控制FIFO和CCD驅動器。A/D采樣速率不再受數據傳輸和采集制約,采樣速率完全和CCD速度匹配。并可實現1幀內1個像元的雙采樣,從而實現CDS。
2.2.2 FPGA部分的通用CCD驅動器模塊
  由于不同生產商的CCD器件的驅動時序往往差別很大,因此需針對每種CCD器件編制其CCD驅動器模塊。驅動時鐘和采集脈沖由分頻器和采集信號發生器提供,如圖2所示。

 



  CCD驅動器輸入信號由兩路驅動時鐘和積分時間控制信號INT組成;輸出信號由幀同步信號FS和CCD Driver信號組成。不同的CCD驅動器模塊僅CCD Driver信號有所不同,其他接口一樣。在改變CCD時只需替換CCD驅動器模塊即可。
2.2. 3 FPGA部分的16In8Out異步FIFO
  FIFO用于暫存A/D轉換的信號。待存滿1幀并且USB塊傳輸空閑后,將FIFO中的1幀數據通過快速塊傳輸上傳至計算機。1幀的像元個數由CCD驅動模塊提供的FS信號決定。FIFO內的存儲空間為192 Kb。滿足線陣CCD和小型面陣CCD的數據存儲需求。圖3為16In8Out異步FIFO的內部原理圖。



 

 

  圖3中,FS是幀同步,在FIFO中重置暫存指針,DataIN是暫存數據采集完畢信號,DataRdy是判斷USB是否空閑信號,ADclk是FIFO的寫信號,16BitIN是FIFO的讀16位入口,讀取A/D信號,這里兼容16位,本設計只用12位,其他4位空閑。8BitOUT是FIFO的8位輸出口,RD是FIFO的讀出時鐘信號。在FIFO中讀入的16位信號分高低位分別存儲在2個8 bit存儲器中,在輸出時,按先高后低的順序輸出,從而完成16In8Out的轉換,部分實現代碼如下:
 

  

  在信號FS的控制下,FIFO不斷地對整幀信號進行刷新,當USB傳輸信號到來時,刷新當前幀完畢后,開始USB快速讀入操作。
2.2.4 USB部分
  USB采用Cypress公司的AD2131Q,其核提供一種快速傳輸模式.改進8051的外部邏輯與同步/塊端點緩沖器之間的傳輸速度。將FASTXFR寄存器設置為01010000B,讀寫選通時序模式為10,提供更寬的脈沖寬度,便于讀取FPGA的異步FIFO信號。FIFO存儲滿1幀數據,由USB器件使用快速塊傳輸上傳到計算機,約6 ms完成。表1為塊傳輸傳一個像元數據所用匯編程序對比。

 

 

 

2.3 軟件設計
  軟件設計主要包括3方面工作:USB驅動程序設計、動態鏈接庫設計以及應用處理軟件設計。
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[]數組代替在工程里zUsbFirmware.cpp文件中提供的數組。③編譯生成ezusb.sys文件并編寫相應的INF文件。
2.3.2 動態鏈接庫設計
  動態鏈接庫主要是通過I/O控制調用來訪問EZ-USBGPD。通過調用CreateFile()來取得訪問設備驅動程序的句柄,然后使用DeviceIoControl()提交不同I/O控制碼,從而完成USB的控制和輸入/輸出操作。
2.3.3 應用處理軟件設計
  應用軟件通過訪問動態鏈接庫(DLL)獲取采集譜線數據,其主要功能有顯示、設置積分時間、定格譜線、保存、捕捉、局部放大、添加譜線。

3 測試結果
  采用通用CCD采集系統分別對3款CCD進行驅動和采集。這3種CCD的參數如表2所示。使用應用軟件EMSpectro采集上述CCD譜線,采集效果如圖4所示。





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

 

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 激情网站网址 | 日韩专区亚洲精品欧美专区 | 午夜视频高清在线aaa | 免费国产精品视频 | 中文字幕永久免费 | 午夜在线观看免费影院 | 福利所第一导航 | 亚洲欧美经典 | 国产亚洲一区二区三区在线 | 成人小视频在线观看 | 91视频导航 | 一区二区中文字幕在线观看 | 精品国产一区在线观看 | 性欧美巨大hd | 免费国产人做人视频在线观看 | 国产黄色a三级三级三级 | 免费国产h视频在线观看 | 欧美 日韩 国产在线 | 欧美在线视频观看 | 成人欧美s视频在线观看 | 成人激情免费视频 | 欧美视频精品在线观看 | 亚洲福利在线观看 | 欧美中文一区 | 九九操视频 | 欧美成人在线免费 | 国产操操 | 中文字幕一区二区三区5566 | 91精品国产免费久久国语蜜臀 | 国产精品亚洲欧美动漫卡通 | 欧美日韩在线观看精品 | 亚洲国产欧美无圣光一区 | 国产专区视频 | 欧美成人在线免费 | 香蕉视频一区二区 | 亚洲欧美一区二区视频 | 老司机在线永久免费视频观看 | 人人射人人 | 尼龙丝袜社区aaaaa视频 | 手机在线国产精品 | 天天干夜夜叭 |