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

          新聞中心

          EEPW首頁 > 消費(fèi)電子 > 設(shè)計應(yīng)用 > 基于Video4Linux的攝像頭驅(qū)動設(shè)計

          基于Video4Linux的攝像頭驅(qū)動設(shè)計

          作者: 時間:2009-09-15 來源:網(wǎng)絡(luò) 收藏

          3.2.2 DMA配置
          本系統(tǒng)采用二維DMA來提高數(shù)據(jù)的傳輸速度,采用16位傳輸,且傳輸完一場視頻數(shù)據(jù)后產(chǎn)生中斷。dma_x_count=720(相當(dāng)于每行數(shù)據(jù)需傳輸?shù)拇螖?shù),每行720個像素點(diǎn),每個像素點(diǎn)2個字節(jié)。每行要傳720×2個字節(jié),而dma是16位傳輸,所以x_count=720)。 dma_x_modify=2(相鄰兩次傳輸數(shù)據(jù)的偏移地址,以字節(jié)為單位,因?yàn)槭?6位傳輸,所以為2)。
          由于PAL制視頻數(shù)據(jù)是隔行掃描,每幀分為奇偶兩場,兩場在時域上是分開的,但是在數(shù)據(jù)處理時需要將兩場合成一幀進(jìn)行處理,因此為了減少CPU的處理時間,可以利用DMA直接進(jìn)行場合成。在一場的傳輸中,DMA在傳輸完一行數(shù)據(jù)后,預(yù)留下一行的存儲空間,將數(shù)據(jù)存放到第三行的地址。在一場數(shù)據(jù)傳輸完后,下一場的數(shù)據(jù)就填充上一場預(yù)留的存儲空間,也是隔行存儲,這樣兩場數(shù)據(jù)就合成一幀數(shù)據(jù)了。所以,dma_y_modify=1442(一行720像素點(diǎn),占720×2字節(jié)。而一行末地址到下一行首地址還需2字節(jié)。所以720×2+2=1442)。同時,兩場數(shù)據(jù)存放的起始地址的設(shè)置間隔也是1442字節(jié)。
          3.3 中斷服務(wù)子程序
          本系統(tǒng)的中斷服務(wù)子程序主要是一場數(shù)據(jù)采集完后,產(chǎn)生中斷,并根據(jù)數(shù)據(jù)的奇偶場做出相應(yīng)的處理。其流程如圖2所示。

          本文引用地址:http://www.ex-cimer.com/article/166878.htm

          4 結(jié)束語
          本文介紹了在Blackfin DSP和Linux的平臺下,的體系結(jié)構(gòu)和具體實(shí)現(xiàn)。此由測試程序測試,可以正常工作。此尚存在不足之處,那就是在驅(qū)動的抓幀過程中沒有采用乒乓操作,但是采用了兩個幀緩存來存取數(shù)據(jù),因此乒乓操作可以在上層應(yīng)用中完成。


          上一頁 1 2 3 下一頁

          評論


          相關(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); })();