全站数据
8 4 2 0 5 8 1

cndtr是什么寄存器

网络怪才 | 简单学习,快乐成才!         
问题更新日期:2024-11-01 00:10:35

问题描述

cndtr是什么寄存器急求答案,帮忙回答下
精选答案
最佳答案

CNDTR 这是一个32 位的寄存器,一次最多只能传输65535 个数据。要想数据传输正确,源和目标地址存储的数据宽度还必须一致,串口数据寄存器是8 位的,所以我们定义的要发送的数据也必须是8 位。外设的数据宽度由DMA_CCR 的PSIZE[1:0]配置,可以是8/16/32 位,存储器的数据宽度由DMA_CCR 的MSIZE[1:0]配置, 可以是8/16/32 位。

在DMA 控制器的控制下,数据要想有条不紊的从一个地方搬到另外一个地方,还必须正确设置两边数据指针的增量模式。外设的地址指针由DMA_CCRx 的PINC 配置,存储器的地址指针由MINC 配置。以串口向电脑发送数据为例,要发送的数据很多,每发送完一个,那么存储器的地址指针就应该加1,而串口数据寄存器只有一个,那么外设的地址指针就固定不变。具体的数据指针的增量模式由实际情况决定。