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

MSP430F437: mcu 比较器中断失效

Part Number:MSP430F437

该mcu在批量时,有3%概率比较器中断不中进入,通过通讯让它初始化也是不能够恢复中断,只有复位才能恢复,我希望中断原因是什么,是在上电异常 还是运行过程中异常,是否是器件bug。

代码如下:

#pragma vector=TIMERA0_VECTOR__interrupt void TIMER0_A0(void)
{
isr_flag = 0x01;
P4OUT |= (BIT7 + BIT6);
P4DIR |= (BIT6+BIT7);
TACTL = 0;}

以下是main运行代码

void Pulse_send(void)
{
uchar i;
i = 0;
#ifndef flag_485
if(totalled_flux_flag == 1)
{
totalled_flux_flag = 0;
P4OUT &=~ BIT6;
i = 1;
}
#endif
if(totalled_heat_flag == 1)
{
totalled_heat_flag = 0;
P4OUT &=~ BIT7;
i = 1;
}
if(i == 1)
{
P4DIR |= (BIT7 + BIT6);
Init_timer_A3();
}
}

变量totalled_flux_flag /totalled_heat_flag 通过uart 让它置1,结果是没有IO拉高的结果。

Susan Yang:

faqu chen 说:有3%概率比较器中断不中进入

您是否有调试一下这些有问题的板子?看是在执行哪一句的代码会出现问题

是否每次都会出现不能进入中断?还是偶尔不能进入中断?

,

faqu chen:

如果重新启动就恢复正常,无法仿真,概率很低的故障。

,

Susan Yang:

faqu chen 说:无法仿真,概率很低的故障

无法仿真的话,很难定位问题的原因。就目前的信息来看,我暂时无法确认

芯片勘误表的话,您可以看一下

https://www.ti.com.cn/cn/lit/er/slaz208h/slaz208h.pdf 

若是可以的话,您能否将定时器程序单独做一个工程,我在开发板上验证一下

,

faqu chen:

我把工程处理下发上来,帮忙看下吧,heatmeter-testpulse.rar

,

faqu chen:

我发的工程有什么问题吗?

赞(0)
未经允许不得转载:TI中文支持网 » MSP430F437: mcu 比较器中断失效
分享到: 更多 (0)