OpenEdv-开源电子网

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

阿波罗的OV5640摄像头实验的输出图像为何总是压扁状态?

[复制链接]

42

主题

90

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
313
金钱
313
注册时间
2015-2-24
在线时间
42 小时
发表于 2016-9-16 20:36:14 | 显示全部楼层 |阅读模式
我把输出尺寸改为 600x800,比例仍然压扁。RGB模式。

OV5640_OutSize_Set(0, 0, 600, 800);
        DCMI_Start();                                                                  //Æô¶ˉ′«êä
        LCD_Clear(BLACK);



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

使用道具 举报

42

主题

90

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
313
金钱
313
注册时间
2015-2-24
在线时间
42 小时
 楼主| 发表于 2016-9-16 20:51:18 | 显示全部楼层
明白了,是用的RGB屏,所以图像输出水平镜像,宽度为600则高度为450,这样设置输出图像比例就合适了。

OV5640_OutSize_Set(0, 0, 600, 450);

回复 支持 反对

使用道具 举报

42

主题

90

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
313
金钱
313
注册时间
2015-2-24
在线时间
42 小时
 楼主| 发表于 2016-9-16 20:56:41 | 显示全部楼层
能否设置垂直镜像呢?如何设置?
回复 支持 反对

使用道具 举报

42

主题

90

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
313
金钱
313
注册时间
2015-2-24
在线时间
42 小时
 楼主| 发表于 2016-9-17 07:40:39 | 显示全部楼层
就是说,如何用OV5640模块获取宽高比为3:4的(竖立的)图像呢?

以前用OV2640的时候图像输出是竖立的。
回复 支持 反对

使用道具 举报

42

主题

90

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
313
金钱
313
注册时间
2015-2-24
在线时间
42 小时
 楼主| 发表于 2016-9-17 22:16:56 | 显示全部楼层
本帖最后由 HenryYam 于 2016-9-17 22:18 编辑

终于搞定了。

1,OV5640_OutSize_Set(4, 0, 600, 800);  //不明白的是,这里的第一个参数 “4”是何意义?

2,void rgblcd_dcmi_rx_callback(void) 这个函数定义里面,最后要添加一行:

//if(CurrentLineNo < lcddev.height) CurrentLineNo ++;
    if(CurrentLineNo < 800) CurrentLineNo ++;
        else CurrentLineNo = 0; //这一行是后加上去的。如果没有这一行,则图像最下部分有条重影带。

3,最重要的一点,是要改变画面比例。这需要在 ov5640cfg.h 文件中的 const u16 ov5640_rgb565_reg_tbl[][2] 定义中,修改以下几行:

//        0x3800, 0x00, // HS
//        0x3801, 0x00, // HS
//        0x3802, 0x00, // VS
//        0x3803, 0x00, // VS
//        0x3804, 0x0a, // HW (HE)  2623 = 2592+16+16-1
//        0x3805, 0x3f, // HW (HE)
//        0x3806, 0x06, // VH (VE)  1705 = ? 不明白这个数字是怎么来的?垂直方向上不是有1944个点吗,怎么只有1706个点了?
//        0x3807, 0xa9, // VH (VE)
   
   
    0x3800, 0x02, // HS
        0x3801, 0x91, // HS
        0x3802, 0x00, // VS
        0x3803, 0x00, // VS
        0x3804, 0x07, // HW (HE)  1935 (1278 x 1705)
        0x3805, 0x8f, // HW (HE)
        0x3806, 0x06, // VH (VE)
        0x3807, 0xa9, // VH (VE)

以上注释掉的是原来的数值。

回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-16 07:24

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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