(一) UART
通用异步收发器,是一种串行异步收发协议,将数据的二进制位一位一位的进行传输; 在UART通信协议中信号线上的状态高电平代表“1”低电平代表“0”。
(二)硬件连接
硬件连接比较简单,仅需3条线; TX:发送数据端,连接对面设备的RX; RX:接收数据端,连接对面设备的TX; GND:保证两设备共地,有统一的参考平面;
连接时需要注意两个设备UART电平,如果电平范围不一致要做电平转换,如图为RS232通信
(三)通信协议
3.1空闲状态
UART协议规定,当总线处于空闲状态时信号线的状态为1,即高电平,也就是TX引脚处于高电平;
3.2起始位
开始进行数据传输时发送方要先发出一个低电平0来表示传输字符的开始;
3.3数据位
起始位之后就是传输数据,一般都是8位,低位在前,高位在后;
3.4奇偶校验位
数据位传送完成后,要进行奇偶校验,一般设置:无奇偶校验位;
3.5停止位
数据结束标志,可以是1位、1.5位、2位的高电平;
3.6波特率
数据传输速率使用波特率来表示,单位bps(bits per
second),常见的波特率9600、115200等; 举个例子:如果串口波特率设置为9600bps,那么传输一个比特需要的时间是1/9600 =
104.2us
通常串口设置为:9600、8个数据位、无奇偶校验位、1位停止位
假如现在要传输“o”“k”,这两个在ASCALL码对应是79和75,即“o”二进制为0100 1111; “K”二进制为0100
1011,传输格式数据如下
串口波特率为9600,传送一个数据实际是10个比特(开始位、8个数据位、停止位),一个Bytes传输速率实际为:9600/10*8 =
7680bps
(三) STM32串口通信过程
全部0条评论
快来发表一下你的评论吧 !