fancyboy 发表于 2014-1-2 12:34:55

发一个51驱动FIFO_OV7670上位机显示的demo(有图有代码)

折腾了两天总算是调好了,再此感谢各位坛友(参考贴子比较多,不一一列出)。
实验板是第八届信息技术大赛组委会指定的板子,各位亲们在用别的板子测试时要注意sccb的上拉电阻,以及使用杜邦线所带来的信号干扰。按下P3^0的按键刷新一帧图像。或者用串口发送字符G也可以刷新一帧图像。QVGA:240*320,RGB565.
传输图像采用串口传输,波特率115200,IAP单片机晶振30M。欢迎拍砖...




上位机:
代码:

fancyboy 发表于 2014-1-2 12:39:36

本帖最后由 fancyboy 于 2014-1-2 12:41 编辑

再传几份参考资料













wintelboy 发表于 2014-1-2 13:36:04

fancyboy 发表于 2014-1-2 12:39
再传几份参考资料

SF!!!!!!!!!!!!!!!!!!!!!1

doujiang 发表于 2014-1-2 14:21:59

能达到好多帧?

fancyboy 发表于 2014-1-2 15:13:19

doujiang 发表于 2014-1-2 14:21
能达到好多帧?

115200的波特率,刷新一帧都需要十几秒了......

Excellence 发表于 2014-1-2 15:34:10

{:victory:}{:victory:}{:victory:}

6091820503 发表于 2014-1-2 18:13:34

速率这么低,假如拍的时候动了一下图像岂不是成渣了?

atom100 发表于 2014-1-2 18:14:04

本帖最后由 atom100 于 2014-1-2 18:17 编辑

用OV7670采集 视频了吗?

atom100 发表于 2014-1-2 18:14:23

本帖最后由 atom100 于 2014-1-2 18:18 编辑

只用OV7670采集了一副图像 ?
OV7670 的分辨率是 QVGA:240*320
问一下你的 液晶屏的分辨率是多少 1027*768吗?
240*320个像素 是只显示在1027*768 屏幕中 的 部分区域上吗 ?

fancyboy 发表于 2014-1-2 19:00:11

6091820503 发表于 2014-1-2 18:13
速率这么低,假如拍的时候动了一下图像岂不是成渣了?

有fifo不用担心抖动问题的

fancyboy 发表于 2014-1-2 19:01:10

atom100 发表于 2014-1-2 18:14
只用OV7670采集了一副图像 ?
OV7670 的分辨率是 QVGA:240*320
问一下你的 液晶屏的分辨率是多少 1027*76 ...

只是测试用,图像用上位机显示的,没用液晶屏。

lans0625 发表于 2014-1-2 19:12:43

谢谢楼主分享。。。

atom100 发表于 2014-1-2 20:31:07

fancyboy 发表于 2014-1-2 19:01
只是测试用,图像用上位机显示的,没用液晶屏。

哦,你 上位机显示器的分辨率是多少?一定不是640*480的吧?
如何和 640*480的 ov7670 去匹配的 ?

fancyboy 发表于 2014-1-2 20:39:17

atom100 发表于 2014-1-2 20:31
哦,你 上位机显示器的分辨率是多少?一定不是640*480的吧?
如何和 640*480的 ov7670 去匹配的 ? ...

上位机显示的也是320*240,关于OV7670输出分辨率可以通过SCCB修改寄存器改变的...我上传的几份资料有介绍。

jetli 发表于 2014-1-2 21:05:23

lz强悍!{:titter:}51老兵不死{:lol:}

bbsview 发表于 2014-1-2 21:34:15

不错,51永存!

atom100 发表于 2014-1-3 16:03:41

fancyboy 发表于 2014-1-2 20:39
上位机显示的也是320*240,关于OV7670输出分辨率可以通过SCCB修改寄存器改变的...我上传的几份资料有介绍 ...

你是什么 PC机显示器,分辨率 能 有320*240 这一项?
最小也是 800*600吧 ?
你的OV7670一行 输出数据是320 个8位字节吗?

fancyboy 发表于 2014-1-3 20:50:58

atom100 发表于 2014-1-3 16:03
你是什么 PC机显示器,分辨率 能 有320*240 这一项?
最小也是 800*600吧 ?
你的OV7670一行 输出数据是3 ...

难道你没有看到上位机只是用了320*240那一小块显示图像?输出的是RGB565格式,每个像素2字节。240*320*2

atom100 发表于 2014-1-5 01:25:31

本帖最后由 atom100 于 2014-1-5 01:27 编辑

了解了,我正搞这块,麻烦问下,红色方框内的设置 是啥意思,没看明白,到底是RGB565还是RGB444 ?设置后 是什么效果?







atom100 发表于 2014-1-5 09:14:54

本帖最后由 atom100 于 2014-1-5 09:19 编辑

OV7670的SCCB总线第一个数据是 slave address ,说是芯片ID,你用的是哪个 数据, ID是不是地址0A 位置上的这个数- 0x76呢?
但看到网上 很多资料上写的 0x42 ?
应该是哪一个 ?



fancyboy 发表于 2014-1-5 11:18:58

atom100 发表于 2014-1-5 09:14
OV7670的SCCB总线第一个数据是 slave address ,说是芯片ID,你用的是哪个 数据, ID是不是地址0A 位置上的 ...

0x42和0x43是控制SCCB读写操作的。

fancyboy 发表于 2014-1-5 11:21:15

atom100 发表于 2014-1-5 01:25
了解了,我正搞这块,麻烦问下,红色方框内的设置 是啥意思,没看明白,到底是RGB565还是RGB444 ?设置后 ...

手册最好还是看英文的,这个地方好像翻译错了,这个寄存器是选择输出格式RGB565和RGB555的。

clarkewayne 发表于 2014-1-5 14:02:56

謝謝分享!

atom100 发表于 2014-1-5 16:53:23

本帖最后由 atom100 于 2014-1-5 16:54 编辑

fancyboy 发表于 2014-1-5 11:18
0x42和0x43是控制SCCB读写操作的。

那这个 说法 还是容易产生误导,
0x420x43 根本就不是什么 从地址,而且 所有的OV7670都是一样的,是一个设定 是读取还是写入的OV7670 开关?!

fancyboy 发表于 2014-1-5 17:48:24

atom100 发表于 2014-1-5 16:53
那这个 说法 还是容易产生误导,
0x420x43 根本就不是什么 从地址,而且 所有的OV7670都是一样的,是一 ...

当OV7670工作时 通过设备地址来进行读/写操作。OV7670模组的写地址是0X42读地址是0X43。我也研究的不透彻,抄袭来的......

jiaohaitao 发表于 2014-1-5 18:04:36

不错,上位机图片怎么显示的?早前有网友实现过,看看楼主的代码{:lol:}

atom100 发表于 2014-1-5 19:09:35

英文版的也没看懂,楼主看明白没,啥意思?

fancyboy 发表于 2014-1-5 19:32:06

atom100 发表于 2014-1-5 19:09
英文版的也没看懂,楼主看明白没,啥意思?


按要求配置这个寄存器后,所设置的RGB565和555输出格式才有效.

atom100 发表于 2014-1-5 21:45:07

噢,感谢,知道了,出来 影子了,重影,

atom100 发表于 2014-1-7 23:18:01

本帖最后由 atom100 于 2014-1-7 23:20 编辑

注意到这个图没有,红色箭头所指的一行是 640*2 个字节数吧?还是640个字节 ?



pangfumin 发表于 2014-1-13 21:39:16

正是需要的,太好了

智慧星 发表于 2014-2-3 21:43:50

是需要。可以整和一下。做个视频机器人!

sunday151640 发表于 2014-2-6 18:34:57

厉害。。

每天学一点 发表于 2014-2-21 14:34:38

标记一下

每天学一点 发表于 2014-2-21 14:36:10

朋友,你的模组是自己做的还是买的,买的话能告诉价格吗

tacbo2012 发表于 2014-2-24 14:26:51

顶上, 楼主是好人,希望和牛人交个朋友 ^-^

fancyboy 发表于 2014-2-24 22:37:35

每天学一点 发表于 2014-2-21 14:36
朋友,你的模组是自己做的还是买的,买的话能告诉价格吗

大概六十多,论坛不是有个摄像头大神,你可以找他

wdh2152 发表于 2014-2-24 22:50:05

好东西

浪里白条 发表于 2014-2-25 09:09:29

这,速度不够快的吧。。。

xnyy 发表于 2014-5-4 21:47:11

请问一下,上位机显示出现花屏了。是什么情况呢?求大神们指点迷津

xnyy 发表于 2014-5-6 16:22:32

请问大神,为什么我把程序中while(1)去掉,单片机还是会不断发送数据到电脑上

fancyboy 发表于 2014-5-6 18:42:23

xnyy 发表于 2014-5-6 16:22
请问大神,为什么我把程序中while(1)去掉,单片机还是会不断发送数据到电脑上 ...

花屏一般是线不稳定(杜邦线),这个程序按下一次按键发送一帧图像

wildcat7261 发表于 2014-5-21 21:08:13

thx    学习了      

生来孤独 发表于 2014-5-23 14:41:09

图像质量不是很鲜艳怎么破???

xueshengke1993 发表于 2014-7-18 11:56:29

LZ我用VS2008打开你的上位机报错额,有办法解决么?

zt740421 发表于 2014-7-18 21:59:38

好资料,很好。

fancyboy 发表于 2014-7-23 16:16:38

xueshengke1993 发表于 2014-7-18 11:56
LZ我用VS2008打开你的上位机报错额,有办法解决么?

我用的VC6.0,vs没试过

kmopty1 发表于 2014-7-26 15:31:56

学习啦,正在使用中。顶!!!

xiaoha_abc 发表于 2014-8-10 20:28:15

请问楼主接收到的数据是什么文件格式的?

alfredc 发表于 2014-9-15 07:20:48

老大厉害。长期潜水员要加油了 ,努力升级

wangsidongcx 发表于 2014-9-15 18:36:47

楼主真的很厉害!!

老魏 发表于 2014-9-15 18:49:37

51也能视频啊,强大,学习了。

千年明月 发表于 2014-9-24 14:55:55

fancyboy 发表于 2014-7-23 16:16
我用的VC6.0,vs没试过

vc6.0怎么打开上位机啊?

千年明月 发表于 2014-9-27 18:57:42

atom100 发表于 2014-1-5 21:45
噢,感谢,知道了,出来 影子了,重影,

我试了一下,怎么还是一片黑,而且发了G也没接收,P3^0没有接怎么刷新啊?

千年明月 发表于 2014-9-27 19:00:02

xnyy 发表于 2014-5-6 16:22
请问大神,为什么我把程序中while(1)去掉,单片机还是会不断发送数据到电脑上 ...

我试的没有啊,是不是上位机通信有问题啊?谢谢

机器人天空 发表于 2014-9-27 23:50:43

mark......

linux-0405209 发表于 2014-9-28 09:31:55

希望这个上位机软件不知是否开源的?

bi大痣 发表于 2014-9-28 20:38:05

先mark一下,慢慢看!

szyy 发表于 2014-9-28 20:53:26

老兵不死

dhjwahaha 发表于 2014-9-29 01:12:42

mark 不错      

千年明月 发表于 2014-9-30 16:08:15

你好楼主,我也用了这款单片机调试ov7670,你的 你的摄像头供电是用转接口供的3.3V吗,其他引脚是5V的啊,我连上电路发现串口发送不了数据。希望讲解一下,谢谢。

fancyboy 发表于 2014-10-1 16:33:37

千年明月 发表于 2014-9-30 16:08
你好楼主,我也用了这款单片机调试ov7670,你的 你的摄像头供电是用转接口供的3.3V吗,其他引脚是5V的啊,我 ...

检查你的串口初始化函数,有没有开启中断...

千年明月 发表于 2014-10-1 16:47:22

fancyboy 发表于 2014-10-1 16:33
检查你的串口初始化函数,有没有开启中断...

谢谢楼主指导

fancyboy 发表于 2014-10-1 17:11:02

千年明月 发表于 2014-10-1 16:47
谢谢楼主指导

你的是有FIFO的模块吗?数据线连接是否稳定?
这说明串口发送没问题,你可以切换到彩条测试模式看看。
还有SCCB接口有木有上拉电阻。

千年明月 发表于 2014-10-1 22:15:49

fancyboy 发表于 2014-10-1 17:11
你的是有FIFO的模块吗?数据线连接是否稳定?
这说明串口发送没问题,你可以切换到彩条测试模式看看。
还 ...

会是摄像头的问题吗,我用的模块跟你是一样的啊?杜邦线干扰会出现这种情况吗?

fancyboy 发表于 2014-10-1 22:49:29

千年明月 发表于 2014-10-1 22:15
会是摄像头的问题吗,我用的模块跟你是一样的啊?杜邦线干扰会出现这种情况吗? ...

有这种可能性,你先检查一下寄存器读写是否一致,尽量不要用杜邦线。
杜邦线接触不好会导致有一个阴影,但是不是你这种

千年明月 发表于 2014-10-3 17:16:26

本帖最后由 千年明月 于 2014-10-3 17:47 编辑

fancyboy 发表于 2014-10-1 22:49
有这种可能性,你先检查一下寄存器读写是否一致,尽量不要用杜邦线。
杜邦线接触不好会导致有一个阴影, ...

今天调的还是那个老样子。。唉。。。楼主你的工程文件里面sccb_receivedata和OV7670_on();OV7670_off()没有调用,是这个原因吗?

CandD 发表于 2014-10-4 10:39:23

楼主很强大 不用杜邦线用什么线好些啊?

fancyboy 发表于 2014-10-5 13:03:53

千年明月 发表于 2014-10-3 17:16
今天调的还是那个老样子。。唉。。。楼主你的工程文件里面sccb_receivedata和OV7670_on();OV7670_off() ...

这个没有关系的.估计很有可能是初始化没有配置好...SCCB总线通信问题,这个摄像头就是很头疼的,会有些意想不到的情况.建议提高时钟,开启彩色条试试

千年明月 发表于 2014-10-5 13:39:52

fancyboy 发表于 2014-10-5 13:03
这个没有关系的.估计很有可能是初始化没有配置好...SCCB总线通信问题,这个摄像头就是很头疼的,会有些意想 ...

大神,能否加下Q,快被这个搞死了1446760628

fancyboy 发表于 2014-10-5 13:41:37

千年明月 发表于 2014-10-5 13:39
大神,能否加下Q,快被这个搞死了1446760628

......加了

穿越时空 发表于 2016-5-8 00:12:10

谢谢分享,刚好要研究摄像头,谢谢{:biggrin:}

我不乐意啊 发表于 2016-5-12 20:40:27

赞一个,先标记
页: [1]
查看完整版本: 发一个51驱动FIFO_OV7670上位机显示的demo(有图有代码)