你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

Stm32-LL库开发(3.2) - DMA使用方法

[复制链接]
攻城狮Melo 发布时间:2022-11-13 16:05
本文以stm32 F303K8为例,不同型号的DMA配置方法略有不同。
    本文设计的实验如下:通过USART2接收数据,并通过DMA将串口接受数据循环存入长度为100的uint8型数组。
    思维导图总览:

微信图片_20221113160535.png

1- 时钟配置

微信图片_20221113160531.png

    有stm32基本知识应该知道Stm32的每个外设在使用前都需要开启其时钟,否则模块不运行。


2 - DMA配置

       使用DMA前要确定外设与DMA连接的通道,不用系列芯片的硬件设计略有不同,因此要去查对应型号的参考手册。

微信图片_20221113160525.png

        F303K8上USART2_RX的请求连接在DMA1的Channel6上。后续的配置都围绕对DMA1的Channel6的配置。
        DMA的结构如下,下图截取自F4系列的数据手册,F3的DMA结构与F1的相同,但不影响借用F4的DMA结构图对配置方法进行理解。

微信图片_20221113160514.png

        要配置的内容及API如下:
微信图片_20221113160508.png

微信图片_20221113160504.png

    这里没有使用DMA的中断,因此没有对具体的中断进行使能。

3 - 使能外设发出DMA请求

微信图片_20221113160501.png

        DMA是在外设或软件Requst之后才会发起传输,所以要使能外设发出DMA请求,这里是USART2_RX的请求。

转载自: Vulcan

收藏 评论0 发布时间:2022-11-13 16:05

举报

0个回答
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版