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. 产品分析:华为短信APP体验的问题和建议

  2. try-with-resources优先于try-finally

    参考资料:<Effective Java>.<Java核心技术 卷1>.https://www.cnblogs.com/flyingeagle/articles/1015292 ...

  3. lqb 基础练习 01字串 (itoa)

    基础练习 01字串 时间限制:1.0s   内存限制:256.0MB     问题描述 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能.它们的前几个是: 00000 00001 0 ...

  4. 100天搞定机器学习|Day56 随机森林工作原理及调参实战(信用卡欺诈预测)

    本文是对100天搞定机器学习|Day33-34 随机森林的补充 前文对随机森林的概念.工作原理.使用方法做了简单介绍,并提供了分类和回归的实例. 本期我们重点讲一下: 1.集成学习.Bagging和随 ...

  5. 力扣(LeetCode)最后一个单词的长度 个人题解

    给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度. 如果不存在最后一个单词,请返回 0 . 说明:一个单词是指由字母组成,但不包含任何空格的字符串. 示例: 输入: &quo ...

  6. JSON——IT技术人员都必须要了解的一种数据交换格式

    JSON作为目前Web主流的数据交换格式,是每个IT技术人员都必须要了解的一种数据交换格式.尤其是在Ajax和REST技术的大行其道的当今,JSON无疑成为了数据交换格式的首选! 今天大家就和猪哥一起 ...

  7. 启动elasticsearch

       - name: source env      shell: source /etc/profile    - name: make elastic permission      shell: ...

  8. 《面试官之你说我听》:简明的图解Redis RDB持久化、AOF持久化

    欢迎关注文章这一系列,一起学习 <提升能力,涨薪可待篇> <面试知识,工作可待篇> <实战演练,拒绝996篇> 如果此文对你有帮助.喜欢的话,那就点个赞呗,点个关注 ...

  9. linux系统资源查看常用命令

    1.vmstat vmstat是Virtual Meomory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存.进程.IO读写.CPU活动等进行监视.它是对系统的整体情况进行统计, ...

  10. c#-PropertyChangingEventArgs

    MSDN 解释连接:https://msdn.microsoft.com/zh-cn/library/system.eventargs.aspx#inheritanceContinued[Serial ...