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.

[FAQ] [参考译文] [常见问题解答] SK-AM62X/SK-AM62A-LP:使用外部收发器测试 MCAN 外部环回示例 TCAN1042D

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1329465/faq-sk-am62x-sk-am62a-lp-testing-mcan-external-loopback-example-using-external-transceiver-tcan1042d

器件型号:SK-AM62A-LP
主题中讨论的其他器件:SysConfig

如何使用外部收发器在 AM62x/AM62A 上测试 MCAN 外部环回示例?

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

    AM62 SKs 支持 CAN-FD、但不携带 CAN-FD 收发器进行实验。 因此、为了测试 CAN 的全部功能、我们需要连接一个外部收发器。 MCU+ SDK 包含内部环回示例、在本指南中、我们将对其进行修改、以使其兼容、从而在外部设置上运行 MCAN。

    如果您想在 Linux 上测试 MCAN、请参阅此处: https://software-dl.ti.com/processor-sdk-linux/esd/AM62AX/09_01_00/exports/docs/linux/How_to_Guides/Target/How_to_test_MCAN_on_AM62x.html#mcan-overview



    硬件设置:

    为建立 MCAN 外部环回通信、测试的硬件设置包括连接到 TCAN 的 AM62A、TCAN 连接到 PCAN 模块、数据可在 PCAN View 软件中查看。

    AM62x/AM62A EVM 到 TCAN 的连接:

    MCU_MCAN0_TX --> TCAN 上的 TXD JMP 2

    MCU_MCAN0_RX --> TCAN 上的 RXD JMP 2

    VCC (5V)--> TCAN 上的 VCC JMP2

    GND --> TCAN 上 JMP2的 GND


    TCAN 到 PCAN 连接:

    TCAN JMP7上的 CANL --> PCAN 上的 CANL

    CAN 在 TCAN JMP7上--> CANH 在 PCAN 上

    TCAN JMP7上的 GND --> PCAN 上的 GND

    注:

    TCAN1042D EVM 需要5V 电源(最小 4.5V)才能正常运行。 因此、对于该实验、可使用以下步骤从 Linux 终端启用用户扩展板上的5V 引脚电源引脚:

    //To find out the GPIO chipset name
    # gpiodetect
    .
    .
    gpiochip3 [1-0022] (24 lines)
    
    //gpiochip3 has ID [1-0022] in which ‘1’ means I2C1 and ‘0022’ is I2C address
    //gpiochip3 is the GPIO chipset of the IO Expander.
    # gpioinfo gpiochip3
    gpiochip3 - 24 lines:
        ...
        line   5: "EXP_PS_3V3_En" unused input active-high
        line   6: "EXP_PS_5V0_En" unused input active-high
        ...
        
    //EXP_PS_5V0_EN is line 6. To turn on the 5V pins, run the following command:
    # gpioset gpiochip3 6=1
    







    软件设置:

    • 需要更改内部环回示例、以将其作为外部环回示例运行
      这个函数 App_mcanConfig()以内部或外部回送方法操作示例,基于传递给它的参数。
      APP_mcanConfig (true)->内部环回
      APP_mcanConfig (false)->外部环回

    • PCAN 软件设置
      https://www.peak-system.com/PCAN-View.242.0.html?&L=1下载并安装 PCAN-View
      点击菜单栏中的 CAN、并连接到 PCAN-USB。 将模式设置为 ISO CAN FD、将标称位速率中的采样点设置为85%、将数据位速率中的采样点设置为87.5%。 REST 为默认值。 当从 MCAN 实例接收到数据时、它将如下图在 PCAN 视图中所示可见。

    • SYSCFG 设置:
      为了进行测试、使用了 MCU_MCAN0实例、所有硬件和软件连接都基于该特定实例。 如果使用了任何其他实例、请确保通过 SysConfig 将其设置为 MCAN 实例。


    MCAN 位时序配置设置:

    可以使用以下公式计算比特率和采样点:

    位速率(每秒位数)=(以 Hz 为单位的 CAN 时钟)/ BRP/(1 + TSEG1 + TSEG2)

    采样点(%)=(1 + TSEG1)/(1 + TSEG1 + TSEG2)

    (注意:在 SysConfig 中选择的值/结构中设置的值直接编程到 MCAN 寄存器位字段中。 硬件在实际应用中对该值的解释要比编程值大1。)

    例如:

    用于 NOM 位速率的默认值为

    MCAN_BitTimingParams::nomRatePrescalar = 7 (BRP = 8)

    MCAN_BitTimingParams::nomTimeSeg1 = 12 (TSEG1 = 13)

    MCAN_BitTimingParams::nomTimeSeg2 = 5 (TSEG2 = 6)

    位速率= 80MHz / 8 /(1 + 13 + 6)= 0.5Mbp s

     

    运行示例:

    • 完成硬件和软件设置、并借助软件更改来重新构建内部环回示例。
      (examples\drivers\mcan\mcan_loopback_interrupt\am62ax-sk\mcu-r5fss0-0_freeRTOS)
    • 连接 PCAN 模块、计算采样点和数据比特率、并在 PCAN 视图中正确设置。
    • 运行该示例、TX 数据将显示在 PCAN View Receive 选项卡中。
    • 成功接收数据后、必须从 PCAN-View 传输十次数据以进行测试到结束。
    • 采样输出:
      [MCAN] External read - write test, application started ...
      After transmitting messages it will wait to recieve ten messages for test to pass ...
      All tests have passed!!
      


    创建设置时需要牢记的事项:

    1) CAN 总线 应具有正确的端接(120 Ω)。

    2) 2)需要 在主机端正确计算和设置包括采样点在内的 CAN 参数、匹配电路板的配置(请参阅 syscfg)

    3) 3) 可以正确配置 SoC 引脚/焊盘。

    4) 4) CAN 模块已正确加电和配置。