STM32F103xx学习笔记(2)——USART串口通讯
部分基础概念
并行通讯和串行通讯
串行:按位传输,一次传输一位。适合远距离传输。
并行:一次传输多位数据。传输速度快,但是受距离限制大(并行的时序要求),布线更复杂。
高速串行通讯是趋势。
例如现在采用的PCIe:高速时钟频率的串行传输替代了以前的并行传输,本身亦可以拓展位宽。
类似的还有硬盘的SATA接口。
不过某些高速数据传输应用中(内部总线),并行通讯仍是必要的。
单工,半双工,全双工
定义从信息的传输方向来定义。
单工:只能A传输到B。
半双工:A传输B,B传输A,二者无法同时存在。
全双工:允许A,B同时互相传输。
同步,异步
同步传输过程需要时钟信号线,而异步传输只需要数据信号线。
通讯协议
串口通讯 Serial Communication支持大部分通讯方式,是一种常用的串行通讯,异步,全双工方式。
串口通讯协议
上面是一个数据帧,也称为一个数据流。
先从低位发送,起始位是0,停止位必须是1,默认是1,也就是空闲位。在232中,如果空闲位高电平保持一个数据帧的长度(空闲帧),便认为发送结束。
波特率:每秒传输的码元(位)数量,由于通讯中没有时钟,因此通讯双方要约定好波特率,即告知每个码元的长度。常见波特率有9600、115200等。
USART外设
Universal Synchronous Asy