目录
一、通用同步异步收发器 (USART)
1.USART 简介
通用同步异步收发器 (USART)能够灵活地与外部设备进行全双工数据交换,满足外部设备对工业标准 NRZ异步串行数据格式的要求。USART通过小数波特率发生器提供了多种波特率。
它支持同步单向通信和半双工单线通信,还支持LIN(局域互连网络)、智能卡协议与 IrDA(红外线数据协会)SIR ENDEC 规范,以及调制解调器操作 (CTS/RTS)。而且,它还支持多处理器通信。
通过配置多个缓冲区使用DMA可实现高速数据通信。
2.USART 功能说明
接口通过三个引脚从外部连接到其它设备。任何USART 双向通信均需要至少两个引脚:接收数据输入引脚 (RX)和发送数据引脚输出 (TX):
RX:接收数据输入引脚就是串行数据输入引脚。过采样技术可区分有效输入数据和噪声,从而用于恢复数据。
TX:发送数据输出引脚。如果关闭发送器,该输出引脚模式由其 I/O 端口配置决定。如果使能了发送器但没有待发送的数据,则TX 引脚处于高电平。在单线和智能卡模式下,该 I/O用于发送和接收数据(USART 电平下,随后在SW_RX上接收数据)。
正常USART模式下,通过这些引脚以帧的形式发送和接收串行数据:
- 发送或接收前保持空闲线路
- 起始位
- 数据(字长 8 位或 9 位),最低有效位在前
- 用于指示帧传输已完成的 0.5 个、1 个、1.5 个、2 个停止位
- 该接口使用小数波特率发生器 - 带 12 位尾数和 4 位小数
- 状态寄存器 (
USART_SR) - 数据寄存器 (
USART_DR) - 波特率寄存器 (
USART_BRR) - 12 位尾数和 4 位小数 - 智能卡模式下的保护时间寄存器 (
USART_GTPR)
在同步模式下连接时需要以下引脚:
- SCLK: 发送器时钟输出。该引脚用于输出发送器数据时钟,以便按照 SPI 主模式进行同步发送(起始位和结束位上无时钟脉冲,可通过软件向最后一个数据位发送时钟脉冲)。
RX上可同步接收并行数据。这一点可用于控制带移位寄存器的外设(如 LCD 驱动器)。时钟相位和极性可通过软件编程。在智能卡模式下,SCLK 可向智能卡提供时钟。 - nCTS: “清除以发送”用于在当前传输结束时阻止数据发送(高电平时)
- nRTS:“请求以发送”用于指示 USART 已准备好接收数据(低电平时)
3.USART框图

二、基于HAL库实现串口通信
1.工程创建
(1)新建工程
选择New Project

选择芯片型号,并创建工程

(2)设置RCC
- 设置高速外部时钟HSE 选择外部时钟源

(3)设置串口

最低0.47元/天 解锁文章
7482

被折叠的 条评论
为什么被折叠?



