485发送前要对总线状态进行判断,空闲状态时发送,正在接收要等待。
所以要对串口是否正在进行接收进行判断,但是我在串口寄存器中没有发现这种状态的寄存器,或者是有,但我没有发现。
望各位不吝指教!
1. 485总线是属于主从模式的总线结构,一般设计初期就应该确定主机和从机的工作模式.
2. 485的发送和接收模式由CPU主动控制,通信过程中的收、发切换一般都是通过握手协议实现的.
3. 串口模块是不会带有485总线状态监测功能的,至少目前通用的MCU没有看到带这个功能的。
4. 如果你要监测485的总线状态,可以用差分的一对ADC来采样,并分析电平后得到. 不推荐这样做。还是建议用握手协议来确保通信收发切换.