2010 212-316
TVP5146 多通道视频输入的解码芯片,总共有十个通道,可以输入的视频格式包括:CVBS、svideo(Y+C)、YPbPr、RGB等格式
上电、复位是启动一个芯片的关键
cvbs-----------------
| ----> TVP5146 -------->CameraInterface(CIF)->CPU
|
DVD Y Pb Pr ------
1、CVBS输入到TVP5146的时候,图像始终收不到,最终是TVP5146的晶振不振造成,按照硬件的说法是让TVP5146的晶振振动的方法怪,
总结:如果收不到图像,首先用示波器看下输入端是否正常输入,如果正常输入了,看一下芯片的晶振是否
振动,因为CPU如果是人类的大脑,晶振就像人类的心脏
2、DVD的YPBPR输入到TVP5146的时候,整个屏幕输出的东西非常的恍,乱跑,最终经过测试Y(1V) Pb(0.7v)
Pr(0.7V)的peak-to-peak(峰峰值)太小,去掉TVP5146
前的电感滤波电路,峰峰值达到要求,正确输出,不会来回恍了,看来是幅值降低了
总结:这个经验一定记住,当图像输出内容差不多但是图像会乱跑,如始终左右晃动等现象,一般应想到
信号的幅度不够,峰峰值不够,在专业点应是信号增益不够,信号太弱
3、TVP5146的输入源可以是DVD的YPbPr,也可以是CVBS,根据输入源的配置可以知道,输出的制式,我的DVD输出的是NTSC(720X486),在做输出端显示的时候配置的是PAL(720X576)制式,所以会出现多出的几行会花屏。修改制式解决
总结:屏幕图像输出正确只是分辨率不匹配的时候应该想一下N制和P制的区分
编写与上层应用通讯的后台播放程序
2010 04 08-04 09
改组件的方式调用Cam Cif TVP5146解码芯片的驱动为直接通过应用程序调用
流程:在应用层开辟三个物理内存,以参数的方式传给驱动层,驱动层CIf的DMA YUV地址循环设置这三个地址,Cam和上层应用创建三个同名事件,
当CIF产生帧中断时,就触发事件,因此应用层知道了哪个地址已经存满了一帧数据,将此地址指向视频0的FrameBuffer
经验:上层应用必须将物理地址转换为虚拟地址才能用,同名事件的妙用