当前位置: 首页 > news >正文

STM32自学记录(九)

STM32自学记录


文章目录

  • STM32自学记录
  • 前言
  • 一、DMA杂记
  • 二、实验
    • 1.学习视频
    • 2.复现代码
  • 总结


前言

DMA


一、DMA杂记

DMA(Direct Memory Access)直接存储器存取
DMA可以提供外设和存储器或者存储器和存储器之间的高速数据传输,无须CPU干预,节省CPU的资源。
12个独立可配置的通道:DMA1(7个通道),DMA2(5个通道)
每个通道都支持软件触发和特定的硬件触发。
STM32F103C8T6 DMA资源:DMA1(7个通道)
存储器到存储器的数据转运——软件触发
外设到存储器的数据转运——硬件触发
计算机系统的5大组成部分:运算器、控制器、存储器、输入设备和输出设备。
CPU:运算器和控制器;+存储器=两大核心
存储器:存储器的内容+存储器地址
寄存器是连接软件和硬件的桥梁。
CPU或者DMA直接访问FLASH,是只可以读而不可以写的。
SARM是运行内存,可以任意读写。
数据宽度:字节Byte、半字HalfWord、字Word
8位uint8_t/16位uint16_t/32位uint32_t
数据自增–>指针、P++
DMA转运几个条件:1:开关控制,DMA_Cmd必须使能;2:传输计数器必须大于0;3:就是触发源必须有触发信号。
触发一次,转运一次,传输计数器自减一次。
写传输计数器时,必须要先关闭DMA。
ADC的扫描模式,如果不使用DMA,功能都会收到很大的限制。
中断:传输过半、传输完成、传输错误。
DMA寄存器:DMA中断状态寄存器(DMA_ISR)
DMA中断标志清除寄存器(DMA_IFCR)
DMA通道x配置寄存器(DMA_CCRx)
DMA通道x传输数量寄存器(DMA_CNDTRx)
DMA通道x外设地址寄存器(DMA_CPARx)
DMA通道x存储器地址寄存器(DMA_CMARx)
DMA寄存器映像
初始化:1:RCC开启DMA时钟;2:直接调用DMA_Init,初始化各个参数。
存储器映像:
在这里插入图片描述
DMA框图:
在这里插入图片描述
DMA基本结构图:
在这里插入图片描述
DMA请求:
在这里插入图片描述
数据宽度与对齐:
在这里插入图片描述
数据转运+DMA:
在这里插入图片描述
ADC扫描模式+DMA:
在这里插入图片描述

二、实验

1.学习视频

B站视频链接:https://www.bilibili.com/video/BV1th411z7sn?spm_id_from=333.788.videopod.episodes&vd_source=a329b5512bc531099df1a823202af19c&p=23

2.复现代码

百度网盘链接:https://pan.baidu.com/s/1T6ycZNcGiQ_amqc87qTqww
提取码:7bs1


总结

单片机只是纸老虎,只管去做就好。

相关文章:

  • 【Android】设计一个圆角矩形的WebView
  • P4330 [COCI 2006/2007 #1] Debug / P2177 内存杀手
  • 使用SQL分析季度畅销书:深入理解窗口函数与分组聚合
  • 数据预处理都做什么,用什么工具
  • MySQL安装MySQL服务时提示Install-Remove of the Service Denied
  • vim常用快捷键
  • 利用Python爬虫按图搜索1688商品(拍立淘):实战案例指南
  • Kafka日志数据深度解析:从基础查看到高级操作全攻略
  • ruby 的安装
  • 闭环和闭环管理是什么?
  • Redis的一些内存优化方案
  • 257. 二叉树的所有路径
  • 一文读懂Ingress-Nginx以及实战教程
  • 词袋模型 (BOW) 解析及代码实战
  • 华为支付-商户基础支付场景准备
  • MongoDB 入门操作指南
  • 有哪些滤波,原理是什么,分别在什么时候用
  • 模糊数学模型:基础概念
  • DeepSeek 助力 Vue 开发:打造丝滑的卡片(Card)
  • 基于SpringBoot+uniapp的在线办公小程序+LW示例参考
  • 做网站一般费用多少/nba最新消息新闻
  • 北京最新疫情场所地图实时/相关搜索优化软件
  • 网站定位案例/seo短视频保密路线
  • 西安公司网站建设哪家专业/教育机构退费纠纷找谁
  • 学而思的网站哪里做的/品牌运营
  • 自己做电商网站./国家职业技能培训学校