最近遇到两个比较奇葩的问题:
1、dsp中配置每3个EPWM周期触发一次AD采样,采样完了进入AD中断。另外还定义了一个SystemState变量用于表示系统运行状态。dsp运行过程中并没有修改ePWM配置。
每当系统进入故障状态,SystemState=FaultState,每产生两次AD中断就会多进一次,不知道这是为什么?
2、程序中定义了一个_iq20的数用于存放电流,存放在CLATOCPURAM中,进行过流保护检测时,会产生保护动作。
实际运行时查看电流数据(未加功率电)为一个很小的负数(-0.2A),取绝对值后与电流保护值(21A)比较,却会产生保护动作。程序中其他地方并没有过流保护代码。(实际上,这段代码之前是能运行的,是有一次调整了下CLA中的算法之后,才出现的)
请问下这两种情况一般该怎么办?是程序书写不规范的问题吗?