• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

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

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

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

    V4L支持兩種方式捕獲圖像:mmap(卻嬗成浞絞?和read(直接讀取方式),本系統(tǒng)采用mmap。需預(yù)先設(shè)置好圖像的大小和深度,接著使用 VIDIOCGMBUF命令,它會返回用于mmap的緩存(buffer)的大小以及每幀緩存的偏移地址(offset)。程序里的映射函數(shù)為 static intbf536_v411_mmap(Struct file*filp,structvm_area_struct*vma);抓幀完成后,在應(yīng)用程序里通過內(nèi)存映射,讀取圖像數(shù)據(jù)。

    本文引用地址:http://www.czjhyjcfj.com/article/166878.htm

    2 硬件平臺
    本系統(tǒng)采用CMOS模擬傳感器,經(jīng)TI公司的TVP5150A視頻解碼芯片把模擬信號轉(zhuǎn)成 ITU-R BT.656視頻信號,再送給ADI公司的Blackfin536 DSP處理器進行圖像處理,如圖1所示。TVP5150向DSP提供采樣時鐘信號CLK(27MHz),8根數(shù)據(jù)線傳輸內(nèi)嵌同步控制碼流的ITU-R BT.656格式的數(shù)據(jù),DSP通過I2C接口對視頻解碼器進行配置。視頻數(shù)據(jù)由DMA搬運到SDRAM。

    3 程序
    3.1 程序核心結(jié)構(gòu)體的介紹
    本系統(tǒng)的軟件平臺是嵌入式uclinux,因此,作為一個設(shè)備驅(qū)動加載到uclinux內(nèi)核中。一般而言,每個設(shè)備驅(qū)動都會有它的核心結(jié)構(gòu)體,驅(qū)動的核心結(jié)構(gòu)體如下:struct camera device


    該結(jié)構(gòu)體儲存了幾乎全部與視頻圖像相關(guān)的信息。其中的結(jié)構(gòu)體videoDev和videoV4l1是與V4L相關(guān)聯(lián)的,ppiDev是與ADSP- BF537處理器硬件配置相關(guān)的,而frame[CAMERA_NUMFRAMES]則與采集時當(dāng)前視頻幀數(shù)據(jù)相關(guān)聯(lián)。此外,camera_device 該核心結(jié)構(gòu)體還定義了表示奇偶場的成員變量frame_field,表示當(dāng)前幀的抓取狀態(tài)的成員變量grabbing等。
    3.2 硬件配置
    本系統(tǒng)在開發(fā)過程中,最主要的難點在于硬件的配置,正確配置TVP5150、PPI、DMA需要搞清楚整個攝像頭的工作原理,以及各種圖像格式的基本知識。本文主要給出PPI和DMA的幾個關(guān)鍵配置選項。
    3.2.1 PPI配置
    TVP5150A視頻解碼芯片把模擬信號轉(zhuǎn)換成ITu-RBT.656視頻信號,ITU-R BT.656是4:2:2并行接口的數(shù)字演播室標(biāo)準(zhǔn)。對于PAL制系統(tǒng)(NTSC系統(tǒng)類似),一幀圖像包括兩場視頻數(shù)據(jù)(奇偶場),每一場圖像由四部分構(gòu)成:有效視頻數(shù)據(jù),水平消隱,垂直消隱以及控制字。而PPI接口在ITU-656輸入模式下可以支持3種數(shù)據(jù)傳輸,若選擇有效視頻數(shù)據(jù),則可以實現(xiàn)PPI 與TVP5150A解碼器的無縫連接。且傳輸?shù)挠行б曨l數(shù)據(jù)就是UYVY422格式,所以配置PPI控制寄存器為ITu-656輸入、傳輸有效視頻數(shù)據(jù)。 PPI傳輸?shù)挠行б曨l數(shù)據(jù)每場都由288行組成,每行有1440個取樣字,其中720個亮度Y取樣字,360個藍(lán)色色差Cb,360個紅色色差Cr,按 Cb、Y、Cr、Y的次序排列。而UYVY422格式數(shù)據(jù)是:每個像素點都取亮度值,而藍(lán)色色差和紅色色差是每兩個像素點才各取一個,兩者交替取,所以圖像像素是720×576。這樣可以確定ppi frame=576(整幅圖像的行數(shù))。而ppi count不用配置,因為在ITU-R BT.656視頻信號中有H和V信號。



    評論


    相關(guān)推薦

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

    關(guān)閉
    主站蜘蛛池模板: 拜泉县| 黄龙县| 婺源县| 花垣县| 六盘水市| 德安县| 盐山县| 砀山县| 承德县| 比如县| 渭源县| 永平县| 桂阳县| 肇源县| 财经| 浠水县| 唐海县| 广宁县| 红桥区| 东至县| 滦平县| 锡林浩特市| 峨眉山市| 兴仁县| 宣汉县| 阜阳市| 绥中县| 四平市| 治多县| 玛曲县| 会同县| 方山县| 寻乌县| 大连市| 平果县| 府谷县| 望奎县| 兴和县| 磐石市| 隆林| 久治县|