一、简介
USART(Universal Synchronous Asynchronous Receiver Transmitter)是一个串行通信外设,用于微控制器与其他设备之间进行数据交换。STM32系列的微控制器通常都配备有多个USART模块,支持串行通信协议,能够在不同的传输模式下工作。
USART的主要作用是通过串行的方式来发送和接收数据,它使用的通信方式是通过单线或双线(TX/RX)传输数据,较为常见的协议包括RS-232、RS-485、SPI等。
二、通信方式
首先我们需要先了解一下几种通信方式。基本可以分为串行通信和并行通信两种。
串行通信
串行通信是指利用一条传输线将数据一位位地顺序传送。
传输方式:传输一个字节(8个位)的数据时,串口是将8个位排好队,逐个地在1条连接线上传输。
特点:通信线路简单,利用电话或电报线就可以实现通信,降低成本,适用于远距离通信,但传输速度慢。
并行通信
并行通信是指利用多条传输线将一个数据的各位同时传送。
传输方式:传输一个字节(8个位)的数据时,并口是将8个位一字排开,分别在8条连接线上同时传输。
特点:传输速度块,适用于短距离通信。
根据数据发送和接收之间的时序和控制方式可以分为异步和同步通信。
异步通信
在异步通信中,不使用时钟信号进行数据同步,它们直接在数据信号中穿插一些同步用的信号位,或者把主体数据进行打包,以数据帧的格式传输数据。例如规定由起始位、数据位、奇偶校验位、停止位等。
某些通信中还需要双方约定数据的传输速率,以便更好地