先说明一下情况:(单方向发送,有自动应答,自动重发)情况1:接收端在while(1)里面一直判断接收,然后显示接收的数组到LCD屏。。。发送端在while(1)里面一直发送数据(数据在变),这个时候可以通讯成功,也可以很好的显示:。情况2:但是我的想法是,发送端每隔50ms发送一次,所以就在发送端发送完一次数据之后延时50ms,这个时候LCD屏就会显示不正常了,所有数值都变成一样的,而且还在不停的闪烁,像是接收到正确数据然后被覆盖了,由于错误的数据持续时间太长,正确的数据时间太短,所以数据显示时会一直闪烁。想了很久还是想不清楚这个问题。
情况3:出现这个问题之后,我就在接收端接收了一次数据显示完之后,也加了50ms的延时,然后就成功了。
总的来说有这么几个问题:
1、单方向的发送也需要接收和发送同步吗?就是发送和接收的时间差不能相差太久。
2、按理说发送端第一次发送成功,接收端接收成功,然后接收端就会显示第一次发送的内容,等第二次发送过来,就可以再一次接收了。就算
通信失败了,也就是什么都不显示呀,,,怎么也想不出为什么会出现情况2这种情况。