硬汉嵌入式论坛

 找回密码
 立即注册
查看: 537|回复: 10
收起左侧

[摄像头] ov7670显示颜色不对

[复制链接]

9

主题

31

回帖

58

积分

初级会员

积分
58
发表于 2023-10-25 21:59:21 | 显示全部楼层 |阅读模式
大佬们晚安,最近淘宝花了五块买了个ov7670,一直调不通,有了一点进展,但还是有一些迷惑请教诸君。
硬件 H750开发板
软件:DCMI与配置与摄像头寄存器配置用的是V7板的45号 0v7670例程。
进行彩色测试条显示好像是正常的,图片如下
IMG_20231025_215141.jpg
但是显示截图时是错误的,整体非常非常红,只能看得清轮廓,图片如下(应该隐约可以看见我房间的空调):
IMG_20231025_215548.jpg

感觉应该时寄存器配错了,希望诸位大佬指点一下,感激不尽。
附上寄存器配置数组:

static const unsigned char  OV_reg[][2] =
{

    {0x3a, 0x0c},
    {0x67, 0xc0},
    {0x68, 0x80},

    {0x40, 0xd0},
    {0x12, 0x14},

    {0x32, 0x80},
   
    #if 1  //320*240使用
        {0x17, 0x17},//HSTART start high 8-bit MSB         
        {0x18, 0x05},//5 HSTOP end high 8-bit
        
    #else  //640*480使用
        {0x17, 0x14},//HSTART start high 8-bit MSB         
        {0x18, 0x02},//5 HSTOP end high 8-bit
    #endif
        
    {0x19, 0x03},
    {0x1a, 0x7b},
    {0x03, 0x05},

    {0x0c, 0x00},
    {0x15, 0x00},
    {0x3e, 0x00},
    {0x70, 0x3a},
    {0x71, 0x35},
    {0x72, 0x11},
    {0x73, 0x00},
            
    {0xa2, 0x02},
    {0x7a, 0x20},
    {0x7b, 0x1c},
    {0x7c, 0x28},
            
    {0x7d, 0x3c},
    {0x7e, 0x55},
    {0x7f, 0x68},
    {0x80, 0x76},
    {0x81, 0x80},
            
    {0x82, 0x88},
    {0x83, 0x8f},
    {0x84, 0x96},
    {0x85, 0xa3},
    {0x86, 0xaf},
            
    {0x87, 0xc4},
    {0x88, 0xd7},
    {0x89, 0xe8},
    {0x13, 0xe0},
    {0x00, 0x00},
            
    {0x10, 0x00},
    {0x0d, 0x00},
    {0x14, 0x28},
    {0xa5, 0x05},
    {0xab, 0x07},
            
    {0x24, 0x75},
    {0x25, 0x63},
    {0x26, 0xA5},
    {0x9f, 0x78},
    {0xa0, 0x68},
            
    {0xa1, 0x03},
    {0xa6, 0xdf},
    {0xa7, 0xdf},
    {0xa8, 0xf0},
    {0xa9, 0x90},
            
    {0xaa, 0x94},
    {0x13, 0xe5},
    {0x0e, 0x61},
    {0x0f, 0x4b},
    {0x16, 0x02},
     
    {0x1e, 0x37},
    {0x21, 0x02},
    {0x22, 0x91},
    {0x29, 0x07},
    {0x33, 0x0b},
            
    {0x35, 0x0b},
    {0x37, 0x1d},
    {0x38, 0x71},
    {0x39, 0x2a},
    {0x3c, 0x78},
            
    {0x4d, 0x40},
    {0x4e, 0x20},
    {0x69, 0x00},
    /*
    emWin的情况下64MHz和48MHz稳定,72MHz不行,快了,容易错误
    6B寄存器  bit6:7
            00 bypass PLL
            01 X4
            10 X6
            11 X8

    11寄存器  bit7 保留
              bit6 直接使用外部时钟
              bit5:0
              实际内部时钟的输出 = Finputclk / (bit[5:0] + 1)

    摄像头晶振是24MHz ,当前配置24 * 8 / 3 = 64MHz
    */
    {0x11, 0x02},
    {0x6b, 0xc0},
    {0x74, 0x19},
    {0x8d, 0x4f},
            
    {0x8e, 0x00},
    {0x8f, 0x00},
    {0x90, 0x00},
    {0x91, 0x00},
    {0x92, 0x00},

            
    {0x96, 0x00},
    {0x9a, 0x80},
    {0xb0, 0x84},
    {0xb1, 0x0c},
    {0xb2, 0x0e},
            
    {0xb3, 0x82},
    {0xb8, 0x0a},
    {0x43, 0x14},
    {0x44, 0xf0},
    {0x45, 0x34},
            
    {0x46, 0x58},
    {0x47, 0x28},
    {0x48, 0x3a},
    {0x59, 0x88},
    {0x5a, 0x88},
            
    {0x5b, 0x44},
    {0x5c, 0x67},
    {0x5d, 0x49},
    {0x5e, 0x0e},
    {0x64, 0x04},
    {0x65, 0x20},
            
    {0x66, 0x05},
    {0x94, 0x04},
    {0x95, 0x08},
    {0x6c, 0x0a},
    {0x6d, 0x55},
            
            
    {0x4f, 0x80},
    {0x50, 0x80},
    {0x51, 0x00},
    {0x52, 0x22},
    {0x53, 0x5e},
    {0x54, 0x80},   
            
            
    {0x09, 0x03},

    {0x6e, 0x11},
    {0x6f, 0x9f},
    {0x55, 0x00},
    {0x56, 0x40},
    {0x57, 0x40},

    {0x6a, 0x40},
    {0x01, 0x40},
    {0x02, 0x40},
    {0x13, 0xe7},
    {0x15, 0x00},  


    {0x58, 0x9e},

    {0x41, 0x08},
    {0x3f, 0x00},
    {0x75, 0x05},
    {0x76, 0xe1},
    {0x4c, 0x00},
    {0x77, 0x01},
    {0x3d, 0xc2},
    {0x4b, 0x09},
    {0xc9, 0x60},
    {0x41, 0x38},

    {0x34, 0x11},
    {0x3b, 0x02},

    {0xa4, 0x89},
    {0x96, 0x00},
    {0x97, 0x30},
    {0x98, 0x20},
    {0x99, 0x30},
    {0x9a, 0x84},
    {0x9b, 0x29},
    {0x9c, 0x03},
    {0x9d, 0x4c},
    {0x9e, 0x3f},
    {0x78, 0x04},

    {0x79, 0x01},
    {0xc8, 0xf0},
    {0x79, 0x0f},
    {0xc8, 0x00},
    {0x79, 0x10},
    {0xc8, 0x7e},
    {0x79, 0x0a},
    {0xc8, 0x80},
    {0x79, 0x0b},
    {0xc8, 0x01},
    {0x79, 0x0c},
    {0xc8, 0x0f},
    {0x79, 0x0d},
    {0xc8, 0x20},
    {0x79, 0x09},
    {0xc8, 0x80},
    {0x79, 0x02},
    {0xc8, 0xc0},
    {0x79, 0x03},
    {0xc8, 0x40},
    {0x79, 0x05},
    {0xc8, 0x30},
    {0x79, 0x26},
    {0x09, 0x00},
};




回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106760
QQ
发表于 2023-10-26 07:30:11 | 显示全部楼层
降低下摄像头的本身的时钟速度配置试试,摄像头寄存器里面有注释。
回复

使用道具 举报

9

主题

31

回帖

58

积分

初级会员

积分
58
 楼主| 发表于 2023-10-26 09:55:06 | 显示全部楼层
好的,我下班试试,我的摄像头模块主时钟是用h7内部输出的24M,好像是PLL1Q
回复

使用道具 举报

9

主题

31

回帖

58

积分

初级会员

积分
58
 楼主| 发表于 2023-10-26 23:21:36 | 显示全部楼层
尝试着将0x11 寄存器的 02配置为03 ,时钟频率应该为48M,更加红了
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106760
QQ
发表于 2023-10-27 07:35:16 | 显示全部楼层
云安 发表于 2023-10-26 23:21
尝试着将0x11 寄存器的 02配置为03 ,时钟频率应该为48M,更加红了

摄像头是不是飞线接的,飞线不稳也会有这种问题。
回复

使用道具 举报

9

主题

31

回帖

58

积分

初级会员

积分
58
 楼主| 发表于 2023-10-27 09:12:06 | 显示全部楼层
是的,用的杜邦线飞的,我也怀疑是线太长了。因为我一开始的时候颜色条是斜的,我把供电升到5伏才是直的。前天下定决心买了个逻辑分析仪,到了再测测信号,
回复

使用道具 举报

9

主题

31

回帖

58

积分

初级会员

积分
58
 楼主| 发表于 2023-10-27 09:28:49 | 显示全部楼层
刚问了下公司硬件工程师,说可能不是杜邦线长度太长,可能是质量不行,我想到我一块钱100根的线,从公司拿两根好的线去试试。。。。。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106760
QQ
发表于 2023-10-27 09:33:59 | 显示全部楼层
云安 发表于 2023-10-27 09:12
是的,用的杜邦线飞的,我也怀疑是线太长了。因为我一开始的时候颜色条是斜的,我把供电升到5伏才是直的。 ...

分析仪不能测试信号质量,你得用示波器看信号质量。
回复

使用道具 举报

9

主题

31

回帖

58

积分

初级会员

积分
58
 楼主| 发表于 2023-10-29 21:49:47 | 显示全部楼层
示波器买不起,不过我换了杜邦线,直接连上引出来的排针上,不再插入摄像头的口上,现在不再[img][/img]红了,不过很暗,我用灯照着才有色彩,这样正常吗?(附上打着灯的效果图。)谢谢大大的鼎力支持
1698587224844.jpg
IMG_20231029_213733.jpg
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106760
QQ
发表于 2023-10-30 12:28:50 | 显示全部楼层
云安 发表于 2023-10-29 21:49
示波器买不起,不过我换了杜邦线,直接连上引出来的排针上,不再插入摄像头的口上,现在不再[/img]红了 ...

可以,然后微调下参数,效果会好不少。
回复

使用道具 举报

9

主题

31

回帖

58

积分

初级会员

积分
58
 楼主| 发表于 2023-10-31 08:54:40 | 显示全部楼层
好的,我再试试
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-5 02:54 , Processed in 0.211321 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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