stm32 DCMI接口CROP功能使用

     最近使用stm32F407单片机通过摄像头采集图像进行处理,其中使用到DCMI接口CROP功能。但在网上找了很久,有用的资料不多,只能自己研究,特将自己的使用方法记录下来。


     1.如何设置CROP。

           定义:

                DCMI_CROPInitTypeDef DCMI_CROPInitStruct;

           参数设置:

               DCMI_CROPInitStruct.DCMI_CaptureCount=Width;                         //capcnt
               DCMI_CROPInitStruct.DCMI_HorizontalOffsetCount=StartX;           //hoffcnt
               DCMI_CROPInitStruct.DCMI_VerticalLineCount=Height;                 //vline
               DCMI_CROPInitStruct.DCMI_VerticalStartLine=StartY;                   //vst
               DCMI_CROPConfig(&DCMI_CROPInitStruct);

          如果要投入使用还有一条语句:

               DCMI_CROPCmd(ENABLE);

     2.前面参数中,数据手册的说明有时候容易造成理解错误,特别是CAPCNT要求是4的倍数,实际这个CAPCNT开始值是0,所以要设置的Width不是4的倍数,还得减1.

     3.另外,CAPCNT是传输的数据字节数不是像素值,而RGB565,一个像素是2个字节,因此比如我想采集的是320像素,实际这个Width=320*2-1=639

     4.如果还需要在液晶上显示的话,还得修改LCD的显示区域的参数为对应的值,我的是LCD_SetDisplayWindow(.....).


    给个我的参数值:320x240分辨率,CROP下半个屏幕:Width=639,StartX=0,Height=119,StartY=0;LCD_SetDisplayWindow(_X(0), _Y(0), 120, 320);



  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值