主题中讨论的其他器件:TRF7970A、
您好!
我将 MSP430F2370与 TRF7970A 搭配使用。 我正在使用基于 sloa214的代码。
在 sloa214中、TimerA0用于 RFID 读取 API 以实现超时、但在修改后的代码中、我们将 TimerA0用于应用逻辑、并将 TimerB0用于 RFID API。
因此、当 Mifare 身份验证过程发生故障时、有时代码 会跳转至 ".text:_ISR:_TI_ISR_TRAP"、因此我编写了所有 INT 矢量处理程序以了解发生了哪个 INT、因此在调试后发现 timerB1 INT 矢量处理程序被调用、但代码在那里存根不会返回 来自处理程序。
那么、我的问题是、当 CCIE 设置为0并调用 INT 处理程序时、为什么 TimerB1、TimerB2 CCIFG 自动设置为1。
ISR 陷阱上的定时器 B SFR 状态和早期状态附加在屏幕截图中。
TBIV 值变为0x000E。
void McuCounterSet (void) { TBCTL |= TBCLR; TBCTL &=~TBCLR;//复位 timerA TBCTL |= TBSSEL0 + TBIE;// ACLK (@ 3KHz)、中断使能、定时器停止 TBR = 0x0000; TBCCTL0 |= CCIE;//比较中断使能 }