FPGA_VIP_V101 视频开发板 深入调试小结
FPGA_VIP_V101 推出已经有半年有余,各项功能例程已移植完毕,主要参考crazybingo例程进行移植和结合开发板设计了几个实例例程
主要包含:
硬件配置:
FPGA:EP4CE6E22C8N(6k逻辑资源,可以进行nios开发)
SDRAM:HY57V641620(32M,可以做视频图像缓存,nios存储器)
通信接口:1、USB2.0(68013 高速数据通信) 2、USB2.0(cp2102 usb转串口)
CMOS摄像头接口(可以直接接OV7670、OV7725、OV9650、OV5642。30w到500w像素摄像头)
LCD液晶接口(动态液晶刷新,液晶驱动,ttl驱动,可以直接驱动大多数液晶显示器,可以使用ttl转lvds接笔记本液晶显示器)
VGA显示器接口(ADV7123 30bit液晶接口,本系统仅有16bit,可显示65535色)
供电接口(4-6v dc5接口,可以直接外部电源供电,笔记本usb供电不足时)
系统结构:底板+核心板。可以任意扩展
JTAG下载接口:支持下载sof文件、jic文件。
tf卡、sd卡接口:nios系统时可以进行文件系统操作或fpga直接操作sd卡存储器。
一、基础例程
1、VGA显示驱动(640*480-1080p)
2、串口通信例程(串口收发、使用逻辑资源构建一个串口,板卡自带cp2102,直接可以通过usb通信)
3、时钟、流水灯、按键控制(测试最简单的程序,验证硬件是否ok)
4、SDRAM测试(通过vga显示sdram各种图案效果、动态刷新)
5、68013 进行对摄像头寄存器配置(目前可以自动识别7725和7670,可以配置为raw8输出或rgb565输出)
二、算法例程移植(来源crazybingo,支持原创)
1、7725摄像头rgb视频显示
2、7725摄像头usb采集raw格式解码
3、OV7725_RGB888转YCbCr444
4、CMOS_OV7725_YCbCr422_RGB888
5、CMOS_OV7725_Gray_Mean_Filter
6、CMOS_OV7725_Gray_Median_Filter
7、CMOS_OV7725_Gray_Sobel
8、CMOS_OV7725_Gray_Sobel_Erosion
9、CMOS_OV7725_Gray_Sobel_Erosion_Dilation
三、液晶驱动
1、LCD_Display_Test800480(7寸液晶显示800*600测试)
2、SDRAM_LCD_Display_Test800480(7寸液晶显示sdram动态刷新内容测试)
3、LCD_CMOS_OV7725_RGB640480(7寸液晶显示摄像头视频测试程序)
四、下一步计划
1、模拟摄像头接入(AV接入、PAL解码)
2、nios例程完善(液晶驱动、VGA驱动、摄像头驱动、tf文件系统)
3、综合例程(vga显示例程、菜单、usb视频采集、tf文件系统维护、视频录制、拍照等功能)
4、TTL转LVDS液晶驱动(驱动笔记本显示器、大尺寸液晶)
目前调试心得
1、核心板突然不能工作,不能下载程序,led等全亮。
检查工作电压:3.3v、2.5v、1.2v均正确
问题疑问:突然不工作,之前上电ok,突然失活,接连两块均是如此。猜测:虚焊、静电损坏?
拆下来,反复验证,均无法工作,时隔一天决定拿热风台吹下更换fpga。
周围都往返吹吹,重新上电,恢复工作!猜测:底盘接地虚脱。
继续加热使其底盘焊锡融化焊接牢,第二块也按此方法处理,均恢复正常,由此判定是底盘接地问题。
2、vga视频显示花屏,不同步
检查程序:发现摄像头参数为68013配置,于是检查68013的摄像头配置模式更改为与fpga解码模式一致,全部为raw8后,正常
小结:若为68013单独配置寄存器,则需要仔细检查68013是否正常,已经初始化模式是否和fpga解码模式一致,线路是否ok!均能解决问题
3、VGA视频颜色偏色,能显示图像,但是颜色不正常。
怀疑是焊接虚焊:仔细检查vga的每根数据线,因为颜色不对,能显示图像,所以同步信号应该没有问题。
重新补焊后,恢复正常!
注:此问题遇到两块板子,有一块无论如何补焊,检查链接关系都正确,依然色偏,更换ic后ok,所以也不排除adv7123损坏。
4、USB视频采集,不可靠,偶尔能链接采集,偶尔不成功(68013)
主要怀疑虚焊,但确实无虚焊,仔细对比其他ok的板子,也未发现差异,
只得研究手册和参考图纸,发现cs、add0,add1需要接低电平,
本板子设计之初因为对该芯片理解不多,且希望保留更多选择性,所以一些固定电平的io通过电阻上拉或下拉,以便容易更改作为其他应用。
add0和add1已经下拉,唯独cs连接led指示灯接地,可能导致电平不可靠
更改:使用1k电阻直接下拉,问题解决,每次均能正常采集,于是解决问题。
5、USB视频采集,刚开始上电,视频图像有雪花,慢慢消失,最后不再出现,每次上电都会有,第一次会较多。
分析:只有上电之初出现,第一次采集的时候时候会出现,而且逐步消失,目前暂未解决
图片效果如下
刚开始上电工作。
约5-10秒后
目前猜测可能是硬件问题,但是没找到哪问题,与核心板无关,在其他底板上ok,哪位大侠有告知敬请支招,不慎感激!
附件:
1、使用手册
http://pan.baidu.com/s/1gdgW2Mf
图纸
http://pan.baidu.com/s/1qWG5Uyw
参考链接:
http://item.taobao.com/item.htm?spm=a1z10.1-c.w4004-2613737252.11.ab1vls&id=42772767702
http://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-2707874652.11.mEnnTf&id=42060514081
FPGA_VIP_V101 视频开发板 深入调试小结的更多相关文章
- [转载]在iTOP-4412开发板上调试helloworld应用
本文转自迅为论坛:http://www.topeetboard.com 1.安装ADB驱动 在开发板上调试 Android 应用,首先要安装 ADB 驱动. 通过“SDK Manager.exe”来安 ...
- MDK972-EK开发板裸调试设置和裸机程序烧写(转)
硬件平台:MDK972-EK开发板编译调试软件:KEIL uVision4仿真工具:JLINK V7/V8 本例子从串口输出信息,如图: KEIL uVision4调试设置如图所示: ...
- 4418之Android Eclipse导入应用程序在开发板上调试
由于在开发板上 LEDtest 应用已经默认安装了,所以在开发板上调试已安装应用的时候,需要做一下处理才能够正常连接.基于迅为iTOP4418开发板如下图所示,在打开工程“ledtest”,打开“bi ...
- 痞子衡嵌入式:飞思卡尔Kinetis开发板OpenSDA调试器那些事(上)- 背景与架构
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔Kinetis MCU开发板板载OpenSDA调试器(上篇). 众所周知,嵌入式软件开发几乎离不开调试器,因为写一个稍有代码规模 ...
- Headless Android开发板的调试及远程显示和控制
最近在调试msm8996的开发板,由于主板和LCD子板还没回来,所以先回的核心板算是个Headless的Android Device.核心板有独立供电,另外还有USB Type-C.FAN.HDMI. ...
- VIP 视频开发板 上位机 测试软件 下载地址,玩转各自分辨率(V201抢先版)
本上位机最高测试帧率 133fps 目前支持分辨率:更多分辨率支持,敬请期待或给我留言VGA:640*4801.3M:1280*10242M:1600*1200786p:1024*768 格式兼容:1 ...
- CrazyBingo mini VIP 2.0 视频开发板 NIOS移植例程(原创)
创建一个NIOS环境 注意事项 前言:(先了解下硬件) 本板卡目前主要适合以下几类人: (1)对FPGA 逻辑开发有强烈的兴趣,并且有一定的HDL基础 (2)计划采用FPGA图像架构,学习并研究图像算 ...
- zynq7020开发板+ Z-turn调试计划
参加米尔zynq7020开发板试用活动. 收到米尔z-turn板子后,焊接了一个JTAG转接板,以方便调试PL部分,对于后面的调试部分,主要分三个部分走:1.调试FPGA部分,实现逻辑控制外围简单的设 ...
- 最新设计打样制作完成的FPGA视频开发板VIP—V101
设计目的:1.摄像头驱动(30w-500w mipi接口)2.VGA显示器驱动3.USB2.0视频采集4.tft液晶接口(ttl.lvds驱动)5.视频.图像处理(算法验证)6.各种视频接口处理(av ...
随机推荐
- iOS界面流畅技巧之微博 Demo 性能优化技巧
微博 Demo 性能优化技巧 我为了演示 YYKit 的功能,实现了微博和 Twitter 的 Demo,并为它们做了不少性能优化,下面就是优化时用到的一些技巧. 预排版 当获取到 API JSON ...
- 01-python中一切皆对象
python一切皆对象 Python中一切皆对象,在静态语言中,Java也是面向对象编程,Python要比Java的面向对象编程更加彻底.元类编程以及猴子补丁都是用一切皆对象编程出来的. 1.函数和类 ...
- 2019-9-24:渗透测试,JavaScript数据类型基础学习
JavaScript 数据类型 值类型(基本类型):字符串(String).数字(Number).布尔(Boolean).对空(Null).未定义(Undefined).Symbol. 引用数据类型: ...
- ssm通用 POM
<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven ...
- day 42 JavaScript 基础知识部分
一. JavaScript存放位置 <script type="text/javascript" src="JavaScript文件路径">< ...
- nginx的使用,以及反向代理,负载均衡,从安装到使用,全部步骤。
先总结nginx实现负载均衡的原理,在这之前先的知道反向代理,因为nginx的负载均衡是在反向代理的基础上实现的: 1.反向代理:通过在nginx的配置文件 (vim /opt/nginx196/co ...
- 当linux突然修改任何设置都没办法联网时的绝对有效解决办法
以下操作为重新启动虚拟网卡的相关配置,初始化并重启虚拟网卡,对目前的配置不会有任何影响 打开终端,依次输入以下内容:– sudo service network-manager stop– sudo ...
- flask实现验证码并验证
效果图: 点击图片.刷新页面.输入错误点击登录时都刷新验证码 实现步骤: 第一步:先定义获取验证码的接口 verificationCode.py #验证码 @api.route('/imgCode') ...
- C# delegate和C# event
在基于Windows平台的程序设计中,事件(event)是一个很重要的概念.因为在几乎所有的Windows应用程序中,都会涉及大量的异步调用,比如响应点击按钮.处理Windows系统消息等,这些异步调 ...
- Codeforces Round #451 (Div. 2) A B C D E
Codeforces Round #451 (Div. 2) A Rounding 题目链接: http://codeforces.com/contest/898/problem/A 思路: 小于等于 ...