51串口调试助手,怎样发送一串数字并原样返回

已有自动加1的程序代码,只需要修改划线部分,把+1去掉就可以了嘛,但是我在实际操作中,他只能一个数字一个数字返回是为什么呢,为什么不能一串数字直接返回呢

img

img

img

串口波特率是很低的,而你cpu的频率是很高的
如果你不加延迟,就直接不停去缓冲区里拿数据,那必然一次只能拿到一个byte
这就好比你去取快递,快递一天才来一个,而你每隔半小时就去快递站看一次有没有快递,还抱怨快递为什么不能10个一起来

img


应该是这里只接收8位,且是低位在先的数据。导致只能接收一个数字。看不懂吗?那我改改。原来就是个只能接收一个8bit的单个数字并自增1返回的程序,你删减掉自增1的代码,它依然还是只能接收并返回一个数字的数据(前后带起始结束位)。你要想让程序返回一串数字的话,得修改接收和返回中我红框位置的处理逻辑,让程序不要接收或者发送8bit数据就置接收、发送结束标志。且需处理好低位在先的每8字节数据的接收。