主题中讨论的其他器件: MSP430WARE
您好!
我遇到了 MSP430FR2311问题。 请查看下面的代码。 当我删除 RTC ISR pragma 时、从不调用 TimerB ISR (!)。
#include <msp430.h>
#define PIN_LCD_LED BITD // P2.5
int main(void)
{
WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer
PADIR=0xFFFF;
PM5CTL0 &= ~LOCKLPM5;
TB0CCTL0 = CCIE; // TBCCR0 interrupt enabled
TB0CCR0 = 4096; // Counter setpoint
TB0CTL = TBSSEL__SMCLK | MC__UP | ID__8; // SMCLK divided by 8, up mode
__bis_SR_register(LPM0_bits + GIE);
}
#pragma vector=RTC_VECTOR // PROBLEM: When I remove this line, timer B stops working
__interrupt void RTC_ISR(void)
{ }
#pragma vector = TIMER0_B0_VECTOR
__interrupt void ISR_Timer0_B0 (void)
{
PAOUT ^= PIN_LCD_LED;
}
什么地方出错了?
我已经尝试恢复使用最基本的 MSP430WARE 寄存器级示例(例如 https://dev.ti.com/tirex/explore/node?node=A__ABV6wTFA5RMv5eEOQmi4Ig__msp430ware__IOGqZri__LATEST)、但这同样不起作用。 是否 CPU 中的某个寄存器已损坏...?
此致、
尤斯图斯