UART通信
基本概念
UART通用异步收发器,很多时候与串口等同。串口特指使用RS232标准的UART通信模式,也是最常用的。
发展:在USB通信没有出现时串口通信是最普及的。现在UART一般使用在工控机上,PC机已经很少看到了。而对于STM32项目来说,UART是较常用的通信方式。
UART和GPIO同样属于片上外设,主要有三个接口,TX发送端,RX接收端,还有GND端,提供零电位参考。两个设备之间RT和TX要对接,才能相互收发数据,建立通讯。如果对于传输距离有要求时可以使用RS485标准。
数据传输的格式
逻辑1使用高电平表示,逻辑零使用低电平表示,所以简答来说就是不断调整电压来传送二进制数据的。UART使用数据帧来传输数据的,数据帧由由起始位、数据位、奇偶校验位、停止位。数据位一般是一个字节,也就是8位比特,且低比特位优先。数据位的开头有一个起始位,无数据发送空闲时,数据显示处于高电平,有数据发送时,变为低电平,并且维持一个比特位的时间长度,就表示起始位,数据发送开始,数据位后端的停止位则与起始位相反,维持一个比特位时间长度的高电平表示发送结束。
例如:我们要发送“Hello World”,一共11个字符,按照ASCII码值编码,我们要发送11个数据帧才可完成。
奇偶校验位:保证数据发送的可靠性,一般有奇数校验和偶数校验,奇偶校验位是数据位的一部分,如果你对可靠性没有要求可有可无。
一般来说,数据帧的长度可自定义,但是交互双方要按保持一致。
波特率:每秒钟发送的个数,表示发送的速度,常用4800、9600、115200、423600。双方波特率也要保持一致。