OV7670不愧是最便宜的摄像头了
最大显示像素:640*480(在VGA显示器上显示效果还不赖,用usb模块采集显示依然显著)

第一步:
VGA显示 视频图像(实时)
FPGA+SDRAM+OV7670= VGA显示视频图像,帧率可达30fps
FPGA作为逻辑控制,配置摄像头寄存器,sdram作为fifo,实现图像的基本处理(RGB转换,或RAW处理)
摄像头格式:RAW、RGB565、YUV可选。
通过使用FPGA驱动摄像头,发现摄像头驱动,显示,还算简单。

扩展:拍照不保存
解决办法:IO控制FPGA逻辑,key按下时,逻辑实现,摄像头数据停止往fifo写入,图像静止,松开后继续传输,视频继续!

第二步:
PC 计算机系统实时采集图像信息或视频
68013+OV7670
要实现视频数据传输到计算机,fpga实现就相对复杂了,至少得实现一个usb接口,还得实现协议,对于这个简单的应用,不得不换个简单的方案。
cy68013 usb芯片,轻松实现摄像头的配置和视频传输。

68013实现摄像头寄存器配置,io模拟iic总线轻松容易,寄存器初始化完,直接向fifo写入数据,轻松容易,上位机根据68013的驱动接口,直接读数据,bmp格式显示即可。
目前以实现0v7670和ov7725摄像头自动识别,自动配置,raw格式流。帧率可达30fps。
当然也可以配置为RGB565格式,只是带宽比RAW多一倍而已。

第三步:TFT小显示器 通过STM32F103 驱动摄像头,视频显示,拍照等功能
若想拍照,存储tf卡,方便导出,自然选择fat文件系统,便携式,小巧,低成本(一般的51便宜,但是ram和rom较小)
stm32f10x 不带摄像头接口,驱动tf卡,实现fat文件系统,驱动tft液晶,stm32f1虽然不带摄像头专用接口,但是配上一颗便宜的fifo也较为容易实现。
尝试,直接使用io驱动摄像头,xclk直接通过PA8 MCO输出。发现时钟低了,图像就根本不能用了,加上io翻转速度,确实较慢,基本没有啥实际用途,所以不得不加fifo,通过io驱动的液晶,帧率可达11fps,较为满意。

通过以上玩法
基本利用了FPGA的优势,快速,高效,并行。
usb的高速传输
stm32f10x的低成本,以及便携式的有点,

问题来了:
网上有看到,直接使用c8051f330驱动7670的,帧率可达到30fps,还真没想明白,什么原理,怎么实现的,各位请高见!!

从FPGA搞定OV7670 VGA显示 移植到 STM32F10x TFT显示 总结及疑问(高手请进)的更多相关文章

  1. 【资讯】天啦鲁,这十余款创客设计居然由FPGA搞定 [转]

    按理说‘高大上’的FPGA,多出现在航天航空(如火星探测器).通信(如基站.数据中心).测试测量等高端应用场景.但麦迪却也发现,近期,在很多创客的作品内部都有FPGA的影子.这或许也从侧面看出,打从总 ...

  2. 模拟摄像头,AV视频信号线解码,PAL制 NTSC,输入解码显示,终于搞定,记录下!

    模拟摄像头,AV视频信号线解码,PAL制 NTSC,输入解码显示,终于搞定,记录下! 咱们常用的摄像头,监控等,大多数都是AV信号,国内制式都是PAL,采用同轴,传输,这样的好处在于,传输距离可以很长 ...

  3. 如何让两个div在同一行显示?一个float搞定

    最近在学习div和css,遇到了一些问题也解决了很多以前以为很难搞定的问题.比如:如何让两个div显示在同一行呢?(不是用table表格,table对SE不太友好)其实,<div> 是一个 ...

  4. Jquery一个slideToggle搞定div的隐藏与显示

    Jquery一个slideToggle搞定div的隐藏与显示 <!DOCTYPE html> <html> <head> <script src=" ...

  5. 《FPGA全程进阶---实战演练》之搞定阻抗匹配

    笔者最近几天在做视频采集板卡时,视频显示端打算采用 USB2.0接口+上位机 显示,其中USB需要做阻抗匹配.通常情况下USB的阻抗值需要做到90Ω±10%.下面就讲解一下关于阻抗匹配的知识,哪里说得 ...

  6. 一张图搞定OAuth2.0 在Office应用中打开WPF窗体并且让子窗体显示在Office应用上 彻底关闭Excle进程的几个方法 (七)Net Core项目使用Controller之二

    一张图搞定OAuth2.0   目录 1.引言 2.OAuth2.0是什么 3.OAuth2.0怎么写 回到顶部 1.引言 本篇文章是介绍OAuth2.0中最经典最常用的一种授权模式:授权码模式 非常 ...

  7. Android 加载gif图片强大框架(支持预加载、缓存,还支持显示静态图片,一行代码全搞定)

    之前项目中没有涉及到显示gif图片的功能,也没有着重研究过,最近项目中要用到显示gif图片,于是就在网上一顿搜,用过之后发现如下几个缺点. 1.加载大的gif图片会出现oom. 2.没有预加载和缓存功 ...

  8. shell脚本学习之6小时搞定(1)

    shell脚本学习之6小时搞定(1) 简介 Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本. Unix/Linux上常见的Shell脚本解释器有bash.sh.csh.ksh等,习惯上把 ...

  9. JS组件系列——又一款MVVM组件:Vue(一:30分钟搞定前端增删改查)

    前言:关于Vue框架,好几个月之前就听说过,了解一项新技术之后,总是处于观望状态,一直在犹豫要不要系统学习下.正好最近有点空,就去官网了解了下,看上去还不错的一个组件,就抽空研究了下.最近园子里vue ...

随机推荐

  1. PHP Swoole-Demo TCP服务端简单实现

    tcp 服务端简单demo与client . <?php /** * author : rookiejin <mrjnamei@gmail.com> * createTime : 2 ...

  2. 关于RAID 10的介绍与创建

    一.RAID 10的简介 定义: RAID10也被称为镜象阵列条带.象RAID0一样,数据跨磁盘抽取:象RAID1一样,每个磁盘都有一个镜象磁盘, 所以RAID 10的另一种会说法是 RAID 0+1 ...

  3. thinkphp 5.1 去掉 .html 后缀

    thinkphp 5.1 去掉 .html 后缀  

  4. nyoj 70-阶乘因式分解(二)(数学)

    70-阶乘因式分解(二) 内存限制:64MB 时间限制:3000ms 特判: No 通过数:7 提交数:7 难度:3 题目描述: 给定两个数n,m,其中m是一个素数. 将n(0<=n<=2 ...

  5. 自制window下core animation引擎 - demo第二弹 - 仿QQ电脑管家加速小火箭

    一年前想写一个像cocoa那样,可以方便层动画开发的引擎,写着写着又逆向它的QuartzCore.framework,也就是CoreAnimation的底层,已经大半年没有搞windows这个引擎.大 ...

  6. Unix, Linux以及NT内核和它们各自衍生的系统关系图

  7. head first 设计模式第一章笔记

    设计模式是告诉我们如何组织类和对象以解决某种问题. 学习设计模式,也就是学习其他开发人员的经验与智慧,解决遇到的相同的问题. 使用模式的最好方式是:把模式装进脑子,然后在设计的时候,寻找何处可以使用它 ...

  8. HTML的标签认识

    <!--      html标签     h1~h6 标题标签(只有1~6,依次减小)     p 段落标签     span 无意义的行标签     div 无意义的块标签     b 加粗 ...

  9. Java虚拟机之栈

    一.程序计数器(寄存器):PCR 作用:记住下一条JVM指令的执行地址. 特点:①线程私有的 ②不会存在内存溢出 二.虚拟机栈 1.定义 虚拟机栈:线程运行所需要的内存空间. 栈帧:一个栈帧对应一个方 ...

  10. ASP.NET Core MVC+EF Core项目实战

    项目背景 本项目参考于<Pro Entity Framework Core 2 for ASP.NET Core MVC>一书,项目内容为party邀请答复. 新建项目 本项目开发工具为V ...