主题中讨论的其他器件: TIDA-010035、 SN65HVD96
你(们)好
我当前正在发送数据、但在没有 TI 电路的情况下我可以接收数据、但当我放置 TIDA00527时、我在下面给出了一些问题、 信号 Tx 非常好、但 A、B 中存在失真。
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.
你(们)好
我当前正在发送数据、但在没有 TI 电路的情况下我可以接收数据、但当我放置 TIDA00527时、我在下面给出了一些问题、 信号 Tx 非常好、但 A、B 中存在失真。
当然、这些示波器捕获看起来确实有一些繁重的滤波工作。 通过 RS422链路查看信号完整性的频率依赖性可能会有所帮助。 您是否可以访问函数发生器? 如果是、请将其输出连接到发送器上的 TX 输入。 将 DE 输入连接至高电平以启用传输。 在接收器侧、将 RE 引脚短接至 GND、并像以前一样使用示波器监控接收器上的 A、B 输入。
按如下方式配置函数发生器。 方波输出、0-5V 输出、50%占空比、10kHz 频率
在接收器上观察 A、B 输入时、增加函数发生器的频率、直到您开始在接收器上获得看起来像样的信号。 当您在接收器处获得干净的信号时、将频率舍入到最近的标准波特率、这就是您希望 Arduino 以何种速率进行通信。 如果波特率太高、无法使用 Arduino、则增加发送器和接收器 TIDA-00527板上 C7和 C8的值、并重复函数发生器测试。 您还可以在接收器处上调 R1的值、以进一步降低所需的工作频率。
您可以参阅此应用手册以了解 LC 选择(第11页上的公式5和6)。
正如 Max 和 Shawn 所指出的、数据速率很低。 如果要将其与直流电源去耦、可以提高数据速率或增加电容值。
请告诉我、这对您是否有意义。
此致、
Hao
19200波特图看起来更好、但波特率仍然太低。 尝试以115200波特或更高的1000000波特(1Mbaud)运行、看看效果是否更好。 如果 Arduino Manchester.h 库不支持高波特率、则可能需要考虑增大交流耦合的电容值。 如果不是这种选择、那么您唯一的选择就是使用 TIDA-00527以外的器件为接收器供电、或者使用比简单 Arduino 更强大的处理器。
您还说您取出了120欧姆的终端电阻器。 传输线路上确实应该有一些端接电阻。 这将有助于在您开始以这些更高的波特率运行时清理波形。
肖恩
你(们)好
我可以处理115200波特率、您能建议使用任何其他控制器、如果您使用的控制器是最佳方法、则可以使用硬件或软件来控制该位
此外。 我无法在我的控制器上获取信号、但我能够在 DSO 上获取信号。
请查看信号图片以供参考。
编辑: 抱歉、在我点击下面的"发送"之前、您的其他两个帖子未显示在我的计算机上。 请忽略此问题、同时考虑您看到的内容。
那么、我在这些最近发送的照片中看到了什么呢? 传输 TIDA-0527的数据输入和接收 TIDA-0527的数据采集波特率是否为115.2K? 如果是这样、则 RS-485链路在该波特率下正常工作。 如果是这样、我相信您现在的问题是、接收 Arduino 无法保持如此高的数据速率?
这里有几个选择: 1)重写您的 sketch、以便它在接收器上以更快的速度运行。 2) 2)切换到接收器中的高速微控制器。 或者3)修改 TIDA-0527上的交流耦合电路、以使用较低的波特率。
1)的结果将因代码的结构以及优化代码的效果而异。 Arduino 是否允许混合 C 语言和汇编? 如果您可以在汇编语言中重写曼彻斯特解码并将其放入由 RX 引脚更改中断触发的 ISR 中、您可能会更幸运。 同样、您的磨坊可能会因接收器速度的提高而有所不同。
以上选项2)可能可行、但可能是更昂贵的解决方案。 我不确定您当前使用的 Arduino 软件包是什么、以便能够推荐更好的软件包。 您是否很难使用 Arduino 或是否愿意迁移到完全不同的平台。 同样、这可能是一种更昂贵的解决方案、我只会在所有其他选项都已用尽后才推荐它。
选项3)上面是我开始的位置。 上述 Hao 所链接的白皮书
是评估交流耦合电容器和隔离电感器组件值的出色资源。 查看您是否可以使用当前 Arduino 设置(不使用 TIDA-0527的内联(即56K? 或19.2K)来获得新的电容器和/或电感器值。 如果它们是实际值、则尝试交换您获得的评估板上的部件、看看系统现在是否以较低的波特率工作。 对于串联电容器和隔离电感器、这可能涉及更大的值。 我还没有通过数学运算来了解波特率较低的情况。
肖恩
你(们)好
我有一些疑问,例如:
您能帮助我了解 Tida00527和 Tida010035之间的区别吗? 如果它比 TIDA00527运行良好、我可以继续使用。
此外、TIDA010035具有固定的电容器和电感器值。
发送数据时是否真的需要曼彻斯特编码? 或者、它只能通过使总线忙于发送1kHz 波来处理硬件。
4. Sn65hvd96是否也适合同样的...?
我只需要在电源总线上传输 RS485信号、建议最好的信号并提供良好的支持
你(们)好
用于直流平衡信令。 我们能否通过汇流条生成1kHz 差分信号。 因为我实际上调节了电源总线的空闲状态。
当我的总线空闲时、如果我向总线发送频率发生器、那么使用曼彻斯特将帮助我持续繁忙地发送数据。
我对 SN65HVd96 IC 没有任何意见... ?
这所有 TIDA 00527 TIDA 010035 都是相同的应用、具体取决于您选择 LC 组合的应用。
您好!
您可以 参阅有关直流平衡的这篇文章。
www.quora.com/What-is-DC-balance-in-communication-systems
重点是、由于 交流耦合电容器、信号不会传输直流信号。 如果您具有长1、则接收到的信号的直流电可能会移出接收器区域。
SN65HVD96接收器不 能用作典型的 RS-485、无论 A/B 的差分电压是正还是负、它都会生成 H。
您的最后一点是正确的。
此致、
Hao