第3章 GPIO及視頻接口2課件_第1頁
第3章 GPIO及視頻接口2課件_第2頁
第3章 GPIO及視頻接口2課件_第3頁
第3章 GPIO及視頻接口2課件_第4頁
第3章 GPIO及視頻接口2課件_第5頁
已閱讀5頁,還剩62頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第3章GPIO及視頻接口數(shù)字信號(hào)處理器原理A西安郵電大學(xué)通信與信息工程學(xué)院2014年3月目錄第3章GPIO及視頻接口

3.1概述3.2GPIO寄存器3.3TMS320DM642視頻口本章學(xué)習(xí)目標(biāo)【學(xué)習(xí)目標(biāo)】熟悉通用目的輸入輸出接口(GPIO)的結(jié)構(gòu)、功能與中斷擴(kuò)控制;掌握GPIO寄存器各字位內(nèi)容、配置與應(yīng)用;掌握三個(gè)視頻口的捕獲、顯示的模式,視頻接口的各寄存器與應(yīng)用。知識(shí)要點(diǎn):

GPIO寄存器、視頻口的配置方法復(fù)習(xí)GPIO是GeneralPurposeInputOutput的縮寫,即通用目的輸入輸出接口。GPIO可作為輸入引腳,得到外界的狀態(tài);也可作為輸出引腳,輸出一個(gè)變化或者不變的數(shù)字量。學(xué)習(xí)內(nèi)容:GPIO接口概述GPIO功能GPIO寄存器GPIO應(yīng)用例程(復(fù)習(xí))1.GPIO接口概述

GPIO外設(shè)提供了16個(gè)引腳,可以配置為輸入或輸出;當(dāng)配置為輸出時(shí),用戶可以寫內(nèi)部寄存器以控制輸出引腳驅(qū)動(dòng)的狀態(tài);當(dāng)配置為輸入引腳時(shí),用戶可以通過讀內(nèi)部寄存器的狀態(tài)檢測到輸入的狀態(tài);另外,GPIO片內(nèi)外設(shè)可以用不同的中斷/事件產(chǎn)生模式產(chǎn)生CPU中斷和EDMA事件。

GPIO外設(shè)的結(jié)構(gòu)框圖(復(fù)習(xí))1.GPIO接口概述

在不同的中斷/事件產(chǎn)生模式下,GPIO能夠產(chǎn)生CPU中斷和EDMA事件。GPINT[0:15]都是EDMA的同步事件。只有GPINTO和GPINT[4:7]可以用作CPU的中斷源。

(復(fù)習(xí))1.GPIO接口概述

(復(fù)習(xí))2、GPIO寄存器配置GPIO外設(shè)的寄存器縮寫寄存器名稱地址范圍GPENGPIO使能寄存器01B00000GPDIRGPIO方向寄存器01B00004GPVAIGPIO值寄存器01B00008CPDHGPIODelta高寄存器01B00010GPHMGPIO高屏蔽寄存器01B00014GPDLGPIODelta低寄存器O1B00018GPLMGPIO低屏蔽寄存器01B0001CGPGCGPIO全局控制寄存器O1B00020GPPOLGPIO中斷優(yōu)先級(jí)寄存器01B00024GPIO使能寄存器使能GPIO引腳為通用目的輸入/輸出功能。為了在通用目的輸入/輸出模式下使用任一條GPIO引腳,相關(guān)的GPxEN位必須設(shè)置為1。例如:GPIO使能寄存器(GPEN)

(復(fù)習(xí))GPIO應(yīng)用例程

【例1】GPIO驅(qū)動(dòng)LED發(fā)光二極管閃爍。如圖所示,利用GPIO驅(qū)動(dòng)LED發(fā)光二極管,使其按照一定的頻率閃爍。GP6VCCLED發(fā)光二極管DSP電阻R利用GPIO的GP6引腳產(chǎn)生一個(gè)方波。當(dāng)GP6引腳輸出為高電平時(shí),經(jīng)過非門變?yōu)榈碗娖?,此時(shí)LED發(fā)光二極管亮;當(dāng)GP6引腳輸出為低電平時(shí),經(jīng)過非門變?yōu)楦唠娖剑藭r(shí)LED發(fā)光二極管滅;高低電平交替變換,即可控制LED發(fā)光二極管閃爍。

1)設(shè)計(jì)分析GPIO_RSET(GPEN,0x0040);//使能GP6引腳GPIO_RSET(GPDIR,0x0040);//把GP6引腳配置為輸出引腳While(1){GPIO_RSET(GPVAL,0x0040);//輸出高電平Delay(100);//延時(shí),將高電平維持一段時(shí)間GPIO_RSET(GPVAL,0x0000);//輸出低電平Delay(100);//延時(shí),將低電平維持一段時(shí)間}2)程序代碼

3.

GPIO功能

(一)作為通常目的的輸入、輸出:一旦GPIO使能寄存器(GPEN)被使能,GPIO引腳可以用作通用目的輸入/輸出;用戶可以使用GPIO方向寄存器(GPDIR)獨(dú)立配置每條GPIO引腳為輸入或輸出;當(dāng)配置為輸出(GPxDIR位=1),GPIO值寄存器(GPVAL)的GPxVAL位的值就被送到相應(yīng)的GPn引腳;當(dāng)配置為輸入(GPxDIR位=0)時(shí),輸入狀態(tài)可以從相應(yīng)的GPxVAL讀取。

除了通用目的輸入/輸出功能外,GPIO外設(shè)的邊沿檢測邏輯(edge-detectlogic)反映了配置為輸入(GPxDIR位=0)的指定GPIO引腳是否發(fā)生一個(gè)信號(hào)的變化;GPIO三角(delta)寄存器(GPDH或GPDL)反映GPIO信號(hào)的變化:當(dāng)相應(yīng)的使能輸入發(fā)生從低電平到高電平的變化時(shí),GPDH寄存器的GPXDH位被置1;當(dāng)相應(yīng)的使能輸入發(fā)生從高電平到低電平的變化時(shí)GPDH寄存器的GPXDL位被置1。

(二)反映GPIO引腳的信號(hào)變化3.3TMS320DM642視頻口VP0~VP2TMS320C64x是業(yè)界性能最強(qiáng)的DSPC64x高速運(yùn)算的純DSP,對(duì)圖像數(shù)據(jù)流輸入/輸出操控并不方便一般和FPGA配合使用,控制FPGA中雙口RAM/FIFO,搬運(yùn)圖像數(shù)據(jù)。TMS320DM642高性能單片視頻處理器C64x內(nèi)核,最高可達(dá)5760MIPS@720MHz增加了專門的視頻輸入/輸出端口EDMA直接搬運(yùn)圖像數(shù)據(jù),無CPU開銷

高性能單片視頻處理器引言視頻端口優(yōu)點(diǎn)引言(引言)視頻接口(VP0~VP2)TMS320DM642有三個(gè)視頻端口外圍設(shè)備。視頻端口外設(shè)可作為視頻采集端口,視頻顯示端口,或作為傳輸流接口(TSI)。此端口由A和B兩個(gè)通道組成。在兩個(gè)通道之間存在一個(gè)可分開的5120字節(jié)的采集/顯示緩沖區(qū)。整個(gè)端口(全部通道)經(jīng)常被配置成僅僅進(jìn)行視頻采集或者視頻顯示。1、視頻端口概述(VP0—VP2)視頻口框圖可獨(dú)立配置為視頻捕獲口、顯示口或TSI捕獲口支持多種采集/顯示方案和視頻標(biāo)準(zhǔn)可以實(shí)現(xiàn)與一般視頻AD/視頻DA的無縫連接EDMA直接搬運(yùn)圖像數(shù)據(jù),無CPU開銷視頻捕獲模式通過采樣輸入引腳的信號(hào)并保存到視頻口FIFO捕獲的數(shù)據(jù)量達(dá)到編程的門限,會(huì)觸發(fā)一個(gè)EDMA把數(shù)據(jù)從FIFO搬運(yùn)到DSP的內(nèi)存空間。捕獲窗口指定了每幀需要捕獲的數(shù)據(jù)。視頻顯示模式VP口顯示數(shù)據(jù)低于預(yù)設(shè)的門限,觸發(fā)EDMAEDMA把數(shù)據(jù)從存儲(chǔ)器搬運(yùn)到視頻緩存FIFO中VP口把FIFO中的按照視頻格式輸出1、視頻端口概述視頻FIFO用來存儲(chǔ)從視頻端口進(jìn)/出數(shù)據(jù)。EDMA完成FIFO和外部或片上存儲(chǔ)器之間的數(shù)據(jù)搬移。設(shè)置為FIFO服務(wù)的EDMA是正確操作視頻端口的關(guān)鍵。通過設(shè)置門限(FIFO在捕獲時(shí)達(dá)到確定的滿/顯示模式時(shí)低于確定滿)來觸發(fā)DMA事件。一般情況下會(huì)優(yōu)先選取一整行的數(shù)據(jù)作為傳輸大小。在最高速率顯示的操作模式中會(huì)選取半行甚至1/4行數(shù)據(jù)作為DMA請求。通常FIFO的尺寸相對(duì)較大,這樣就允許DMA有足夠的時(shí)間來響應(yīng)傳輸請求。視頻FIFO2、視頻捕獲模式

(1)BT656視頻捕獲模式BT.656模式捕獲混合在一個(gè)數(shù)據(jù)流中的8位或10位4:2:2亮度和色度數(shù)據(jù)。視頻數(shù)據(jù)按照Cb,Y,Cr,Y,Cb,Y,Cr,…的順序傳輸,序列中Cb,Y,Cr表示復(fù)合亮度和色度采樣。捕獲后的數(shù)據(jù)流將會(huì)被分解,每個(gè)分量都會(huì)寫入各自的FIFO中,最后分別傳輸?shù)紻SP內(nèi)存中相應(yīng)的Y、Cb和Cr緩沖區(qū)。2、視頻捕獲模式

(1)BT656視頻捕獲模式(2)Y/C視頻捕獲模式Y(jié)/C捕獲模式類似于BT.656捕獲模式,但是捕獲的是8或10位4:2:2分離的亮度和色度數(shù)據(jù)流;一個(gè)數(shù)據(jù)流包含Y采樣;另一個(gè)數(shù)據(jù)流中,是復(fù)合的Cb和Cr采樣。為了向DSP內(nèi)存中的Y,Cb和Cr傳輸數(shù)據(jù),把Y采樣寫入YFIFO中色度采樣拆分后,分別寫入Cb和CrFIFO。2、視頻捕獲模式

(2)Y/C視頻捕獲模式(3)原始數(shù)據(jù)捕獲模式在原始數(shù)據(jù)捕獲模式中,只有當(dāng)CAPEN(Channelcaptureenable通道捕獲使能)信號(hào)有效時(shí)才能采樣數(shù)據(jù);按照發(fā)送方的時(shí)鐘進(jìn)行捕獲,不需要任何解釋,也不需要基于數(shù)據(jù)的值啟動(dòng)或終止捕獲。緩沖區(qū)中己經(jīng)捕獲到規(guī)定數(shù)量的新采樣后,視頻端口會(huì)產(chǎn)生一個(gè)YEVT(Yevent,Y信號(hào)事件)。每產(chǎn)生一個(gè)YEVT,DMA都要把數(shù)據(jù)從緩沖區(qū)移動(dòng)到DSP內(nèi)存。2、視頻捕獲模式

(3)原始數(shù)據(jù)捕獲模式

視頻顯示模式簡介1)BT.656視頻顯示模式2)Y/C視頻顯示模式3)原始數(shù)據(jù)顯示模式3、視頻顯示模式1)BT.656視頻顯示模式BT.656顯示模式可以把8或10位比例為4:2:2的視頻亮度和色度數(shù)據(jù)復(fù)合在一個(gè)數(shù)據(jù)流中輸出;像素將成對(duì)輸出,每對(duì)像素包含兩個(gè)亮度和兩個(gè)色度采樣。色度采樣與第一對(duì)亮度采樣相伴。按照序列CbYCrY,輸出像素在VCKOUT上升沿有效。

3、視頻顯示模式1)BT.656視頻顯示模式(補(bǔ)充)BT.656每行的數(shù)據(jù)結(jié)構(gòu)每行數(shù)據(jù)包含水平控制信號(hào)和YCbCr。視頻數(shù)據(jù)信號(hào)排列順序?yàn)镃b-Y-Cr-Y。每行開始的288字節(jié)為行控制信號(hào),開始的4字節(jié)為EAV信號(hào)(有效視頻結(jié)束),緊接著280個(gè)固定填充數(shù)據(jù),最后是4字節(jié)的SAV信號(hào)(有效視頻起始)(補(bǔ)充)BT.656每行的數(shù)據(jù)結(jié)構(gòu)2)Y/C視頻顯示模式Y(jié)/C視頻顯示模式與BT.656顯示模式類似,只是單獨(dú)輸出8或10位亮度和色度數(shù)據(jù)流。一個(gè)數(shù)據(jù)流包含Y采樣,另一個(gè)數(shù)據(jù)流包含復(fù)合Cb和Cr采樣。從Y采樣FIFO緩沖區(qū)中讀取Y采樣數(shù)據(jù);從Cb和Cr采樣FIFO緩沖區(qū)讀取Cb和Cr采樣數(shù)據(jù),并與色度輸出結(jié)合。3、視頻顯示模式2)Y/C視頻顯示模式2、視頻顯示模式3)原始數(shù)據(jù)顯示模式原始數(shù)據(jù)顯示模式用于向RAMDAC或D/A類型設(shè)備輸出數(shù)據(jù),輸出數(shù)據(jù)通常采用RGB格式。輸出數(shù)據(jù)流中不嵌入時(shí)序信息,但輸出可選的控制信號(hào)可以指定時(shí)序。原始數(shù)據(jù)模式只使用一個(gè)5120字節(jié)的FIFO存儲(chǔ)輸出數(shù)據(jù)。首先DMA向原始數(shù)據(jù)FIFO填入數(shù)據(jù),然后原始數(shù)據(jù)FIFO再向YFIFO目的寄存器A(YDSTA)寫入數(shù)據(jù)。DMA必須使用YEVTA事件。3、視頻顯示模式3)原始數(shù)據(jù)顯示模式視頻端口配置寄存器按照不同的功能被分成4種不同的類型,分別為:視頻端口控制寄存器視頻捕獲控制寄存器視頻顯示控制寄存器視頻引腳控制寄存器。4、視頻端口寄存器視頻端口控制寄存器在下表中列出,分為四個(gè)。(一)視頻端口控制寄存器VPCTL寄存器決定了視頻端口的基本操作。(1)視頻端口控制寄存器(VPCTL)視頻端口狀態(tài)寄存器表示視頻端口當(dāng)前狀況。(2)視頻端口狀態(tài)寄存器(VPSTAT)視頻端口中斷寄存器使能視頻端口DSP的中斷源。(3)視頻端口中斷寄存器(VPIE)視頻端口中斷狀態(tài)寄存器顯示了視頻端口到DSP的中斷狀態(tài)。(4)視頻端口中斷狀態(tài)寄存器TMS320DM642有三個(gè)視頻端口外圍設(shè)備VP0、VP1和VP2,基準(zhǔn)地址分別為01C40000、01C44000和01C48000,書中所列表中縮寫名稱最后的x表示VP0~VP2中的一個(gè)該寄存器的絕對(duì)地址=基準(zhǔn)地址+地址偏移量。例如:VC_STAT0、VC_STAT1和VC_STAT2的絕對(duì)地址分別為01C40100、01C44100和01C48100。(二)視頻捕獲寄存器視頻捕獲模式選擇視頻端口控制寄存器頻捕獲通道x控制寄存器(1)視頻捕獲通道x狀態(tài)寄存器(VCASTAT,VCBSTAT)表示視頻捕獲通道的當(dāng)前顯示狀態(tài)。(2)視頻捕獲通道A控制寄存器(VCACTL)實(shí)現(xiàn)對(duì)視頻捕獲通道A控制。(3)視頻捕獲通道x區(qū)域1起始寄存器(VCASTRT1,VCBSTRT1)定義在區(qū)域1中捕獲到圖像的起始。(4)視頻捕獲通道x區(qū)域1終止寄存器(VCASTOPI,VCBSTOPI)定義在區(qū)域1中捕獲到圖像的終止。(二)視頻捕獲寄存器(5)視頻捕獲通道x區(qū)域2起始寄存器(VCASTRT2,VCBSTRT2)定義在區(qū)域2中捕獲到圖像的起始。(6)視頻捕獲通道x區(qū)域2終止寄存器(VCASTOP2,VCBSTOP2)定義在區(qū)域2中捕獲到圖像的終止。視頻捕獲通道A場1起始寄存器視頻捕獲通道A場1終止寄存器視頻捕獲通道A場2起始寄存器視頻捕獲通道A場2終止寄存器隔行掃描,1幀圖像分為奇偶2場:行、場、幀

電視制式PAL(中國)、NTSC(美/日)、SECAM(法/東歐)PAL:幀頻25Hz、場頻50Hz、行頻15625Hz電視制式有關(guān)的一些概念視頻顯示模式選擇視頻顯示寄存器(三)視頻顯示模式

隔行消隱間隔和視頻區(qū)域視頻顯示幀大小寄存器視頻顯示場1垂直消隱起始寄存器視頻顯示場1水平消隱起始寄存器視頻顯示場2圖像位移寄存器視頻顯示場2圖像大小寄存器視頻顯示寄存器視頻顯示寄存器推薦值視頻引腳控制寄存器裝置包括一些必須的寄存器裝置,如:外設(shè)標(biāo)識(shí)以及仿真控制。Ym

VP_PIDx

外設(shè)識(shí)別寄存器;VP_PCRx

外設(shè)控制寄存器;VP_PFUNCx

引腳功能寄存器;(四)視頻引腳控制寄存器5、基于DM642的視頻采集與顯示系統(tǒng)視頻采集視頻顯示視頻采集通道設(shè)計(jì)TVP5150是TI推出的一款超低功耗,支持自動(dòng)識(shí)別NTSC/PAL/SECAM制式的視頻解碼芯片,具有價(jià)格低、體積小、使用方便的特點(diǎn)。NTSC/PAL制式的模擬信號(hào)送到TVP5150后,按照YCbCr4:2:2的格式轉(zhuǎn)化成數(shù)字信號(hào),在本系統(tǒng)中以8bit內(nèi)嵌同步信號(hào)的BT.656格式輸出。視頻顯示通道設(shè)計(jì)采用Philips公司的SAA7105H作為本地回放的視頻編碼芯片。SAA7105H可以將數(shù)字視頻信號(hào)(BT.656)編碼成普通電視所能接收的NTSC或PAL制式的復(fù)合電視信號(hào)(CVBS)。SAA7105H還支持VGA輸出,通過I2C總線對(duì)其內(nèi)部寄存器設(shè)置就可以實(shí)現(xiàn)不同的輸出?!纠?】編寫程序,實(shí)現(xiàn)圖像采集。6、視頻應(yīng)用舉例設(shè)計(jì)分析首先完成顯示的行數(shù)、采集行數(shù)、顯示區(qū)域大小、采集像素?cái)?shù)、采集行的增量設(shè)置。之后需對(duì)端口進(jìn)行初始化,配置視頻編解碼器,將采集數(shù)據(jù)放入相應(yīng)的顯示緩沖區(qū);等到采集完成,交換緩沖區(qū)并通知進(jìn)行下一次采樣。voidtskVideoLoopback(){Intstatus;intn=0;Inti;intm=0; FVID_Frame*capFrameBuf,*temp;FVID_Frame*disFrameBuf;/*設(shè)置顯示的行數(shù)*/IntnumLinesDis=EVMDM642_vDisParamsChan.imgVSizeFld1;/*設(shè)置采集的行數(shù)*/IntnumLinesCap=SEEDVPM642_vCapParamsChan.fldYStop1-SEEDVPM642_vCapParamsChan.fldYStrt1+1;/*判斷是顯示區(qū)域大,還是采集區(qū)域大,取其小者*/IntnumLines=(numLinesDis>numLinesCap)?numLinesCap:numLinesDis;/*設(shè)置采集像素?cái)?shù)*/程序代碼intnumPixels=EEDVPM642_vCapParamsChan.fldXStop1-SEEDVPM642_vCapParamsChan.fldXStrt1+1;/*設(shè)置采集行的增量*/intcapLinePitch=SEEDVPM642_vCapParamsChan.fldXStop1-SEEDVPM642_vCapParamsChan.fldXStrt1+1;/*設(shè)置顯示行的增量*/intdisLinePitch=EVMDM642_vDisParamsChan.imgHSizeFld1;EVMDM642_vDisParamsChan.segId=EXTERNALHEAP;//EXTERNALHEAP;EVMDM642_vDisParamsSAA7105.hI2C=SEEDVPM642_I2C_hI2C;numLines*=2;/*bothfields*/程序代碼/******************************************************//*initializationofdisplaydriver初始化*//******************************************************/disChan=FVID_create("/VP0DISPLAY/A/0", IOM_OUTPUT, &status, (Ptr)&EVMDM642_vDisParamsChan, NULL);

程序代碼

/******************************************************//*configurevideoencoder&decoder配置編解碼器*//******************************************************/FVID_control(disChan, VPORT_CMD_EDC_BASE+EDC_CONFIG,(Ptr)&EVMDM642_vDisParamsSAA7105); /*啟動(dòng)顯示*/FVID_control(disChan,VPORT_CMD_START,NULL);/*申請一個(gè)空間*/FVID_alloc(disChan,&disFrameBuf);/*loopforever*/程序代碼while(1){ if(Ch1run==TRUE) { /*Waitforsemaphoretobepostedbyvp1capture*/ SEM_pend(&vp1sem,SYS_FOREVER); LOG_printf(&trace,"getsem:%x",m++); /*獲取當(dāng)前的隊(duì)列中的緩沖區(qū)*/ if((temp=(FVID_Frame*)QUE_get(&vp1que))!=(FVID_Frame*)&vp1que) { capFrameBuf=temp; /*將數(shù)據(jù)放入相應(yīng)的顯示緩沖區(qū)*/程序代

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論