使用环境
<!-- 必须 告知插件运行的环境,帮助开发者定位问题 -->
- 操作系统版本:win11
- 操作系统平台(x86/x64):x64
- VsCode 版本:1.109.5
- EIDE 插件版本:3.26.3
- C/C++ 插件版本:1.30.5
- 何种编译器(keil_c51/sdcc/armcc5/armgcc/...):RISCV_GCC
- 编译器版本(非编译问题可忽略):(xPack GNU RISC-V Embedded GCC, 32-bit) 8.2.0
描述问题
<!-- 使用简明清晰的语言描述您的问题 -->
(已仔细看过历史提问,但是没有起作用, @admin)
将自定义中断函数文件在 app/core 文件夹下编译后无报错但是首次中断触发后即死机,但是移动至 sdk/User 文件夹后编译运行就不会产生问题。
用 MounRiver Studio(MRS2)编译却没有此问题,但是 EIDE 用的 GCC 就是 MRS2 安装路径下的 GCC,按道理来说不应该出现问题。后来按照历史提问安装插件的 WCH 编译器和更改中断字段 attribute((interrupt("WCH-Interrupt-fast"))); 为 attribute((interrupt("machine"))); 也无效果。
一开始认为是 incList 先后顺序和 #include "irq.h"; 引入的位置问题,但是后来还是没找到规律。
屏幕截图
<!--使用一些截图能够更好地展现问题 -->
中断卡死时位置:

中断正常时位置:

期望现象
<!--您期望应该产生的,但实际上却没有发生的结果-->
无论在哪个项目位置中断都应该正常工作