47 stm32f0 IAP跳转APP后中断无法进入

STM32执行IAP升级后不能进中断 的中断是打开的,所以才会进入中断服务函数,从而导致内存非法访问,导致卡死。,现象一样(解释:其实不调用也会卡死,只是测试过程中只留意了。卡死,并且查看内存发现这里的变量的值有些奇怪,并且指针不在。就会出现上述现象,不调用则不会卡死,怀疑是中断没打开,在。所以,综合上述问题,最终有两种方法比较好,我选择的方法二。,理论上应该是没有关系的,但是还是把时基换成一致试试。前的部分代码,并且这段代码很短,执行结束。中,在开启任务调度器的时候,会执行。,在这个函数中会执行一个开中断,将。中断,并未关闭,导致在跳转到。 阅读详情

47.1 引言

本次问题叫做:stm32f0 IAP跳转APP后中断无法进入

之前弄了stm32f103的iap程序,因为stm32f103有中断向量起始地址控制器,直接修改VECT_TAB_OFFSET的值,然在APP里面NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x2400);,这样就行了,但是cortex-m0不行,因为没这个功能,所以导致需要较为特殊的处理。然后我根据网上的资料,仿照stm32f030单片机的的机制去做了另外一款同样是cortex-m0的IAP,但是问题出现了,在原来stm32f030单片机可以正常运行的APP,在新的cortex-m0单片机上不行,程序从IAP跳转到APP的时候,所有的中断函数都进不去,但在IAP的程序中,中断函数是没问题的,那肯定在是中断向量表拷贝这边出现的问题,然后找问题找了一个晚上,今天早上弄好了,特此记录一下。

 

47.2 实验

本实验使用的是cortex-m0处理器,编写了IAP以及APP应用程序,IAP跳转到APP是正常的,APP的程序也在正常运行,除了中断外!!!!!为此,开始了找bug之旅,以下是常见的cortex-m0在APP中进行拷贝中断向量表的操作!

#define APPLICATION_ADDRESS (uint32_t)0x8002400
#if   (defined ( __CC_ARM ))
  __IO uint32_t VectorTable[48] __attribute__((at(0x20000000)));
#endif

	/* Enable the SYSCFG peripheral clock*/
	RCC_APB2PeriphResetCmd(RCC_APB2Periph_SYSCFG, ENABLE); 

	// copy vector table from flash to ram
	for (uint8_t i = 0; i < 48; i++) 
    {
     
IAP 时APP的偏移设置方法(APP是RT-thread,通过BOOTLOADER跳转到APP不运行的解决方法) 问题: APP是基于RT-thread编写的,通过BOOTLOADER跳转到APP不能成功运行。 解决方法: 1.首先确定偏移的大小,然后设置对应的偏移量 2.然后设置Linker(这个地方要特别注意) 3.1.如果需要使用外部sct文件,那么需要修改test.sct 3.2如果不使用外部SCT文件,那么勾选use memory layout from target dialog 4.修改成功后,编译工程,查看MAP文件,如果变成偏移后的地址,那么修改成功了 5.这些地方修改完成后,还要修改中断向量的映射地 阅读详情

相关推荐

M0架构IAP

1 前言 在使用F0的片子在增加IAP后,我们经常发现,原来的APP必须增加一段代码,将中断向量表从内部FLASH拷贝到SRAM后再执行REMAP到SRAM,这样操作后APP才能正常运行,这一过程一直困扰着蝶粉们,为什么需要这样呢?本文将针对这一问题为大家解惑。 2 问题详细描述 比如F0的下面这部分代码: #define APPLICATION_ADDRESS ...

uunubt的专栏 2572

Circos在Windows下的安装教程

这里写自定义目录标题Circos简介安装Perl 的安装Circos安装安装及解压安装Modules测试用例官方文档 Circos简介 (来源官网:http://circos.ca/software/readme/ O.INTRODUCTION部分) Circos is a program for the generation of publication-quality, circularly composited renditions of genomic data and related annot

qq_42318911的博客 1661

XCAT集群管理实战:从裸机到节点批量部署

在数据中心与HPC集群运维中,裸机配置与操作系统批量部署是关键环节。PXE引导、IPMI带外管理等基础技术为自动化装机提供了底层支持,而集群管理工具则将这些能力整合为可扩展的运维体系。XCAT作为一款开源集群管理工具,通过数据库驱动的方式统一管理DHCP、TFTP、HTTP等服务,实现从裸机发现、系统安装到电源控制的全流程自动化。本文从XCAT的核心设计出发,详细介绍了环境准备、安装配置、节点定义、镜像分发及常见问题排查,帮助运维人员快速构建高效的集群部署流程,降低规模化管理的复杂度。

weixin_30899023的博客 241

飞控芯片的隐形战场:传感器冗余与实时OS的可靠性革命

本文深入探讨飞控芯片在工业级无人机中的可靠性设计,聚焦传感器冗余架构与实时操作系统(RTOS)的容错机制。通过多IMU备份、自适应加权融合算法及NuttX、ChibiOS等RTOS的故障隔离技术,确保系统在极端环境下毫秒级自愈。文章还涵盖开源生态如PX4的跨平台移植及RISC-V架构的应用,为高可靠性飞控系统提供关键技术参考。

z5a6b的博客 877

5. SAP UI5 视图控制器(Controller)初探

本教程的前一个步骤也就是第四个步骤,我们了解了 SAP UI5 XML 视图的使用方法。在该步骤里,我们在 XML 视图里声明了一个 Text 控件实例,该控件位于 sap.m 这个命名空间内。 本步骤会继续接触 SAP UI5 MVC 框架中三大基石的另一块:C - Controller,即控制器。 先看看本步骤完成之后,我们得到的 SAP UI5 应用能实现一个什么样的效果。 访问如下 url: http://localhost:8080/webapp/index.html 能看到一个 Say Hell

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 4598

手把手教你学simulink(31.17)--双向DCDC电源场景示例:基于simulink 的双向DCDC应用:车载充电器的pi控制

通过引入PI控制器,系统可以更精确地控制电压和电流,确保充电和放电过程的稳定性和高效性。

MHD0815的博客 205

n8n智能体开发:Microsoft Outlook 节点

使用 Microsoft Outlook 节点可以自动化 Microsoft Outlook 工作流程,并将其与其他应用程序集成。n8n 内置支持多种 Microsoft Outlook 功能,包括创建、更新、删除和获取文件夹、邮件及草稿等操作。

王国平的博客 570

数据预处理

数据预处理 数据预处理(数据清洗)是数据挖掘过程中的重要一步,它主要包括数据清洗,数据集成,数据变换和数据规约。 在我们进行数据挖掘的过程中,大量的原始数据中存在着大量有问题的数据(脏数据)比如有缺失值的,不一致的,有异常的,大量重复的数据等。这些脏数据会严重影响到数据挖掘建模过程的执行效率,也可能会使挖掘结果产生偏差。通过数据预处理(数据清洗)可以提高数据的质量,更好的适应特定的挖掘技术及工具。...

CJW的博客 9929

专转本-信息通信技术-笔记

专转本-信息通信技术-笔记

大今野 1365

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

上一篇: 46 合泰BS8116A-3触摸按键踩过的坑
下一篇: 48 STM32普通IO模拟usart串口
Chasing_Chasing
博客等级 码龄10年 233粉丝 87原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值