串口通信:外设与软件之间的通讯协议
1、先上一张串口的数据格式图
①起始位:用于标志传输一个字符的开始,接收方可用起始位使自己的时钟和发送方的数据同步;
②数据位:依次为D0-D6(低位到高位),
③校验位:D7位数据校验位可有可无(奇校验,数据位的1的数量为奇数,则用0表示;偶校验,数据位的1的数量为偶数,则用1表示),好处是接收设备能够知道一个位的状态,有可能判断是否有噪声干扰了通信以及
④传输的数据是否同步
⑤停止位:停止位可以是是1位、1.5位或2位,可以由软件设定。它一定是逻辑1电平,标志着传输一个字符的结束。
⑥空闲位:空闲位是指从一个字符的停止位结束到下一个字符的起始位开始,表示线路处于空闲状态,必须由高电平来填充,也就是用逻辑1电平填充。
2、异步通信的发送数据的过程
①当初始化以后或者没有数据要发送的时候,发送端的起始位用逻辑1电平来填充,表示线路空闲,后边可以有多个空闲位
②当发送端接收到指令需要发送数据时,则置发送端起始位为0,后边跟5-7位的数据位(D0-D6),D7奇偶校验位可有可无,停止位为1
③如果后续没有数据要发送,则空闲位用逻辑1电平来填充,相反则置位0,表示新的数据需要传输
3、异步通信的接收数据的过程
①
来源:https://www.cnblogs.com/OSKnown/p/7463312.html