www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 智能硬件 > 智能硬件
[導讀]摘要:分析S3C2440的camera接口特性,介紹當攝像設備為CCD攝像頭時,在WinCE 5.0/6.O操作系統(tǒng)環(huán)境下開發(fā)camera驅動的方法。該方法彌補了目前國內(nèi)在WinCE 5.0/6.0操作系統(tǒng)環(huán)境下CCD攝像頭無法連接到S3C2440的


摘要:分析S3C2440的camera接口特性,介紹當攝像設備為CCD攝像頭時,在WinCE 5.0/6.O操作系統(tǒng)環(huán)境下開發(fā)camera驅動的方法。該方法彌補了目前國內(nèi)在WinCE 5.0/6.0操作系統(tǒng)環(huán)境下CCD攝像頭無法連接到S3C2440的camera接口的缺陷。
關鍵詞:camera接口;WinCE;驅動

    S3C2440是應用十分廣泛且適用于嵌入式系統(tǒng)的一款嵌入式處理器。winCE 5.0/6.O是微軟公司開發(fā)的一款專用于嵌入式系統(tǒng)的實時操作系統(tǒng)。其模塊化設計使開發(fā)人員可以根據(jù)需求定制設備。目前,國內(nèi)大部分OEM商都提供了對S3C2440的camera接口在WinCE5.O/6.0下的驅動支持。遺憾的是,目前國內(nèi)OEM商提供的驅動僅限于對幾款微型攝像頭(如ov9650等)的驅動支持。當用戶采用CCD攝像頭作為圖像采集的前端設備時,原來的驅動已經(jīng)不能使用了,而CCD攝像頭因其優(yōu)越的性能,在監(jiān)控領域扮演著主力軍角色。本文從分析S3C2440的camera接口特性出發(fā),詳細介紹當攝像設備為CCD攝像頭時,在WinCE 5.O/6.0操作系統(tǒng)環(huán)境下開發(fā)camera驅動的形式、方法和主要的驅動代碼。

1 camera接口特性
    S3C2440處理器有一個專用的camera接口(CAMIF),該接口支持ITU-R BT.601/656 YCbCr 8位數(shù)據(jù)格式視頻數(shù)據(jù)輸入,最大輸入視頻圖像大小為4 096×4 096像素。視頻輸入后分兩個通道逐幀保存圖像數(shù)據(jù),一個為預覽通道(即P通道),另一個為編解碼通道(即C通道)。兩個通道均通過DMA方式將一幀圖像保存到系統(tǒng)內(nèi)存SDRAM中,在系統(tǒng)內(nèi)存中共開辟了4組幀圖像緩沖,從而保證了用戶應用程序在讀取幀圖像數(shù)據(jù)時不影響另一幀圖像數(shù)據(jù)寫入。其特性如下:
    ◆支持ITU-R BT.601/656 YCbCr 8位數(shù)據(jù)格式視頻數(shù)據(jù)輸入,并可調(diào)整Y、Cb、Cr三個信號的順序,以適應不同的視頻信號源;
    ◆具有DZI功能,相當于數(shù)碼變焦;
    ◆C通道輸出圖像最大為4 096×4 096像素;
    ◆P通道輸出圖像最大為640×480像素;
    ◆P通道輸出圖像格式可配置為RGBl6或GRB24;
    ◆C通道輸出圖像格式可配置為YCbCr 4:2:2或YCbCr 4:2:0:
    ◆輸出圖像可X方向鏡像翻轉、Y方向鏡像翻轉,或180°旋轉;
    ◆DMA數(shù)據(jù)傳輸,4組幀圖像緩沖,2個對應的中斷處理,保證視頻實時采集;
    ◆2個通道不同圖像數(shù)據(jù)格式輸出,便于用戶程序開發(fā)。
    CAMIF對外接口信號定義如下:
    CAMPCLK輸入的視頻像素同步時鐘。
    CAMVSYNC輸入的視頻幀同步時鐘。
    CAMHREF輸入的視頻行同步時鐘。
    CAMDATA[7:0] 輸入的視頻8位數(shù)據(jù)。
    CAMCLKOUT輸出的時鐘,用于外接的沒有獨立時鐘的camera芯片的主時鐘。當外接的camera芯片有獨立的時鐘時,該信號可不用。
    CAMRESET輸出的軟件復位信號,可對外接的camera芯片進行復位。
    信號的時序圖如圖1所示。


    使用CAMIF時,必須對CAMIF相關寄存器進行正確配置,下面介紹主要寄存器的配置原理。
    CAMRCFMT 選擇輸入視頻信號源格式寄存器
    ①選擇輸入視頻信號源為ITU-R BT.601 YCbCr 8位數(shù)據(jù)格式,或ITU-R BT.656 YCbCr 8位數(shù)據(jù)格式。
    ②選擇輸入視頻信號源水平像素大小和垂直像素大小,一定要和外接的camera設備分辨率一致。
    ③選擇輸入視頻信號Ycbcr信號順序,一定要和外接camera信號的實際順序一致。
    CIWDOFST 從輸入信號中截取中心部分的圖像寄存器
    原理是:從輸入信號中截取中心部分的圖像輸出到大小不變的輸出圖像緩沖中,從而實現(xiàn)對圖像的放大或縮小。
    ①配置該寄存器允許縮放或不允許縮放。
    ②X方向圖像放大或縮小控制,原理是截切掉左部和右部的圖像像素數(shù)。
    ③Y方向圖像放大或縮小控制,原理是截切掉上部和下部的圖像像素數(shù)。
    CIGCTRL 全局控制寄存器
    通過該寄存器對外接的camera進行復位,即控制CAMRESET信號的電平高低。
    CICOTRGFMT C通道輸出圖像格式及大小配置寄存器
    ①可將C通道輸出圖像格式配置為YCbCr 4:2:2或YCbCr 4:2:0格式。
    ②可設置C通道輸出圖像X方向像素數(shù)。
    ③可設置C通道輸出圖像Y方向像素數(shù)。
    ④可設置C通道輸出圖像X方向鏡像。
    ⑤可設置C通道輸出圖像Y方向鏡像。
    ⑥可設置C通道輸出圖像180°旋轉。
    CIPRTRGFMT P通道輸出圖像大小配置寄存器
    ①可設置P通道輸出圖像X方向像素數(shù)。
    ②可設置P通道輸出圖像Y方向像素數(shù)。
    ③可設置P通道輸出圖像X方向鏡像。
    ④可設置P通道輸出圖像Y方向鏡像。
    ⑤可設置P通道輸出圖像180°旋轉。
    CICOSTATUS和CIPRSTATUS 狀態(tài)寄存器
    CICOSTATUS反映C通道數(shù)據(jù)的寫入狀態(tài),即4組緩沖的哪一組;CIPRSTATUS反映P通道數(shù)據(jù)的寫入狀態(tài),即4組緩沖的哪一組。用戶程序采集圖像數(shù)據(jù)時,應根據(jù)狀態(tài)寄存器當前狀態(tài),決定從哪一組讀出數(shù)據(jù)。
    此外,CICOYSAl~CICOYSA4分別為C通道第1~4幀Y信號數(shù)據(jù)緩沖起始地址寄存器;CICOCBSAl~CICOCBSA4分別為C通道第1~4幀Cb信號數(shù)據(jù)緩沖起始地址寄存器;CICOCRSAl~CICOCRSA4分別為C通道第1~4幀Cr信號數(shù)據(jù)緩沖起始地址寄存器;CIPRCLRSAl~CIPRCLRSA4分別為P通道第1~4幀RGB信號數(shù)據(jù)緩沖起始地址寄存器。

2 WinCE下的驅動開發(fā)
    目前,我國市場上的CCD攝像頭只有模擬視頻輸出接口,顯然它不能和S3C2440的camera接口直接連接,硬件上需要增加一塊解碼芯片。解碼芯片把CCD的模擬信號解碼為BT.601/656 YUV4:2:2格式信號,這個信號和CAMIF信號是匹配的,因此解碼芯片輸出就可以直接連接到
S3C2440的camera接口。典型的解碼芯片為SAA7113,接口電路如圖2所示。


    如果想簡化硬件電路和驅動代碼,也可以根據(jù)需求向生產(chǎn)商定制CCD攝像頭,要求生產(chǎn)商生產(chǎn)的CCD攝像頭直接按照ITU-R BT.601/656格式輸出視頻信號。具有這種接口的CCD攝像頭就可以直接和S3C2440的camera接口連接,接口電路如圖3所示。


    兩種情況的驅動代碼開發(fā)過程基本上是相同的。區(qū)別是:前者需要S3C2440通過I2C總線對解碼芯片SAA7113的相關寄存器進行配置,而后者則不需要。下面以前者為例介紹驅動的開發(fā)方法。
2.1 配置解碼芯片SAA7113
    SAA7113是NXP公司推出的視頻解碼系列芯片,在很多視頻產(chǎn)品(如電視卡、MPEG2、MPEG4)中都有應用。SAA7113的主要作用是把輸入模擬視頻信號解碼成標準的BT.656 YUV4:2:2數(shù)字信號,相當于一種A/D器件。它兼容全球各種視頻標準,在我國應用時必須根據(jù)我國視頻標準來配置內(nèi)部寄存器。
    對SAA7113配置需要通過I2C總線進行,分配S3C2440的GPIO的E15模擬I2C的SDA線,E14模擬I2C的SCL線。OEM商提供的原驅動是針對手機攝像頭ov9650開發(fā)的,二者的配置原理和過程是相同的,但配置內(nèi)容不同,輸出圖像的格式也不同。ov9650輸出的圖像是逐行掃描的,SAA7 113輸出的圖像則是隔行掃描的。由圖1可知,CAMIF是逐幀輸入的,所以必須把SAA3117的場同步信號VS作為CAMIF的幀同步信號CAMSYNC,輸出圖像是逐場保存的。配置內(nèi)容為:
    ①復位SAA3117。
    ②模擬通道選擇。
    ③配置亮度、色度、對比度、自動增益控制量。
    ④將RTSl引腳配置為場同步信號VS,將RTSO信號配置為行同步信號HREF,信號極性應分別與圖1中CAMVSYNC和CAMHREF信號極性一致。
    ⑤配置圖像寬度為720像素。
    ⑥配置幀圖像高度為576像素,一幀圖像分奇偶兩場分時輸出,每場圖像高度為288像素。
    ⑦配置數(shù)據(jù)格式為BT.656 YCbCr 4:2:2 8位格式輸出。注意,數(shù)據(jù)口的信號順序為CB0 Y0 CR0 Y1 CBlY2…CR359 Y719。
    ⑧時鐘采用24.576 MHz的獨立時鐘,此時LLC的頻率為27 MHz,場頻為50Hz,幀頻為25 Hz。
2.2 為CAMlF分配DMA內(nèi)存空間
    因為S3C2440從camera接口采集到的視頻數(shù)據(jù)是以DMA機制寫到內(nèi)存的,所以必須為C通道和P通道分別分配邏輯內(nèi)存(即DMA緩沖區(qū))。Win CE有兩種分配DMA緩沖區(qū)的方法:使用CEDDK函數(shù)和使用winCE內(nèi)核函數(shù)。建議使用CEDDK函數(shù):

    注意:C通道和P通道應分別分配。分配成功后,應將4組YCbCr信號的起始地址與分配給C通道的DMA緩沖區(qū)地址關聯(lián)起來,將4組RGB信號的起始地址與分配給P通道的DMA緩沖區(qū)地址關聯(lián)起來。格式不同時,關聯(lián)的空間大小是不同的。如果C通道格式為YCbCr4:2:2,圖像寬度為CoDstWidtlh,圖像高度為CoDstHeight,分配的DMA地址為CoFrameBuffer,則二者的關聯(lián)關系為:

    這樣分配的目的是,保證每一組YCbCr信號的地址空間是連續(xù)的,便于用戶程序開發(fā)。
    如果P通道格式為RGBl6,圖像寬度為PrDstWidth,圖像高度為PrDstHeight,分配的DMA地址為PrFrame Buffer,則二者的關聯(lián)關系為:

    如果P通道格式為RGB24,圖像寬度為PrDstWidth,圖像高度為PrDstHeight,分配的DMA地址為PrFrame Buffer,則二者的關聯(lián)關系為:


2.3 配置CAMIF相關寄存器
    ①把輸入視頻信號寬度配置為720像素,高度配置為288像素;
    ②把輸入視頻信號格式配置為BT.656 YCbcr 4:2:2格式;
    ③把輸入視頻信號順序配置為CbYCr;
    ④根據(jù)用戶的LCD顯示終端的分辨率配置P通道的圖像寬度、高度像素和格式;
    ⑤根據(jù)用戶對圖像的處理需求來配置C通道的圖像寬度、高度像素和格式;
    ⑥配置C通道的縮放系數(shù);
    ⑦配置P通道的縮放系數(shù);
    ⑧把C通道的DMA地址配置給4組起始地址寄存器;
    ⑨把P通道的DMA地址配置給4組起始地址寄存器。
2.4 創(chuàng)建camera流式驅動接口函數(shù)
    WinCE下的硬件驅動程序大多采用流式驅動來開發(fā),因為它有一個一致的接口函數(shù)供用戶調(diào)用。此處,把接口函數(shù)命名為:CAM_Close()、CAM_Deinit()、CAM_Init()、CAM IOControl()、CAM()pen()、CAM PowerDown()、CAM_PowerUp()、CAM_Read()、CAM_Seek()和CAM-_Write()。
    (1)CAM_Init()函數(shù)
    該函數(shù)在驅動程序每次被設備管理器加載時調(diào)用。其實現(xiàn)的功能如下:
    配置SAA7113,分配C通道、P通道的DMA內(nèi)存空間,根據(jù)輸入信號源屬性和輸出圖像、預覽圖像屬性配置CAMIF寄存器。
    創(chuàng)建一個事件CameraEvent,使用WinCE內(nèi)核函數(shù)InterruptInitialize(SYSINIR_CAM,CameraEvent,NULL,O)把該事件與camera的邏輯中斷號SYSINIR_CAM關聯(lián)起來,即當中斷發(fā)生時激活該事件。
    創(chuàng)建一個中斷服務線程。在該線程內(nèi)用WaitForSintgleObjcet(CameraEvent,INFINITE)函數(shù)阻塞線程,并等待CameraEvent激活。把預覽視頻圖像的功能放到CameraEyent激活之后完成,即把P通道緩沖區(qū)的內(nèi)容拷貝到顯示終端。最后,用InterruptDone(SYSINIR_CAM)函數(shù)結束本次中斷處理。
    (2)CAM_IOControl()函數(shù)
    可以說,該函數(shù)才真正是用戶程序與驅動程序聯(lián)系的主要通道,用戶程序對camera接口的控制及數(shù)據(jù)采集均是通過該函數(shù)完成的。其主要功能有:
    ①打開/關閉P通道或C通道輸出。
    ②修改配置參數(shù)。
    ③控制輸出圖像的放大或縮小。
    ④如果需要RGB數(shù)據(jù),則讀取P通道緩沖區(qū)內(nèi)容;
    如果需要YCbCr數(shù)據(jù),則讀取C通道緩沖區(qū)內(nèi)容。注意,讀取之前要根據(jù)狀態(tài)寄存器CICOSTATUS或CIPRSTATUS的當前狀態(tài),確定訪問哪一組緩沖區(qū)。
    (3)CAM_Deinit()函數(shù)
    當卸載本驅動時,該函數(shù)負責釋放分配的內(nèi)存空間和資源。
    (4)CAM_Open()函數(shù)
    該函數(shù)內(nèi)部并沒有具體的功能代碼,只是當用戶程序使用CreateFile(TEXT(“CAMl:”),GENERIC_READ|GENERIC WRITE,O,NULL,OP-EN_EXISTING,O,O)函數(shù)打開camera驅動時調(diào)用該函數(shù),并返回一個文件句柄?;谠摼浔脩舨拍苓M行后續(xù)操作。
    (5)CAM_Close()函數(shù)
    該函數(shù)內(nèi)部并沒有具體的功能代碼,只有當用戶程序使用CloseFile(hfile)函數(shù)關閉camera驅動時才調(diào)用該函數(shù),并釋放之前返回的文件句柄。其他接口函數(shù)沒用賦予其具體功能。

結語
    按照上述方法開發(fā)的驅動代碼,連同其他驅動已在PB5.O環(huán)境下編譯通過,生成的內(nèi)核文件在原硬件平臺下成功運行,P通道視頻圖像流暢,C通道圖像質量較高。該方法彌補了目前國內(nèi)在WinCE 5.O/6.O操作系統(tǒng)環(huán)境下CCD攝像頭無法連接到S3C2440的camera接口的缺陷,為工程技術人員設計嵌入式圖像采集系統(tǒng)時提供了一種有效手段。
 

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

隨著13代酷睿處理器的上市,銘瑄本次同步發(fā)布了四款Z790主板,包括兩款ATX、一款mATX,以及一款ITX迷你小板。其中,包括新款MS-終結者Z790M D5主板,售價僅1499元。將在10月20日21點隨13代酷睿處...

關鍵字: 酷睿 ATX 接口 DDR

腦機接口(Brain Computer Interface,BCI [4] ),指在人或動物大腦與外部設備之間創(chuàng)建的直接連接,實現(xiàn)腦與設備的信息交換。這一概念其實早已有之,但直到上世紀九十年代以后,才開始有階段性成果出現(xiàn)...

關鍵字: 腦機 接口 設備

(全球TMT2022年9月6日訊)9月5日,思靈機器人發(fā)布“Agile Core & Diana”系列產(chǎn)品。本系列產(chǎn)品包括軟件Agile Core,和兩個智能力控機器人diana7系列。其中,思靈自主研發(fā)的操作...

關鍵字: 機器人 CORE AN 接口

在DDR4出現(xiàn)十年之后,DDR5翩翩來遲。作為十年之久的換代,DDR5的設計上實現(xiàn)了諸多突破:新的通道設計、片內(nèi)ECC、片上PMIC、更多溫度傳感器乃至插槽缺口的位移等。新的設計規(guī)范和標準,讓內(nèi)存容量、帶寬和傳輸速率得以...

關鍵字: SPD DDR5 DIMM Rambus 接口

北京2022年8月23日 /美通社/ -- 隨著"雙碳"目標及"東數(shù)西算"工程推進,綠色低碳已成為數(shù)據(jù)中心建設的主旋律。液冷憑借其在制冷領域節(jié)能降碳的突出優(yōu)勢,成為未來新...

關鍵字: 數(shù)據(jù)中心 接口 模塊化 控管

(全球TMT2022年8月12日訊)奎芯科技(M SQUARE)于2021年在上海成立,是一家專業(yè)的集成電路IP和Chiplet產(chǎn)品供應商。公司于2022年1月獲得Pre-A輪超億元投資,奎芯致力于提供新的國產(chǎn)化選型方...

關鍵字: CHIP 芯科 晶圓代工 接口

(全球TMT2022年8月11日訊)在后疫情時代,餐飲企業(yè)思考核心問題是如何讓業(yè)務實現(xiàn)可持續(xù)發(fā)展?毫無疑問,數(shù)字化轉型(DX)是應對這一課題的關鍵手段。富士通為餐飲企業(yè)打造了一套面向DX的中臺解決方案,能夠幫助餐飲企業(yè)...

關鍵字: 富士通 數(shù)字化 可持續(xù)發(fā)展 接口

上海2022年8月1日 /美通社/ -- 近日,中共中央辦公廳、國務院辦公廳印發(fā)《關于推進以縣城為重要載體的城鎮(zhèn)化建設的意見》(以下簡稱《意見》),提出"到2025年,以縣城為重要載體的城鎮(zhèn)化建設取得重要進展&...

關鍵字: BSP 制動器 寶馬 接口

上海2022年7月13日 /美通社/ -- 7月8日,由第一資源主辦,上海市嘉定區(qū)人力資源和社會保障局指導的2022中國人才峰會(第七屆)如期舉行,活動現(xiàn)場公布了"2022第一資源人力資源服務機構100強&qu...

關鍵字: SAAS 數(shù)字化 API 接口

(全球TMT2022年7月11日訊)當前,服務器的液冷技術已成為推動數(shù)據(jù)中心減排、降低PUE的重要手段。浪潮信息作為全球領先的IT基礎設施提供商,已全棧布局液冷,實現(xiàn)了通用服務器、高密度服務器、整機柜服務器、AI服務器...

關鍵字: PCIE4.0 接口 全棧 I/O

智能硬件

21972 篇文章

關注

發(fā)布文章

編輯精選

技術子站

關閉