UART寄存器分类介绍
2026/4/29 20:39:19 网站建设 项目流程

一、UART 寄存器的核心分类

通用 UART 模块的寄存器通常分为控制类、状态类、数据类、配置类4 大类,不同 MCU 的寄存器名称可能不同,但功能一致。

二、通用 UART 寄存器详解

1. 数据寄存器(Data Register)
  • 功能:存储待发送 / 刚接收的数据,通常是 “收发共用” 的寄存器(写操作 = 发送数据,读操作 = 接收数据)。
  • 特点
    • 8 位寄存器,存储 1 字节数据;
    • 发送时:CPU 写入该寄存器→数据自动移入发送移位寄存器;
    • 接收时:数据从移位寄存器移入该寄存器→CPU 读取。
2. 控制寄存器(Control Register)

用于控制 UART 的基本功能(发送 / 接收使能、中断使能等),通常分为控制寄存器 A、B(或拆分多个寄存器)。

子寄存器核心位功能
控制寄存器 A- 发送使能位(TXEN):开启 UART 发送功能- 接收使能位(RXEN):开启 UART 接收功能- 中断使能位(TXIE/RXIE):开启发送 / 接收中断
控制寄存器 B- 波特率倍速位(U2X):波特率加倍(如 AVR 的U2X)- 多机通信使能位(MCE):开启多机模式
3. 状态寄存器(Status Register)

用于反馈 UART 的运行状态(发送 / 接收完成、错误等),是软件判断通信状态的核心依据。

核心状态位功能
发送数据寄存器空(TXEMPTY/TXE)1 = 发送数据寄存器(DR)已空,可写入下一个字节
发送完成(TXCOMPLETE/TC)1 = 发送移位寄存器已空(数据完全发送)
接收数据就绪(RXREADY/RXNE)1 = 接收数据寄存器(DR)有新数据,可读取
错误标志位- 奇偶校验错误(PE)- 帧错误(FE):数据帧格式错误- 溢出错误(OE):接收数据未及时读取导致覆盖
4. 波特率配置寄存器(Baud Rate Register)

用于配置 UART 的通信波特率(如 9600、115200),通常是分频寄存器(通过系统时钟分频得到目标波特率)。

  • 常见名称
  • 计算逻辑:波特率分频值 = 系统时钟 / (波特率 × 分频系数)(分频系数通常为 16,倍速模式下为 8)。
5. 模式配置寄存器(Mode Register)

用于配置 UART 的通信参数(数据位、校验位、停止位)。

配置项功能
数据位配置数据位长度(5~8 位)
校验位配置奇偶校验(无校验、奇校验、偶校验)
停止位配置停止位长度(1 位、2 位)

三、通用 UART 寄存器的操作流程

  1. 初始化流程:配置波特率寄存器→配置模式寄存器(数据位 / 校验位 / 停止位)→配置控制寄存器(使能发送 / 接收);
  2. 发送流程:等待 “TXEMPTY” 状态位→写入数据寄存器→等待 “TXCOMPLETE”(可选,确保数据发完);
  3. 接收流程:等待 “RXREADY” 状态位→读取数据寄存器→清除接收标志位。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询