OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5298|回复: 4

coretx-m0 内核添加IAP远程升级程序,BootLoader可以跳转到APP,但APP中的部分中断不能响应,比如滴答定时中断可以响应,串口...

[复制链接]

13

主题

35

帖子

0

精华

高级会员

Rank: 4

积分
835
金钱
835
注册时间
2020-3-23
在线时间
142 小时
发表于 2021-4-26 17:19:12 | 显示全部楼层 |阅读模式
coretx-m0 内核添加IAP远程升级程序,BootLoader可以跳转到APP,但APP中的部分中断不能响应,比如滴答定时中断可以响应,串口、RTC中断不能响应,有遇到这样的问题的吗?
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

13

主题

644

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1960
金钱
1960
注册时间
2021-4-16
在线时间
500 小时
发表于 2021-4-27 10:15:45 | 显示全部楼层
不通过bootloader直接烧录你的bin文件试试效果。
回复 支持 反对

使用道具 举报

13

主题

35

帖子

0

精华

高级会员

Rank: 4

积分
835
金钱
835
注册时间
2020-3-23
在线时间
142 小时
 楼主| 发表于 2021-4-27 10:45:39 | 显示全部楼层
疾如风 发表于 2021-4-27 10:15
不通过bootloader直接烧录你的bin文件试试效果。

目前测试的就是通过烧写器下载的程序,还有一个比较奇怪的问题,app程序的大小也会影响跳转成功与否,例如25KB-27KB的程序不能跳转,大于28KB的程序可以跳转成功。
回复 支持 反对

使用道具 举报

0

主题

6

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
245
金钱
245
注册时间
2020-5-10
在线时间
63 小时
发表于 2021-5-29 10:33:14 | 显示全部楼层
  /* USER CODE BEGIN 1 */
        /*******************中断向量偏移处理***********************/
        //SEGGER_RTT_printf(0,"\r\nAPPMAINRUN");
        uint8_t i;
        uint32_t Data;
        uint32_t Address;
        __disable_irq();
        for(i=0;i<48;i++)
        {
                Data =  *(__IO uint32_t*)(0x08006000+i*4);//0x08006000  根据实际APP程序起始地址
                Address = 0x20000000 + (i*4);
                *(__IO uint32_t*)Address= (uint32_t)Data;
        }
        LL_APB1_GRP2_EnableClock(RCC_APB2ENR_SYSCFGEN);
        LL_SYSCFG_SetRemapMemory(LL_SYSCFG_REMAP_SRAM);//SRAM重映射
  __enable_irq();
  /* USER CODE END 1 */
回复 支持 反对

使用道具 举报

0

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
76
金钱
76
注册时间
2021-3-10
在线时间
16 小时
发表于 2022-8-10 08:13:11 | 显示全部楼层
跳转之前关闭之前程序使用的资源,比如定时器等
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-25 13:31

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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