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.

[参考译文] TMS320F280049C:280049引导加载程序

Guru**** 2578965 points
Other Parts Discussed in Thread: LAUNCHXL-F280049C

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1238090/tms320f280049c-280049-bootloader

器件型号:TMS320F280049C
主题中讨论的其他器件:LAUNCHXL-F280049C

您好、TI 专家、我正在调试开发板 LAUNCHXL-F280049C 和 CCS10.2上的280049C CAN 引导加载程序。 在我的引导加载程序软件项目中、我在唯一的一个项目中合并了引导加载程序段和主应用程序段。 从一开始一切似乎都可以。I send 从 PC SW 到280049C 的 CAN 启动命令。 主应用程序段接收 CAN START 命令并跳转到引导加载程序段。 然后、引导加载程序段可以从 PC 接收 CAN 引导数据并将 candata 刷写到闪存中。 完成将数据刷写到存储器中的过程后、引导加载程序段可以跳回主应用程序段。 作为证明,PC 软件可以接收来自280049C 的数据。 不断电。 但当我将开发板 LAUNCHXL-F280049C 断电并重新上电时,PC SW 将无法再接收来自280049C 的数据。 接下来、我将进行比较测试、下载 CCS 和 CAN 下载。 1) CCS 下载后、软件可以在断电后重新启动、然后再次加电。 2)接下来我做一个测试,重新启动后 CAN 下载板. 我将地址0xd00数据从随机初始数据更改为0xA5FF FFFF、电路板可以重新启动、PC SW 可以从280049C 接收 CAN 数据。 这意味着可以下载一些更改。当关闭电源并重新加电时,BootROM 将从0xD00获得不同的数据。 我是否清楚?您能给我一些建议来解决这个问题/非常感谢。

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

    尊敬的

    我将研究这一问题、并很快与您联系。

    此致、

    罗纳克

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

    无响应。 我希望这篇帖子不会很快就落下来了。

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

    尊敬的

    您能否确认、在您打开电源然后关闭器件电源时、一旦完成编程、您应该使用 CAN 引导或闪存引导?

    例如、一旦通过 CAN 将程序复制到闪存中、您是否希望器件等待 CAN 消息以发出新命令或使用闪存中的现有程序?

    根据您的描述、我认为当您重新启动器件时并不会直接切换到闪存引导、并且该器件之前已由 CAN 进行编程。

    谢谢。
    罗纳克

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

    您好、Ronak、感谢您的回复。我已经为 TI 28xDSP 工作了10年、这不是一个简单的问题。

    板 LAUNCHXL-F280049C 未断电。
    在引导加载程序段收到后,可以从 PC 引导数据并将 candata 闪存至闪存,引导加载程序段等待15秒,然后跳回主应用程序段。

    if (CpuTimer0Regs.tcr.bit.TIF)// 5ms 标志
    {
    CpuTimer0Regs.tcr.bit.TIF = 1;

    uiCanErrorCount ++;
    if (uiCanErrorCount >= 3000)//60s
    {

    Application_entry_Point ();//从引导段至 mainAPP 段。


    ……………

    电路板 LAUNCHXL-F280049C 断电并再次通电。

    我的程序从"RESET:origin = 0x3FFFC0、length = 0x000002"开始到 main app segment "Begin:origin = 0x080000、length = 0x000002"。

    根据您的描述、我觉得当您重新启动器件时并没有直接切换到闪存引导、并且器件之前已由 CAN 进行编程。
    ---------------- u 是正确的。当我关闭并打开电源时,我的程序将直接跳转到主应用程序段,而不会切换到引导段。
    当主应用程序段接收到 CAN 命令时,程序跳转到引导段。
    4.关键点是:
    如果我使用 CCS download .out 文件到280049,在关机并上电后,主程序可以正常启动(PC 监视器可以从280049接收数据)。
    如果我使用自己的电脑软件将.out 文件下载到280049,不关机,主程序可以正常启动(电脑显示器可以从280049接收数据)。
    如果我使用自己的电脑软件将.out 文件下载到280049、关机并上电后、主程序无法启动(电脑显示器无法从280049接收数据)。