0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

stm32 LL库开发-DMA使用方法

冬至子 来源:Vulcan Matrix 作者:Vulcan 2023-10-26 14:58 次阅读

本文以stm32 F303K8为例,不同型号的DMA配置方法略有不同。

本文设计的实验如下:通过USART2接收数据,并通过DMA将串口接受数据循环存入长度为100的uint8型数组。

思维导图总览:

图片

1- 时钟配置

图片

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

2 - DMA配置

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

图片

F303K8上USART2_RX的请求连接在DMA1的Channel6上。后续的配置都围绕对DMA1的Channel6的配置。

DMA的结构如下,下图截取自F4系列的数据手册,F3的DMA结构与F1的相同,但不影响借用F4的DMA结构图对配置方法进行理解。

图片

要配置的内容及API如下:

图片

图片

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

3 - 使能外设发出DMA请求

图片

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

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • STM32
    +关注

    关注

    2270

    文章

    10900

    浏览量

    355953
  • dma
    dma
    +关注

    关注

    3

    文章

    561

    浏览量

    100577
  • 串口中断
    +关注

    关注

    0

    文章

    64

    浏览量

    13896
  • USART串口
    +关注

    关注

    0

    文章

    32

    浏览量

    6821
收藏 人收藏

    评论

    相关推荐

    STM32标准、HALLL介绍

    我们在进行STM32开发的时候,使用寄存器进行开发的终究是少数,大多数人还是习惯用库函数进行开发。到目前为止,有标准外设、HAL
    发表于 06-21 15:13 1.3w次阅读
    <b class='flag-5'>STM32</b>标准<b class='flag-5'>库</b>、HAL<b class='flag-5'>库</b>和<b class='flag-5'>LL</b><b class='flag-5'>库</b>介绍

    【NUCLEO-L476RG LL开发STM32LL开发使用指南

    下载地址:http://pan.baidu.com/s/1c0wjL5m 一楼二楼是具体使用方法。 已完,上传文档和工程模板: STM32 LL使用指南.pdf
    发表于 07-02 03:03

    STM32 LL使用方法是什么

    LL有哪些应用?LL驱动程序功能有哪些?LL使用方法是什么?
    发表于 10-26 06:31

    STM32 LL使用指南

    STM32 LL使用指南
    发表于 01-23 17:31 227次下载

    STM32的HAL与LL能共同使用(混用)吗?

    STM32的HAL和LL能共同使用(混用)吗?
    的头像 发表于 02-28 16:57 1.4w次阅读

    讲讲开发STM32的四种

    1.我是选择寄存器开发STM32,还是标准外设呢? 2.你有STM32L0标准外设吗? 3.HAL
    的头像 发表于 02-10 10:16 1.1w次阅读
    讲讲<b class='flag-5'>开发</b><b class='flag-5'>STM32</b>的四种<b class='flag-5'>库</b>

    STM32四种对比:寄存器、标准外设、HAL、LL

    1.我是选择寄存器开发STM32,还是标准外设呢? 2.你有STM32L0标准外设吗? 3.HAL
    发表于 03-05 06:17 50次下载
    <b class='flag-5'>STM32</b>四种<b class='flag-5'>库</b>对比:寄存器、标准外设<b class='flag-5'>库</b>、HAL、<b class='flag-5'>LL</b>

    STM32G031K LL使用 - GPIO

    最近使用STm32G031K6做一款IOT产品,选择了用最新LL进行开发,因为知其那对LL
    发表于 12-02 17:06 17次下载
    <b class='flag-5'>STM32</b>G031K <b class='flag-5'>LL</b><b class='flag-5'>库</b>使用 - GPIO

    STM32CubeMX 实战教程:看门狗实验(LL

    LL 】详细讲述了 STM32CubeMX IWDG 和 WWDG 配置方法使用方法,内附图文及代码。
    发表于 12-05 14:21 21次下载
    <b class='flag-5'>STM32</b>CubeMX 实战教程:看门狗实验(<b class='flag-5'>LL</b> <b class='flag-5'>库</b>)

    LL串口+DMA

    的资料少之又少啊!自己做个记录。 使用cubemx可以直接生产LL的代码(我的工程里是halLL混用的),
    发表于 12-27 19:31 19次下载
    <b class='flag-5'>LL</b><b class='flag-5'>库</b>串口+<b class='flag-5'>DMA</b>

    使用LL开发STM32:GPIO口与外部中断

    文章目录目的输出与控制输入与端口值读取外部中断总结目的GPIO口使用是单片机开发中最简单的一块,STM32的GPIO口无论是使用HAL还是LL
    发表于 01-13 16:13 13次下载
    使用<b class='flag-5'>LL</b><b class='flag-5'>库</b><b class='flag-5'>开发</b><b class='flag-5'>STM32</b>:GPIO口与外部中断

    STM32Cbue LL中巧妙运用“静态内联”

    STM32的标准外设、HAL、LL软件,都有很多巧妙之处值得大家借鉴。 今天讲讲STM32Cbue
    发表于 08-14 14:30 1158次阅读

    STM32 HAL的功能和使用方法 STM32 HAL和标准的区别

    和可维护性,从而节省开发成本和时间。STM32 HALSTM32系列芯片的HAL,由ST公司提供和维护。下面将介绍
    发表于 08-08 18:21 4422次阅读

    STM32Cube LL的巧妙之处

    STM32Cube LL的巧妙之处
    的头像 发表于 09-27 16:26 1410次阅读
    <b class='flag-5'>STM32</b>Cube <b class='flag-5'>LL</b><b class='flag-5'>库</b>的巧妙之处

    STM32 DMA传输的问题分析

    用户使用STM32G473RET6芯片,开发环境STM32CubeMX+Keil(LL)。使用DMA
    的头像 发表于 12-01 09:19 2956次阅读
    <b class='flag-5'>STM32</b> <b class='flag-5'>DMA</b>传输的问题分析