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.

TMS570LC4357: 该款芯片的bootloader是哪个文件?

Part Number: TMS570LC4357

你好:

    请问该芯片的bootloader在哪可以找到?是什么类型的文件结尾的?例如.S,.C这种

  •   请问该芯片的bootloader在哪可以找到?

    您是想做二次的boot吗? 我们有类似的文档,您可以看一下

    https://www.tij.co.jp/jp/lit/an/spna199/spna199.pdf 

    在此,bl_main.c 是 The main control loop of the bootloader

  • 我的是LC4357,跟LS31x系列应该有区别吧?我在LC4357的官网链接只看到了CAN bootloader,应该还有别的类似uart,spi那种bootloader吧?

  • 我在LC4357的官网链接只看到了CAN bootloader,应该还有别的类似uart,spi那种bootloader吧?

    LC4357也是可以参考LS的文档和工程的。

    您可以参考之前的讨论和说明

    https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/838842/tms570lc4357-uart-bootloader 

  • 那void _c_int00(void)这个函数就是bootloader吗?

  • 函数 _c_int00 是C/C++ 程序的启动例程(也称为 boot routine)。它执行 C/C++ 程序初始化自身所需的所有步骤。

    名称 _c_int00 意味着它是中断号 0、RESET 的中断处理程序,并且它设置了 C 环境。它的名称不必完全是 _c_int00,但默认情况下链接器将 _c_int00 设置为 C 程序的入口点。编译器的运行时支持库提供了 _c_int00 的默认实现。

    启动例程负责执行以下操作:

    1. 通过初始化 SP 设置堆栈
    2. 设置数据页指针 DP(对于有一个的架构)
    3. 设置配置寄存器
    4. 处理.cinit表以自动初始化全局变量(使用 --rom_model 选项时)
    5. 处理.pinit表以构造全局 C++ 对象。
    6. 使用适当的参数调用函数 main
    7. main 返回时调用 exit
  • 所以这个_c_int00  函数是在bootloader之后运行的对吧

  • 可以这样理解,您可以实际拿板子跑一下来更深刻地了解整个过程

  • 请问SafetyMCU_Bootloader 这个lib在哪链接下载的?

  • 谢谢,请问只有CCSv5版本才能编译bootloader吗?

  • 其他版本也可以,尽量保证Compiler的版本一致

  • 你这里说的compiler指的是?

  • CCS内编译器的版本

  • 请问,有关于如何在CCS内配置bootloader工程的介绍文档吗?我导入了bootloader_uart工程,如何编译出了问题

  • 应该是路径设置的问题,您需要根据您的路径修改下面的设置

    另外需要注意lib的路径,附上lib

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/312/6254.F021_5F00_API_5F00_CortexR4_5F00_BE.lib 

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/312/6012.F021_5F00_API_5F00_CortexR4_5F00_LE.lib 

  • 这个C:\Users\a0324020\workspace_v5_4这个路径是如何产生的?

  • 这个就是当时编写该工程的工程师电脑内的CCS workspace的路径,您需要根据您的路径进行修改

  • 意思就是我得把这个C盘路径,换成我自己的workpalce路径对吧?就是更换SW_ROOT,和CG_TOOL_ROOT的variable的值?

  • 是的,您的理解是正确的

  • 我这边电脑问题,没办法上传截图:

    1.我现在的ORIGINAL_PROJECT_ROOT设置的是D:\SafetyMCU_Bootloader\SafetyMCU_Bootloader\TMS570LS31x\boot_uart; 这个路径也就是SW_ROOT。这个路径就是SafetyMCU_Bootloader.zip里面的bootloader_uart;

    2.我现在遇到的编译问题是:

    找不到"../bl_link.cmd", line 23: error #10008-D: cannot find file "F021_API_CortexR4_BE.lib";

    error #10008-D: cannot find file "D:/SafetyMCU_Bootloader/SafetyMCU_Bootloader/lib/F021_API_CortexR4_BE.lib"

    error #10056: symbol "Fapi_setupEepromSectorEnable" redefined: first defined in
       "./Fapi_UserDefinedFunctions.obj"; redefined in
       "..\Release\Fapi_UserDefinedFunctions.obj"

    是不是我的F021_API的安装路径问题?我看了一下F021_API_CortexR4_BE.lib,这个lib在F021_API文件夹里面

  • 如我之前第2张图,您需要对lib添加对应的路径