嵌入式开发的通信协议
串行通信
将数据字节分成一位一位的形式在一条传输线上逐位地发送。
优点:成本低,控制复杂
异步通信
异步通信是指通信的发送与接收设备使用各自的时钟控制数据的发送和接收过程。为使双方的收发协调,要求发送和接收设备的时钟尽可能一致。 异步通信的两个关键:
第一,数据单元——帧,它是双方约定好的数据格式;
第二,波特率,它决定了‘帧’里每一位的时间长度。
异步通信的特点:不要求收发双方时钟的严格一致,实现容易,设备开销较小,但每个字符要附加2~3位用于起止位,各帧之间还有间隔,因此传输效率不高。
注:波特率表示每秒传送的字符数,是UART协议中的一个关键数据,即发送数据的速度;
发送器和接受器的波特率应该匹配,通常,我们将波特率定为9600或115200。
同步通信
在数据传输过程中,需要一根时钟线同步,如 IIC总线,SPI总线 。
UART
定义
UART是一种通用串行数据总线,用于异步通信。该总线双向通信,可以实现全双工传输和接收。
UART通信方式
1.起始位:先发出一个逻辑”0”的信号,表示传输字符的开始。
2.数据位:紧接着起始位之后。资料位的个数可以是4、5、6、7、8等,构成一个字符。通常采用ASCII码。从最低位开始传送,靠时钟定位。
3.奇偶校验位:资料位加上这一位后,使得“1”的位数应为偶数(偶校验)或奇数(奇校验),以此来校验资料传送的正确性。
4.停止位:它是一个字符数据的结束标志。可以是1位、1.5位、2位的高电平。
5.空闲位:处于逻辑“1”状态,表示当前线路上没有资料传送。
UART与COM口的区别
【1】UART,COM指的物理接口形式(硬件), 而TTL、RS-232是指的电平标准(电信号).
【2】UART有4个pin(VCC, GND, RX, TX), 用的TTL电平, 低电平为0(0V),高电平为1(3.3V或以上)。
COM口是我们台式机上面常用的口(下图),9个pin, 用的RS232电平, 它是负逻辑电平&#