串口发送一帧数据时,两个字节的间隔时间是多少?
这里先搞懂什么是波特率:
波特率:发送二进制数据位的速率,习惯上用 baud 表示,即我们发送一位二进制数据的持续时间=1/baud。
如果波特率为9600,发送1bit需要的时间:1/9600s=0.0001042s=0.1042ms。这里发送一个字节数据=起始位1bit+数据位8bit+停止位1bit,加起来就是10bit,10bit发送所需的时间为:0.1042x10ms = 1.042ms,如果要发送10个字节的数据,那发送这10个字节数据给接收方需要的时间为:10x1.042ms = 10.42ms,这是算实际的发送10个字节的数据所需要的时间。我们在接收方接收数据时可以把时间再加宽一些,让它有一点余量。让接收方能稳定的把数据从发送方接手过来,可以加个5ms,或更宽一点10ms,加上发送10个字节所花的时间,就是15ms或20ms。
波特率为115200或是4800的为发送时间都可以这样算。
串口发送一帧数据时,两个字节的间隔时间是多少?
最新推荐文章于 2024-09-25 11:48:04 发布