Chip: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视频数据然后用VP2口发送出去。由于项目需要我需要采集BT.1120 1080p的数据。硬件上通过VP0口的VD[9:2],VD[19:12]16位数据线输入并行化了以后的BT1120 1080p的数据,时钟通过VPCLK1输入。
问题1:我将实例程序中的EVMDM642VPORTCAP_params赋值为{cmode=VPORTCAP_MODE_YCBCR_8BIT,fldOp=VPORT_FLDOP_FLD1,...,fldXstrt1=0,1,0,1,1919,1080,1919,1080,240,3,128,VPORT_FLDS_SEPARATED,1,...,irqId=8}省略号的都是原来程序的默认值,没改。但是这样修改了参数之后就无法启动EDMA中断来采集数据(captureEdmaISR()函数不执行)?请问我有哪里设置的不对吗?
问题2:今天去调试又发现在vportcap.c的_configCh()函数语句base[VP_VCACTL_OFFSET]=vCtrl;执行前后VCACTL寄存器的值根本就没变化?
问题3:上周调试的时候也发现在mdBindDev()的函数调用过程中也发现改变VPCTL和VPPCR等寄存器的值,后来发现是因为驱动程序中没在PERCFG寄存器中使能相应VP口。TI作为一个大公司出现这种bug让人感觉有些不可思议啊?请问DDK有更新吗?