野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 15990|回复: 32

STM32驱动OV7670图像显示问题

[复制链接]
发表于 2014-3-10 21:23:47 | 显示全部楼层 |阅读模式
用STM32驱动OV7670,程序改在野火《库开发实战例程2013-5-18》和网上wangguanfu的程序,但是显示时遇到问题,通过串口送到电脑,在DemokTool中显示为乱点,显示程序如下:
#include "Imag_App.h"
#include "fifo.h"
#include "lcd_botton.h"
void Get_imag_and_discor(void)
{
    u16 i, j;
    u16 Camera_Data;
    USART_SendData(USART1,0x00ff);    //数据头
    for(i = 0; i < 240; i++)
    {
      for(j = 0; j < 319; j++)
      {
        READ_FIFO_PIXEL(Camera_Data);   //从FIFO读出一个rgb565像素到Camera_Data变量
        LCD_WR_Data(Camera_Data);    //显示一个像素到液晶
  USART_SendData(USART1,Camera_Data/256);   //发送低八位
  USART_SendData(USART1,Camera_Data%256);  //发送高八位
      }
      READ_FIFO_PIXEL(Camera_Data);
      LCD_WR_Data(0);
    }
}
希望各位多多指教,小弟万分感谢啊
捕获.PNG
回复

使用道具 举报

发表于 2014-3-10 21:25:41 | 显示全部楼层
这个工具好高端,是在pc上显示摄像头数据的?实时性如何
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-10 21:27:28 | 显示全部楼层
红思雨 发表于 2014-3-10 21:25
这个工具好高端,是在pc上显示摄像头数据的?实时性如何

好慢的,十几秒一帧吧
回复 支持 反对

使用道具 举报

发表于 2014-3-10 21:32:59 | 显示全部楼层
楼主看看是不是有引脚没对应修改好,注意ISO板子有没有引脚复用,可以通过液晶左侧的跳帽解除复用的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-10 21:40:50 | 显示全部楼层
可爱的深蓝 发表于 2014-3-10 21:27
好慢的,十几秒一帧吧

查了一下,好像这个工具不支持彩图,所以这个样子
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-10 21:44:09 | 显示全部楼层
但是用液晶显示也有问题,液晶总是在灰白色闪动
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-10 21:45:53 | 显示全部楼层
ISO液晶显示如下:
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-10 22:35:17 | 显示全部楼层
随风 发表于 2014-3-10 21:32
楼主看看是不是有引脚没对应修改好,注意ISO板子有没有引脚复用,可以通过液晶左侧的跳帽解除复用的

强烈支持,非常感谢哥们谢谢,我觉得应该就是液晶程序引脚没有移植好的原因吧,正在查看,希望多多向您请教
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-10 23:30:14 | 显示全部楼层
随风 发表于 2014-3-10 21:32
楼主看看是不是有引脚没对应修改好,注意ISO板子有没有引脚复用,可以通过液晶左侧的跳帽解除复用的

现在液晶能显示了,但是显示的结果和第一幅图差不多,是些运动的彩点
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-10 23:32:47 | 显示全部楼层
随风 发表于 2014-3-10 21:32
楼主看看是不是有引脚没对应修改好,注意ISO板子有没有引脚复用,可以通过液晶左侧的跳帽解除复用的

void Get_imag_and_discor(void)
{
    u16 i, j;
    u16 Camera_Data;

    for(i = 0; i < 240; i++)
    {
      for(j = 0; j < 319; j++)
      {
        READ_FIFO_PIXEL(Camera_Data);                 //从FIFO读出一个rgb565像素到Camera_Data变量
        LCD_WR_Data(Camera_Data);                         //显示一个像素到液晶
      }
      READ_FIFO_PIXEL(Camera_Data);//?????????
      LCD_WR_Data(0);                //?????????
    }
}
在7670的显示时有   READ_FIFO_PIXEL(Camera_Data);//?????????
                  LCD_WR_Data(0);                //?????????
但在7725显示时没有这两句话,请问,两句话有什么作用?
回复 支持 反对

使用道具 举报

发表于 2014-3-11 10:21:10 | 显示全部楼层
可爱的深蓝 发表于 2014-3-10 23:32
void Get_imag_and_discor(void)
{
    u16 i, j;

应该是多余字节的数据,具体也不清楚
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-11 11:16:36 | 显示全部楼层
随风 发表于 2014-3-11 10:21
应该是多余字节的数据,具体也不清楚

请问有什么软件可以在电脑上显示采集到的彩图,我想看采集的RGB数据是否正确,是否是液晶显示的问题
回复 支持 反对

使用道具 举报

发表于 2014-3-11 11:22:25 | 显示全部楼层
全屏刷成0x5454,再读出来看是否一样
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-11 11:34:06 | 显示全部楼层
三流电工 发表于 2014-3-11 11:22
全屏刷成0x5454,再读出来看是否一样

现在显示是这个样子,我按你说说的试试
捕获.PNG
回复 支持 反对

使用道具 举报

发表于 2014-3-11 11:41:54 | 显示全部楼层
可爱的深蓝 发表于 2014-3-11 11:34
现在显示是这个样子,我按你说说的试试

可能你这些杜邦线这样接对信号也有影响,楼主为什么不用ov7725呢,性能比ov7670好啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-11 11:44:09 | 显示全部楼层
随风 发表于 2014-3-11 11:41
可能你这些杜邦线这样接对信号也有影响,楼主为什么不用ov7725呢,性能比ov7670好啊

我跟老师做一个摄像头采集图像并处理的设计,老师买的是7670,
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-11 11:49:29 | 显示全部楼层
三流电工 发表于 2014-3-11 11:22
全屏刷成0x5454,再读出来看是否一样

按你说的刷为5454,显示成这个样子,这句话是什么意思?
捕获.PNG
回复 支持 反对

使用道具 举报

发表于 2014-3-11 11:53:22 | 显示全部楼层
可爱的深蓝 发表于 2014-3-11 11:49
按你说的刷为5454,显示成这个样子,这句话是什么意思?

确定引脚没有复用?
回复 支持 反对

使用道具 举报

发表于 2014-3-11 11:55:26 | 显示全部楼层
随风 发表于 2014-3-11 11:53
确定引脚没有复用?

如果复用了,楼主可以通过液晶旁边的跳帽解除复用
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-11 11:59:16 | 显示全部楼层
随风 发表于 2014-3-11 11:53
确定引脚没有复用?

好吧,液晶的引脚直接就是野火7725摄像头显示程序时用的引脚,然后还用了uart1,OV7670接的是ISO右侧的引脚,我再确认一下吧
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-11 21:00:12 | 显示全部楼层
随风 发表于 2014-3-11 11:53
确定引脚没有复用?

现在液晶有显示,但是整幅图中掺杂着很多闪动的点,请问您遇到过吗?是什么原因呢?
显示图.PNG
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-11 22:24:29 | 显示全部楼层
纠结了好多天,终于可以了,是因为杜邦线的问题,杜邦线按照教程分成了3股
回复 支持 反对

使用道具 举报

发表于 2014-3-12 09:57:29 | 显示全部楼层
可爱的深蓝 发表于 2014-3-11 22:24
纠结了好多天,终于可以了,是因为杜邦线的问题,杜邦线按照教程分成了3股

恭喜楼主
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-15 22:36:42 | 显示全部楼层
随风 发表于 2014-3-12 09:57
恭喜楼主

强烈支持,非常感谢哥们,多谢各位的帮助
回复 支持 反对

使用道具 举报

发表于 2014-8-15 17:25:06 | 显示全部楼层
楼主,你的sccb用的是例程上的吗?我的老是写不进去啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-8-16 15:13:17 | 显示全部楼层
小孩子 发表于 2014-8-15 17:25
楼主,你的sccb用的是例程上的吗?我的老是写不进去啊

是野火例程的内容,没做太大改动,好像延时动过一点吧
回复 支持 反对

使用道具 举报

发表于 2015-4-23 18:14:38 | 显示全部楼层
楼主,能不能把资料发给我下904057111@qq.com
回复 支持 反对

使用道具 举报

发表于 2015-5-6 15:50:15 | 显示全部楼层
你好,我现在正在调试OV7670,利用SCCB往OV7670写入数据可以,但读取OV7670 的ID总是不成功,不知道什么问题,你给给我发一下你调试成功的程序么?谢谢
回复 支持 反对

使用道具 举报

发表于 2015-5-6 15:51:42 | 显示全部楼层
忘了留邮箱了,540305534@qq.com,谢谢啊!
回复 支持 反对

使用道具 举报

发表于 2015-5-7 21:07:59 | 显示全部楼层
好东西学习学习。
回复 支持 反对

使用道具 举报

发表于 2016-11-3 11:16:23 | 显示全部楼层
可爱的深蓝 发表于 2014-8-16 15:13
是野火例程的内容,没做太大改动,好像延时动过一点吧

我现在也在移植这个程序,但总是显示不出来,楼主能发一份移植成功的程序不,万分感谢,398083093@qq.com
回复 支持 反对

使用道具 举报

发表于 2017-7-5 12:50:23 | 显示全部楼层
在学习ov7670,LCD可以显示了,但是跟上位机通信的一直弄不出来,楼主可以分享下资料吗???万分感谢!!!
回复 支持 反对

使用道具 举报

发表于 2017-8-16 19:44:09 | 显示全部楼层
还不知道OV7670对应是什么功能。。。。有个例子,但不知道接哪些脚
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-20 18:04 , Processed in 0.048436 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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