http://www.laogu.com/wz_740.htm 4.3 故障保护
故障保护技术是近两年产生的,一些新的RS-485芯片都采用了此项技术,如SN75276、MAX3080~MAX3089。什么是故障保护,为什么要有故障保护,如果没有故障保护会产生什么后果? 众所周知,RS-485接口采用的是一种差分传输方式,各节点之间的通信都是通过一对(半双工)或两对(全双工)双绞线作为传输介质。根据RS-485的标准规定,接收器的接收灵敏度为±200mV,即接收端的差分电压大于、等于+200 mV时,接收器输出为高电平;小于、等于-200mV时,接收器输出为低电平;介于±200mV之间时,接收器输出为不确定状态。在总线空闲即传输线上所有节点都为接收状态以及在传输线开路或短路故障时,若不采取特殊措施,则接收器可能输出高电平也可能输出低电平。一旦某个节点的接收器产生低电平就会使串行接收器(UART)找不到起始位,从而引起通信异常,解决此类问题的方法有两种: (1)使用带故障保护的芯片,它会在总线开路、短路和空闲情况下,使接收器的输出为高电平。确保总线空闲、短路时接收器输出高电平是由改变接收器输入门限来实现的。例如,MAX3080~MAX 3089输入灵敏度为-50mV/-200mV,即差分接收器输入电压UA-B≥-50mV时,接收器输出逻辑高电平;如果UA-B≤-200mV,则输出逻辑低电平。当接收器输入端总线短路或总线上所有发送器被禁止时,接收器差分输入端为0V,从而使接收器输出高电平。同理,SN75276的灵敏度为0mV/-300mV,因而达到故障保护的目的。 (2)若使用不带故障保护的芯片,如SN75176、MAX1487等时,可在软件上作一些处理,从而避免通信异常。即在进入正常的数据通信之前,由主机预先将总线驱动为大于+200mV,并保持一段时间,使所有节点的接收器产生高电平输出。这样,在发出有效数据时,所有接收器能够正确地接收到起始位,进而接收到完整的数据。
max485芯片的a、b端不采用datasheet推荐的电路,而采用如图电路! 相关链接:http://www.laogu.com/wz_740.htm |