正确使用 RS485 的 RE 和 DE

电器工程 微控制器 串行 rs485
2022-01-26 04:49:02

我正在尝试使用 MAX485 构建一个 RS-485 项目。但是,我很难找出如何正确使用 RE 和 DE 引脚。一些 PDF 和网站说 RE 和 DE 应该连接在一起,然后连接到微控制器上的引脚(例如)。其他地方似乎有各种将 DE 接地和 RE 连接到正极的组合,以及其他类似的东西。

此外,说 RE 和 DE 应该连接在一起然后连接到微控制器的地方,也有关于如何通过软件控制这些的相互矛盾的信息。

所以我的问题是:

  • 我实际上应该用 RE 和 DE 做什么?我还需要上拉或下拉电阻吗?
  • 假设 RE 和 DE 由我的微控制器控制,我该如何控制它们?我是否将它们设置为高/低然后发送数据然后再次将它们设置为低/高?我对接收数据做同样的事情吗?

对此的任何帮助将不胜感激,并且如果有任何指向包含有关 DE/RE 的特定信息的站点的链接将是好的。

3个回答

如果您在微控制器上使用正常输出引脚驱动这些引脚,则不需要任何上拉或下拉电阻。

DE 是“驱动器使能”引脚,在传输数据时必须拉高。根据您的微机以及您如何使用它的中断,您可能需要小心何时将其拉回低位 - 检查所有位是否首先完全完成,否则您可能会截断消息的结尾。您必须先将其拉回低位,然后才能收到任何东西。

RE 是“接收器使能”引脚,只要您希望能够接收数据,就必须将其拉低。

您会注意到 DE 和 RE 引脚的极性相反。DE 高电平有效,RE 低电平有效。
因此,如果您愿意,您可以将它们连接在一起并从一个引脚控制它们 - 高表示您要发送(DE 激活,RE 无效),低表示您要接收(RE 有效,DE 无效)。

另一种可能性是将 RE 接地并仅控制 DE。
你会使用这个配置是你希望能够听自己说话。这在可能有多个主机在您的 RS-485 总线上通话并且您需要检查您认为您发送的内容没有被同时发生的另一次传输破坏的情况下很有用。正如 Tut 正确指出的那样,这不是一种可靠的碰撞检测方法

如果您只打算发送或接收,那么您可以将 DE 和 RE 连接为高电平(永久发送)或同时连接为低电平(永久接收)。

使能不需要上拉或下拉电阻。根据您想要做什么以及芯片允许的功能,您可以将它们捆绑在一起并将它们驱动在一起(高电平是 TX,低电平是 RX),或者分别驱动它们。后者允许收发器处于低功率状态。

编辑:485 实际上不允许关机,但 481/3/7 可以,请参阅第 4 页。5 的数据表。所以在那种情况下,我会把它们绑在一起,然后把它们驱动在一起。

这取决于您要完成的工作。例如,如果您从不需要接收,那么 RE-NOT(没有 RE!!)可以绑在高处并留在那里。如果您需要启用驱动程序,DE 需要很高。如果您永远不需要禁用它,您可以将其绑定在那里。

你不需要引体向上。