我的水平有限
请问,通讯格式D8120中的b0位数据位长度究竟是指什么,设置为7位还是8会怎么不一样,之前看过三菱PLC通讯控制变频器的教程,我怎么发现它完全跟数据位长度没关系似的,不同的格式有效的ASCII数据位就不同,有7位的、9位的、11位的等等,我之前看过一款支持MODBUS通讯协议的变频器(可惜传不上图),如果我没看错的话其中8-Data bits明显是指有效的数据元个数。请高手指教啊,困惑我很久了,谢谢!
德盛机械
纵横军团-棋影
D8120中的b0位,当b0=1的时候,标明数据位是8位;当b0=0的时候,标明数据位是7位。
串行通信中一帧完整数据包括:
起始位:1位;
数据位:8位或者7位或者更少
校验位:如果选择偶校验或者奇校验,则校验位为1位;如果无校验,那么校验位为0位
停止位:1位
综上所述:如果你采取的是偶校验或者奇校验,且你的数据为是8位的话,那么这个时候你的一帧数据就是
1+8+1+1=11位
如果你采取的是无校验,且你的数据为8位的话,那么这个时候你的一帧数据就是
1+8+1=10位
大概就这个意思,还不明白可以加我QQ149034219
如果你采取的是偶校验或者奇校验,且你的数据位是7位的话(此种方式一般数据多以ASCII码进行传输),那么这个时候你一帧数据就是:
1+7+1+1=10位
如果你采取的是无校验,且你的数据位是7位的话(此种方式一般数据多以ASCII码进行传输),那么这个时候你一帧数据就是:
1+7+1=9位
且一般数据位多为8位或者7位,如果通信协议是MODBUS RTU的话,数据位必须是8位的,校验位可以选择偶校验、无校验、奇校验等!