EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
飞凌嵌入式搭载全志A40i处理器的FETA40i-C核心板,可支持4路模拟摄像头PAL(720x576)/NTSC(720x480)。而实际使用过程中,PAL或者NTSC格式的分辨率无法满足实际需求,经常有客户提出,是否可支持高清模拟摄像头?高清摄像头分辨率能否支持720P或者1080P?针对此需求,小编整理编辑了FETA40i-C核心板Linux/Android 系统支持720P高清模拟摄像头解决思路。
4 D& q6 [4 p5 q/ s2 y" J5 A$ l K6 n8 ?
一、方案评估
5 y0 i8 B( k9 Z/ ?& \' Z% }+ Y# u2 n# ?根据A40i CPU手册描述,CSI0支持最大到1080p@30fps,支持8-bitBT656接口。 9 K2 i( }8 i0 R4 O$ b( J1 ^4 P% L
![]()
( G$ x& D% M0 T1 [ e! b5 R) A5 o! A根据上述信息,硬件选择RN6752芯片,支持2路CVBS转BT656高清视频解码芯片,输入为2路不同时输入的CVBS,输出为BT656格式,自动检测NTSC/PAL输入,720P和1080P解码,其中ADC采样率高达72MHz,可实现最佳色彩和图像瞬态响应。
X4 F% [$ K* ~4 f( H
: T2 n& c% l* Y- j& j二、参考原理图
! J1 ~# m4 p+ I$ i, s2 {( tVINA与VINB为不同时输入,默认采用VINA输入。内部有寄存器可控制通道切换。 : D& g. M6 ^. ^* \/ W) ^" @, S3 @) l
9 P+ R( U! q" k3 p$ H) B5 ~ I
三、驱动移植
, w" n. b7 k4 L! u" N■将对应驱动放入如下路径:drivers/media/platform/sunxi-vfe/device/rn6752.c ■修改Makefile文件obj-y +=rn6752.o ■驱动编译 ■修改sys_config1024x600.fex中csi0对应csi0_dev0_mname,csi0_dev0_twi_addr等参数 ■编译内核并重新打包镜像,烧写
, |, X6 G6 Z/ [: f& ?; ?' w驱动移植时,需要注意: 1.摄像头所用引脚的复用需要去掉。 2.CSI接口采用BT656,输入格式为YUV422,输出为NV21/NV12。 3.RN6752采用V4L2_MBUS_FMT_UYVY8_2X8格式。
( i4 `; L3 J' d% E& w! z a, Z四、Linux和Android上显示效果% r4 o: R# V6 i: g6 n) N% {
1、Linux上在Linux上可采用默认出厂的Cameratest进行测试。 预览效果如下: ( O- C' O9 P6 P. U
- L7 f" D- Y5 D
2、Android上在Android上可采用 Multiple Camera 进行测试。 预览效果如下: 6 r/ ]5 Q% S" ~6 P o1 X
![]()
$ i2 ^ k' G4 U e拓展阅读 目前Android上行车记录仪APP只支持video4对应的模拟摄像头,其他3路未做支持。可采用Multiple Camera预览4路模拟摄像头图像。具体如图: 因手头摄像头有限,测试采用2个摄像头:(默认支持NTSC格式的模拟摄像头) : X6 N5 T9 u/ }5 i/ L/ x% g: p
+ ?% Q- C1 t H3 Z
总结
% r7 X2 p* z1 L3 C9 h+ I! _- g最后总结一下FETA40i-C核心板支持HD摄像头方案: ■目前调试了RN6752 的支持。其它解码芯片方案,可考虑项目定制。 ■目前只调试了720P@30fps 的支持。 ■ Multiple Camera为简单测试DEMO,旨在验证摄像头通路可预览,不做其它支持。 ■其中RN6752驱动与配置,以及Multiple Camera测试程序,后续如果客户如有需要此方案可联系销售工程师。 6 `7 a1 N0 e, V# `' C3 ?/ d2 W
|