2574|1

9798

帖子

24

TA的资源

版主

楼主
 

热成像数据采集的GW1N DS90C124到SPI的并串转换 [复制链接]

 

    以前的热成像数据采集一直是使用ZYNQ+PC实现的,只适合固定应用无法移动使用。最近想用高云FPGA+STM32实现可移动的数据显示和存储功能,同时支持连接电脑实现数据读取和显示。

    手里的这个NV2热成像相机使用2线LVDS输出,需要使用DS90C124实现数据解码,解码后的数据为时钟+16bit的并行输出。因为高云的FPGA编译和下载速度都非常快,对于FPGA新手可以节省很多调试时间,花了不到一天时间把这个并串转换功能基本完成(因为使用杜邦线连接,实际使用时还是会存在问题)。如果使用XILINX的VIVADO不知道要几天才能弄完。

这里GW1N FPGA实现的功能是读取16bit的并行数据,存到FIFO里,然后另一端读取FIFO数据,通过SPI输出。这里DS90C124输出的是5MHz*16bit的数据,中间会有一些空数据,实际速率为324x*256y*16bit*30fps≈40Mbps,因为开发板使用50MHz时钟,SPI直接使用50MHz时钟正好也是STM32F7的SPI可接受的范围。

    从下图可以看出,ROUT的数据是一段有数据一段全零,cs是GW1N输出到stm32的片选信号,sclk和sdo是spi的时钟和数据,因为逻辑分析仪使用了低于sck的速率,这里没法完整查看sclk的时钟。

    ds90c124.v是通过读取16bit的并行数据、丢掉无用数据,将有用数据输出,顶层会将数据写到fifo内。

spi使用2个时钟,一个50MHz的spi输出时钟,一个16分频的3.125用来读取fifo的时钟。因为16bit中办有14bit为有效视频数据,高位用来标记行结束,为0时为最后一个数据,这时释放cs信号。

     

  top.v文件实现pll、fifo、ds90c124和spi的例化。

这里还使用pll生成了一路200MHz的时钟用来给逻辑分析仪使用,在分析spi数据时需要一个更高的时钟来观察SPI波形。

因为是飞线连接,50MHz的SPI速率太高STM32不能很好的接收到数据,所以实际测试时还使用了5MHz的spi时钟和20MHz的逻辑分析仪时钟。

STM32F769I-DISCO的CAN总线被其它外设占用无法使用,这里还使用了一块NUCLEO-L452的板子实现和NV2的CAN通信。

 

  STM32通过控制gw1n的rst_n引脚来实现SPI数据的对齐,测试时需要将时钟降低到5MHz测试

 

有时为了观察完整的SPI波形逻辑分析仪就需要使用一个更高的时钟。

 

    高云的编译速度能让我这样的新手在调试过程中节省很多时间,当然它也有一些不足的地方,比如逻辑分析仪没法显示游标, 也可能是我不会用,Value的数值一直显示的是第一个记录的数据,没法通过游标控制显示不同位置的数值这点用起来很不方便,还有每次展开的总线在下一次捕获后也会折叠起来,比较麻烦。

最新回复

  详情 回复 发表于 2022-1-3 15:57
点赞(1) 关注(2)
个人签名虾扯蛋,蛋扯虾,虾扯蛋扯虾
 
 

回复
举报

664

帖子

104

TA的资源

纯净的硅(中级)

沙发
 
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表