小_汪 2022-08-10 17:11 采纳率: 74.4%
浏览 73
已结题

为什么485发送端逻辑1为A>B,而接收端逻辑1位B>A

今天网上查找485的相关资料时,发现如下信息,就觉得理解不了,为什么同样的逻辑1,发送端和接收端判断的机制不一样

img

  • 写回答

1条回答 默认 最新

  • NL183325 2022-08-13 17:15
    关注

    其实很好理解,485是将TX和RX整合成一个差分信号来传输数据的,A与B间的电压差表示逻辑电平。
    由于485是半双工工作,也就是线路上同时只能一方传输数据,那么这个通讯上必会区分主站和从站,而为了区分主次,所以这个电平逻辑是为了区分是发送数据方还是接收数据方,而这个状态又主要是由485EN的使能信号控制。
    需要控制RE/DE(cn)来控制485状态的切换,一般连在一起用io口控制。当cn为低时485处于接收状态;当R/D为高时485处于发送状态。
    RO和TTL电平的UART_RX(或模拟串口的RX)相连,DI和TTL电平的UART_TX(或模拟串口的TX)相连。
    当cn为低R0有效,处于接收模式:A>B(AB数据为1),则R0为高电平(R0为1)。
    A<B(AB数据为0),则R0为低电平(R0为0)。
    当cn为高RO高阻,处于发送模式:DI为高时(DI数据1),(强制使A>B)即(AB为1)。
    DI为低时(DI数据0),(强制使A<B)即(AB为0)。

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 10月14日
  • 创建了问题 8月10日