关于TMS320F28035的二次Bootloader下载完成后,APP无法正常工作

确认过眼神丿 2018-05-07 03:08:21
我现在在使用TMS320F28035做二次Bootloader,APP已经写入FLASH里(Bootloader和APP属于不同的FLASH),已经验证过写入并没有问题。

跳转的方式是在APP里把MAIN的地址固定存储在0x3e8000,在需要跳转的时候读取0x3e8000里的内容,当做跳转的地址(测试过,能实现跳转)。

void main()

{

os_init();

os_run();

}

APP的MAIN函数格式

————————————————————————————————————————————————————————

现在问题来了,跳转到APP里程序会出现复位,又从头开始执行,或者程序的运行指针还在os_run中(里面是个死循环),但是APP得功能却不正常。

现在我认为可能出现的原因有两个:

1.跳转的方式不对。这次方式是我自己想出来的,也不知道是否很好,有没有缺陷。

2.内存分配有问题。我只对FLASH进行分配(Bootloader程序和APP程序存储的位置不重叠),其余的并未作出分配。

希望大家能给我解决困惑。
...全文
720 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

27,375

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧