1:硬件相关:简单数字电路要懂看懂电路图(简单)能根据电路找相应Camera硬件连接GPIO并根据芯片手册配置GPIO相应模式;比GPIO模式输入IO或输IO;或配置PWM模式;同模式GPIO工作式同;
2:Camera驱:比ov5640;要找本Linux驱相关书看看比《linux设备驱程序》知道简单linux设备驱写;工作Camera驱需要写参考使用参考驱般支持实现录像、拍照功能别白平衡、焦等都需要自调试;
3:要习V4L2协议驱导/dev/video0接口通V4L2协议;层C应用通V4L2协议访问/dev/video0;实际V4L2协议通些标志linux ioctl()函数底层驱通信;V4L2协议屏蔽各种Camera驱同(比usb摄像mipi接口摄像)提供统摄像驱通信规范;
4:要知道C++class相关知识能看C++代码既C知识哪C++面相象看懂知道C++class;要懂C++呢Android Camera HAL访问/dev/video0都用C++写二十几xxxxcpp同类相互继承实现;且要懂Android HAL层写至少查查资料知道用哪看;般都CameraModulecpp或CameraHalcpp;
5:JNI写知道些至少抄些写都固定调试程候要java层跟踪代码HAL层再驱;
5:要用Linux所Android源码都Linux编译;要知道ARM架构交叉编译器;比arm-linux-gcc;知道编译Androidkernel源码;刷机;调试;买块带CameraAndroid发板;
我觉得linux下无论是USB也好,网卡也好,你的摄像头也好,入门首先要做得就是驱动,因为这些东西最基本的地方就在于驱动程序的设计,而现在网上有关驱动的源码相当成熟,无论是USB还是摄像头,都有可执行的C代码,(可能因为linux是开源的缘故),接下来我建议你做的就是下载下经典的驱动源码,然后简化之,将不是必须的、附加的模块去掉,这个过程一开始是很痛苦的,但是它最大的好处是通过你的删减过程你会完全了解该驱动的构架,最最基本的构架,你会明白摄像头驱动所需要的所有模块,这样底层的东西明了了,上层的模块化设计、接口定义都能做到有的放矢
装了2个camera?
usb接口20?可能是usb的带宽不够,尝试v4l2c:///dev/video1格式或者v4l2:///dev/video1:chroma=mjpg格式
以上就是关于camera v4l2 与 i2c 怎么建立联系全部的内容,包括:camera v4l2 与 i2c 怎么建立联系、怎样在嵌入式Linux系统中使用摄像头、ubuntu下用open函数打开 dev/video1失败等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)