- 論壇徽章:
- 0
|
本帖最后由 x5miao 于 2011-10-31 00:20 編輯
硬件:DM642
CCSv3.3
DSP/BIOS:5.31.02 (10-05-2005)
DDK:1.1.0(07-01-2003)
CSL:08-02-2004
實例程序是ddk/examples/video/driver/hd.pjt,這個程序的功能就是從VP0口讀入BT.656視頻數(shù)據(jù)然后用VP2口發(fā)送出去。由于項目需要,我采集的是BT.1120 1080p/30fps的數(shù)據(jù)。硬件上通過VP0口的VD[9:2],VD[19:12]16位數(shù)據(jù)線輸入并行化了的Y/CBCR信號,時鐘通過VP0CLK1輸入。
我將實例程序中的DM642VPORTCAP_params賦值為{cmode=VPORTCAP_MODE_YCBCR_8BIT,fldOp=VPORT_FLDOP_FLD1,...,fldXstr1=0,fldYStr=1,0,1,1919,1080,1919,1080,240,3,128,VPORT_FLDS_SEPARATED,1,...,irqId=8}省略號的都是原來程序的默認(rèn)值,沒改。但是這樣修改了參數(shù)之后就無法啟動EDMA中斷來采集數(shù)據(jù)?請問我有哪里設(shè)置的不對嗎?
通過查看vportcap.c的源代碼我覺得TI的這個庫文件似乎有bug。他在操作VP0CTL這些寄存器的時候似乎并沒有往設(shè)置設(shè)備控制寄存器PERCFG的相應(yīng)位來使能相應(yīng)端口,結(jié)果后面所有對相應(yīng)寄存器的操作都是無效的,i根本就不能往VP0相關(guān)的寄存器里面寫任何東西。但改了這個bug以后似乎程序還是沒能跑起來,請問有人以前有遇到過類似的問題嗎?
PS:實驗室一個師姐說他以前做DSP項目的時候也遇到很多各種莫名其妙的問題,后來發(fā)現(xiàn)一般都是TI的庫本身就有問題。我也看到很多人寫DSP程序的時候都是從中斷向量表開始都是自己寫的,根本不用TI的那個DSP/BIOS,TI的程序是不是真的很不靠譜。 |
|