下图为串口实测波形,设置为8N1格式,即8bit数据位,1bit停止位,无奇偶校验。
绿色代表起始位,橙色代表停止位,绿色和橙色中间的是8个数据位,也就是一个字节。所以8N1格式传输一个字节需要发送10bit。
要根据波形读字节的时候,首先找到停止位和起始位,在停止位和起始位的中间就是一个字节。串口收发一般都是LSB即低位优先,所以起始位后第一个bit传输的是该字节的最低位。比如传输字符’A’,也即0x41,二进制为0100 0001,起始位后第一位传输的是1,然后是0,依次是0,0,0,0,1,0,从起始位开始读就是10000010,把数据转换为高位在前,就是01000001,也即0100 0001,转换为十六进制是0x41,对应ASKII码就是字符’A’。
所以要从波形读出一个字节,就两步:先找到该字节起始位和停止位,然后从停止位向着起始位,一位一位的读出数据换成十六进制或ASKII码即可。
串口波形解析干货(一看就会)
最新推荐文章于 2025-04-25 16:06:18 发布