空闲状态,即没有数据传输,是高电平。每个字符表示为一个帧,以逻辑低电平为开始比特,然后是数据比特,可选的奇偶校验比特,最后是一个或多个停止比特(逻辑高电平)。
大部分应用都是先传最低位的数据比特(the least significant data bit),即低位在前发送。
起始位:开始进行数据传输时发送方要先发出一个低电平’0’来表示传输字符的开始。‘
数据位:数据可以是5,6,7,8,9位,构成一个字符,一般都是8位。先发送最低位最后发送最高位。
奇偶校验位:数据位传送完成后,要进行奇偶校验,校验位其实是调整个数,串口校验分几种方式:
1.无校验(no parity)
2.奇校验(odd parity):如果数据位中’1’的数目是偶数,则校验位为’1’,如果’1’的数目是奇数,校验位为’0’。
3.偶校验(even parity):如果数据为中’1’的数目是偶数,则校验位为’0’,如果为奇数,校验位为’1’。
4.mark parity:校验位始终为1
5.space parity:校验位始终为0
停止位:数据结束标志,1位,1.5位或2位的高电平。
波特率:数据传输速率使用波特率来表示,单位bps(bits per second),常见的波特率9600bps,115200bps等等,其他标准的波特率是1200,2400,4800,19200,38400,57600。
举个例子,如果串口波特率设置为9600bps,那么传输一个比特需要的时间是1/9600≈104.2us。
逻辑分析仪截取的0x55和0xAA的图像如下: