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能正常运行了。不知道什么原因。明天再用更多的板子测试一下。

相关推荐
LNN202211 分钟前
STM32H7 + 迪文屏 DGUS 开发实战:从零构建工业级时间设置界面
stm32·单片机·嵌入式硬件
Z文的博客3 小时前
嵌入式MCU与迪文屏通信:DMA+环形FIFO+变长队列+状态机完整手册
stm32·单片机·串口·dma·中断·串口dma·嵌入式单片机
12.=0.4 小时前
【stm32_5】Systick嘀嗒定时器、解析时钟源、分析时钟树、应用Systick设计延时
c语言·stm32·单片机·嵌入式硬件
森利威尔电子-6 小时前
森利威尔SL6129兼容 AL8805 / AL8806,输入电压 5.5V - 30V,最大输出电流 1.2A
单片机·嵌入式硬件·集成电路·芯片·电源芯片
FreakStudio6 小时前
嘉立创开源:应该是全网MicroPython教程最多的开发板
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy
史蒂芬_丁7 小时前
TI F28P65 使用 ePWM 模块模拟 SPI 时钟的详细方法
单片机·嵌入式硬件·fpga开发
冷凝雨8 小时前
复旦微FM33 MCU 底层开发指南——UART
stm32·单片机·串口·uart·fm33lc0·复旦微电子
白掰虾8 小时前
STM32CubeMX2教程——STM32C5 UART
stm32·单片机·嵌入式硬件·mcu·usart·stm32cubemx2·stm32c542
清风6666669 小时前
基于单片机的无线遥控车库门控制
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
我不是程序猿儿9 小时前
【嵌入式】面向 STM32 的 ADC 与 DMA 学习路线
linux·stm32·单片机·嵌入式硬件·学习