在 release模式下生成的十六进制文件出现故障
使用STMCube IDE开发STM32L073,当我用release模式生成十六进制文件,用programmer刷写代码时,出现故障,而在release模式下直接从 IDE 刷写 MCU 时,即使在调试模式下生成的十六进制也能正常工作。这是什么原因呢在 Release 模式中,启用了优化可能会将未引用的中断处理函数、初始化代码等裁剪掉。 在 Release 模式下,手动确保所有中断函数都在 .isr_vector 中被引用(可以使用 __attribute__((used)) 或 KEEP() 指令在 .ld 文件中强保留)。
确保使用的是正确的中断名称和弱符号不会被优化掉。
页:
[1]