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

MSP430F5438A在定时器B的计时中断后,会自动把TBIFG标志位清零吗?

如题:

TB0中断位CCIE中断计时。但是中断完成退出来后,TBIFG标志位没有变成0,还是1置位。但是程序单步执行下一步也不会进去该中断。

怎么回事呢?

Maka Luo:

进入中断服务函数后,标志位会自动清0,不需要手动清0.

zibo zhang:

回复 Maka Luo:

只开TB0计数中断50毫秒间隔,第一次进中断标志位还是0:如图

然后点击go,下次进中断时标志位是变成1,单是退出来中断后标志位还是1,如下图

定时器计数中断不是会自动清0标志位吗?为什么出了中断还是1置位?

zibo zhang:

回复 灰小子:

只能这么解释了。

还有一个,TB0间隔50ms中断扫描键盘,但是在键盘中有个100ms延时,延时后执行一函数初始化TA1产生PWM波,TA1中断计数P波个数。但是每次都会漏掉一开始几个P波,用的P波控制步进电机,导致第一次进TA1中断计数,电机就已经走了几十步了。  初始化P波的函数在TB0中断内初始化的,是初始化完后下一个时钟周期就会产生P波吗?

TB0中断优先级高于TA1的。

赞(0)
未经允许不得转载:TI中文支持网 » MSP430F5438A在定时器B的计时中断后,会自动把TBIFG标志位清零吗?
分享到: 更多 (0)