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=120,StartY=0;LCD_SetDisplayWindow(_X(0), _Y(0), 120, 320);





时间: 2024-10-01 08:42:19

stm32 DCMI接口CROP功能使用的相关文章

[stm32] USART USART1收发功能工程

>_<!功能:PC端发送一个特定的字符:0x0d 0x0a,单片机则返回一句话,如图: >_<!知识: 1.复用功能I/O和调试配置(AFIO)  为了优化外设数目,可以把一些复用功能重新映射到其他引脚上.设置复用重映射和调试I/O配置寄存器(AFIO_MAPR)(参见0节)实现引脚的重新映射.这时,复用功能不再映射到它们的原始分配上. 2.嵌套向量中断控制器(NVIC) l 43 个可屏蔽中断通道(不包含16 个Cortex-M3 的中断线):  l 16 个可编程的优先等级: 

STM32——SPI接口

STM32--SPI接口 宗旨:技术的学习是有限的,分享的精神的无限的. 一.SPI协议[SerialPeripheral Interface] 串行外围设备接口,是一种高速全双工的通信总线.在ADC/LCD等与MCU间通信. 1.SPI信号线 SPI 包含 4 条总线,SPI 总线包含 4 条总线,分别为SS .SCK.MOSI.MISO. (1)SS(SlaveSelect):片选信号线,当有多个 SPI 设备与 MCU 相连时,每个设备的这个片选信号线是与 MCU 单独的引脚相连的,而其他

Springmvc借助SimpleUrlHandlerMapping实现接口开关功能

一.接口开关功能 1.可配置化,依赖配置中心 2.接口访问权限可控 3.springmvc不会扫描到,即不会直接的将接口暴露出去 二.接口开关使用场景 和业务没什么关系,主要方便查询系统中的一些状态信息.比如系统的配置信息,中间件的状态信息.这就需要写一些特定的接口,不能对外直接暴露出去(即不能被springmvc扫描到,不能被swagger扫描到). 三.SimpleUrlHandlerMapping官方解释 SimpleUrlHandlerMapping实现HandlerMapping接口以

anyproxy-rule模块实现接口mock功能

前言 AnyProxy不仅仅可以抓包,还可以拦截请求并修改服务端响应,实现接口mock功能.面试时候经常会问到第三方支付如何测试这种,如果对接的第三方没提供测试环境,那么就需要搭建一个mock服务器,模拟支付接口返回的各种情况. rule模块 AnyProxy提供了二次开发的能力,你可以用js编写自己的规则模块(rule),来自定义网络请求的处理逻辑. 注意:引用规则前,请务必确保文件来源可靠,以免发生安全问题 拦截并修改正在发送的请求 可修改内容包括请求头(request header),请求

新手入门--stm32将其他项目功能添加到已有项目

环境:keil4+stm32项目 已有项目名project 要添加功能项目名project2 实例场景:在project中添加project2中SD卡读写功能(带fatfs文件系统),也可以理解为将project2中已实现的带fatfs的SD卡读写模块移植到新项目project中. 步骤: 1.启动文件:在project2中的启动文件为startup_stm32f10x_hd.s(固件库版本V3.0.0),在project中启动文件为startup_stm32f10x_md.s(固件库版本V3.

java程序支付宝接口付费功能的实现

以前做过c#应用程序支付宝api接口功能,现在转移到Java程序上,代码如何实现呢? 1.从你的网站提交到支付宝: /** * 将订单提交支付宝进行网上支付 */ public ActionForward submitAlipayUrl(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { String orderNo

数字麦克风 PDM、PCM信号与STM32 i2s接口应用----重要文档列表

数字麦克风PDM脉冲到PCM信号需要一个二次采样,ST 提过了PDM2PCM的软件包,可以完成上面的工作.软件包源码没有开源,使用手册也简洁的让人抓狂,我觉得可能是因为ST更高级的MCU直接带了硬解码,所以对中低端MCU I2S接口的软解码关注度也不够.幸好之前做过信号处理工作,一些概念和内在逻辑能猜个八九不离十,使用起来没有任何难度就上手了,这个软件包的使用方法主要参考下面几个文档. 参考文档: 1.如何将PDM数字麦克风连接到STM32单片机 AN5027 使用STM32 32位Arm® C

262.微机接口简介&amp;功能&amp;组成

1.简介 随着计算机的不断发展,单独的计算机已不能满足人们的需要,计算机的扩展能力成为人们认识电脑的一个重要的性能指标,常用的接口有鼠标.键盘接口,打印机接口.扫描仪接口等. 微机常用接口外观图如下图所示,这是一个微机主板,主要由CPU插槽.PCI扩展槽.内存插槽.BIOS.CMOS电池.CMOS跳线.ATX电源插座.音频接口.AGP扩展槽.USB接口.鼠标接口.键盘接口等组成. 微机接口(interface)就是微处理器CPU与“外部世界”的连接电路,是CPU与外界进行信息交换的中转站.比如源

实现ModelDriver接口的功能(转)

ModelDriver接口 来自com.opensymphony.xwork2.ModelDriven.是xwork-2.1.2-750.jar包的东西. 下面是源码: package com.opensymphony.xwork2; public abstract interface ModelDriven<T> {   public abstract T getModel(); } 该接口只有一个getModel()方法.主要作用是封装Object对象.实现接口时可以指定某个具体的Obje