硬汉嵌入式论坛

 找回密码
 立即注册
查看: 833|回复: 1
收起左侧

[CMSIS-RTOS] CMSIS RTOSV1 RTX4 IAP APP用户程序无法正常运行

[复制链接]

1

主题

0

回帖

3

积分

新手上路

积分
3
发表于 2023-5-11 16:09:33 | 显示全部楼层 |阅读模式
本帖最后由 829xuming 于 2023-5-11 16:34 编辑

用GD32F303RCT6 芯片,boot采用裸机程序,app 用户程序采用rtx时 用户程序 无法正常运行,经仿真,断点无法进入main函数
用户程序起始地址为 ADD_ADDR=0x08002800


void driver_boot_jump_to_app(void)
{
        uint32_t boot_sp_init_val;
        uint32_t boot_jump_addr;        
        void (*p_boot_fun)(void);
        
        //关中断
        __disable_irq();
        
        boot_sp_init_val = *(uint32_t*)APP_ADDR;//SP地址
        boot_jump_addr = *(uint32_t*)(APP_ADDR + 4);//reset 地址
        
        if((boot_sp_init_val & 0x2FFE0000)==0x20000000)//检查栈顶地址是否合法
        {
               __set_MSP(boot_sp_init_val);
                p_boot_fun = (void (*)(void))boot_jump_addr;
                (*p_boot_fun)();
        }
}

经测试 app采用裸机时,boot跳转正常,app正常运行
网络上也有人碰到类似的,但没解决
STM32F429 IAP+App(RTX kernel) 无法跳转到APP的问题-CSDN社区
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106575
QQ
发表于 2023-5-11 20:48:21 | 显示全部楼层
RTX5有个例子,供参考。

分享个基于STM32H7的BOOT和APP代码都使用RTX5的案例,相互之间任意跳转
https://www.armbbs.cn/forum.php? ... 7247&fromuid=58
(出处: 硬汉嵌入式论坛)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-4-25 09:51 , Processed in 0.232651 second(s), 26 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表