S32DS踩坑日记五-bootloader跳转APP时触发DefaultISR

S32DS踩坑日记五-bootloader跳转APP时触发DefaultISR

bootloader和APP由另一位同事开发过程中,被导师叫回去写论文了。

由于项目不急,接手后未作任何改动,后面硬件工程师手工焊了几块电路版,需要刷上程序测试电路板。然后就遇到了奇怪的问题。

刷了四块电路板,只有一块的APP可以启动, 另外三块只有bootloader可以启动。

开始认为是电路板的问题,但是bootloader能正常运行又说不通。

后面又刷了几块板子,现象也是bootloader能启动,APP运行不起来。

MCU是S32K144w。

开发工具是S32DS,调试工具为J-Link。在APP main第一行增加了断点,显示没有运行到断点,就进入到DefaultISR了。

然后将APP的编译优化都去掉了,还是相同的现象。

之后在startup_S32K144.S的reset函数中增加了如下的断点:

在反汇编代码中跟踪进入main中后,发现其实已经进入CLOCK_SYS_Init函数里面了,这个函数的运行过程中触发了defaultisr。想到了网上说的时钟要反初始化一下。决定尝试一下。

但是发现没有CLOCK的反初始化函数:

就只能把外设中有的逐一调用了一下:

然后就发现APP能正常运行了。不知道什么原因。明天再用更多的板子测试一下。

相关推荐
嘿嘿嘿x314 小时前
什么是输入寄存器 什么是输出寄存器 什么是写输入寄存器 什么是读保持寄存器
单片机
hazy1k14 小时前
K230基础-获取触摸坐标
图像处理·stm32·单片机·嵌入式硬件·k230
酷飞飞16 小时前
掌握DMA基于GD32F407VE的天空星的配置
stm32·单片机·嵌入式硬件·arm
清风66666617 小时前
基于单片机的Boost升压斩波电源电路
单片机·嵌入式硬件·毕业设计·课程设计
qiuiuiu41317 小时前
正点原子RK3568学习日记-GIT
linux·c语言·开发语言·单片机
搞一搞汽车电子1 天前
单片机的堆\栈\Flash\Ram区别和联系
单片机·嵌入式硬件
李永奉1 天前
STM32-认识STM32
stm32·单片机·嵌入式硬件
La Pulga1 天前
【STM32】I2C通信—软件模拟
c语言·stm32·单片机·嵌入式硬件·mcu
CiLerLinux1 天前
第五十二章 ESP32S3 UDP 实验
网络·单片机·嵌入式硬件·网络协议·udp
CFZPL1 天前
stm32延时函数
单片机·嵌入式硬件