Linux摄像头驱动安装适配 编译内核的网上资料很少,内容不全,我就把这方面的具体内容一点点的写出来,供大家使用!
我遇到的问题如何解决了,有每一步的检测方法:
我的机器视觉程序运行完后出上图,应该是摄像头没安好吧,还是怎么了?但是我的摄像头已连接,摄像头驱动或者是摄像头是否能正常使用 常用的是lsmod 命令和v4l2-ctl --list-devices命令进行查看。
不可能是程序的问题,我先保证摄像头连接正常,因为在其他的板子上跑通了这个程序。先按照用户手册的4.14.1UVC Camera 测试。
gst-launch-1.0 v4l2src device=/dev/video0 io-mode=2 num-buffers=10 ! \
video/x-raw,format=YUY2,width=640,height=480,framerate=30/1 ! jpegenc ! filesink \
location=pic.jpeg
这个命令建议您复制手册中的,不然容易出错。
摄像头我又换个口。
查看有没有节点:v4l2-ctl --list-devices
没有节点。
手册上写的是支持5645和UVC的摄像头,别的摄像头需要进行适配
我用手机或是摄像机USB插上去当摄像头连接看看行不行?
也不行。
看看摄像头支不支持arm64架构的。
上面这款可以。
VIMICRO USB PC Camera (ZC0301PLH)这是摄像头的型号。插到板子上不识别,要装Linux驱动。可能还有一个原因,usb接口是2.0的。
那就只能写驱动适配了。
找驱动源码。
这个是7670的,板子支持OV5645 MIPI 摄像头,不能用这一款的,硬件没有接口,软件也没有进行适配。
装驱动的话,不仅仅需要驱动源码,也需要修改其他文件,工作量很大,下边我想出个难的,就是把USB摄像头驱动搞通。
编辑文件/arch/arm64/configs6254-C_defconfig在最后一行加入 CONFIG_USB_GSPCA_ZC3XX= y然后编译内核,会有一个选项,选择y。
手册里有编译内核的方法,在4.3.4 单独编译内核。
能把这个驱动编译进去,可能会导致依赖项没有编译
make menuconfig ARCH=arm64
在下面这个图形配置界面选中这个即可:
之后就可以使用了!