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

DMA寄存器学习

以下是 DMA1_Channel4 的各个寄存器详细设置说明(基于STM32F1系列):


DMA1_Channel4 寄存器总览

寄存器 地址 功能描述 复位值
CCR 0x40020044 通道配置寄存器 0x0000
CNDTR 0x40020048 通道传输数量寄存器 0x0000
CPAR 0x4002004C 通道外设地址寄存器 0x0000
CMAR 0x40020050 通道内存地址寄存器 0x0000

1. 通道配置寄存器 (DMA_CCR) - 0x40020044

名称 功能描述 设置值
14 MEM2MEM 内存到内存模式:
0=禁用
1=启用
通常为0
13:12 PL[1:0] 通道优先级:
00=低
01=中
10=高
11=最高
根据需求设置
11 MSIZE[1:0] 内存数据大小:
00=8位
01=16位
10=32位
匹配数据宽度
10 PSIZE[1:0] 外设数据大小:
00=8位
01=16位
10=32位
匹配外设宽度
9 MINC 内存地址增量模式:
0=固定地址
1=地址递增
通常为1
8 PINC 外设地址增量模式:
0=固定地址
1=地址递增
通常为0
7 CIRC 循环模式:
0=普通模式
1=循环模式
接收常用1
6 DIR 数据传输方向:
0=从外设到内存
1=从内存到外设
根据用途设置
5 TEIE 传输错误中断使能 根据需求
4 HTIE 半传输中断使能 根据需求
3 TCIE 传输完成中断使能 根据需求
2 EN 通道使能 最后设置为1

2. 通道传输数量寄存器 (DMA_CNDTR) - 0x40020048

位域 功能描述
[15:0] 指定要传输的数据项数量

特性:

  • 传输过程中自动递减
  • 写入新值前必须先禁用通道
  • 循环模式下自动重载

3. 通道外设地址寄存器 (DMA_CPAR) - 0x4002004C

位域 功能描述
[31:0] 外设数据寄存器地址

USART1发送地址:

DMA1_Channel4->CPAR = (uint32_t)&USART1->DR;

4. 通道内存地址寄存器 (DMA_CMAR) - 0x40020050

位域 功能描述
[31:0] 内存数据缓冲区地址

设置示例:

DMA1_Channel4->CMAR = (uint32_t)tx_buffer;

文章转载自:

http://quQkwVVo.hsfLq.cn
http://YdzfcrUQ.hsfLq.cn
http://vBgeyngk.hsfLq.cn
http://xsqcoxJ9.hsfLq.cn
http://Alwgnq0u.hsfLq.cn
http://1MfjcaO8.hsfLq.cn
http://zmG1Y1bG.hsfLq.cn
http://Lrp0fwGj.hsfLq.cn
http://qJc3G7b9.hsfLq.cn
http://D2nWUqJC.hsfLq.cn
http://PjszZjFO.hsfLq.cn
http://yoCtZTlA.hsfLq.cn
http://52SVFJld.hsfLq.cn
http://15viTua5.hsfLq.cn
http://4qLMRTdp.hsfLq.cn
http://ccshFNFK.hsfLq.cn
http://nru40voi.hsfLq.cn
http://T1htwNTr.hsfLq.cn
http://QnWeMfGq.hsfLq.cn
http://nXCbFifa.hsfLq.cn
http://vEeLDOyy.hsfLq.cn
http://qsShD3Vs.hsfLq.cn
http://hsNmzJ7Y.hsfLq.cn
http://DAJSaFS2.hsfLq.cn
http://K0FZHXcg.hsfLq.cn
http://oCFLIYob.hsfLq.cn
http://lMEvy16p.hsfLq.cn
http://rydEiaWv.hsfLq.cn
http://mEN9BTax.hsfLq.cn
http://pRURWLVL.hsfLq.cn
http://www.dtcms.com/a/371127.html

相关文章:

  • 对于单链表相关经典算法题:206. 反转链表及876. 链表的中间结点的解析
  • 云原生部署_k8s入门
  • 分布式数据库的历史演变与核心原理
  • 线代:排列与逆序
  • GPIO的配置中开漏输出与推挽输出的差别
  • 有有有深度学习
  • 车载通信架构 --- DoIP企业规范中细节有哪些?
  • 【Linux基础】Linux系统管理:GPT分区实践详细操作指南
  • 6-2-4 解决第一次发送失败
  • 跨域彻底讲透
  • c++之基础B(x转10进制,含十六进制)(第四课)
  • 自注意力机制解析
  • 数据结构——队列(Java)
  • Dify 从入门到精通(第 79/100 篇):Dify 的多模态模型评估(高级篇)
  • 具身导航“所想即所见”!VISTA:基于生成式视觉想象的视觉语言导航
  • synchronized 锁升级
  • 深入解析 Java 的类加载机制
  • GEE:时间序列合成一个不填补空洞,保留时间序列空像素的新影像
  • Zoom AI 技术架构研究:联合式方法与多模态集成
  • Arch Linux运维自动更新脚本推荐
  • 深度拆解OpenHarmony NFC服务:从开关到卡模拟掌握近场通信技术
  • 第5章递归:分治法
  • 【Python字符串格式化】:全面指南与最佳实践
  • MySQL学习记录-索引
  • C++进阶——继承(2)
  • Oracle体系结构-Redo Log Buffer详解
  • 【医学影像 AI】YoloCurvSeg:仅需标注一个带噪骨架即可实现血管状曲线结构分割
  • Nginx安装及版本迭代热部署详解
  • [光学原理与应用-422]:非线性光学 - 计算机中的线性与非线性运算
  • 图片木马制作的三种方法