ZC301摄像头移植

上传人:jin****ng 文档编号:159062250 上传时间:2022-10-08 格式:DOCX 页数:6 大小:17.48KB
返回 下载 相关 举报
ZC301摄像头移植_第1页
第1页 / 共6页
ZC301摄像头移植_第2页
第2页 / 共6页
ZC301摄像头移植_第3页
第3页 / 共6页
点击查看更多>>
资源描述
1像头驱动的移植(ZC3XX)、普通设计第一:首先确保所用的FS2410开发板上移植的是Linux-2.6.22.6内核,USB 及CS8900A均能工作第二:移植驱动 gspcav1-20071224.tar.gz :( 1 ) 在 linux-2.6.22.6/drivers/usb 目 录下 新建 media 目 录, 将 gspcav1-20071224.tar.gz copy 到 media 下并解压。为了使 media 编译进内 核,需修改 linux-2.6.22.6/drivers/usb 目录下的 Kconfig、Makefile 文件。 具体操作:linuxweijing usb$ vi Kconfig添加下面语句:source drivers/usb/media/Kconfig linuxweijing usb$ vi Makefile添加下面语句: obj-$(CONFIG_USB_SPCA5XX)+= media/(2)为添加 gspcav1-20071224 编译选项,在 media 下新建 Kconfig、Makefile 文件。linuxweijingmedia$ vi Kconfig# USB Multimedia device configuration#comment USB Multimedia devicesdepends on USBconfig USB_SPCA5XXtristate USB SPCA5XX Sunplus/Vimicro/Sonix jpeg Cameras depends on USB & VIDEO_DEV-help-Say Y or M here is you want to use one of these wedcams:The built-in microphone is enabled by selecting USB Audio support.This driver uses the Video For Linux API.You must say Y or M to Video For Linux(under Character Devices)to use this driver. Information on this API and pointers to v41programs may be found at.To compile this driver as a module,choose M here:the Module will be called spca5xx.“ 帮助文档说明了下面这句话: USB SPCA5XX Sunplus/Vimicro/Sonix jpeg Cameras ”特别注意:所在在一移植的时候也要注意看看帮助文档linuxweijing media$ vi Makefile# Makefile for USB Media drivers# obj-$(CONFIG_USB_SPCA5XX) += gspcav1-20071224/( 3 ) 修改 gspcav1-20071224 的 Makefilelinuxweijing gspcav1-20071224$ vi Makefile gspca-objs := gspca_core.o decoder/gspcadecoder.o obj-$(CONFIG_USB_SPCA5XX) += gspca.o第三:打 ZC301 摄像头的补丁usb-2.6.12LE06.patch.tar.gzLINUX 内核中系统中没有 ZC301P 摄像头驱动,要下载对应的内核补丁,其补 丁和驱 动在 http:mxhaard.free.fr 中有 对 应的驱 动下 载。此 处 用到的是 usb-2.6.12LE06.patch.tar.gz,补丁下载地址 http:/mxhaard.free.fr/spca50x/embedded/KernelPatch/usb-2.6.12LE06.pa tch. tar.gz。此pat ch是为令重编内核时,有spcaxx系列摄像头的支持。把它 复制到driver/usb下,解压,打补丁.cd /home/linux/linux-2.6.22.6/drivers/usb tar -xvzf usb-2.6.12LE06.patch.tar.gzpatch -p1 Multimedia devices - Video For LinuxUSB support - Support for Host-side USB- USB Host Controller Drivers OHCI HCD support- USB Multimedia devices USB SPCA5XX Sunplus/Vimicro/Sonix jpeg Cameras这两个选项必须是用M,不能用*摄像头属于视频类设备,遵循的标准为 Video for Linux (V4L)标准。这个标准定义了一套API接口,内核、驱动、应 用程序都以这个接口为标准进行交流。目前的V4L涵盖了音视频捕捉及处理等内 容,也包括USB摄像头。在内核中加上这个选项之后,在/dev下才会创建一个 video0 的字符设备文件。(2 ) make zImage make modules(生成 gspca.ko 文件)此时,可能会提示 gspca_core.c 的一些轻微错误,稍作修改即可:/static const char gspca_version = GSPCA_VERSION; 把GSPCA_VERSION改成Makefile里面第一行的VERSION中的值第五:测试( 1 ) cp arch/arm/boot/zImage /tftpboot/( 2 ) 把生成的模块在为 gspca.ko 拷贝到 /source/rootfs 目录下面 然后动态加载到内核里 insmod gspca.ko (注:如果重启板的话,则重新加载)重启,插上中星微芯片的摄像头,命令行出现#usb 1-1: new full speed USB device using s3c2410-ohci and address 2usb 1-1: configuration #1 chosen from 1 choice drivers/usb/media/gspcav1-20071224/gspca_core.c: USB GSPCA camera found.(ZC3XX)说明移植的驱动已经能识别设备,设备名所在路径/dev/videoO。 (video0 节点是插入摄像头设备才有的)査看确认一下:ls - l /dev/video0第六:编译客户端程序spcaview-20061208.tar.gz1、下载 SDL 库 SDL-1.2.14.tar.gz解压:SDL-1.2.14. tar.gz运行配置:./configure会生成一个Makefile文件然后运行: make接着安 装: make install ( 这步 它会 生成 一个 SDL 库 默认 放到 /usr/local/include 目录下,提供给 spcaview 使用) 如果出现错误,则切换到超级用户2、客户端程序使用的是spcaview,下载地址为: http:/mxhaard.free.fr/spca50x/Download/spcaview-20061208.tar.gz 这个程序是在PC上运行的,解压后,直接编译 Make 就行,生成可执行文件 spcaview 。( 特别注意:这时时候会出现很多的错误提示,错误开始提示如: spcaview.c 里面没定义SDL/SDL.h这些文件,主要是因为主机没有这个SDL库文件,所以 我们要安装SDL这个库,才能make成功。因此第一步就把SDL安装上了,不过, 你也可以尝试先不安装SDL库看看错误。移植的东西的时候很多时候都会出现这 种缺少依赖库的问题,多多积累经验 )第七:移植服务器端程序servfox-R1_1_3.tar.gz服务器端程序我用的是servfox,从这里下载 http:/mxhaard.free.fr/spca50x/embedded/Servfox/servfox-R1_1_3.tar.gz 下载,解压,进入其目录,观察之,发现没有makefile,但有一个makefile.arm, 还有一个makefile.386,于是将makefile.arm改名为makefile,然后编译make 正常,没有出错,将可执行文件servfox复制到nfs共享目录,启动开发板,挂 载nfs服务器,运行servfox,出错,提示为找到到该命令,老问题,以前遇到 过类似问题,原因是该命令为动态链接,而开发板上没有相关的库文件,所以无 法运行,需要静态链接。回到PC,打开makefile,将所有用到arm-linux-gcc的地方,都加上一个 参数-static,其实就三个地方(我操作的时候不加也可以)。注意:如果用 arm-linux-gcc 不行的话就改成本机上的交叉工具 arm-softfloat-gnu-gcc 即 可。然后重新编译make,则生成一个servfox可执行文件,把它传到开发板上3、FS2410 板终端上运行服务器: ./servfox -g -s 320x240 -w 7070 (是字母“x”而不是星号“*”,端口 7070在spcaview.c里面写定了) 程序运行了,提示为servfox version: 1.1.3 date: 11:12:2005 (C) mxhaardmagic.frwrong spca5xx device Waiting for connection. CTrl_c to stop !在虚拟机的终端执行客户端: ./spcaview -g -w 192.168.1.241(板子 IP) 就可以看到图像了。说明移植成功了。二、改进设计这个/etc/init.d/rcS脚本文件是系统启动时启动里面所有的内容,所以我 们可以通过改写它来实现自己某些必要的启动程序。动态加载模块的方法比较不方便,因为每次进来的时候都要手动去加载一次 模块,所以我采用改写脚本的方式,注意改写的是 /source/rootfs 目录下 /etc/init.d/rcS 脚本,让它在系统启动的时候自动加载模块即可。具体操作:打开文件 : vi /etc/init.d/rcS添加语句 : /sbin/insmod gspca.ko 系统启动时自动加载(insmod这个命令在/sbin这个目录下,改写脚本的时候最好把所用的命令命全 路径写上去,这样比较好)我们也可以把boa服务器和servfox服务器一起加进去添加语句: /etc/boa/boa/servfox - g - s 640x480 - w 7070 &( 一定要通过在后台 & 运行,否则也加载不了根文件系统 )这样我们在启动开发板的时候就不用手动的去启动boa和servfox服务器了Boa服务器结合ZC301摄像头驱动实现网页实时监控实现这个功能时,同时也要把boa服务器一齐移植好。 这次说说用 web 页面观看的问题了在主机上,进入 spcaview 安装的目录下 ,是不是看到有个目录叫做 http-java-applet,我们需要把他拷贝到boa的主目录下(/var/www),也就是 您的 DocumentRoot 的目录下但是在做这个工作之前我们需要把这个目录的权限修改一下,chmod -R 755 /home/spcaview/http-java-applet (之前我就是没做这一步导致applet程式不 能运行)这时把这个文档夹整个拷贝到boa的主目录下,然后启动boa服务器. 进 web 浏览器 http:/192.168.0.X/http-java-applet/index-sample.html 便能够看到了您在网站上显示图片的话,别人必须不断的刷新才能看见新的图片撒。所以在我提供的源程式中有个JwebPlayer的程式,是个applet小程式,能够加 载到 web 页面中用来播放视频流特别注意:在网页监控需要到Java的库,安装Java开发软件即可,否则 无法显示摄像头的图像:jdk-6u10-rc-bin-b28-windows-i586-p-21_jul_2008.exe
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸设计 > 毕设全套


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!