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.

[参考译文] AM263P4:mcan_external_read_write 示例不会在 AM263Px-CC 上输出 CAN 消息

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1405530/am263p4-mcan_external_read_write-example-does-not-output-can-messages-on-am263px-cc

器件型号:AM263P4
主题中讨论的其他器件:TCA6424TMDSCNCD263PSysConfig

工具与软件:

我与 AM263Px-cc 合作开发了一个概念验证项目、目前我正在尝试让 mCAN 外设正常工作。

我已从 MCU+ SDK 为 AM263Px - 09.02.00.55加载 mcan_external_read_write 示例工程。  

我已经更新了 syscfg 以将 mCAN 外设设置为 CAN4、以利用控制卡上的 CAN 收发器。  项目构建成功、我能够按预期进入调试模式。

但是、我无法看到从3引脚 CAN 接头(J5)传输的任何 CAN 数据。  在单步执行代码时、我可以看到它调用命令传输的位置、但在 J5中看不到任何内容。

我还使用了示波器来监测 R172、R172是一个跳线电阻器、从 AM263Px 的 CAN4 Tx 引脚连接到 TCAN1043ADYYRQ1 CAN 收发器。 该线路保持高电平、并且在应该发生 CAN 传输时看不到任何变化。

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

    尊敬的 Nathan:

    MCAN4信号在路由到 TCAN1043A 收发器之前通过高速多路复用器。 默认情况下未选择 MCAN:

    FSI_MUX_SEL 网络必须下拉至低电平才能选择 MCAN4信号。

    此致、

    Brennan

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

    FSI_MUX_SEL 似乎由 通过 I2C 控制的 TCA6424ARGJR 驱动。 因此、我必须启动该部件并进行通信、才能使 CAN4和 CAN 收发器正常工作。 我在 AM263x 示例的代码中看到了类似这样的情况、但遗憾的是、AM263Px 不具备相同的示例代码。

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

    Nathan、

     mcu_plus_sdk_am263px_09_02_00_56\examples\drivers\mcan\mcan_external_read_write\中的 mcan_transcier.c 文件 am263px-cc \r5fss0-0_freertos 包含一个用于设置 TCA6424 IO 扩展器的函数。

    此致、

    Brennan

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

    我已经对该项目进行了调整、以验证以下内容:

    -使用引脚 G1和 J2选择 MCAN4

    -使用 C7和 B7选择 I2C2

    - mcan_transceator.c 文件出现在项目和它的函数被调用。

    - U33引脚1上的电压(前面提到的多路复用器)始终为低电平。

    -进入调试并点击"Resume"按钮后、U33引脚7 (AM263Px 和多路复用器之间的 MCAN4_TXD 连接)上的电压从低电平变为高电平。 在从低电平到高电平的初始变化后、不检测到其他上升沿或下降沿。

    这似乎仍然不会发送 CAN4上的 CAN 消息。

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

    Nathan、

    我重新创建了您的设置、并观察到类似的行为。 我将 MCAN 软件专家添加到此主题中、以提供帮助。

    此致、

    Brennan

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

    你好、Nathan、
    MCAN 端设置似乎按预期工作、这让我认为问题在于 PCAN 总线配置。 您能否确认从 PCAN 视图中看到的位时序参数是否如下所示:

    时钟= 80MHz

    标称比特率= 1000kbps

    标称比特率采样点= 85%

    数据比特率= 5000kbps

    数据比特率采样点= 87.5%

    此致、
    Aswathi

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

    Nathan、  

    可以移除 J21上的跳线并重试吗? TCAN1043A 需要在 WAKE 引脚上有一个高电平信号才能运行。

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

    移除 J21跳线不会导致 CAN4 TX 引脚 J2的行为发生任何变化。

    Aswathi、如何访问您正在展示的 PCAN 视图?

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

    Nathan、
    您的设置中使用的外部 CAN 总线是什么? 我假设这是 SDK 文档中提到的 PCAN-USB 工具。

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

    我使用 IXXAT USB 转 CAN V2作为我的 CAN 接口、并使用其关联的 canAnalyzer3 Mini 程序来监视任何 CAN 消息。 它的时钟速率配置为1MHz。 我将 CAN 高电平连接到 J5的引脚1、将 CAN 低电平连接到 J5的引脚3、并在我的 IXXAT USB 转 CAN 接口的输入端具有一个终端电阻器。 我已经验证此设置在其他 CAN 器件上可以正常工作。

    如前所述、在 U33的引脚7 (多路复用器的 CAN TX 输入)上从未看到 CAN 消息、在调试模式下点击"Resume"按钮时、电平会从低电平变为高电平。 这让我相信、这不是外部 CAN 接口的问题。 我能够在 IXXAT USB-TO-CAN 上生成 CAN 消息、并看到它们到达 U29 (CAN 收发器)的引脚12和13、但始终不会到达 U29 (CAN 收发器的 TX 引脚)的引脚1或从 U29 (CAN 收发器的 Rx 引脚)的引脚4发送

    这似乎是与 AM263Px MCAN 外设与 TMDSCNCD263P controlCard 上的外部元件连接相关的配置问题。

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

    尊敬的 Nathan:
    如果您对 SDK 工程进行了任何更改、您能否将其作为 zip 文件附加在此处?  

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

    e2e.ti.com/.../mcan_5F00_external_5F00_read_5F00_write_5F00_am263px_2D00_lp_5F00_r5fss0_2D00_0_5F00_nortos_5F00_ti_2D00_arm_2D00_clang.zip

    下面是我正在处理的当前项目。

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

    该项目适用于 am263px-LP 电路板、它不能在 CC 上运行、因为 这两个电路板的收发器文件是不同的。

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

    这个项目是从 Resource Explorer、适用于 AM263Px 的 MCU+ SDK - 09.02.00.55下载的、示例、开发工具、驱动程序、mCAN、 mcan_external_read_write、r5fss0-0_nortos。 我不希望该项目用于 LP 电路板、但这是唯一可用于 am263px 的项目。  

    请提供链接、文件或权变措施、使其能够在 TMDSCNCD263P 控制卡上正常工作。

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

    请从 TI.com 下载09.02 SDK: SDK-AM263PX 软件开发套件(MCU-PLUS-SDK)|德州仪器 TI.com
    您可以在同一页中找到文档链接。
    根据 doc 完成设置后、您可以直接为 am263px-cc 构建和运行 mcan_external_read_write 项目。
    如果可行、请告诉我。

    谢谢!
    Aswathi

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

    下载并使用最新的 SDK 似乎有效。 总结:

    在 Code Composer Studio 中使用 Resource Explorer 默认为版本09.02.00.55、该版本与 TMDSCNCD263P 控制卡不兼容。

    正确下载最新的 SDK 版本09.02.00.56。

    最后一点。 是否有电子表格或工具可帮助我为 CAN 设置正确的值以实现500K 和250K 波特率、而不使用 CAN FD?

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

    通过更改 SysConfig 中的内容、我能够在50万时收到一条消息发送出去。  但是,还有一件事,我一直在努力理解。  标称比特率与数据比特率之间有何关系? 我无法在文档中找到任何内容来阐明两者之间的区别以及两者之间是否存在任何关系。

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

    你好、Nathan、

    在 CAN-FD 模式下运行时、  每个 CAN 帧的仲裁阶段和数据阶段使用不同的数据速率。 在仲裁阶段、多个节点可能同时在总线上发送数据。 在此阶段、有多个因素限制了系统可实现的最大数据速率、因此该速率通常最大为500kbps 左右 在数据阶段、只有一个器件在总线上传输数据、因此可以使用更高的数据速率。 此数据阶段是使用速率高达12Mbps 的 CAN-FD 的地方。 有关更多信息、请参阅 Bosch CANFD 规范和以下文档: https://www.bosch-semiconductors.com/media/ip_modules/pdf_2/papers/icc14_2013_paper_hartwich_1.pdf

    标称比特率=仲裁阶段的比特率

    数据比特率=数据阶段的比特率

    此致、

    Zackary Fleenor