OpenEdv-开源电子网

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

STM32F407+ov7725显示花屏噪声很大

[复制链接]

2

主题

7

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2019-4-25
在线时间
3 小时
发表于 2019-4-25 18:17:19 | 显示全部楼层 |阅读模式
1金钱
初始化没问题,摄像头对外界变化也有响应。但只有仔细看才能看出图像,很模糊而且好像屏幕被分成了三份显示。具体情况图片和程序在下面。//¸üDÂLCDÏÔê¾(OV7725)
void OV7725_camera_refresh(void)
{
        u32 i,j;
        u16 color;         
        if(ov_sta==2)//óDÖ¡ÖD¶Ï¸üDÂ
        {
                LCD_Set_Window(0,(tftlcd_data.height-240)/2,320-1,240-1);//½«ÏÔê¾ÇøóòéèÖÃμ½ÆáÄ»ÖDÑë
                OV7725_RRST=0;                                //¿a꼸′λ¶áÖ¸Õë
                OV7725_RCK_L;
                OV7725_RCK_H;
                OV7725_RCK_L;
                OV7725_RRST=1;                                //¸′λ¶áÖ¸Õë½áêø
                OV7725_RCK_H;
                for(i=0;i<240;i++)
                {               
                        for(j=0;j<320;j++)
                        {
                                OV7725_RCK_L;
                                color=OV7725_DATA;        //&#182;áêy&#190;Y
                                OV7725_RCK_H;
                                color<<=8;  
                                OV7725_RCK_L;
                                color|=OV7725_DATA;        //&#182;áêy&#190;Y
                                OV7725_RCK_H;
                                LCD_WriteData_Color(color);
                        }
                }
                ov_sta=0;                                        //&#199;&#229;á&#227;&#214;&#161;&#214;D&#182;&#207;±ê&#188;&#199;
        }
}

int main()
{       
        u8 i=0;
        SysTick_Init(168);
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);  //&#214;D&#182;&#207;ó&#197;&#207;è&#188;&#182;·&#214;×é ·&#214;2×é
        LED_Init();
        USART1_Init(9600);
        TFTLCD_Init();                        //LCD3&#245;ê&#188;&#187;ˉ
        FRONT_COLOR=BLACK;
        LCD_ShowString(10,10,tftlcd_data.width,tftlcd_data.height,12,"Hello World!");
       
        while(1)
        {
        if(OV7725_Init()==0)
                {
                        LCD_ShowString(30,230,200,16,16,"OV7725 Init OK");
                        OV7725_Window_Set(OV7725_WINDOW_WIDTH,OV7725_WINDOW_HEIGHT,1);//QVGA&#196;£ê&#189;ê&#228;3&#246;                       
                        OV7725_Light_Mode(1);//1a&#213;&#213;&#196;£ê&#189;3
                        OV7725_Color_Saturation(2);//±¥oí&#182;è
                        OV7725_Brightness(1);//áá&#182;è
                        OV7725_Contrast(2);//&#182;&#212;±è&#182;è
                        OV7725_Special_Effects(0);//éè&#214;&#195;ì&#216;D§3
                        OV7725_CS=0;//ê1&#196;üov7725
                        break;
                }
                else
                {
                        LCD_ShowString(30,230,200,16,16,"OV7725 Error!!");
                        delay_ms(200);
                        LCD_Fill(30,230,239,246,WHITE);
                        delay_ms(200);
                }
        }
        EXTI7_Init();                //ê1&#196;ü&#182;¨ê±&#198;÷2&#182;&#187;&#241;       
        LCD_Clear(BLACK);
        LCD_ShowString(30,280,200,16,16,"OV7725 OK!!");
        while(1)
        {       
                OV7725_camera_refresh();//&#184;üD&#194;&#207;&#212;ê&#190;
                i++;
                if(i%20==0)
                {
                        led1=!led1;
                }
        }                          
}

//ía2&#191;&#214;D&#182;&#207;5~9·t&#206;&#241;3ìDò
void EXTI9_5_IRQHandler(void)
{                                
        if(EXTI_GetITStatus(EXTI_Line7)==SET)                //ê&#199;8&#207;&#223;μ&#196;&#214;D&#182;&#207;
        {      
                if(ov_sta<2)
                {
                        if(ov_sta==0)
                        {
                                OV7725_WRST=0;         //&#184;′&#206;&#187;D′&#214;&#184;&#213;&#235;                 
                                OV7725_WRST=1;       
                                OV7725_WREN=1;         //&#212;êDíD′è&#235;FIFO          
                        }
                        else OV7725_WREN=0;   //&#189;&#251;&#214;1D′è&#235;FIFO
                        ov_sta++;                      //&#214;&#161;&#214;D&#182;&#207;&#188;ó1
                }
        }
        EXTI_ClearITPendingBit(EXTI_Line7);  //&#199;&#229;3yEXTI8&#207;&#223;&#194;·1ò&#198;e&#206;&#187;                                                  
}

IMG_20190425_175930.jpg
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

7

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2019-4-25
在线时间
3 小时
 楼主| 发表于 2019-4-25 18:19:15 | 显示全部楼层
很急,好几天了还是这样。希望大家帮帮我,多谢!!!
回复

使用道具 举报

35

主题

560

帖子

2

精华

资深版主

Rank: 8Rank: 8

积分
17769
金钱
17769
注册时间
2018-3-3
在线时间
523 小时
发表于 2019-4-25 19:36:53 | 显示全部楼层
看样子是图像大小和输出大小不匹配
/*
*
*
*
*
*
*/
回复

使用道具 举报

31

主题

2183

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
14424
金钱
14424
注册时间
2018-8-3
在线时间
1157 小时
发表于 2019-4-25 19:55:22 | 显示全部楼层
回复

使用道具 举报

2

主题

7

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2019-4-25
在线时间
3 小时
 楼主| 发表于 2019-4-26 16:53:59 | 显示全部楼层
Psheng 发表于 2019-4-25 19:36
看样子是图像大小和输出大小不匹配

嗯,你说的对了。
回复

使用道具 举报

2

主题

7

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2019-4-25
在线时间
3 小时
 楼主| 发表于 2019-4-26 16:54:24 | 显示全部楼层
但现在又有一个新问题,屏幕有条对角线不知为何
IMG_20190426_163509.jpg.JPG
回复

使用道具 举报

35

主题

560

帖子

2

精华

资深版主

Rank: 8Rank: 8

积分
17769
金钱
17769
注册时间
2018-3-3
在线时间
523 小时
发表于 2019-4-26 17:50:15 | 显示全部楼层
LLLJJJHHH 发表于 2019-4-26 16:54
但现在又有一个新问题,屏幕有条对角线不知为何

图像前面有多余的数据  删减下
/*
*
*
*
*
*
*/
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-10 13:42

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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