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.

[参考译文] TMS570LS1114:如何验证我的引导加载程序功能和 CAN 功能?

Guru**** 2398695 points
Other Parts Discussed in Thread: HALCOGEN

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/654861/tms570ls1114-how-to-verify-my-bootloader-function-and-can-function

器件型号:TMS570LS1114
主题中讨论的其他器件:HALCOGEN

尊敬的专家:

        现在,我已经阅读了数据表“适用于 TMS570LS12x MCU 的 CAN 总线引导加载程序”。 我已转换 QJ Wang 提供的代码(SafetyMCU 引导加载程序)。 有几个问题分发给我。

        我通过 JTAG 加载 CAN 引导加载程序代码、因此 我必须通过 CAN 加载用户应用程序代码。 我的引导加载程序工程是否与应用程序工程相关? 实际上、QJ Wang 示例基于 CCS V5、我的软件是 CCS V6。我是否可以将代码转移到 CCS V6?

        通过 JTAG 加载 CAN 引导加载程序代码后,是否意味着我没有操作 CCS 仿真以验证闪存 API 函数的权限?如何验证引导加载程序函数? 加载 CAN 引导加载程序代码后、我在 CCS IDE 中运行代码、但我的程序 ofen 停止。它已经向我分发了很长时间。

        3.CANInit()、CANMessageSetTx()、ANssageGetRx();我是否可以使用 HalCoGen 生成代码 CAN.c 来替换 CANInit()?

        4.我的应用程序代码和 CAL_ROM (校准信息)必须生成两个由 CAN 划分为闪存的文件(二进制或十六进制)?

此致

秋奇

 

     

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

    1.您可以使用 CAN 引导加载程序将任何类型的文件上载到闪存。 您可以使用 CCS6或 CCS7打开示例项目、并使用最新的编译器编译该项目。

    在 BL_FLASH.c 中的以下语句中添加断点、以检查闪存是否被擦除(0xFFFF)或数据是否被编程:
    STATUS = Flash_Erase_Check (((uint32_t) ulAddr、size);-->第60行
    2. SizeInBytes --=字节; -->第100行
    实际上、您不必使用引导加载程序来验证闪存 API。 您可以在 main()函数中调用 bl_flash.c 中的闪存擦除和程序函数。 由于 LS1114器件只有一个程序闪存组、因此您需要将闪存 API 相关的代码复制到 SRAM 中并执行 SRAM 中的代码。

    3.是的、可以使用通过 HALCoGen 生成的驱动程序。

    4.是的、您可以为 CAL_ROM 数据使用单独的文件、也可以将 CAL_ROM 嵌入到应用程序代码中的数据数组中。 CAL_ROM 是一个固定值、还是会随时通过应用程序代码更新数据? 我建议您将 CAL_ROM 编程为 FEE (组7)。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 QJ Wang:

    引导加载程序用于加载引导加载程序代码、CAL_ROM 用于恢复校准信息(由于 FEE 用于执行其函数)。

            例如、int parameter=5、我将参数地址保存在 CAL_ROM 中。 我是否应该加载代码来替换 g_pulDataBuffer[buffer_size]。

    PacketWrite (canBASE-t *节点、uint32_t ulId、const uint8_t * pucData、uint32_t ulSize)

    用于加载数据?

    我期待你的答复

    秋奇