我现在用MAX485做半双工发送。碰到一个问题:波特率选择115200,下位机MCU通过中断接收。上位机(COMMASTER)向下位机MAX485发数据,然后MCU进行处理。当上位机如果每次只发送一位数据的时候,通讯正常;如果上位机发送一串字符串的时候,没个字符串的第一位数据会丢失。请问这是什么原因啊?MAX485平时工作在接收状态,只有在数据发送时使能端才置高,发送完毕延时后使能端置底,等待接收。
请大家帮忙分析一下,谢谢!
有可能是延时不够,就是在数据发送时使能端置高的延时不够,在使能端置高后加点延时应该可以解决。如果不行的话咱再讨论。
差不多是波特率太高了,响应不了那么快,可以改慢点试试,逐渐增加波特率,看到什么时候出错。
昨天忘记结贴了,是波特率的问题,太高了,中断的响应速度跟不上!如spm208所说! 我把分给他了,多谢各位!