工具/软件:Code Composer Studio
您好、 Zhhaohong Zhang、
在下面的主题中、您建议在 Booloader 跳转到应用程序之前重置软件系统。
https://e2e.ti.com/support/microcontrollers/hercules/f/312/p/225447/994487#994487
我已经在我的项目中进行了试走、它是有效的。
软件复位后,在 c_int00的开头, 在用户代码开始(5)中,我使用 “if (systemREG1->SYSESR&0x10)”跳转到应用程序。
但是、这在下电上电后不起作用、那么该怎么做呢?
在 S/W 系统复位之前,我已经尝试在扇区3 bank7 (0xF020_C000)的开头写入一个标志。
在我的 proj 中。 我使用扇区0~2作为 FEE、我只需使用闪存 API,而不是 FEE 驱动器来写入标志。
我想、如果我在下电上电后检查 SYSESR 的标志、那么我可以跳转到 APP。 代码列表:
void _c_int00 (void)
{
/*用户代码开始(5)*/
uint32 app_start_flag;
APP_START_FLAG=(*(uint32 *)(0xF020C000));
但有时它能正常工作,有时它会导致 错误,并在570HDK 中点亮红色 LED。
有一些问题、我需要您的帮助:
1、如何在电源循环后跳转到 APP?
2、如何从应用程序跳转到引导加载程序? 软件系统复位将导致无限循环。
3、导致 nerror 的原因是什么?这种读取 闪存地址与 Fapi 之间有何差异? 还是必须首先完成闪存初始化?
此致、
国东