实践笔记-VSCode与IDE同步问题解决指南;程序总是进入中断服务程序。

一、VSCode 修改文件后,IDE 未同步

如果你在 VSCode 中异步修改了项目文件内容,但 S32DS 或 Keil(等集成开发环境)中的项目没有同步更新,有两个解决方法:

  1. 检查文件是否已保存:

    确保 VSCode 中修改的文件已经保存。只有保存后的内容才会同步到其他环境。

  2. 重新编译项目:

    如果文件已保存但内容仍未同步,可以在集成开发环境中点击 Build 按钮(重新编译项目)。这会强制 IDE 重新读取所有文件,从而检测到被修改的内容。


二、中断服务程序中的中断标志位清除

在使用某个模块的中断服务程序时,必须在中断服务程序中清除对应的中断请求标志位。

C

复制代码
void WDOG_ISR(void)
{
  WDOG_ClearIntFlag(); // 清除中断标志位
  // 再执行其他程序...
}

清除中断请求标志位的函数可以在入口、出口或中间执行,但必须有这个函数。如果没有清除标志的函数,程序会表现为频繁进入中断服务程序。

如何排查?

在调试模式下,可以在中断服务程序中设置一个断点。当程序满足一次进入中断的条件并执行到断点后,全速运行程序。如果发现无论运行多少次,程序都会在中断服务程序的断点处停下,那么很有可能是没有清除对应的中断请求标志位。

尽管出现这种情况不一定是由于未清除中断标志位,但这是首先应该考虑的原因。

相关推荐
蓝天居士2 小时前
EtherCAT从入门到精通(10)
机器人·嵌入式·ethercat
Navigator_Z4 小时前
LeetCode //C - 1317. Convert Integer to the Sum of Two No-Zero Integers
c语言·算法·leetcode
D e re k ZH5 小时前
C++ 标准库算法全景指南
数据结构·c++·算法
不脱发的程序猿5 小时前
GD32串口数据收进内存之后DMA如何处理?
单片机·嵌入式硬件·dma·嵌入式·串口通信·gd32
冻柠檬飞冰走茶5 小时前
字母移动游戏题解:贪心求最长可保留连续子串(附 C 实现)
c语言·开发语言·数据结构·算法·动态规划
雪落漂泊6 小时前
C++算法 二分查找篇(上)
开发语言·c++·算法
LabVIEW开发8 小时前
LabVIEW 连接板:28 个端子怎么排,优先级怎么定
java·算法·labview
严肃小白兔9 小时前
MATLAB 数值计算中的精度与误差问题:浮点运算、误差传播与数值稳定性
人工智能·算法·matlab
Hhy_11079 小时前
《C++深度解构06》手撕 string —— 从底层内存管理到深浅拷贝彻底吃透
c语言·开发语言·c++·学习·visual studio