基于FPGA飓风4代的线阵CCD实时图像采集系统 系统采用线阵CCD TCD2252D作为图像传感器,使用CCD专用信号处理芯片AD9822(14bit)处理CCD传输过来的信号数据,将数据存在SDRAM乒乓操作实现同步收发数据,利用usb68013作为usb传输芯片接口。经过实验室不完全屏蔽测试,采集10000帧噪声影响最大为0.6mv

话不多说直接上图,示波器采的是原样的数据,而上位机显示的是已经采集好并且解析出来的。

整个工作流程是这样的, Fpga通过一定的时序采集CCD的图像,将其暂存在sdram中,在一幅图像前面插入流水号和帧头,上位机通过USB2.0接收板卡上面的数据,并且经过校验流水号和帧头无误后,将图像数据显示出来。

暂时由于硬件受限做到1秒采集1000帧(已经达到美国某科研实验室他们仪器的水平),噪声波动比较小,0.5毫伏级别,可通过上位机在线设置采集频率

硬件成本只要500多块钱,比某实验室的仪器卖5w便宜多了

心酸的fpga调试过程经验总结:仿真一定要做好,其中设置的参数一定要有串口和指示灯来看,通过串口要可进行设置,不然工程大了一遍又一遍编译费时间还不容易找到问题。

心酸的调试数据问题数据总结:

1毛刺问题:环境干扰, AD的程序不对,线的干扰,板子上的干扰,ad输入电容击穿,杜邦线传输效率没那么高, USB线干扰,上位机程序没写对,调试时候的焊锡多拖动了一点

2突然之间数据饱和的问题:同毛刺问题一样

(完结项目)fpga采集双路CCD摄像头1000帧图像上传到上位机显示相关推荐

  1. 基于FPGA的双路低频信号发生器设计

    基于FPGA的双路低频信号发生器设计 系统结构框 本设计是以Altera公司的可编程芯片做载体,运用Verilog作为软件设计工具,从而实现DDS原理,即信号发生器的核心思想.再加上信号发生器的硬件电 ...

  2. (一)CCD传感器1000帧(可调)采集,fpga主控,sdram存储 68013usb2.0传输到上位机保存显示:项目介绍

    这是一个关于ccd图像采集到上位机的项目,从设计pcb到开发上位机,开发了很久.期间遇到了各种大大小小的坑,特此记录一下. 功能说明: 自己设置的帧率,通过上位机下发到fpga中,fpga控制ccd采 ...

  3. (二)CCD传感器1000帧(可调)采集,fpga主控,sdram存储 68013usb2.0传输到上位机保存显示:fpga逻辑程序

    fpga这部分是花了大部分时间调试的,总结出来:比较难调试,调试方式单一 概述 fpga控制ccd传感器和ad转换芯片,从而获得ccd上所有阵列的电压数据,之后将数据存储在sdram中,然后控制680 ...

  4. FPGA驱动FT601实现USB3.0相机 OV5640视频采集 提供2套工程源码和QT上位机源码

    目录 1.前言 2.FT601芯片解读和时序分析 FT601功能和硬件电路 FT601读时序解读 FT601写时序解读 3.我这儿的 FT601 USB3.0通信方案 4.vivado工程1--彩条视 ...

  5. 基于STM32的四旋翼无人机项目(二):MPU6050姿态解算(含上位机3D姿态显示教学)

    前言:本文为手把手教学飞控核心知识点之一的姿态解算--MPU6050 姿态解算(飞控专栏第2篇).项目中飞行器使用 MPU6050 传感器对飞行器的姿态进行解算(四元数方法),搭配设计的卡尔曼滤波器与 ...

  6. Zigbee无线传感网 CC2530+DHT11DS18B20 温湿度采集 串口上位机显示

    文章目录 一.介绍 二.上位机数据采集 (一)采集数据 (二)拓扑结构 (三)新节点加入网络 (四)节点事件 三.实现分析 (一)配置文件 (二)发送 (三)短地址和数据获取 (四)数据包分析 (五) ...

  7. stm32摄像头串口传输上位机显示

    stm32:正点原子精英版STM32F103ZET6 摄像头:ov7725 设备实拍; 实验环境: 发送RGB主代码,分大小端模式 /* ******************************* ...

  8. (五)CCD传感器1000帧fpga-68013-usb2.0传输:verilog程序部分quartus编译

    整个工程中,一共编译了这么些.v文件,相对应的bdf很复杂,但是RTL视图很清晰 配置参数: fpga的fifo用了4096 乘 2个,分别用作sdram的输入和输出,sdram=16M ccd的工作 ...

  9. (四)CCD传感器1000帧fpga-68013-usb2.0传输:实际测试数据

    测试数据部分 1产生数据: 由于fpga采用的是verilog硬件语言,只要ccd那里时序没问题,数据一定是可靠的. 当然了,如果硬件上有干扰另当别论,在实际测试时候,由于供电的纹波以及高频振荡,偶尔 ...

最新文章

  1. python代码实现二叉树的序列化和反序列化
  2. 咕泡-装饰器 decorator 设计模式笔记
  3. android 分支管理,Android Studio git使用,包括协同开发,分支管理。
  4. mysql冷备增量备份,MySQL备份与恢复之真实环境使用冷备(2)
  5. CodeForces 658C Bear and Forgotten Tree 3(构造)
  6. ddr5内存上市时间_辣评烩:SK海力士首发DDR5内存:频率冲上5600MHz
  7. ruby on rails 站点
  8. Fragment结合nineold包实现滑动tab页
  9. linux文件删除恢复
  10. Apache日志配置详解(rotatelogs LogFormat)
  11. SpringBoot中的文件读取
  12. sql语句的插入方式总结
  13. C语言——设置flag的优点
  14. signature=f81ed620b6d6e6cb4bbe5a4d79d445b8,Lubricating compositions
  15. 程序员遭遇精神内耗该如何“自救”?
  16. 让物体沿椭圆轨道运动
  17. Delphi Thread 多线程编程(6)
  18. [报错]RuntimeError: expected scalar type Double but found Float(torch)
  19. 2021成都好久查询高考成绩,2021年成都各高中高考成绩排名及放榜最新消息
  20. 从零开始免费搭建自己的博客(一)——本地搭建hexo框架

热门文章

  1. python 字典的常见方法
  2. android 仿微信demo————登录功能实现(移动端)
  3. 计算机网络笔记及思维导图(1)——概述
  4. 5000元投影仪性能排行榜,当贝F5遥遥领先其他投影仪
  5. 华为手机显示切换服务器,手机切换云服务器
  6. 图像轮廓生成Freeman码
  7. MySQL——索引与EXPLAIN
  8. 如何看待简书大V饱醉豚 写的《为什么程序员是出轨率最高的群体》?
  9. SAP系统PP模块常用RFC接口
  10. signature=5a522a8356f9906b0b775bdada02a4c6,阜阳境内车辆违章信息公示(4月3—4月23)