搜索
bottom↓
回复: 258

又一个STM32F103VBT6 直接读取OV7660(30W 摄像头)数据送HX8347 TFT显示成功(全新思路,申

  [复制链接]

出0入0汤圆

发表于 2009-8-30 12:59:13 | 显示全部楼层 |阅读模式
STM32F103VBT6超屏 128MHZ,TFT实时显示OV7660达20帧/S
已经解决OV7660高速数据同步读取问题(非FIFO,为I/O 模拟读取)

(原文件名:IMG_0018.JPG)


(原文件名:IMG_0019.JPG)


(原文件名:IMG_0020.JPG)


(原文件名:IMG_0021.JPG)

出0入0汤圆

 楼主| 发表于 2009-8-30 13:03:03 | 显示全部楼层
点击此处下载 ourdev_476159.rar(文件大小:412K) (原文件名:复件 lcd_stm32f103vbt6.rar)

出0入0汤圆

发表于 2009-8-30 13:20:55 | 显示全部楼层
占位

出0入0汤圆

发表于 2009-8-30 16:36:22 | 显示全部楼层
...好强。。。超到128M。。。

出0入0汤圆

发表于 2009-8-30 17:09:56 | 显示全部楼层
马克

出0入0汤圆

发表于 2009-8-30 17:12:16 | 显示全部楼层
128M,估计可以冲击到30帧了

出0入4汤圆

发表于 2009-8-30 18:00:11 | 显示全部楼层
记号。

出0入0汤圆

发表于 2009-8-30 18:22:03 | 显示全部楼层
STM32,上次超频到160M。。。

出0入0汤圆

 楼主| 发表于 2009-8-30 18:23:29 | 显示全部楼层
一个比一个强

出0入0汤圆

 楼主| 发表于 2009-8-30 18:36:18 | 显示全部楼层
OV7660可经过适当的处理直接挂在任何带外部存储总线的MCU上读数据,呵呵
计划挂在STM32 FSMC上实验了

出0入0汤圆

发表于 2009-8-30 19:42:33 | 显示全部楼层
不错,很强悍

出0入0汤圆

发表于 2009-8-30 20:08:57 | 显示全部楼层
107的我超到225M 稳定运行了半个多月了,很稳定。就是芯片有点温温的。

出0入0汤圆

发表于 2009-8-30 23:16:09 | 显示全部楼层
问一下楼主,你用的是什么“全新思路”,可以介绍一下吗?

出0入0汤圆

 楼主| 发表于 2009-8-31 01:17:36 | 显示全部楼层
解决OV7660高速数据同步读取问题,具体方法请看代码,说白了也很简单
====================================================================================================
常规MCU读取摄像头传感器输出的数据是不停的检测PCLK信号(速度超慢)或接FIFO(成本问题)的方法
对于专用的ASIC或DSP都带有专门的同步并行接口(PPI)来高速获取摄像头传感器输出的数据
头像被屏蔽

出0入0汤圆

发表于 2009-8-31 01:48:09 | 显示全部楼层
【11楼】 AVRman :
107的我超到225M 稳定运行了半个多月了,很稳定。就是芯片有点温温的。
-----------------------------------
强。

不知道能否10片并联运行,达到2.25G ?

出0入0汤圆

 楼主| 发表于 2009-8-31 08:11:06 | 显示全部楼层
现在流行超频?
不知道“并联”是怎样并联哦
225M,夸张

出0入4汤圆

发表于 2009-8-31 08:57:57 | 显示全部楼层
楼主好像没说明怎样连线的,呵呵,看程序好像ov7660连在了PD口上~

出0入0汤圆

 楼主| 发表于 2009-8-31 12:50:46 | 显示全部楼层
电路连接看.H文件或硬件初始化函数
搞这些的看这些代码应该都没问题呢

出0入0汤圆

发表于 2009-8-31 17:11:19 | 显示全部楼层
问下楼主,你是不是自己用GPIO产生PCLK,然后立即读取数据?那CLK_init_ON();和CLK_init_OFF();是做什么用的呢?难道说读完一帧图像之后,需要给一些持续的PCLK?还有,代码中
if(value&0x0800){m++;}
    if(m>5)
{
...
}
是做什么的?

出0入0汤圆

发表于 2009-8-31 17:38:01 | 显示全部楼层
楼上的,不只是每一帧要给一些持续的clk,而是每一行都要给,具体看ov7660的时序图。

出0入0汤圆

 楼主| 发表于 2009-8-31 17:45:59 | 显示全部楼层
代码更新:

点击此处下载 ourdev_476494.rar(文件大小:439K) (原文件名:lcd_stm32f103vbt6.rar)

出0入0汤圆

 楼主| 发表于 2009-8-31 17:48:10 | 显示全部楼层
LCD接线定义:

#define DATA_LCD_PORT GPIOE->ODR // 16BIT LCD—TFT DATA BUS

#define LCD_RST_BIT  GPIO_Pin_1
#define LCD_RD_BIT   GPIO_Pin_5
#define LCD_WR_BIT   GPIO_Pin_4
#define LCD_CS_BIT   GPIO_Pin_2
#define LCD_RS_BIT   GPIO_Pin_3
#define LCD_BL_BIT   GPIO_Pin_0

出0入0汤圆

 楼主| 发表于 2009-8-31 17:49:45 | 显示全部楼层
OV7660  SCCB BUS :

#define SCCB_SIC_BIT     GPIO_Pin_7 //SCL 接4.7K上拉电阻
#define SCCB_SID_BIT     GPIO_Pin_6 //SCD 接4.7K上拉电阻

#define SCCB_SIC_H()     GPIOA->BSRR = SCCB_SIC_BIT;
#define SCCB_SIC_L()     GPIOA->BRR =  SCCB_SIC_BIT;

#define SCCB_SID_H()     GPIOA->BSRR = SCCB_SID_BIT;
#define SCCB_SID_L()     GPIOA->BRR =  SCCB_SID_BIT;
/**/
#define SCCB_SID_IN      SCCB_SID_GPIO_INPUT();
#define SCCB_SID_OUT     SCCB_SID_GPIO_OUTPUT();


#define SCCB_SID_STATE         GPIOA->IDR&0x40

出0入0汤圆

 楼主| 发表于 2009-8-31 17:54:02 | 显示全部楼层
OV7660  Color_DATA  BUS :
STM32F103VBT6  GPIOD [0--7]

出0入0汤圆

 楼主| 发表于 2009-8-31 17:54:37 | 显示全部楼层
OV7660 时钟:

#define XCLK_H                    GPIOA->BSRR =  GPIO_Pin_8;;
#define XCLK_L                    GPIOA->BRR =   GPIO_Pin_8;;

出0入0汤圆

 楼主| 发表于 2009-8-31 17:58:59 | 显示全部楼层
因为是STM32 读OV7660再送TFT显示,获取图象保存和图象处理将更加简单

出0入0汤圆

发表于 2009-8-31 18:20:31 | 显示全部楼层
为了提高CPU利用率(RTOS),可不可以在HREF的上跳沿(中断)之后关闭硬件PCLK,然后发个信号量,阻塞的线程开始使用软件产生PCLK读取数据,同时判断HREF的电平,如果HREF变为低电平,则打开硬件PCLK,并再次阻塞自己,等待下一次HREF的上跳沿。

每次VSYNC的上跳沿中断,重新初始化液晶。

看DATASHEET好像是这个时序吧,请楼主指点一下。

出0入0汤圆

 楼主| 发表于 2009-8-31 18:35:55 | 显示全部楼层
视频:
点击此处下载 ourdev_476512.rar(文件大小:9.20M) (原文件名:MVI_0001.rar)

出0入0汤圆

 楼主| 发表于 2009-9-4 12:20:29 | 显示全部楼层
要想弄个酷估计无望了....




出0入0汤圆

 楼主| 发表于 2009-9-4 12:21:13 | 显示全部楼层

出0入0汤圆

发表于 2009-9-4 13:21:46 | 显示全部楼层
呵呵,帮忙顶。顺便问一下MT9D112进展如何?

出0入0汤圆

发表于 2009-9-4 13:36:46 | 显示全部楼层
太酷以至于直达商业级别了……

出0入0汤圆

发表于 2009-9-4 15:29:51 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-9-4 21:48:56 | 显示全部楼层
那个更新代码下载不了了,

有意思,如果达到30帧估计应该不错了,就看不出抖了。

出0入0汤圆

发表于 2009-9-4 22:46:49 | 显示全部楼层
太强了

出0入0汤圆

发表于 2009-9-4 23:29:24 | 显示全部楼层
【31楼】 icer1

积分:124
派别:
等级:------
来自:深圳
太酷以至于直达商业级别了……  
===================================
什么意思呢?

出0入0汤圆

 楼主| 发表于 2009-9-6 09:21:51 | 显示全部楼层
呵呵后

出0入0汤圆

发表于 2009-9-6 09:40:43 | 显示全部楼层
至酷。。。。。

出0入0汤圆

发表于 2009-9-6 11:07:12 | 显示全部楼层
在摄像头后面加个FIFO,用帧同步做外部中断就省心了,不用占用太多的运算周期去等待读数据。可以用AL422这样的廉价视频FIFO

出0入0汤圆

发表于 2009-9-6 11:16:47 | 显示全部楼层
楼主好强呀,STM32性能有这么好吗?

出0入0汤圆

 楼主| 发表于 2009-9-6 11:31:15 | 显示全部楼层
【38楼】 fengpc
积分:144
派别:
等级:------
来自:
在摄像头后面加个FIFO,用帧同步做外部中断就省心了,不用占用太多的运算周期去等待读数据。可以用AL422这样的廉价视频FIFO  
=====================================================================================================================
AL422这样的廉价视频FIFO  ,电路早已经建好,调试中呢

出0入0汤圆

 楼主| 发表于 2009-9-6 11:33:00 | 显示全部楼层
【39楼】 zzwuyu 微凉的晚风
积分:170
派别:
等级:------
来自:郑州
楼主好强呀,STM32性能有这么好吗?  
===========================================
过奖呢

上面视频为证,关键是控制OV7660的思路,呵呵后

出0入0汤圆

 楼主| 发表于 2009-9-7 08:02:01 | 显示全部楼层
实验了下摄像头+激光笔测量距离(图象:640*10 RGB565),实践证明是可行的

出0入0汤圆

 楼主| 发表于 2009-9-8 10:36:45 | 显示全部楼层
自顶

出0入0汤圆

发表于 2009-9-8 12:10:49 | 显示全部楼层
66

出0入0汤圆

发表于 2009-9-10 11:11:28 | 显示全部楼层
学习下。最近也打算尝试下这个

出0入0汤圆

发表于 2009-9-10 17:15:22 | 显示全部楼层
MARK

出0入0汤圆

发表于 2009-9-10 17:57:43 | 显示全部楼层
更新的代码下不了哦!

出0入0汤圆

 楼主| 发表于 2009-9-11 07:22:27 | 显示全部楼层
是下不了了,联系我吧,发给你

出0入0汤圆

发表于 2009-9-12 11:23:11 | 显示全部楼层
记号

出0入0汤圆

发表于 2009-9-12 14:02:02 | 显示全部楼层
不错,顶起!!!

出0入0汤圆

 楼主| 发表于 2009-9-17 12:13:00 | 显示全部楼层
  
   
   
    
   
     
   
  
  
  
  
  
  

出0入0汤圆

发表于 2009-9-22 08:40:56 | 显示全部楼层
不是吧,21楼到24楼都是描述硬件电路接法的语句哦,剩下就都是STM32F103VBT6的最小系统了

出0入0汤圆

发表于 2009-9-23 11:55:54 | 显示全部楼层
【42楼】 wangguanfu
积分:1560
派别:
等级:------
来自:生于四川,奔波于苏浙浮华之间
-----------------------------------------------
实验了下摄像头+激光笔测量距离(图象:640*10 RGB565),实践证明是可行的

-----------------------------------------------------------------------------------
楼主好强呀,是否详细介绍一下测量距离的可行方法?
能留个联系吗?没有淘宝帐号,想汇款买个。

出0入0汤圆

发表于 2009-9-28 12:50:09 | 显示全部楼层
楼主还是做个STM32的开发板吧

出0入0汤圆

发表于 2009-9-29 00:21:26 | 显示全部楼层
有钱啊,用这么好的万用表

出0入0汤圆

发表于 2009-10-6 12:43:01 | 显示全部楼层
都是 超频高手啊
!1!!

出0入0汤圆

发表于 2009-11-20 09:44:24 | 显示全部楼层
用AL422搞定没?

出0入0汤圆

发表于 2009-12-3 14:58:38 | 显示全部楼层
这个贴子应该 Cool .
不然太不合理了.

出0入0汤圆

发表于 2009-12-3 21:50:03 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-12-3 22:50:43 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-12-24 10:42:39 | 显示全部楼层
正需要HX8347

出0入0汤圆

发表于 2009-12-25 11:40:39 | 显示全部楼层
mark 一下吧

回复【楼主位】wangguanfu
-----------------------------------------------------------------------

出0入0汤圆

发表于 2009-12-26 12:19:18 | 显示全部楼层
mark,楼主巨强,学习了,

出0入0汤圆

发表于 2009-12-31 14:33:44 | 显示全部楼层
mark下

出0入0汤圆

发表于 2009-12-31 19:32:51 | 显示全部楼层
shop37116146.taobao.com

出0入0汤圆

发表于 2009-12-31 20:32:47 | 显示全部楼层

出0入0汤圆

发表于 2010-1-9 22:56:07 | 显示全部楼层
楼主太厉害了,小弟我佩服啊,呵呵,

出0入0汤圆

 楼主| 发表于 2010-1-10 08:24:41 | 显示全部楼层
新代码的地址

点击此处下载 ourdev_524463.rar(文件大小:439K) (原文件名:ourdev_476494.rar)

出0入0汤圆

发表于 2010-1-11 03:53:30 | 显示全部楼层
楼主有没有试过用DMA的方法读取CAMERA的图像?

PCLK接TIMn_TRIG作为DMA的触发,DMA大小设置为一行的长度。
DMA中断切换DMA的buffer,并置位一个flag。
主程序根据DMA中断置位的flag将相应的buffer数据发送到LCD(或许可以用FSMC+DMA?)。

出0入0汤圆

 楼主| 发表于 2010-1-12 12:45:27 | 显示全部楼层
【71楼】 zl1ji :
不太理解STM32的DMA响应需要的时间,暂时实验,找时间实验下

我的上面的代码,不管PCLK的,

出0入0汤圆

发表于 2010-1-14 21:48:13 | 显示全部楼层
学习

出0入0汤圆

发表于 2010-2-6 10:37:53 | 显示全部楼层
学习学习

出0入0汤圆

发表于 2010-2-6 16:48:37 | 显示全部楼层
mark 强

出0入0汤圆

发表于 2010-2-7 17:28:29 | 显示全部楼层
标记,收藏!牛!学习了。

出0入0汤圆

发表于 2010-2-7 21:59:17 | 显示全部楼层
好东西
MARK

出0入0汤圆

发表于 2010-2-9 10:01:28 | 显示全部楼层
COOL

出0入0汤圆

发表于 2010-2-9 13:13:56 | 显示全部楼层
mark!

出0入0汤圆

发表于 2010-2-20 11:05:46 | 显示全部楼层
什么时候出OV7670的呢? 期待中!

出0入0汤圆

发表于 2010-2-21 09:56:15 | 显示全部楼层
MARK

出0入0汤圆

发表于 2010-2-21 12:58:35 | 显示全部楼层
非常棒啊。

请问楼主:哪种手机摄像头的成像质量比较好?推荐个型号

出0入0汤圆

发表于 2010-2-21 13:05:40 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-2-21 13:07:26 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-2-24 21:07:08 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-2-25 15:50:17 | 显示全部楼层
好帖收藏

出0入0汤圆

发表于 2010-3-2 19:35:24 | 显示全部楼层
学习学习

出0入0汤圆

发表于 2010-3-4 15:48:06 | 显示全部楼层
等待收货学习

出0入0汤圆

发表于 2010-3-17 20:53:15 | 显示全部楼层
强哦!恶补一下,看看怎样才能达到30帧VGA的效果,那就牛了

出0入0汤圆

 楼主| 发表于 2010-3-19 10:36:53 | 显示全部楼层
点击此处下载 ourdev_539385.rar(文件大小:439K) (原文件名:lcd_stm32f103vbt6.rar)

出0入0汤圆

发表于 2010-4-18 00:03:59 | 显示全部楼层
mark!

出0入0汤圆

发表于 2010-4-18 20:29:25 | 显示全部楼层
MARK

出0入4汤圆

发表于 2010-4-18 20:46:49 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-4-18 21:07:47 | 显示全部楼层
顶~~

出0入0汤圆

发表于 2010-4-18 21:29:27 | 显示全部楼层
cool

出0入0汤圆

发表于 2010-4-18 22:14:13 | 显示全部楼层

出0入0汤圆

发表于 2010-5-13 09:28:04 | 显示全部楼层
回复【15楼】wangguanfu
-----------------------------------------------------------------------

请问你有没有OV7670的寄存器配置例子?急求

出0入0汤圆

发表于 2010-5-13 09:42:28 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-5-13 10:01:48 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-5-13 15:29:00 | 显示全部楼层
回复【楼主位】wangguanfu
-----------------------------------------------------------------------

你好,我正在调试这个ov7670模块,遇到一些问题想请教,可以加你为好友吗?我的QQ号:605310984

出0入0汤圆

发表于 2010-5-16 13:24:39 | 显示全部楼层
好帖子要顶
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-20 16:19

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表