RS485通讯,电路为硬件自收发切换,能正常接收数据,发送数据部分出错

您好,有一个关于RS485通讯的问题很是不解,还望大神不吝赐教。本人使用STM32F107VCT6,8M外部晶振,波特率9600,偶校验。使用USART1口,实现一路RS485通讯。485电路为硬件自收发切换的电路。当前可以正常接收数据,但是发送数据时,部分数据正常,部分不正常。更奇怪的是,第一个字节发送0x80时,收到的00,发0x81时却能正常收到。个人的理解是,主要单片没有在接收数据,就可以发送数据。其它软件方面的配置就跟配置普通RS232的一样就可以了。可却遇到这样的情况。好纠结啊,不知哪位大神能给点提示呢?谢谢
问题已经解决,只要把偶校验改为无校验就都正常了。但就是不明白为什么会这样。大家怎么看呢?

这种自动收发转换电路常用于RS232转RS485模块上,可你这有单片机可以控制收/发转换的,还是别自动收发转换,只是节省一个引脚而已。
为了查到原因,改成用单片机的一个引脚控制收/发转换,看看发送还错不错了。注意,切换到发送状态后,要有一点点延时再发送,使发送状态稳定后再发送。
自动收/发转换出错可能出在这状态转换的稳定上。测试一下就知道了。
温馨提示:答案为网友推荐,仅供参考
相似回答