OpenEdv-开源电子网

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

用液晶显示摄像头画面不正常

[复制链接]

8

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
129
金钱
129
注册时间
2013-7-20
在线时间
9 小时
发表于 2013-7-30 20:24:59 | 显示全部楼层 |阅读模式
    我用买的摄像头和液晶配上自己的最小系统,用例程的程序能显示出画面,但是画面看起来像是失真了一样,就是很灰,不过按一下复位键后开始的一瞬间图像能正常显示(有彩色),之后又变成灰色的了,这是怎么回事呢?
    求老师帮忙分析解决一下,先谢谢了
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-7-30 21:55:02 | 显示全部楼层
回复【楼主位】xu271088570:
---------------------------------
你通过杜邦线连接的么?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

39

主题

2026

帖子

1

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2020
金钱
2020
注册时间
2013-5-1
在线时间
87 小时
发表于 2013-7-30 22:29:10 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
我的也是一模一样的情况,已经排除了干扰的可能,数据线,信号线是分开接的...
只拍图的话还好,计算量大的时候液晶就会灰掉...目前还没找到解决办法....

我是在原子哥给的程序中的camera_refresh(void)函数中做的计算和处理
博观而约取,厚积而薄发。
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-7-30 22:37:55 | 显示全部楼层
回复【3楼】745021926:
---------------------------------
贴代码看下
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

39

主题

2026

帖子

1

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2020
金钱
2020
注册时间
2013-5-1
在线时间
87 小时
发表于 2013-7-31 09:07:58 | 显示全部楼层
void camera_refresh(void)
{
u32 j; //循环采样76800像素点
  u16 color,last_color;//像素点数据  
u16 R,G,B; //RGB三基色
u8 x,y;  //x,y坐标
u8 m,k;    //中位值滤波参数
    u8 temp; //中位值滤波参数
// u16 Left_Frame_y[240];//图像左边框像素点的y坐标
u16 Left_Frame_x[240];//图像左边框像素点的x坐
Xmin=320;   //对最小值复位
Xmax=0;  //对最大值复位
if(ov_sta==2)
{
a++;
LCD_Scan_Dir(U2D_L2R); //从上到下,从左到右 
LCD_SetCursor(0x00,0x0000); //设置光标位置 
LCD_WriteRAM_Prepare();     //开始写入GRAM
  OV7670_CS=0;  
  OV7670_RRST=0; //开始复位读指针 
OV7670_RCK=0;
OV7670_RCK=1;
OV7670_RCK=0;
OV7670_RRST=1; //复位读指针结束 
OV7670_RCK=1;  
for(j=0;j<76800;j++)
{
OV7670_RCK=0; 
color=OV7670_DATA; //读数据
OV7670_RCK=1; 
color<<=8;   
  OV7670_RCK=0;
color|=OV7670_DATA; //读数据
OV7670_RCK=1;   
R=color>>11;
G=(color&0x07E0)>>5;
B=(color&0x001F);
x=j%320;   //求x,y坐标
y=j/320;
if((R<0X0015)&&(B<0X0015)&&(G<0X0015)) color=0x0000; //检测黑色
else color=WHITE;  //白色
       if((last_color==WHITE)&&(color==BLACK))//检测图像最左边的边框像素点
{
if (Left_Frame_x[y]==0)
{
Left_Frame_x[y]=x; //储存每一行的左边框处x坐标
color=RED;
if(Xmax<Left_Frame_x[y]) Xmax=Left_Frame_x[y];//求出x最大值
if(Xmin>Left_Frame_x[y]) Xmin=Left_Frame_x[y];//求出x最小值
    }

LCD_WR_DATA(color);  //LCD写点
last_color=color;    //记下显示过的一个像素点

for(m=40; m<40+N-1; m++) //采样值由小到大排列   
   {     
for(k=0; k<40+N-m-1; k++)     
{       
   if(Left_Frame_x[k]>Left_Frame_x[k+1])       
   {         
temp=Left_Frame_x[k];         
Left_Frame_x[k]=Left_Frame_x[k+1];         
Left_Frame_x[k+1]=temp;      
   }     //此处采用中位值滤波,取40至50行的图像左边框像素点的x坐标
    }   
   } 
  // printf("Xmid=%d \n",Left_Frame_x[(40+N-1)/2]); //打印
  OV7670_CS=1;   
OV7670_RCK=0; 
OV7670_RCK=1; 
EXTI->R=1<<15;      //清除LINE8上的中断标志位
ov_sta=0; //开始下一次采集
  ov_frame++; 
LCD_Scan_Dir(DFT_SCAN_DIR); //恢复默认扫描方向        

}
这是自己弄的代码,摄像头引脚我改掉了,所以程序中的PB口低八位的方向切换就删了,数据处理多的时候就会灰屏,复位下就好,但是很快又卡了...谢原子哥帮忙分析
博观而约取,厚积而薄发。
回复 支持 反对

使用道具 举报

4

主题

116

帖子

1

精华

中级会员

Rank: 3Rank: 3

积分
361
金钱
361
注册时间
2013-7-24
在线时间
13 小时
发表于 2013-7-31 14:46:51 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
不懂帮顶
回复 支持 反对

使用道具 举报

8

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
129
金钱
129
注册时间
2013-7-20
在线时间
9 小时
 楼主| 发表于 2013-7-31 17:26:03 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
原子老师,是的,我用杜邦线连接的,我把线都绕道板子下面了
回复 支持 反对

使用道具 举报

8

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
129
金钱
129
注册时间
2013-7-20
在线时间
9 小时
 楼主| 发表于 2013-7-31 17:27:10 | 显示全部楼层

回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-7-31 20:55:26 | 显示全部楼层
回复【8楼】xu271088570:
---------------------------------
用手抓住杜邦线看看效果.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

8

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
129
金钱
129
注册时间
2013-7-20
在线时间
9 小时
 楼主| 发表于 2013-7-31 22:18:54 | 显示全部楼层
回复【9楼】正点原子:
---------------------------------
原子老师,还是不行,仍是复位后的那一瞬间正常显示,然后又黑白了,电路图我是按照原理图连的,液晶的那几个触摸引脚我悬空了,还有液晶的复位引脚我连的是3.3V,没连到芯片的复位引脚
回复 支持 反对

使用道具 举报

8

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
129
金钱
129
注册时间
2013-7-20
在线时间
9 小时
 楼主| 发表于 2013-7-31 22:23:39 | 显示全部楼层
回复【9楼】正点原子:
---------------------------------
这有可能是什么原因造成的呢?摄像头的原因还是液晶显示屏的原因?
回复 支持 反对

使用道具 举报

39

主题

2026

帖子

1

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2020
金钱
2020
注册时间
2013-5-1
在线时间
87 小时
发表于 2013-7-31 22:25:40 | 显示全部楼层
哈哈,摄像头识别....搞定~不过只是简单识别...


博观而约取,厚积而薄发。
回复 支持 反对

使用道具 举报

8

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
129
金钱
129
注册时间
2013-7-20
在线时间
9 小时
 楼主| 发表于 2013-7-31 22:34:37 | 显示全部楼层
回复【12楼】745021926:
---------------------------------
高手啊!是不是可以做目标锁定的功能?我看过一个视频是飞行器上的目标搜索和识别!
回复 支持 反对

使用道具 举报

39

主题

2026

帖子

1

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2020
金钱
2020
注册时间
2013-5-1
在线时间
87 小时
发表于 2013-8-1 09:07:07 | 显示全部楼层
回复【13楼】xu271088570:
---------------------------------
呃呃呃....没那么高端,我的这个视野中有两个图像的时候就识别不了了...
博观而约取,厚积而薄发。
回复 支持 反对

使用道具 举报

39

主题

2026

帖子

1

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2020
金钱
2020
注册时间
2013-5-1
在线时间
87 小时
发表于 2013-8-1 09:10:22 | 显示全部楼层
对了,你的那个灰屏问题解决了没有,把那个定时器3关掉就可以了~
博观而约取,厚积而薄发。
回复 支持 反对

使用道具 举报

8

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
129
金钱
129
注册时间
2013-7-20
在线时间
9 小时
 楼主| 发表于 2013-8-1 10:16:58 | 显示全部楼层
回复【15楼】745021926:
---------------------------------
      还没有解决呢,不知道原因出在哪里!呵呵,我这还是新手,最近还在研究原子老师给的例子的程序代码呢,一条一条对,向你们一样能写出这样代码的人真是不简单啊,致敬了!
    呵呵,再弱弱的问一句,定时器三在哪里,怎么关?不要骂我
回复 支持 反对

使用道具 举报

8

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
129
金钱
129
注册时间
2013-7-20
在线时间
9 小时
 楼主| 发表于 2013-8-1 10:50:10 | 显示全部楼层
回复【15楼】745021926:
---------------------------------
是不是在主程序初始化里把这一句屏蔽掉?
TIM6_Int_Init(10000,7199); //10Khz计数频率,1秒钟中断
回复 支持 反对

使用道具 举报

39

主题

2026

帖子

1

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2020
金钱
2020
注册时间
2013-5-1
在线时间
87 小时
发表于 2013-8-1 10:56:19 | 显示全部楼层
回复【17楼】xu271088570:
---------------------------------
恩,就是这个,我的之前也是会自动灰屏,把这个屏蔽掉就可以了,对其他也没有影响~
博观而约取,厚积而薄发。
回复 支持 反对

使用道具 举报

39

主题

2026

帖子

1

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2020
金钱
2020
注册时间
2013-5-1
在线时间
87 小时
发表于 2013-8-1 10:59:55 | 显示全部楼层
回复【16楼】xu271088570:
---------------------------------
惭愧...我也学的没多久...也是跑例程的水平...
博观而约取,厚积而薄发。
回复 支持 反对

使用道具 举报

8

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
129
金钱
129
注册时间
2013-7-20
在线时间
9 小时
 楼主| 发表于 2013-8-1 12:51:17 | 显示全部楼层
回复【18楼】745021926:
---------------------------------
我屏蔽掉了,问题依然存在!你的也是用STM32F103ZET6芯片吗?
回复 支持 反对

使用道具 举报

39

主题

2026

帖子

1

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2020
金钱
2020
注册时间
2013-5-1
在线时间
87 小时
发表于 2013-8-1 22:01:10 | 显示全部楼层
回复【20楼】xu271088570:
---------------------------------
我用的是VBT6,你的液晶复位是怎么做的?  软件复位还是硬件复位?  
如果液晶复位也没问题的话,检查下程序中是否还开了其他中断,比如USART,屏蔽掉再看看
博观而约取,厚积而薄发。
回复 支持 反对

使用道具 举报

8

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
129
金钱
129
注册时间
2013-7-20
在线时间
9 小时
 楼主| 发表于 2013-8-2 17:37:05 | 显示全部楼层
回复【21楼】745021926:
---------------------------------
是液晶的复位引脚吗?原子老师给的原理图是接单片机的复位引脚,我接的是+3.3V,不知道是不是这个原因,我试一下看看
回复 支持 反对

使用道具 举报

8

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
129
金钱
129
注册时间
2013-7-20
在线时间
9 小时
 楼主| 发表于 2013-8-2 17:41:30 | 显示全部楼层
回复【22楼】xu271088570:
---------------------------------
完了,最小系统复位引脚没有连出来,怎么办?
回复 支持 反对

使用道具 举报

8

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
129
金钱
129
注册时间
2013-7-20
在线时间
9 小时
 楼主| 发表于 2013-8-2 17:42:05 | 显示全部楼层
回复【21楼】745021926:
---------------------------------
完了,最小系统复位引脚没有连出来,怎么办?
回复 支持 反对

使用道具 举报

39

主题

2026

帖子

1

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2020
金钱
2020
注册时间
2013-5-1
在线时间
87 小时
发表于 2013-8-2 18:27:56 | 显示全部楼层
回复【24楼】xu271088570:
---------------------------------
小问题,用软件复位。随便接个IO口,引脚初始化后,把那个引脚清零,延时50ms,再置高就可以完成软件复位
博观而约取,厚积而薄发。
回复 支持 反对

使用道具 举报

3

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
56
金钱
56
注册时间
2014-7-14
在线时间
0 小时
发表于 2015-5-5 14:20:12 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
我的摄像头实验,板子是原子ZET6的板子  摄像头是原子的  代码还是原子的“实验36”的代码 ,但是LCD液晶上显示的画面更本看不清,请问这是哪出错了,应该调哪才能调清。
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-23 07:17

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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