关于STM32的串行异步通信
【串行异步通信】
STM32F4 的串口资源相当丰富的,功能也相当强劲。 STM32F407ZGT6 最多可提供 6 路串口,有分数波特率发生器、支持同步单线通信和 半双工单线通讯、支持 LIN、支持调制解调器操作、智能卡协议和 IrDA SIR ENDEC 规范、具 有 DMA 等。
关于串口通信,处理器与外部设备通信有两种方式:并行通信与串行通信
1、并行通信
传输原理:数据各个位同时传输。
优点:速度快 缺点:占用引脚资源多
2、串行通信
传输原理:数据按位顺序传输。
优点:占用引脚资源少 缺点:速度相对较慢
【串行通信】按照数据传送方向分为以下三种:
单工: 数据传输只支持数据在一个方向上传输;
半双工:允许数据在两个方向上传输,但同一时刻,只允许数据在一个方向上传输;
全双工: 允许数据同时在两个方向上传输,要求发送设备和接收设备都有独立的接收和发送能力。
按时钟需求分类分为:同步通信(带时钟同步信号传输)如:SPI,IIC,异步通信(不带时钟信号)如:UART,单总线.
常见的串行通信接口:
STM32串口通信过程:
UART异步通信方式引脚连接采用交叉连接:
RXD:数据输出引脚,数据接收;
TXD:数据发送引脚,数据发送。
串行异步通信接口UART组成图(部分)
STM32串口异步通信需要定义的参数:
奇偶校验位(第九位),按字符校验,即在发送每个字符数据后都附加一个奇偶校验位(0/1)
当设置为奇校验时,数据中1的个数与校验位1的个数之和应为奇数,反之为偶校验。
波特率设置,异步通信中每秒传送的二进制位数。
