OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 9431|回复: 31

ov7670的彩条问题 求解决啊

[复制链接]

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
发表于 2014-5-5 10:15:16 | 显示全部楼层 |阅读模式
5金钱
我之前调试 以为是ov7670坏了,从原子哥那买了一个,可是还是不好使啊,我用的开发板和液晶屏不是原子哥的,第一个问题就是第一次彩条会有干,有时候彩条的颜色也不对,再有就是彩条刷新有的时候在屏幕中间刷。

第一次的彩条总是会这样
就算有一天梦想成真,而你做好准备了吗?
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2014-5-5 10:17:28 | 显示全部楼层
彩条颜色有时候是这样的

就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2014-5-5 10:19:39 | 显示全部楼层
还有就是我没发送一个数据,就延时100us,可以看到屏幕右侧的分界线,

就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2014-5-5 10:24:57 | 显示全部楼层
干扰问题用洞洞板焊的插座,看彩条的完整性应该不存在了吧。我把0x70寄存器设置了0x00,把0x71寄存器设置了0x80.
就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2014-5-5 14:02:08 | 显示全部楼层
有没有大神给点建议啊,狠急啊,不知道哪里出问题了
就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

65

主题

440

帖子

0

精华

高级会员

Rank: 4

积分
782
金钱
782
注册时间
2012-8-29
在线时间
17 小时
发表于 2014-5-5 14:24:22 | 显示全部楼层
回复【3楼】老虎的菜:
---------------------------------
可能是TFT彩屏的刷新方向不对
人生永远追逐着幻光,但谁把幻光看作幻光,谁便沉入无边的苦海
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2014-5-5 14:33:01 | 显示全部楼层
回复【6楼】sun_shine:
---------------------------------
我刷屏方向是从上到下,从左到右的,也试过从下到上,从左到右的,如果刷屏不对,能得到第二章图2那样吗
就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2014-5-5 16:47:39 | 显示全部楼层
怀疑是数据错位了.
楼主可以统计一下,从OV7670读取的数据,每次是不是320*240,这么多?
然后可以跟踪下,每次写入地址,是不是都是从液晶的0,0处开始?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2014-5-5 19:49:37 | 显示全部楼层
回复【8楼】正点原子:
---------------------------------
我先测试的液晶显示,我没都刷半屏幕,显示不同的颜色,可以看到每次都是从0,0处开始的,第二个我用串口打印了,也是对的。
就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2014-5-5 19:51:40 | 显示全部楼层
[mw_shl_code=c,true]void camera_refresh(void) { u32 i,j,k=0; u16 color; if(ov_sta==2) { Write_Com(0x0003,0x1038); //更改扫描方向 delay_us(500); Write_Com(0x0021,0); //行首址坐标为0 delay_us(500); Write_Com(0x0020,0); //列首址坐标为0 Send_Command(0x22); //写准备 delay_us(500); OV7670_RRST=0; //开始复位读指针 OV7670_RCK=0; OV7670_RCK=1; OV7670_RCK=0; OV7670_RRST=1; //复位读指针结束 OV7670_RCK=1; for(j=0;j<320;j++) { // delay_us(100); for(i=0;i<240;i++) { OV7670_RCK=0; color=GPIOC->IDR&0XFF; //读数据 OV7670_RCK=1; color<<=8; OV7670_RCK=0; color|=GPIOC->IDR&0XFF; //读数据 OV7670_RCK=1; Send_Data(color); delay_us(100); k++; } } printf("FINISH\r\n"); if(k==76800) { printf("OK\r\n"); } EXTI_ClearITPendingBit(EXTI_Line10); //清除LINE8上的中断标志位 ov_sta=0; //开始下一次采集 ov_frame++; Write_Com(0x0003,0x1030); //恢复默认扫描方向 } } [/mw_shl_code]
这是刷新函数,FINISH 和OK都是同时出现的啊

就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2014-5-5 19:53:06 | 显示全部楼层
回复【8楼】正点原子:
---------------------------------
现在还是图3这个结果,有点晕了
就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2014-5-6 00:20:32 | 显示全部楼层
回复【11楼】老虎的菜:
---------------------------------
那比较奇葩了,呵呵
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

65

主题

440

帖子

0

精华

高级会员

Rank: 4

积分
782
金钱
782
注册时间
2012-8-29
在线时间
17 小时
发表于 2014-5-6 08:56:43 | 显示全部楼层
回复【7楼】老虎的菜:
---------------------------------
这个得具体测试一下,仔细看OV7670和TFT的数据手册。我当时也出现过这个问题,好像是刷屏方向不对,时间太长记不清了
人生永远追逐着幻光,但谁把幻光看作幻光,谁便沉入无边的苦海
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2014-5-6 10:13:01 | 显示全部楼层
回复【13楼】sun_shine:
---------------------------------
和我这个问题一样吗?  我这个 就是看机就是第一个图,不知道为什么  。然后就不会出现那种情况了,之后就想第三个图那样了
就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2014-5-6 10:37:03 | 显示全部楼层
回复【14楼】老虎的菜:
---------------------------------
还有就是我的彩条颜色的位置总是在变化的。
就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
32
金钱
32
注册时间
2014-1-14
在线时间
0 小时
发表于 2014-7-11 10:59:57 | 显示全部楼层
回复【15楼】老虎的菜:
---------------------------------
LZ的问题解决了吗  我的彩条测试出来的图像全是LZ第一张图的右边那些点....
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2014-7-11 12:52:58 | 显示全部楼层
回复【16楼】拳拳:
---------------------------------
问题已解决,你是什么问题?  第一章图最右侧那些点? 那说明ov7670没有给lcd传数据啊
就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
32
金钱
32
注册时间
2014-1-14
在线时间
0 小时
发表于 2014-7-11 13:20:05 | 显示全部楼层
 回复【17楼】 老虎的菜 :
---------------------------------
如果我把数据线拔掉的话,显示的是白屏,每插上一根数据线就会有这些点出来,最后全插上就是这样的效果


回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
32
金钱
32
注册时间
2014-1-14
在线时间
0 小时
发表于 2014-7-11 13:44:14 | 显示全部楼层
回复【17楼】老虎的菜:
---------------------------------
直接把传数据的PA口接地,可以显示不同颜色,说明LCD部分都是正常的,  就是OV7670那里读到的数据异常,请问有什么调试或者解决方法吗?
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2014-7-11 14:47:59 | 显示全部楼层
回复【19楼】拳拳:
---------------------------------
我的一点经验  首先就是你看看你用的io有没有还连什么,特别是电容。然后看看帧信号 用示波器看看有没有,然后再看看 能不能进入刷新函数里 如果这些都对 我觉得 就是你的初始化有问题,那些寄存器里面的值就是。还有问题  觉得是ov7670本身了
就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
32
金钱
32
注册时间
2014-1-14
在线时间
0 小时
发表于 2014-7-11 18:43:24 | 显示全部楼层
回复【20楼】老虎的菜:
---------------------------------
可以进入刷新函数,单步调试的时候,我把数据线拔了单独测OV7670输出的电平 发现用万用表测得的数据和没拔数据线的color的值是几乎一样的(只测了前16个点),就把IO口的问题排除了; 
现在有三个可能:①有可能是帧同步信号有问题,读到没有意义的数据了,但这个图像不会变化,如果是帧同步之外的无意义数据不应该是无序的吗?②初始化设置的问题,但这个初始化我用了好几个人的情况都一样,可能问题不在这,LZ可以把你的初始化发上来让我参考一下吗? ③硬件问题,摄像头坏了,这个可能性也不大。
总之还是谢谢你的指点!
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2014-7-12 09:30:13 | 显示全部楼层
回复【21楼】拳拳:
---------------------------------
数据线的电平变化那么快,用万用表测不出来吧,得用示波器。你看帧信号也得用示波器啊。
就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2014-7-12 09:31:40 | 显示全部楼层
http://www.openedv.com/posts/list/32314.htm给你看看这个 我寄存器初始化的值  就是这个
就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
32
金钱
32
注册时间
2014-1-14
在线时间
0 小时
发表于 2014-7-12 09:57:04 | 显示全部楼层
回复【23楼】老虎的菜:
---------------------------------
好的,我是单步调试测的,现在发现的问题是fifo里面没有写进新的数据,读取是没错的,不知道是我程序问题还是模块问题
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2014-7-12 10:17:08 | 显示全部楼层
回复【24楼】拳拳:
---------------------------------
看一下fifo的写时序对不对,我的是参考的原子的程序,你可以参考一下。如果没错那可能是fifo坏了。
就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
32
金钱
32
注册时间
2014-1-14
在线时间
0 小时
发表于 2014-7-12 21:28:36 | 显示全部楼层
回复【25楼】老虎的菜:
---------------------------------
打扰了,问题还是没有解决, 写时序已经完全参考原子哥的程序了(只把所用的管脚改了),还是看起来像写不进FIFO的样子, 然后通过SCCB读取7670寄存器的值,发现有23个寄存器的值和配置的预期数值不一样,但值是固定的,不知道这个是不是正常现象
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2014-7-13 09:05:11 | 显示全部楼层
回复【26楼】拳拳:
---------------------------------
没试过,我觉得初始化的时候你往里面写的值和读出来的应该是一样的 ,你可以把这23 个值 对照ov的手册看看,那是什么配置,是否是你想要的,如果是一些比较奇怪的配置值的话 ,那应该就是不对的
就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
22
金钱
22
注册时间
2016-5-9
在线时间
5 小时
发表于 2016-5-13 20:17:16 | 显示全部楼层
过去好久了呀。。楼主还记得彩条位置总是变是怎么回事吗?
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2016-8-5 12:20:24 | 显示全部楼层
有一个引脚接了电容。。。。。
就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
10
金钱
10
注册时间
2016-7-17
在线时间
2 小时
发表于 2016-8-25 14:55:45 | 显示全部楼层
LZ我跟你的现象基本一样你怎么改的?求教!!
回复

使用道具 举报

29

主题

340

帖子

0

精华

高级会员

Rank: 4

积分
799
金钱
799
注册时间
2013-12-17
在线时间
100 小时
 楼主| 发表于 2016-8-25 15:00:02 | 显示全部楼层
检查一下IO  我的是IO和地之间接了电容 把电容去掉
就算有一天梦想成真,而你做好准备了吗?
回复

使用道具 举报

13

主题

65

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
403
金钱
403
注册时间
2016-2-2
在线时间
66 小时
发表于 2016-10-18 22:53:52 | 显示全部楼层
正点原子 发表于 2014-5-5 16:47
怀疑是数据错位了.
楼主可以统计一下,从OV7670读取的数据,每次是不是320*240,这么多?
然后可以跟踪下,每次 ...

今天测试的原子的摄像头程序,为什么一直输出彩条啊
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-23 23:04

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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