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.

[参考译文] TMS320F280025C-Q1:在自定义引导加载程序和放大器之后进行清理;在跳转到应用程序之前进行清理

Guru**** 2445440 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1011049/tms320f280025c-q1-cleaning-after-custom-bootloader-before-jumping-to-application

器件型号:TMS320F280025C-Q1
主题中讨论的其他器件:C2000WARE

您好、支持团队、

我在闪存扇区0-2有一个定制的引导加载程序软件。

执行一些任务后、我想跳转至闪存扇区3-7 (相同 BANK0)的应用软件而不进行复位

我是否应该简单地跳转到应用软件的代码开头

asm("    LB 0x83000");

如 C2000Ware_3_04_00_00\driverlib\f28004x\examples\flashapi_ex5_lfu_no_reset.c 中的示例:

...
// Turn off LED 1
CPUTimer_disableInterrupt(CPUTIMER0_BASE);
GPIO_writePin(DEVICE_GPIO_PIN_LED1, 1);

asm("    NOP");
asm("    NOP");
asm("    NOP");
asm("    NOP");

// Jump to Bank 1 Image
asm("    LB 0x9EFF0");

还是在跳转之前、我还应该清除引导加载程序软件的已用 RAM、复位中断表、设置堆栈指针还是执行一些其他清理任务?

 示例中的跳转之前的4 asm (" NOP")命令有什么作用?

此致、

问题

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

    无需清洁、您可以跳转、

    nops 只是为了确保在跳转到新应用程序之前执行当前应用程序中的所有指令。