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.

[参考译文] SW-DK-TM4C129X:CAN 总线 boot_loader 示例不工作

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/619031/sw-dk-tm4c129x-can-bus-boot_loader-example-not-working

器件型号:SW-DK-TM4C129X
Thread 中讨论的其他器件:EK-TM4C1294XL

我想知道是否有人成功地在 EK-TM4C1294XL Launch Pad 板上使用 CAN 总线 boot_loader 示例代码 。 解决了几个问题、并让 CAN 版本 boot_loader 示例在 EK-TM4C1294XL Launch Pad 板上运行、但无法通过 CAN 总线进行通信。

谢谢、

Chris  

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

    [引用 user="Chris Simpson88"]……让 CAN 版本 boot_loader 示例EK-TM4C1294XL Launch Pad 板上运行[/quot]

    我们是否可以注意到您的"报价"似乎与您的主题行有所不同?    进一步的详细情况可能会澄清-放松他人的努力-但目前这些陈述似乎是冲突的...

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    BOOT_LOADER 工程符合并运行、但我没有 CAN 通信。 这些是我为编译和运行项目而采取的步骤

    1.已将列出的定义添加到 bl_config.h 文件中。
    #define CAN_RX_PIN_PCTL 7.
    #define CAN_TX_PIN_PCTL 7.

    2.在 bl_timing.h 中添加了时序定义、以便25MHz 晶振能够实现正确的 CAN 时序。 这些值取自 tm4c129x 数据表"高波特率下的位时序示例"。 我不确定这里的值是否正确。
    #if crystal_FREQ = 25000000
    #if CAN_bit_rate = 1000000
    #define CAN_bit_timing CAN_BIT_REG (2、0、0、4)

    执行这些步骤后、BOOT_LOADER 正在运行、但我无法接收或传输 CAN 数据。 当我向 tm4c129x 板发送 ID 为0x1f020000和 ping 数据为0x20的 CAN 消息时、我看到该消息被保留在 CAN 总线上和 tm4c129x 的 CAN0RX PA0引脚上。 如果我使用调试器在* pui32Size = CANMessageGetRx (pui8Data、&ui32MsgID)行上中断;在 file_bl_can.c 中的函数 PacketRead 中、我永远不会得到中断。 如果我暂停调试器、我可以看到代码在 while (CANRegRead (CAN0_BASE + CAN_O_NWDA1)=0)处循环

    此时、我想 CAN0控制器仍然配置不正确、但我不确定接下来该怎么办?

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

    在这方面、"可 b/l 级"是我无法提供帮助的-但我们强烈怀疑、更多合格的其他人将从您提供的(必要)和添加的详细信息中受益。

    祝你一切顺利-祝你好运...

    刚刚被警告-"引导加载程序的入侵"不会使您的任务更加复杂?   您是否可以通过尝试"正常"(非 b/l)与您的 MCU 进行通信来"找出"更多实验答案。   (以及您拥有/使用的任何远程设备?)  b/l 执行"规则/限制"的情况并不少见-通常不会发生。   (这些)可能会导致、产生和/或放大您的问题...

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

    你好  

    我想为遇到此问题的任何其他人更新此帖子的进度。 我切换到 TivaWare 库函数调用来为我的引导加载程序工程设置和初始化 CAN 总线、现在我的引导加载程序可以与 CAN 总线 IO 正常工作。

    谢谢、

    Chris  

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

    [引用 user="Chris Simpson88"]我切换到 TivaWare 库函数调用以设置和初始化 CAN 总线[/quot]

    您上面的帖子是否没有这样的建议?   通过适当的设置/配置启用 CAN 总线-通常-证明是有用的、甚至是必要的。

    很高兴您成功-第二次验证-不会受伤...