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.

[参考译文] TMS320F28379S:使用 ISO1050DUBR 收发器进行 CAN 通信时出现问题

Guru**** 2815985 points

Other Parts Discussed in Thread: TMS320F28379S, ISO1050, SN65HVD233

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1595012/tms320f28379s-issue-with-can-communication-using-iso1050dubr-transceiver

器件型号: TMS320F28379S
主题: ISO1050SN65HVD233 中讨论的其他器件

尊敬的 TI 支持团队:

我目前正在使用 TMS320F28379S MCU 。 在我的设置中、 GPIO31 作为 CAN 进行配置 Tx 引脚和 GPIO30 尽可能快 RX PIN、比特率为 250kbps

使用时遇到通信问题(发送和接收) ISO1050DUBR CAN 收发器。 但是、使用时、通信工作正常 SN65HVD233DR 收发器。

 我无法确定根本原因、因此我执行了以下测试:


测试 1:

消息流 SN65HVD233DR 实现串行通信

  • CAN 通信正常工作。

  • 这样可确认软件配置和 MCU CAN TX/RX 引脚正常工作。


测试 2:

消息流 ISO1050DUBR 一方 dsPIC33 (Microchip MCU)

  • CAN 通信正常工作。

  • 这样可确认 ISO1050DUBR 收发器电路正常工作。


测试 3:

消息流 TMS320F28379S 一方 ISO1050DUBR

  • CAN 通信不起作用。

  • 当检查示波器上的 CAN TX 引脚时、该引脚保持恒定的高电平状态。

测试 3 期间执行的迭代:

  1. 删除了 4.7k Ω 上拉电阻→TX 引脚仍始终为高电平。

  2. 删除 4.7k Ω 上拉电 阻并绕过 270 Ω 串联电阻→Ω TX 引脚仍始终为高电平。


即使 MCU 的 CAN TX 和 RX 引脚未连接到任何收发器 IC、我仍然无法在 MCU 的 CAN TX 引脚上看到任何脉冲。 可能的原因是什么? 但如果连接、则工作正常 SN65HVD233DR

我随附了上述传导测试的方框图和电路、以供您参考。
请在 issue.can simulation.pdf 上查看并提供建议 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    建议将 MCU 的接地端连接到 CAN 收发器的接地端。 这可确保 MCU 和 CAN 收发器之间交换的信号以同一接地基准为基准、这对于稳定和准确的通信至关重要。 让您在 F28x 板和之间共享 GND  ISO1050DUBR 板?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    是的、ISO1050DUBR(引脚 4)的接地端正确连接到 MCU 接地端。
    在收发器的隔离侧、我们根据建议的设计提供隔离接地。

    如果您需要硬件设置或测试结果等更多详细信息、请告诉我。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我相信您使用同一软件进行测试  SN65HVD233DR 和 ISO1050DUBR。 您在使用 ISO1050 时是否考虑过您的代码、以确保代码在 CAN 配置之前不会卡住某个位置?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    是的、SN65HVD233DR 和 ISO1050DUBR 使用相同的软件。

    我已经在使用 ISO1050DUBR 硬件进行测试时检查了软件行为。 ISR 函数和连续循环 (while (1)) 运行正确。 在此设置中、只有 CAN 通信无法正常工作。

    如果您需要任何其他信息以进行进一步调试、敬请告知。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    您是否咨询过收发器团队以了解两者之间的差异  SN65HVD233DR 和 ISO1050DUBR?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我尚未直接与收发器团队核实。 SN65HVD233DR 和 ISO1050DUBR 收发器均来自 TI、并且 MCU 也来自 TI、因此我最初比较了他们的数据表。 规格看起来非常相似、我没有发现任何会影响基本 CAN 通信的主要差异。

    此时、我不确定应该更加关注 MCU 侧还是收发器侧、以便对该问题进行故障排除。 从 MCU 软件的角度来看、我已经使用推挽和开漏配置测试了 CAN TX 引脚、但这两种配置都没有解决问题。

    如果问题可能与收发器硬件行为有关、请寻求您的支持、让收发器/硬件团队参与进来、以帮助找出根本原因。

    谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我比较了这两个 CAN 收发器、并认为同一个软件应该适用于两个收发器、而不进行任何更改。 是否可以在 MCU 侧和 ISO 电路板上分享 CAN 相关原理图?  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我已移除了不相关的电路、并仅分享了 CAN 通信所需的基本部分。

    我附上了两个原理图文件:

    1. CAN 非 ISO (BOARD_1、带  SN65HVD233DR  )—CAN 工作

    e2e.ti.com/.../CAN-NON_5F00_ISO.pdf

     

    2. CAN ISO—(带有  ISO1050DUBR)  -  无法正常工作

    e2e.ti.com/.../CAN-ISO.pdf

    请查看随附的原理图部分、如果需要任何其他信息、敬请告知。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢、我将查看原理图、稍后回来给您。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    根据原理图、您有两个 PCB 板:第一个带有 F28379x MCU + ISO1050 收发器的电路板和第二个带有 F28379x MCU + SN65HVD233 的电路板。 您还有其他电路板吗 dsPIC33 MCU + ISO1050 收发器? 您如何知道第一块电路板上的 MCU 以及 CAN 控制器工作正常?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    是的、我们有一个 3 PCB 测试设置。

    1.验证 PCB-1 CAN 控制器功能:
    我们移除了 PCB-1 上的 ISO1050 IC 并将 MCU CAN TX/RX 信号路由到 PCB-2(移除其 MCU)。 这确认了 PCB-1 上的 CAN 控制器工作正常。

    2.要验证 PCB-1 ISO1050 电路:
    我们移除了 PCB-1 上的 MCU、并将 CAN TX/RX 信号从 PCB-3(移除了其 ISO1050)连接到 PCB-1 的 ISO1050 电路。 这已验证 ISO1050 部分也可正常运行。

    我们随附了一个方框图、其中显示了所有 PCB、测试配置和结果。 请仔细查看。
    e2e.ti.com/.../CAN-test-iterations.pdf

    所有其他产品功能均按预期工作。 由于我们即将发布量产版本、因此我们请求您的支持、以便尽早解决此问题。

    谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    另一个思路是、F28379x 器件具有内部 10MHz OSC、其频率偏差高达 3%。  频率偏差因器件而异。 3%的频率偏差对于 CAN 通信来说太高 (<1.58%)。  

    仔细检查、是使用内部 OSC 还是外部晶体?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我使用的是外部振荡器器件型号 520-CSM1600-20DN-X 。 其老化规格为 ±5 ppm/年 并提供 16MHz 输出。 由于这是一个新晶体、因此频率误差应非常小。 然后、16MHz 外部时钟通过 PLL 馈送以生成 200MHz 。 我已经分享了原理图,其中包含晶体电路 — 请查看它。

    如前所述、由于这种 CAN 通信问题、我们的产品目前暂停量产。 您能否与您的技术团队讨论此问题、并尽早提供解决方案?

    谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢。 我 邀请了 CAN 收发器专家 Andrew 来为我们提供帮助。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我找到了另一个可能有用的更新。 我使用另一个具有 ISO1050 电路的 PCB 进行了测试、现在我能够在 MCU CAN TX 引脚上看到脉冲。
    我附上了正常工作的 SN65HVD233 板和 ISO1050 板的脉冲波形以供您参考。

    e2e.ti.com/.../Pulse-signals.pdf

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    TX 和 RX 脉冲看起来不正确。 我刚刚给 ISO1050 收发器专家 Andrew 发送了一封电子邮件、希望他今天能为我们提供一些建议。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我希望您做得好。 请问是否有任何关于这个问题的更新?

    由于我们的产品生产和测试阶段已完成、CAN 通信除外、因此我们目前处于关键阶段。

    如果您能在方便时尽早分享解决方案或更新、我们将不胜感激。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我将请 Jackiw 补充他的意见。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:

    看起来主要问题是 TXD“始终在示波器上出现高电平“。  TXD 是 ISO1050 上的输入、不控制该引脚。 因此、该问题只能通过 MCU 的逻辑解决。

     SN65HVD233 具有 ISO1050 没有的其他特性(例如环回,待机和斜率控制)。 如果 MCU 需要这些特性来切换 TXD、那么这可能是问题所在。

    此致、
    Andrew

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    您提到过 ISO1050 没有环回、待机和斜率控制等功能

    使用 ISO1050 收发器时、您能告诉我们需要在 CAN 初始化中进行哪些更改吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Andrew、

    是否对此进行了任何更新?
    如果我需要专注于软件方面、您能告诉我需要对软件进行哪些更改吗?

    谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    您能否将此问题发布到隔离论坛、以便从 ISO1050 专家那里获得快速响应?

    (+) 隔离论坛 — 隔离- TI E2E 支持论坛