找到了,连续2个发送模式,去掉第2个发送模式。接收就正常了,看来是第2个发送模式影响的 |
485使能后做个短暂延时 |
检查一下波特率及一些串口设置是否正确 |
你这个情况好像是发送字符串之前TI位被置1了,所以第一个字符没发出去,后面发送字符之前,TI位都是0,能够顺利发送。但是程序上有看不出来哪里先把TI位给置1了,可以在U2SendString("chenggong\r\n");这一句前面加一句S2CON&=~S2TI;发送前先把TI置0,供参考。 |
选择Hex模式 看看是完全收不到第一个字还是收到乱码没有显示 m485=1;后加个延时看看 |