zedboard--基于demo系统的webcam和webserver的联合使用(二十三)

       二十一中在zedboard中搭建了Boa服务器,并在主机上可以使用浏览器访问Zedboard的IP地址,我们可以通过Boa服务器访问到index.html网页。
      二十二中,搭建了嵌入式Web服务器,虽然还有些问题都没有解决,其实现在所做的都是和一般的ARM是一样的,具有一般的通用性。移植了mjpg-streamer到zedboard,并可以通过浏览器直接访问到获取的实时图像,但是我们是使用固定的端口号来获取视频图像的,而不是标准的网页形式,这样也存在一个问题,就是接收的数据时放在内存中的,所以运行一段时间后就不行了,内存放不下了,今天终于解决了这个问题。那就是将实时图像嵌入到网页当中,这样我们就可以在同一个网页中,一边观察视频图像,一边做控制(这部分还没实现)。
       主要参考:陆佳华的书,实验是对书上的例程的实现。
       转载注明:xzyfeixiang的专栏:http://blog.csdn.net/xzyiverson/article/details/14052699
       前提:boa服务器搭建完成+mjpg-streamer也移植搭建完毕。接下来就是具体的步骤了。
1:启动Boa服务器:
1.1启动系统,挂载U盘,新建目录mkdir -p /etc/boa /var/log/boa/var/www/cgi-bin
1.2拷贝文件到相应目录
        cp boa.conf  /etc/boa/
        cp mime.types  /etc/
1.3新建两个log文件
        vi  /var/log/boa/error_log   /var/log/boa/access_log  不输入任何东西,保存就可以了。
1.4 chmod 777 index.html,并且拷贝到 cp index.html /var/www/
注意:这里的index.html和之前的不一样,我们必须要在网页中插入一个名为cambozola的流媒体播放器,这样,我们打开网页时可以直接观察到传回的实时图像。
1.5这里index.html暂时使用光盘中的测试,不过要做一些修改。


修改的地方是ip那里,你可以看到是要插入一个cambozola的东西,将这个东西拷贝到相应的目录下就行了。
1.6 最后的配置
ifconfig eth0 202.38.214.211(和我的网段一样)
cp cambozola.jar/var/www/
1.7 启动 ./boa &


2 启动mjpg-streamer
 ./mjpg_streamer -i "/usr/lib/input_uvc.so -yuv -f 25 -r 600*360 -q 60" 
 -o  "/usr/lib/output_http.so -p 8080 -w /www/camwww"
注明: -f 每秒帧数,-r 分辨率 -q 图像品质 -p 端口 ,我们可以做相应的修改,之前的图像就是每秒5帧,这样太少了,改为25.
3实验测试
        打开火狐浏览器,输入ip地址202.38.214.211,注意这里需要自己安装一个java的插件哦。


结果运行很流畅,而且一点都不卡,也很稳定,good!ps:上面的按钮的一些东西还没有用上,有待继续深入的学习。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
Zedboard板基于SOC的Adau1761测试项目 郑郁正(百度) 项目模板来自:Lab4 1、 在vivado下执行TCL脚本可以生成SOC模型。 2、 直接创建SDK项目。 3、 将Line In输入的音频处理后送Line Out。 4、 通过SW0可以选择是否滤波处理音频,还是直通。 主要问题是提供的TCL脚本与vivado2015.2不兼容,按网上“ vivado + zedboard之audio驱动”的步骤运行TCL失败。其二是adau1761.h adau1761.c、iic.h、iic.c没用(实际上模板中也没有)。其三是testapp.c中的xfir_hw.h不存在(实际上不做滤波处理时可以删除)。 说明一下如何修改TCL脚本。 1、 解压labsoure.rar后将 ..\labsource\sources\lab4 拷贝到 d:\ 下。 2、 启动vivado后点主菜单中的window中的Tcl Console打开Tcl Console命令窗口。 3、 在Tcl Console窗口下面的命令框中输入cd d:/lab4 4、 用windows的“记事本”打开该目录中的audio_project_create.tcl 文档(用其它文本编辑器打开也可以)。 5、 首先将第2行create_project audio C:/xup/hls/labs/lab4/audio -part xc7z020clg484-1路径改为create_project audio d:/lab4/audio -part xc7z020clg484-1 6、 第15行set_property ip_repo_paths C:/xup/hls/sources/lab4 [current_fileset]路径改为set_property ip_repo_paths d:/lab4 [current_fileset] 7、 将audio_project_create.tcl 的每一行拷贝入 Tcl Console 命令框中执行。 8、 执行第7行“create_bd_cell -type ip -vlnv xilinx.com:ip:processing_system7:5.3 processing_system7_0”产生错误: ERROR: [BD 5-216] VLNV <xilinx.com:ip:processing_system7:5.3> is not supported for this version of the tools.The latest version is:5.5 ERROR: [Common 17-39] 'create_bd_cell' failed due to earlier errors. 9、 在右上Diagram窗口右击鼠标选“Add IP…”,选择倒数第2个IPcore:“ZYNQ7 Processing System”,将出现在Tcl Console窗口中的“create_bd_cell -type ip -vlnv xilinx.com:ip:processing_system7:5.5 processing_system7_0”拷贝代替第7行。实际上是vivado版本兼容问题,将5.3改为了5.5。 10、 注消25行、26行。因为 执行第25行 delete_bd_objs [get_bd_nets processing_system7_0_fclk_clk1] 产生警告: WARNING: [BD 5-234] No nets matched 'get_bd_nets processing_system7_0_fclk_clk1' 执行第26行 connect_bd_net -net [get_bd_nets processing_system7_0_fclk_clk0] [get_bd_pins proc_sys_reset/slowest_sync_clk] [get_bd_pins processing_system7_0/FCLK_CLK0] 产生错误: WARNING: [BD 5-235] No pins matched 'get_bd_pins proc_sys_reset/slowest_sync_clk' WARNING: [BD 41-395] Exec TCL: all ports/pins are already connected to '/processing_system7_0_FCLK_CLK0' ERROR: [BD 5-4] Error: running connect_bd_net. ERROR: [Common 17-39] 'connect_bd_net' failed due to earlier errors.” 11、 注销59行。因为执行第59行 connect_bd_net [get_bd_pins processing_system7_0/FCLK_RESET0_N] [get_bd_pins proc_sys_reset/ext_reset_in] 产生错识 WARNING: [BD 5-235] No pins matched 'get_bd_pins proc_sys_reset/ext_reset_in' ERROR: [BD 41-701] connect_bd_net requires at least two pins/ports, or one pin/port and a net ERROR: [BD 5-4] Error: running connect_bd_net. ERROR: [Common 17-39] 'connect_bd_net' failed due to earlier errors. 12、 回到vivado主菜单file中close project,不保存任何内容。关闭vivado,删除d:/lab4/audio目录。 重新启动vivado后点主菜单中的Tools中的Run Tcl Script…,选中d:/lab4/audio_project_create.tcl,即可自动完成硬件SOC系统的创建,工程项目位于d:/lab4/audio中。 1. 在右上窗口Diagram中右击鼠标选“Validate Design”验证。 2. 进入主菜单File选“Save Block Design”保存创建的系统结构图。 3. 点击左上窗口Design的左下选项Sources,显示项目顶层结构,右击其中的顶层“system(system.bd)(6)”选“Create HDL Wrapper”OK 4. 点击左上窗口Sources中“Constraints”右边的“+”展开,右击constrs_1  Add Sources  Next  点中间的“+”,添加管脚文件d:/lab4/zed_audio_constraints.xdc。(由于新版本的vivado区分大小写字母,所以必须将该文件中的IIC、GPIO换成小写字母iic、gpio) 5. 进入主菜单Flow选Generate BitStream。运行过程中都点OK。 6. 进入主菜单File选Export  Export Hardware…  将“Include Bitstream”左加的框打勾  OK 7. 进入主菜单File选Launch SDK。 在SDK中 1、 进入主菜单File选New  Application Project,在Project Name输入框中输入一个项目命zyzAudio,然后Next进到下一级选空白项目模板Empty Project。 2、 点开左边项目管理窗口中的zyzAudio,右击src后import,选General中的File System,找到d:/lab4目录,将audio.h和testapp.c选中加入项目中。 3、 注销testapp.c包含的头文件 #include “xfir_hw.h 4、 修改滤波器函数filter_or_bypass_input(),注销if(sw_check & 01){…}语句全体,将其后的两条输出语句 Xil_Out32(I2S_DATA_TX_L_REG, u32DataL); Xil_Out32(I2S_DATA_TX_R_REG, u32DataR); 改为 if(sw_check & 01){ Xil_Out32(I2S_DATA_TX_L_REG, u32DataL); Xil_Out32(I2S_DATA_TX_R_REG, u32DataR); }else{ static u32 zyzTest=0; zyzTest += 0x0800; Xil_Out32(I2S_DATA_TX_L_REG, zyzTest<<8); Xil_Out32(I2S_DATA_TX_R_REG, zyzTest<<8); } 5、 进入主菜单Xilinx Tools选Program FPGA,将BitStream.bit下载到板上。 6、 进入主菜单Run选Run Configuration…,然后用GDB运行程序。 7、 运行时,拨动板上的SW0,耳机插入Line Out即可听到声音。如果有音频从Line In输入,也可以听到。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值