本文以BASLER A202k面陣CCD攝像機的配置為目標設計嵌入式攝像機配置系統。BASLER公司提供了2種攝像機配置方案:一是利用該公司提供的攝像機配置軟件CCT+(Camera Configuration Tool Plus),二是利用該公司提供的二進制配置命令,由用戶編程實現。本文采用二進制配置命令,通過設計的嵌入式系統配置攝像機。該攝像機的二進制配置命令幀格式如下:
起始字 描述字 數據段 BCC 結束字
BCC是塊檢查字(Block Check Character),需要由用戶計算。
此外還有測試圖像命令、選擇啟動點,視頻輸出格式選擇、水平Binning和豎直Binning等命令。攝像機配置和攝像機特性的關系為:AOI(area of interesting)用于局部掃描的控制,Binning用于分辨率的控制,定時器用于曝光時間的控制等。
1 系統結構與原理
設計的攝像機配置系統所在的圖像處理系統框架。
其中RS232和RS644是控制通道所用的協議,即攝像機配置系統的通道;LVDS和Camera Link是數據通道用到的協議。
根據所在系統的通道協議和攝像機的配置命令,同時考慮到必要的人機交互,設計了攝像機配置系統3大模塊:數據處理模塊,對二進制配置命令進行必要的處理;通信模塊,通過RS232串口收發攝像機配置命令;人機接口模塊,用于對攝像機配置的調節更改以及配置參數的顯示。此外還有支持處理器工作的時鐘、電源等。
系統的工作原理為:處理器接收數據輸入,根據接收到的輸入執行相應的操作,通過串口讀寫配置命令,從而達到對攝像機的配置調節,并根據需要顯示配置參數。
2 硬件設計
由于高的性價比,單片機廣泛應用于信號檢測、信號處理、數據采集和控制系統中。設計的系統以AT89C51AC2單片機為處理器,以撥碼開關、鍵盤陣列為調節輸入,以數碼管作為顯示輸出。同時利用了鍵盤/顯示芯片Intel 8279簡化系統設計。串口芯片選用MAX232A。系統工作時鐘為11.059 2 MHz,整個系統采用+5 V單電源供電。
以下介紹開關電路、鍵盤顯示電路的設計和功能分配;串口電路和其他電路為單片機系統的常規電路,故此從略。
2.1 開關電路
利用單片機P1口的直接輸入/輸出功能,接開關和LED,單片機復位時,P1口皆為高電平,常態為高電平,LED不亮。當某一開關接通時,對應的P1.i口被拉成低電平,對應的LED亮。
2.2 鍵盤/顯示電路
Intel 8279有鍵盤處理和自動顯示功能。在8279內部有2個RAM:一是鍵盤FIFO堆棧/傳感器RAM,具有自動消抖動和雙鍵互鎖功能;另一個是顯示RAM,最多可為16個數碼管提供RAM。
設計的系統需要用到6個數碼管,因此需要擴展8279的掃描輸出線。選用3~8譯碼器74LS138來擴展,同時設8279的工作方式為外部譯碼方式。由于8279的驅動能力較弱,采用74ls06驅動。數碼管編號為D0~D5。D0和D5分別表示顯示數據的最低位和最高位,其余類推。
3 軟件設計
軟件系統的總體思想如下:首先對單片機和8279進行初始化,然后通過單片機,把不需要調整的命令送到攝像機對攝像機進行控制;再寫進另一部分命令,先給一定的初值,送到攝像機,可以根據需要隨時通過鍵盤進行調整,這部分命令一直存儲于單片機的RAM。然后單片機不斷查詢鍵盤和開關,一旦有動作,就調用與動作相對應的子程序進行相應的處理。
3.1 存儲單元的分配
AT89C51AC2內部有256 b的片內RAM,其中有一半為特殊寄存器,剩下的另一半可供用戶自由使用。128 b的RAM不能存儲所有的攝像機配置命令。為簡化電路,硬件電路不外接RAM,系統采用分時復用策略使用這128 b的RAM。RAM的分配如下:00h到07h是寄存器R0到R7。08h到0fh用以傳送開關命令和暫存從攝像機讀回的命令;10h到15h用以暫存經過調整要傳送給8279的顯示RAM的數據;16h到18h用以暫存從命令幀中提取的數據;19h到1ch用以暫存命令數據的上下限。20h之后的RAM,用以存放經常調整的攝像機配置命令。
3.2 數據處理
3.2.1 顯示預處理
從攝像機讀回的命令中提取的命令值在寫進8279顯示RAM之前要做一定的調整。為簡化程序,在顯示子程序中,數據的顯示代碼(共陰極)只列了從00h到0fh的16個。而命令值的一個字可以是00fh到ffh中的任意一個,從10h到ffh的數值必須轉換為00h到0fh的組合來顯示,如ffh一個字變為兩個字:0fh和0fh。
3.2.2 數據判限和計算
對于大部分的攝像機配置命令,數據段的值只有在一定的范圍內或是一定值的組合時才是有效的。但是攝像機本身并不執行這些數據限制的檢查。這項功能由軟件編程實現。數據計算包括數據值的加一操作和數據值的減一操作。
3.2.3 BCC計算
BCC是命令幀中的描述字段和數據段的按位異或和(XOR),需要在數據處理中計算。
3.3 人機接口
人機接口的軟件設計主要是8279的3個基本程序:一是8279初始化程序,二是顯示程序,三是鍵盤處理程序。初始化程序主要是送入各種命令字,給8279送鍵盤/顯示方式命令、分頻系數命令和清除命令等,在主程序的初始化部分被調用。顯示程序和鍵盤處理程序在主程序的按鍵查詢部分被調用。
3.4 串口通信
在RAM中開辟發送數據存儲區,首址為feedback(開關操作實現)和comdata(鍵盤操作實現),接收數據的首地址為feedback(與發送分時復用)。用R0存儲數據發送的地址;用R1存儲發送數據的字節數;用R2存儲待發送數據的地址;用R3存儲待發送數據的字節數。單片機把數據從接收緩沖器中讀出和把數據寫入發送緩沖器。通過檢測是RI置位,還是TI置位來決定單片機是進行發送操作還是進行接收操作。發送和接收都是通過調用相應的子程序來完成。
4 實驗結果
本文的設計在Protel Dxp(硬件設計)和偉福編譯器上(軟件設計)實現。利用本文設計的攝像機配置系統結合實驗室研制的DSP圖像采集處理器實現了對BASLERA202k面陣CCD攝像機的實時參數配置調節,為采集高質量的實時圖像提供了有力的保證,滿足了工程的應用需要。
5 結 論
利用介紹的數字攝像機二進制編程配置方法,以Basler A202K面陣CCD攝像機的配置為對象設計了基于單片機的嵌入式數字攝像機配置系統。該系統可作為嵌入式圖像采集和處理系統的子系統,通過少量軟件修改可應用于其他攝像機的配置。
-
單片機
+關注
關注
6037文章
44563瀏覽量
635862 -
嵌入式
+關注
關注
5085文章
19138瀏覽量
305684 -
寄存器
+關注
關注
31文章
5355瀏覽量
120513
發布評論請先 登錄
相關推薦
評論