<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 電源與新能源 > 設(shè)計(jì)應(yīng)用 > 嵌入式數(shù)字?jǐn)z像機(jī)配置系統(tǒng)設(shè)計(jì)

          嵌入式數(shù)字?jǐn)z像機(jī)配置系統(tǒng)設(shè)計(jì)

          ——
          作者: 時(shí)間:2007-10-19 來(lái)源:電子測(cè)量技術(shù) 收藏

            引 言

            本文以BASLER A202k面陣CCD攝像機(jī)的配置為目標(biāo)設(shè)計(jì)嵌入式攝像機(jī)。BASLER公司提供了2種攝像機(jī)配置方案:一是利用該公司提供的攝像機(jī)配置軟件CCT+(Camera Configuration Tool Plus),二是利用該公司提供的二進(jìn)制配置命令,由用戶編程實(shí)現(xiàn)。本文采用二進(jìn)制配置命令,通過(guò)設(shè)計(jì)的配置攝像機(jī)。該攝像機(jī)的二進(jìn)制配置命令幀格式如下:

            起始字 描述字 數(shù)據(jù)段 BCC 結(jié)束字

            BCC是塊檢查字(Block Check Character),需要由用戶計(jì)算。主要的配置命令及其二進(jìn)制幀格式如表1所示。

            

            

            表中02h是起始字;03h是結(jié)束字。此外還有測(cè)試圖像命令、選擇啟動(dòng)點(diǎn),視頻輸出格式選擇、水平Binning和豎直Binning等命令。攝像機(jī)配置和攝像機(jī)特性的關(guān)系為:AOI(area of interesting)用于局部掃描的控制,Binning用于分辨率的控制,定時(shí)器用于曝光時(shí)間的控制等。

            1 系統(tǒng)結(jié)構(gòu)與原理

            設(shè)計(jì)的攝像機(jī)所在的圖像處理系統(tǒng)框架如圖1所示。

            

            其中RS232和RS644是控制通道所用的協(xié)議,即攝像機(jī)的通道;LVDS和Camera Link是數(shù)據(jù)通道用到的協(xié)議。

            根據(jù)所在系統(tǒng)的通道協(xié)議和攝像機(jī)的配置命令,同時(shí)考慮到必要的人機(jī)交互,設(shè)計(jì)了攝像機(jī)配置系統(tǒng)3大模塊:數(shù)據(jù)處理模塊,對(duì)二進(jìn)制配置命令進(jìn)行必要的處理;通信模塊,通過(guò)RS232串口收發(fā)攝像機(jī)配置命令;人機(jī)接口模塊,用于對(duì)攝像機(jī)配置的調(diào)節(jié)更改以及配置參數(shù)的顯示。此外還有支持處理器工作的時(shí)鐘、電源等。系統(tǒng)的結(jié)構(gòu)如圖2所示。

            

            系統(tǒng)的工作原理為:處理器接收數(shù)據(jù)輸入,根據(jù)接收到的輸入執(zhí)行相應(yīng)的操作,通過(guò)串口讀寫配置命令,從而達(dá)到對(duì)攝像機(jī)的配置調(diào)節(jié),并根據(jù)需要顯示配置參數(shù)。

            2 硬件設(shè)計(jì)

            由于高的性價(jià)比,廣泛應(yīng)用于信號(hào)檢測(cè)、信號(hào)處理、數(shù)據(jù)采集和控制系統(tǒng)中。設(shè)計(jì)的系統(tǒng)以AT89C51AC2為處理器,以撥碼開(kāi)關(guān)、鍵盤陣列為調(diào)節(jié)輸入,以數(shù)碼管作為顯示輸出。同時(shí)利用了鍵盤/顯示芯片Intel 8279簡(jiǎn)化系統(tǒng)設(shè)計(jì)。串口芯片選用MAX232A。系統(tǒng)工作時(shí)鐘為11.059 2 MHz,整個(gè)系統(tǒng)采用+5 V單電源供電。系統(tǒng)的硬件結(jié)構(gòu)圖如圖3所示。

            

            以下介紹開(kāi)關(guān)電路、鍵盤顯示電路的設(shè)計(jì)和功能分配;串口電路和其他電路為系統(tǒng)的常規(guī)電路,故此從略。

            2.1 開(kāi)關(guān)電路

            利用單片機(jī)P1口的直接輸入/輸出功能,接開(kāi)關(guān)和LED,單片機(jī)復(fù)位時(shí),P1口皆為高電平,常態(tài)為高電平,LED不亮。當(dāng)某一開(kāi)關(guān)接通時(shí),對(duì)應(yīng)的P1.i口被拉成低電平,對(duì)應(yīng)的LED亮。開(kāi)關(guān)電路及其功能分配如表2所示。

            

            2.2 鍵盤/顯示電路

            Intel 8279有鍵盤處理和自動(dòng)顯示功能。在8279內(nèi)部有2個(gè)RAM:一是鍵盤FIFO堆棧/傳感器RAM,具有自動(dòng)消抖動(dòng)和雙鍵互鎖功能;另一個(gè)是顯示RAM,最多可為16個(gè)數(shù)碼管提供RAM。

            設(shè)計(jì)的系統(tǒng)需要用到6個(gè)數(shù)碼管,因此需要擴(kuò)展8279的掃描輸出線。選用3~8譯碼器74LS138來(lái)擴(kuò)展,同時(shí)設(shè)8279的工作方式為外部譯碼方式。由于8279的驅(qū)動(dòng)能力較弱,采用74ls06驅(qū)動(dòng)。數(shù)碼管編號(hào)為D0~D5。D0和D5分別表示顯示數(shù)據(jù)的最低位和最高位,其余類推。

            系統(tǒng)中采用30個(gè)鍵盤,編號(hào)為S0~S29,代表的操作如表3所示。

            

            3 軟件設(shè)計(jì)

            軟件系統(tǒng)的總體思想如下:首先對(duì)單片機(jī)和8279進(jìn)行初始化,然后通過(guò)單片機(jī),把不需要調(diào)整的命令送到攝像機(jī)對(duì)攝像機(jī)進(jìn)行控制;再寫進(jìn)另一部分命令,先給一定的初值,送到攝像機(jī),可以根據(jù)需要隨時(shí)通過(guò)鍵盤進(jìn)行調(diào)整,這部分命令一直存儲(chǔ)于單片機(jī)的RAM。然后單片機(jī)不斷查詢鍵盤和開(kāi)關(guān),一旦有動(dòng)作,就調(diào)用與動(dòng)作相對(duì)應(yīng)的子程序進(jìn)行相應(yīng)的處理。主程序流程圖如圖4所示。

            

            3.1 存儲(chǔ)單元的分配

            AT89C51AC2內(nèi)部有256 b的片內(nèi)RAM,其中有一半為特殊寄存器,剩下的另一半可供用戶自由使用。128 b的RAM不能存儲(chǔ)所有的攝像機(jī)配置命令。為簡(jiǎn)化電路,硬件電路不外接RAM,系統(tǒng)采用分時(shí)復(fù)用策略使用這128 b的RAM。RAM的分配如下:00h到07h是寄存器R0到R7。08h到0fh用以傳送開(kāi)關(guān)命令和暫存從攝像機(jī)讀回的命令;10h到15h用以暫存經(jīng)過(guò)調(diào)整要傳送給8279的顯示RAM的數(shù)據(jù);16h到18h用以暫存從命令幀中提取的數(shù)據(jù);19h到1ch用以暫存命令數(shù)據(jù)的上下限。20h之后的RAM,用以存放經(jīng)常調(diào)整的攝像機(jī)配置命令。

            3.2 數(shù)據(jù)處理

            3.2.1 顯示預(yù)處理

            從攝像機(jī)讀回的命令中提取的命令值在寫進(jìn)8279顯示RAM之前要做一定的調(diào)整。為簡(jiǎn)化程序,在顯示子程序中,數(shù)據(jù)的顯示代碼(共陰極)只列了從00h到0fh的16個(gè)。而命令值的一個(gè)字可以是00fh到ffh中的任意一個(gè),從10h到ffh的數(shù)值必須轉(zhuǎn)換為00h到0fh的組合來(lái)顯示,如ffh一個(gè)字變?yōu)閮蓚€(gè)字:0fh和0fh。

            3.2.2 數(shù)據(jù)判限和計(jì)算

            對(duì)于大部分的攝像機(jī)配置命令,數(shù)據(jù)段的值只有在一定的范圍內(nèi)或是一定值的組合時(shí)才是有效的。但是攝像機(jī)本身并不執(zhí)行這些數(shù)據(jù)限制的檢查。這項(xiàng)功能由軟件編程實(shí)現(xiàn)。數(shù)據(jù)計(jì)算包括數(shù)據(jù)值的加一操作和數(shù)據(jù)值的減一操作。

            3.2.3 BCC計(jì)算

            BCC是命令幀中的描述字段和數(shù)據(jù)段的按位異或和(XOR),需要在數(shù)據(jù)處理中計(jì)算。

            3.3 人機(jī)接口

            人機(jī)接口的軟件設(shè)計(jì)主要是8279的3個(gè)基本程序:一是8279初始化程序,二是顯示程序,三是鍵盤處理程序。初始化程序主要是送入各種命令字,給8279送鍵盤/顯示方式命令、分頻系數(shù)命令和清除命令等,在主程序的初始化部分被調(diào)用。顯示程序和鍵盤處理程序在主程序的按鍵查詢部分被調(diào)用。

            3.4 串口通信

            在RAM中開(kāi)辟發(fā)送數(shù)據(jù)存儲(chǔ)區(qū),首址為feedback(開(kāi)關(guān)操作實(shí)現(xiàn))和comdata(鍵盤操作實(shí)現(xiàn)),接收數(shù)據(jù)的首地址為feedback(與發(fā)送分時(shí)復(fù)用)。用R0存儲(chǔ)數(shù)據(jù)發(fā)送的地址;用R1存儲(chǔ)發(fā)送數(shù)據(jù)的字節(jié)數(shù);用R2存儲(chǔ)待發(fā)送數(shù)據(jù)的地址;用R3存儲(chǔ)待發(fā)送數(shù)據(jù)的字節(jié)數(shù)。單片機(jī)把數(shù)據(jù)從接收緩沖器中讀出和把數(shù)據(jù)寫入發(fā)送緩沖器。通過(guò)檢測(cè)是RI置位,還是TI置位來(lái)決定單片機(jī)是進(jìn)行發(fā)送操作還是進(jìn)行接收操作。發(fā)送和接收都是通過(guò)調(diào)用相應(yīng)的子程序來(lái)完成。

            4 實(shí)驗(yàn)結(jié)果

            本文的設(shè)計(jì)在Protel Dxp(硬件設(shè)計(jì))和偉福編譯器上(軟件設(shè)計(jì))實(shí)現(xiàn)。利用本文設(shè)計(jì)的攝像機(jī)配置系統(tǒng)結(jié)合實(shí)驗(yàn)室研制的DSP圖像采集處理器實(shí)現(xiàn)了對(duì)BASLERA202k面陣CCD攝像機(jī)的實(shí)時(shí)參數(shù)配置調(diào)節(jié),為采集高質(zhì)量的實(shí)時(shí)圖像提供了有力的保證,滿足了工程的應(yīng)用需要。

            5 結(jié) 論

            利用介紹的二進(jìn)制編程配置方法,以Basler A202K面陣CCD攝像機(jī)的配置為對(duì)象設(shè)計(jì)了基于單片機(jī)的嵌入式配置系統(tǒng)。該系統(tǒng)可作為嵌入式圖像采集和處理系統(tǒng)的子系統(tǒng),通過(guò)少量軟件修改可應(yīng)用于其他攝像機(jī)的配置。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();