USART串口通信
USART:(Universal Synchronous/Asynchronous Receiver/Transmitter)
通用同步/异步串行接收/发送器
一.通讯的相关概念
串口通讯一般都是异步通讯
同步通讯:通讯时双向输出接收信息,每传输一次数据都对应时钟控制。因此同步通讯时需要Stm32给外界一个时钟用于同步收发。异步通讯时,只用到RX、TX,先把数据打包成帧,TX开始数据传输时,是读取到启动位,启动位后紧跟数据帧(8位或者9位,由USART_CR1的M位(位12,控制字长 )来控制,置0—8bit,置1—9bit)。数据的后端有停止位(一定是高电平),由USART_CR2的Stop的两个位来控制(如图)。还可能有奇偶校验位。
奇偶校验位由USART_CR1的PCE位进行奇偶校验使能,PS位奇偶校验选择,PEIE奇偶校验错误中断(校验时发现问题,进行相应中断)。状态寄存器USART_SR 的PE位(奇偶校验错误)
1-串行与并行通讯
并行(例如FSMC总线),串行特点:

并行就是同一时间多个位一起传输,串行是一个个传输。
2-全双工、半双工和单工
全双工:可同时收发数据
半双工:不可同时收发数据,可分时收发数据
单工:任何时刻都只能往某

本文详细介绍了STM32的USART串口通信,包括串口的基本概念、同步异步通讯的区别、串口通信协议、电平转换、常用通信标准如RS232和USB转串口,以及串口的协议层、数据包格式和校验方式。还讨论了USART的功能框图,如引脚定义、数据寄存器、控制器以及波特率的计算。





最低0.47元/天 解锁文章
2009

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



