最近遇到一个很棘手的问题。我在dm368的开发板上做开发,想改写encode demo想把编码数据用YCC16模式输出到video port的Y0~Y7上。但是将近一个月的努力,现在还是没解决问题。我先说一下我的方法:
由于encode demo中已经打开了video2设备,所以不能使用vid0或vid1,它们是相冲突的。所以,我打开了OSD0 window,并从pdf资料得知osd0是支持YUV422输入数据格式的。然后我设置了output是LCD,输出模式是NTSC,输入数据就是编码数据(把编码数据插入到Y信号位置),输出数据格式是YCC16。然后根据这些我设置了VPSS、OSD和VENC的很多相关寄存器,然后加到write.c的代码中去,并且也打开并初始化、设置了OSD0,奇怪的是运行时没有LCD_OE和VENC_CLK时钟信号,数据就更没有了。好像寄存器设置没起作用一样,不知道是什么原因,但是程序运行也没有报错,编码部分正常。所以我在这里想请教大家,怎么样使设置的OSD和VENC寄存器生效,另外怎样做才能产生LCD_OE和VENC_CLK时钟信号。希望有哪位前辈或TI工程师给我指点一下,帮帮我,非常急。我在这里给以后回复本帖的人表示非常感谢,谢谢你们提出的宝贵建议。