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.

[参考译文] SN65HVD230:可 CANable (CANdump) 上可见的帧、但 TX 仍报告 ACK 错误—示波器显示 ACK 陷波

Guru**** 2543380 points


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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1569425/sn65hvd230-frames-visible-on-canable-candump-but-tx-still-reports-ack-error-scope-shows-ack-notch

部件号:SN65HVD230


工具/软件:

TL;DR:

  • 双节点总线: STM32 (FDCAN1)  Left right arrowμ s  可 CANable (SocketCAN) AT 500kbit/s

  • CANdump CAN0 显示来自 STM32 的帧、但 STM32 持续标记 ACK 错误 和增量 TxErrorCnt

  • CANH/CANL(差分布线 CH1–CH2)上的示波器显示 A 优先 ACK ACK 插槽中的位(!)

  • 外部环回工作。

  • 看起来像我的 MCU 不会“看到“ACK 测量其 RX 输入端的电压、同时寻找收发器模式引脚、RX 引脚映射/AF 和时序。

硬件

  • MCU: STSpin32G4  

  • 收发器:  SN65HVD230DR

  • 其他节点: CANABLE /烛光   在 Linux 上作为 CAN0。

  • 接线:  STM32 TXD/RXD Left right arrow CAN 收发器 Left right arrow 双绞线至 CANable。

  • 端接: 每端的 120Ω(断电时,I 可以在 CANH–CANL 之间测量~60Ω;如果请求,将重新检查)。

  • 接地: 电路板之间的通用 GND。

如果有帮助,我已经分享了收发器引脚的原理图片段.

工作原理与失败之处

典型工作原理

  • 外部环回模式: 帧“成功“。

  • CANdump 看到帧 自 STM32 英寸 0:正常模式

  • 范围 CANH、CANL 显示了干净的显性位。 。 CH1–CH2 差分(粉色) 清楚地显示了 A ACK 时隙中的显性脉冲

失败

  • 指定 0:正常模式 、FCAN 报告 ACK 错误 在每一帧上; TxErrorCnt 爬坡(我之前命中错误警告/被动)。

 如果您有任何见解或“您错过了这件显而易见的事情“、我们将非常感激。 谢谢!

 


 

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

    尊敬的 Suyog:

    收发器的 RXD 引脚 4 似乎未正确映射到 STM32、即 FDCAN 中意外设置了错误的 AF/错误的引脚或静音模式、在这种情况下它可能不会进行 ACK(如果有任何 INIT 标志,请参阅)

    • 在适当的 VOH / VOL 电平范围内、您是否看到 R 输出切换? 请注意、原理图将其显示为输入(应为输出)。
      • 如果 RX 没有显示 ACK、而总线差分显示 ACK、则很可能是接线/收发器状态错误
      • 如果 RX 显示显性 ACK、则 FDCAN(时序/样本/配置)很可能存在问题。 仔细检查控制器的配置 — 使用标准设置/采样点、确保控制器未处于静音模式、确保 ACK 检查的正常模式、如果仅需要 500kbps 的传统 CAN、请确保禁用 FD 模式等
    • 另外、验证总线阻抗是否为 60 欧姆、谢谢。

    此致、

    Michael。

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

    您好、Michael、

    在适当的 VOH / VOL 电平范围内、您是否看到 R 输出切换?
    ->是的
    我已附加输出以供参考。 请让我知道这里似乎有什么问题。

    通道 1 - CAN H

    通道 2 - CAN L

    通道 3 - D

    通道 4 - R




    收发器的 RXD 引脚 4 似乎未正确映射到 STM32

    ->我检查了它,它是正确的

    确认总线阻抗为 60 欧姆

    ->是的、它~60 欧姆


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

    尊敬的 Suyog:

    感谢您的确认。

    您是否还可以确认问题与 MCU 引脚配置/FDCAN 外设设置无关? 绕过收发器、通过将 CANable 直接连接到 MCU RX 来查看它是否正常工作、以确认外设是否看到外部 RX 为显性状态。 如果问题仍然存在、这可能意味着控制器问题、建议联系相应的制造商/专家、同时仔细查看下面的几个问题、谢谢。

    • 在收发器切换的情况下、通过确保分配 AF 用于初始化的同一 FDCAN 实例、确认连接的外设能够检测到它。
    • 验证您是否可以在 TX + ACK 期间直接从外设读取 RX 样本。
      • 如果没有显性样本、请确认时序/采样点/实例不匹配。
    • 验证 GPIO 寄存器是否实际是 AF 输入而不是 GPIO 输出。
    • 验证 MCU 未驱动 RX 引脚/是否有任何可能出现推挽输出与收发器对抗从而导致您的症状。
    • 您也可以暂时禁用过滤器以允许任何 ID、即验证外设是否未忽略帧。

    此致、

    Michael。