STM32自学记录(九)

STM32自学记录


文章目录


前言

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


总结

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

相关推荐
天空'之城11 分钟前
单片机基础核心知识点汇总(三十三)
数据库·单片机·嵌入式硬件
单片机仿真设计3 小时前
基于 STM32 的家庭环境监测与火灾报警灭火系统(Proteus 仿真)
stm32·单片机·嵌入式硬件·proteus·毕设
辰域电子4 小时前
STM32项目开源:智能万年历/智能闹钟设计(代码+原理图+仿真)
stm32·单片机·嵌入式硬件·开源·proteus
一条破秋裤5 小时前
STM32F103 RCC 第一层复习:时钟树、外设时钟与重复测试
stm32·单片机·嵌入式硬件
smartpi_ai6 小时前
原理图上的 1.2V 是输入还是输出?蜂鸟 M 裸芯供电架构、CORE 滤波设计与外围器件三规矩
单片机·嵌入式硬件·架构
一条破秋裤7 小时前
STM32 单片机两层学习规划
stm32·单片机·学习
2601_950790688 小时前
国产单片机厂家推荐:用统一回复协议筛选候选
单片机·嵌入式硬件
天空'之城8 小时前
单片机基础核心知识点汇总(三十二)
单片机·嵌入式硬件
雨田言炎9 小时前
2026/09/09 STM32F103复习(三)
stm32·单片机·嵌入式硬件
Jackson_GJH9 小时前
模拟 IIC 逻辑的深度解构
stm32·单片机·嵌入式硬件