STM32 USART DMA详细注释

  • i4_508850
    了解作者
  • 1.8MB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-05-08 09:05
    上传日期
DMA加USART,有详细注释,很容易学会
STM32_USART_DMA.zip
内容介绍
在这里添加学习笔记 1、要想获取某个寄存器的地址,可以先找到该寄存器在在参考手册中的偏移地址, 然后加上基地址(在参考手册的表1中)。 2、外设对应的哪个通道可以在stm32参考手册的147页DMA请求映像中找到 3、注意不要忘记启动DMA的时钟。 4、当发现编译有大量错误时注意有没有添加DMA的c文件,和头文件 5、注意DMA传输结束后会自动关闭,而无需手动关闭 6、使用DMA传输串口数据后要用该句:USART_ClearFlag(USART2,USART_FLAG_TC); 清除标志位,否则会出现丢失第一个字节数据的情况 ,也可以在DMA发送后加该句, 也可在使用标准串口发送程序发送数据前使用该句清除标志位。 7、下面一段代码曾经费尽了周折,要想每次都可以发送,需要在每次发送前关闭该DMA的该通道,然后重新装载该 寄存器的值。要不然会出现发送一次后就不能再发送的情况。每次要用DMA发送数据时都不要忘记这一点。 DMA_Cmd(DMA1_Channel7, DISABLE);//关闭该DMA的该通道,为下面的重装数据量值做准备。 DMA1_Channel7->CNDTR|=0x00000024;//重新给传输数量寄存器装入要传送的数据量,注意重新装载前要关闭该DMA的该通道 DMA_Cmd(DMA1_Channel7, ENABLE); //使能DMA1的通道7开始USART2的数据传输 //曾经以为DMA发送完成后会自动关闭,其实不会。这里要注意 //使用DMA后要清除TC标志位,否则再使用普通串口发送程序时会丢第一字节数据 USART_ClearFlag(USART2,USART_FLAG_TC);
评论
    相关推荐
    • STM32 程序
      STM32一些自己写过的程序并应用过可以使用的,包括直流电机驱动,温度显示,oled显示,adc实验,PWM输出,定时器中断,全部都写在了main函数中,不过写的有一点乱。(pwm实验可以看我的博客)
    • STM32
      STM32
    • STM32
      STM32 该存储库用于容纳我的学习项目,以便使用STM32开发板进行嵌入式系统编程。
    • stm32 sim 7600
      stm32 ota sim 7600 stm32 ota sim 7600stm32 ota sim 7600stm32 ota sim 7600stm32 ota sim 7600stm32 ota sim 7600stm32 ota sim 7600stm32 ota sim 7600stm32 ota sim 7600stm32 ota sim 7600stm32 ota sim 7600...
    • STM32
      关于 ...用于存放学习STM32过程中相关的笔记 作者:nekonana 列表 ::: tip该列表为总体列表,包含已更新和待更新项目 有什么新的想法都会开个待更新项目开坑::: STM32开发环境选择 STM32资料库建立
    • stm32 pack
      keil5 中使用的 STM32包 其中包括 STM32F0 STM32F1 STM32F3 STM32L0 STM32L1
    • stm32cubemx
      stm32cubemx st的代码生成器,安装后可以进行图形化的代码生成,项目生成!
    • STM32CubeMX
      ST(意法半导体)公司为方便STM32的使用和学习,以及HAL库的推广,自行研发的可以通过配置,自动生成初始化代码的工具软件
    • STM32 JoyStickMouse
      今天终于把 STM32 的例程 JoyStickMouse 跑起来了,上传一份备忘。 注意要根据 stm32f10x_conf.h 中的注释去掉一些没用到的文件
    • stm32 demo
      stm32demo 内置adc采集 使用oled及串口显示,可以用于小型项目的demo。 及课程设计。