请教下传感器输出的12位并行数据RAW通过FPGA采集出来,然后要转成YUY2格式通过GPIF接口传给FX3,再通过USB显示实时图像视频。现在问题是12位传感器数据如何变成YUY2格式?通过slaveFIFO时序实现与AN75779通过VGA时序实现有什么不同?
已解决! 转到解答。
FPGA上如何转换格式需要你根据RAW12和YUY2的数据格式作转换。
AN75779时FX3枚举为UVC Class Device,并且对数据进行处理使发送到主机端的数据均符合UVC的格式,这样主机端可以直接使用UVC的驱动打开设备,传输图像数据。slaveFIFO只是单纯的朝主机端发送原始数据。
FPGA上如何转换格式需要你根据RAW12和YUY2的数据格式作转换。
AN75779时FX3枚举为UVC Class Device,并且对数据进行处理使发送到主机端的数据均符合UVC的格式,这样主机端可以直接使用UVC的驱动打开设备,传输图像数据。slaveFIFO只是单纯的朝主机端发送原始数据。
RAW12如何转换成YUY2呢?另外请教下USB设备的FriendlyName在固件哪里修改呢?
lvyu_4677141 撰写:
请教下传感器输出的12位并行数据RAW通过FPGA采集出来,然后要转成YUY2格式通过GPIF接口传给FX3,再通过USB显示实时图像视频。现在问题是12位传感器数据如何变成YUY2格式?通过slaveFIFO时序实现与AN75779通过VGA时序实现有什么不同?
AN65974(slave FIFO) 示例里的 是 vendor device,底层驱动是 Cypress的 Cyusb3.sys,
AN75779 示例里的是 UVC,驱动是系统自带的标准驱动,数据传输/控制需要满足 UVC协议。
我想问下UVC是否支持RAW格式,另外RAW12的数据格式是什么样的,我可以自定slave fifo模式来传输图像视频数据吗,FPGA那边把UVC的标头打包好,FX3这边按照slave fifo的时序实现数据从GPIF转到USB缓冲,在设计FX3固件时需要修改哪些地方?
UVC不支持RAW格式,你这样设计也是可以的,但是需要你自己设计上位机软件读取图像。
请参考这篇文章:FX3 / CX3 Firmware for Streaming RAW Image Data using Cypress Driver
我想问下RAW8或者12的GUID是多少,我找不到。下面图片是YUY2的GUID的16字节
你好,搭车咨询下,根据AN75779 用3014 内部UVC 打包UVC包头数据方式,最大带宽能到多少呢?3014 内部ARM 性能必然是比FPGA 组包性能要差一些的