TI中文支持网
TI专业的中文技术问题搜集分享网站

28335中断

28335的中断服务函数地址,在初始化完成之后,还是否可以修改?如

初始化时

EALLOW;
PieVectTable.EPWM1_INT = &Calc_isr;
EDIS;

运行一段时间之后,修改为

EALLOW;
PieVectTable.EPWM1_INT = &Pwm_isr;
EDIS;

如果可以,这样写的缺点是什么,谢谢!

HG:

为了能够对这些特殊寄存器进行初始化,所以在对上述特殊寄存器进行改写之前,一定要执行汇编指令asm(“EALLOW”)或者宏定义EALLOW来设置状态寄存器可写,在设置完寄存器之后,一定要注意执行汇编指令asm(“EDIS”)或者宏定义EDIS来清除状态寄存器的可写态。

所以这个这样的操作在编写时当然是可行的。但是实际上,一旦你要重新配置,那么应该保证设备处于一种初始态“如刚上电的状态”,确保中断不被执行。

28335的中断服务函数地址,在初始化完成之后,还是否可以修改?如

初始化时

EALLOW;
PieVectTable.EPWM1_INT = &Calc_isr;
EDIS;

运行一段时间之后,修改为

EALLOW;
PieVectTable.EPWM1_INT = &Pwm_isr;
EDIS;

如果可以,这样写的缺点是什么,谢谢!

rookiecalf:

可以的,一般初始化时采集采样通道偏差值就是这么处理的。最后一次执行初始化中断中修改就可以了。

赞(0)
未经允许不得转载:TI中文支持网 » 28335中断
分享到: 更多 (0)