主题中讨论的其他器件:THVD1449、 THVD1406
工具/软件:
我当时使用反向通道 (USCI_A0) UART p2.0 和 p2.1、以通过 RS485 执行串行通信。 但存在一些数据完整性问题。 所以我想知道 TX 线上的上拉电阻器是否起作用? 输出电压具有理想的低电平。 或者是否可以在程序中将其设置为高?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:
我当时使用反向通道 (USCI_A0) UART p2.0 和 p2.1、以通过 RS485 执行串行通信。 但存在一些数据完整性问题。 所以我想知道 TX 线上的上拉电阻器是否起作用? 输出电压具有理想的低电平。 或者是否可以在程序中将其设置为高?
UCA0 是反向通道(仅限)、通过 Launchpad 上桥接器 (J13) 接头上的 RXD/TXD 跳线连接到主机。 我假设您已移除这些跳线以连接 RS485 电路。
我预计您会希望在 MCU RXD 引脚上连接上拉电阻器、因此它在断开连接时不易受噪声影响。 由于 TXD 引脚始终由 MCU 驱动、因此我认为您不需要它。 我在某种程度上随机挑选了一个 RS485 收发器芯片 (THVD1449) 及其数据表(SLLSF79B、第 9.2.2 节)、建议在 R 和/RE 上都连接 10k 上拉电阻。 (它还建议在 DE 上设置下拉电阻。)
我的观察(通过读取论坛)是、最常见的 RS485 数据完整性错误是忘记等到最后一个 Tx 字节被时钟输出后再切换为 DE (UCA0STATW:UCBUSY=0)。
我不仅使用 IC、还使用 USB 转 RS485 转换器本身。
我尝试了所有已知的可能的调试、进行了如下 操作:打开串行端口->清除输入输出缓冲区->执行一些操作->关闭无限循环中每个调用的串行端口。 执行此操作时、一段时间内没有遇到任何问题。
仅打开端口时->执行一些操作->再次关闭端口某些设备没有响应、因为在某些呼叫中、如果我们跳过该呼叫、当遇到错误时、下一个呼叫将成功。 随着时间的推移、只有一个设备完全停止响应。