关于波特率和发送速率

波特率即每秒发生硬件触发上升沿或下降沿的次数

比如9600波特率,最高每秒可以检测到9600个上升沿或下降沿,或者说可以最大可以接收到9600个二进制数(0/1),每个时钟周期为1/9600 s,

根据常规串口发送协议,一个起始位,8个数据位,0个校验位,1个停止位,共计10位二进制数,

则 每10个时钟周期才能完成一个8位字节的发送,

则 9600波特率每秒最多发送960次单字节,共计960个字节

则,每发送一个字节需要的时间是 1/960 ~= 0.001041666.....s ~= 1.0416667ms

实际测试中我采用每秒发送10次,每次10字节,共发送10次

波特率9600:采用高线程延时100ms方式发送,实际得出的结果需要:1047-1048ms(很完美的扯淡)

波特率115200:采用高线程延时100ms方式发送,实际得出的结果需要:999-1001ms(勉强凑合)

原文地址:https://www.cnblogs.com/vonly/p/6809421.html