分享
10、串口UART
输入“/”快速插入内容
10、
串口
UART
用户5985
用户5985
2月1日修改
一、
串口
介绍
串口(Serial Port)是一种"一位一位顺序发送数据"的通信接口。
代码块
C
并行通信:
8位同时发送(像8车道高速)
┌─┬─┬─┬─┬─┬─┬─┬─┐
│1│0│1│1│0│0│1│0│ 同时发送
└─┴─┴─┴─┴─┴─┴─┴─┘
串行通信:
1位按顺序发送(像单车道)
→ 1 → 0 → 1 → 1 → 0 → 0 → 1 → 0 → 依次发送
STM32F103RC系列芯片中,有五个串口
代码块
Bash
3个USART,2个UART
USART:通用同步和异步收发器
UART:通用异步收发器
什么是异步通信?什么是同步通信?
区别就在于是否有时钟线进行同步,异步通信是双方约定好速度(波特率),同步通信时,主机提供时钟信号,从机在时钟边沿采样。实际应用场景中,一般使用异步通信为主。
当进行异步通信时,这两者是没有区别的。区别在于USART比UART多了同步通信功能。
画板
串口的IO口说明:
从STM32F103芯片手册中,查看引脚定义,可以了解每组串口绑定在哪些GPIO上
引脚说明
C
TX:发送数据输出引脚。
RX:接收数据输入引脚。
SCLK:发送器时钟输出引脚,这个引脚仅适用于同步模式,用于时钟同步,一般不使用。
流控引脚:如果发送设备发送太快,接收设备来不及处理,可以通过流控来控制传输的速度,一般不使用。
nRTS是请求发送,是输出脚,就是告诉别人,我当前能不能接收,用于硬件流控
nCTS是清除发送,是输入脚,用于接收别人nRTS的信号,用于硬件流控