0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【紫光同创国产FPGA教程】【第二十七章】千兆以太网视频传输实验

FPGA技术专栏 来源:芯驿电子科技 作者:芯驿电子科技 2021-04-12 10:29 次阅读

原创教程由芯驿电子科技(上海)有限公司(ALINX)创作,版权归本公司所有,如需转载,需授权并注明出处(alinx.com)。

适用于板卡型号:

PGL22G

1. 简介

本实验将实现视频图像的以太网传输,也相当于用 FPGA 来实现网络摄像头的功能。这里采用黑金的 500 万摄像头 AN5642 模组,通过配置 OV5640 的寄存器实现 JPEG 视频压缩的图像输出。以太网传输用 Ethernet UDP 通信协议,达到视频图像数据的快速传输。上位机通过接收网口的 UDP 数据包,提取 JPEG 的图像数据显示在电脑上。 在 FPGA 内部,我们使用一个 FIFO 模块用于存储摄像头 OV5640 采集的 JPG 图像数据,当 FIFO 数据的数量达到一个 UDP 数据包的长度时,触发一次 UDP 的数据包发送。实现的逻辑框图如下:

o4YBAGBuap-AY3csAAAnrJdtZow982.jpg

注意:在做此实验之前,首先要学习之前的例程,OV5640的摄像头显示例程以及千兆以太网传输实验。如果此实验遇到问题,建议温习前面的例程。

2. 程序设计

2.1 摄像头参数设置

我们对ov5640寄存器配置做了修改,在寄存器表里,将分辨率改成了800*600。并且选择了JPEG模式。

pIYBAGBuap-AQLsIAACKZbl9NTk801.jpg

这里需要注意,JPEG 格式输出的视频图像的每一帧的数据大小是不一样的,JPEG 输出的

数据模式有 6 种,我们程序中设置为 JPEG 模式 2,即每行的长度是固定的,每帧会有不同的

行数,最后一行的数据没有达到固定的长度的话,会补充 dummy 数据。具体大家看一下

OV5640 的 datasheet。

o4YBAGBuaqCAT60gAACDG6Dzdlo070.jpg

每行的长度由以下的寄存器配置,这里我们程序中并没有设置,默认参数为 0x400,也就

是每行的数据长度为 1024.

pIYBAGBuaqCAAfMHAACGWe5wSH4527.jpg

2.2 以太网设置

在例化mac_test.v时,将UDP发送数据长度设置为1024字节。并对以太网做了上电复位处理,利用power_on_rst.v上电延迟100ms复位以太网模块。在udp_tx.v文件中,去掉了UDP数据的校验和计算,节省时间。在mac_test.v的状态机中,加入了CHECK_FIFO状态,由于以太网首部发送也要一定时间,因此提前判断fifo中的可读数据数量是否大于1000,启动UDP数据发送。

o4YBAGBuaqGAI1QbAAASap3XWBM674.jpg

3. 下载和实验

注意:在做实验之前一定要确保OV5640摄像头显示没有问题,可结合OV5640摄像头显示例程确认。

3.1 开发板连接

1)将AN5642摄像头模组插入开发板,模块依次接入AX7035/AX050的扩展口J9、J8。保证1脚对齐,1脚在焊盘形状和其他引脚是有明显区别的,是方形的;

2)使用网线连接PC和开发板的以太网口,这里的PC网卡需要千兆网卡和千兆网线,切换摄像头视频时需按KEY2键。

3.2 PC端IP设置

设置PC端的IP地址为192.168.0.3,如下图:

pIYBAGBuaqKAJKh3AABr-JThEjk813.jpg

3.3 程序下载

下载FPGA程序,在打开上位机软件之前,首先检查网络是否连通,可在CMD窗口

ping 192.168.0.2查看连通情况。

o4YBAGBuaqKARyd9AABXIjOKj0o701.jpg

3.4 上位机软件

打开“CD\07_软件工具及驱动\以太网视频传输软件”文件夹中的video.exe

pIYBAGBuaqOAcEcSAAA3tAwSbtM672.jpg

之后软件就可以显示图像,效果如下:

3.5 视频截图

在软件显示窗口,点击鼠标左键按住不放,可以保存图片及视频,松开即可停止保存。出现jpg_save文件,图片和视频保存在里面。

pIYBAGBuaqSAZ7cWAAFFbpUAIg4450.jpg

打开文件夹,可以看到保存的图片和视频,注意要控制保存的时间,否则会很占用磁盘空间。每一张图片表示一帧图像。

o4YBAGBuaqSAOg7tAACzhUqwt0c194.jpg

4. 常见问题

4.1 等待板卡连接

在打开软件后,如果出现以下情况,可能原因是摄像头或网线没有插好,请检查摄像头及网线连接情况。之后重新打开软件。

pIYBAGBuaqWAW5UZAAA6pFr6IE0356.jpg

4.2 数据异常

如果出现以下情况,可能原因是摄像头配置不正常,有数据发送,但上位机无法解析,建议先用摄像头显示例程检查摄像头是否能正常使用或者重新插好摄像头。之后重新打开软件。

o4YBAGBuaqWAGpCJAABGI9T9AqY882.jpg

4.3 IP地址未配置

如果出现以下情况,表示没有设置IP地址,请确认设置好IP后重新打开软件。

pIYBAGBuaqaAfjSzAABIcrTVEwM722.jpg

5. 总结

到此为止,以太网传输视频的实验就做完了,程序比较简单,仅在原有的实验基础上做了扩展,理解起来相对容易些。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1602

    文章

    21320

    浏览量

    593173
  • 以太网
    +关注

    关注

    40

    文章

    5076

    浏览量

    166234
  • 摄像头
    +关注

    关注

    59

    文章

    4608

    浏览量

    92891
  • fifo
    +关注

    关注

    3

    文章

    369

    浏览量

    43069
  • 紫光同创
    +关注

    关注

    4

    文章

    68

    浏览量

    27249
收藏 人收藏

    评论

    相关推荐

    紫光同创国产FPGA教程】【第二十三章】千兆以太网传输实验

    实验将实现FPGA芯片和PC之间进行千兆以太网数据通信, 通信协议采用Ethernet UDP通信协议。 FPGA通过RGMII总线和开发
    的头像 发表于 04-07 10:38 1.4w次阅读
    【<b class='flag-5'>紫光</b><b class='flag-5'>同创</b><b class='flag-5'>国产</b><b class='flag-5'>FPGA</b>教程】【<b class='flag-5'>第二十</b>三章】<b class='flag-5'>千兆</b><b class='flag-5'>以太网</b><b class='flag-5'>传输</b><b class='flag-5'>实验</b>

    紫光同创国产FPGA教程】【第二十四章】AD9238以太网传输

    使用ADC的以太网传输实验中使用的ADC模块型号为AN9238,最大采样率65Mhz,精度为12位。基于前面讲到的以太网实验,在本
    的头像 发表于 04-08 09:13 9902次阅读
    【<b class='flag-5'>紫光</b><b class='flag-5'>同创</b><b class='flag-5'>国产</b><b class='flag-5'>FPGA</b>教程】【<b class='flag-5'>第二十</b>四章】AD9238<b class='flag-5'>以太网</b><b class='flag-5'>传输</b>

    紫光同创国产FPGA教程】【第二十五章】AD7606以太网传输

    练习使用ADC的以太网传输实验中使用的ADC模块型号为AN706,最大采样率200Khz,精度为16位。基于前面讲到的以太网实验,在本
    的头像 发表于 04-09 09:20 1.5w次阅读
    【<b class='flag-5'>紫光</b><b class='flag-5'>同创</b><b class='flag-5'>国产</b><b class='flag-5'>FPGA</b>教程】【<b class='flag-5'>第二十</b>五章】AD7606<b class='flag-5'>以太网</b><b class='flag-5'>传输</b>

    紫光同创国产FPGA教程】【第二十六章】AD9280以太网传输

    实验练习使用ADC的以太网传输实验中使用的ADDA模块型号为AN108,ADC最大采样率32Mhz,精度为8位。基于前面讲到的以太网
    的头像 发表于 04-13 10:26 1.7w次阅读
    【<b class='flag-5'>紫光</b><b class='flag-5'>同创</b><b class='flag-5'>国产</b><b class='flag-5'>FPGA</b>教程】【<b class='flag-5'>第二十</b>六章】AD9280<b class='flag-5'>以太网</b><b class='flag-5'>传输</b>

    国产FPGA介绍-紫光同创

    满足工业自动化、物联网、视频图像处理等应用需求,已量产发货。 紫光同创具备大规模FPGA全流程开发设计能力,产品市场覆盖航天航空、通信网络、信息安全、AI、数据中心、工业物联网等领域。
    发表于 01-24 10:45

    以太网视频传输 #FPGA

    fpga以太网
    辛一_e1e
    发布于 :2023年11月01日 06:28:18

    「正点原子Linux连载」第二十七章SPI实验

    1)实验平台:正点原子Linux开发板2)摘自《正点原子I.MX6U嵌入式Linux驱动开发指南》关注官方微信号公众号,获取更多资料:正点原子第二十七章SPI实验同I2C一样,SPI是很常用的通信
    发表于 01-13 11:12

    【正点原子FPGA连载】第二十七章gpio子系统下的LED驱动实验-领航者ZYNQ之linux开发指南

    原子公众号,获取最新资料第二十七章gpio子系统下的LED驱动实验在上一当中已经给大家介绍了linux的gpio子系统,那本章我们就来编写一个基于gpio子系统API的LED驱动程序,本章将在
    发表于 09-16 17:40

    【迅为资料上新】iTOP-3568开发板指南手册!

    三章 安装 SSH 软件第二十四章 安装 Samba第二十五章 Source Insight 的安装和使用第二十六章 MobaXterm的安装教程 第三部分 嵌入式平台入门实操 第二十七章
    发表于 04-26 15:03

    基于FPGA以太网视频广播接收系统的设计

    基于FPGA以太网视频广播接收系统的设计摘 要:本文介绍了一种实用的基于FPGA以太网视频广播接收系统,由于采用了FPGA 技术,使得
    发表于 01-27 14:24 44次下载

    第二十七讲 同步时序逻辑电路的设计

    第二十七讲 同步时序逻辑电路的设计 7.5 同步时序逻辑电路的设计用SSI触发器16进制以内7.5.1 同步时序逻辑电路的设计方法
    发表于 03-30 16:31 3709次阅读
    <b class='flag-5'>第二十七</b>讲 同步时序逻辑电路的设计

    模拟电路网络课件 第二十七节:集成电路运算放大器

    模拟电路网络课件 第二十七节:集成电路运算放大器 6.3  集成电路运算放大器 一、简单的集成电路运算放大器
    发表于 09-17 11:38 963次阅读

    罗德与施瓦茨应邀参加第二十七届空间太赫兹技术国际研讨会

      2016年4月13-15日,南京 ― 第二十七届空间太赫兹技术国际研讨会(ISSTT2016)于南京金陵饭店成功举办。本次会议由中科院紫金山天文台承办,由罗德与施瓦茨公司特邀赞助。来自全国及海外的150多位专家学者参加了此次学术交流,共同探讨天文及空间太赫兹的前沿技术。
    发表于 04-28 11:03 902次阅读

    【正点原子FPGA连载】第二十七章DS18B20数字温度传感器实验 -摘自【正点原子】新起点之FPGA开发指南_V2.1

    【正点原子FPGA连载】第二十七章DS18B20数字温度传感器实验 -摘自【正点原子】新起点之FPGA开发指南_V2.1
    发表于 11-25 11:06 28次下载
    【正点原子<b class='flag-5'>FPGA</b>连载】<b class='flag-5'>第二十七章</b>DS18B20数字温度传感器<b class='flag-5'>实验</b> -摘自【正点原子】新起点之<b class='flag-5'>FPGA</b>开发指南_V2.1

    晶能光电亮相第二十七届广州国际照明展览会

    2022年8月3-6日,以“新时代、新担当”为主题的第二十七届广州国际照明展览会(简称“光亚展”)在广州中国进出口商品交易会展馆盛大启航。
    的头像 发表于 08-05 15:12 2982次阅读