我用的IAR5.3,单片机是MSP430F5510,单片机操作过程
main()
{
……
while(1)
{
执行1;
……
LPM3;
}
}
#pragma vector=TIMER0_A1_VECTOR
__interrupt void TIMER1_A0_ISR(void)
{
……
LPM3_EXIT;
}
我让单片机全速运行(带MSP430FET),中间偶尔点一下IAR调试暂停按钮,VMAIFG就会置位导致程序出错,按我网上查询资料显示,大部分是由于栈溢出,查了我自己的程序,栈溢出可能性不大,因为我没有定义大数组的局部变量。这难道和仿真器一起调试的问题?如果我把程序下进去,跑起来好像还是比较正常?
liangliang lou:
回复 Jason Guo:
非常感谢 Jason Guo ,去掉LPM确实不会发生上诉问题,查看勘误表,我觉得还是您所说的bug EEM13 的现象,谢谢
liangliang lou:
回复 liangliang lou:
在请教 Jason Guo ,我把仿真器去掉,实际运行的时候,有时候也会出现PC跑飞的情况,就是LPM3无法退出来了,参照了勘误表,我现在用外部晶振,MCLK=SMCLK=12Mhz(XT2),ACLK=32K(XT1),中断函数里面只对全局变量置位和复位,没有涉及到子程序的调用,程序在跑的过程中有时候还是会出现PC跑飞???