请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:MSP430F5659 您好!
我在捕获模式下使用 TA1、外部捕获引脚由32.768kHz 的 PWM 信号驱动。 TA1CCR0的 CCIFG 永远不会被置位、但我仍然会进入计时器中断。 两个中断中的一个、COV 被置位、就像我跳过读取 TA1CCR0一样。 以下是我的代码:
void main (void){ // TA1.0 P3SEL |= BIT1; P3DIR&=~BIT1; // TA1CLK P3SEL |= BIT0; P3DIR &=~BIT0; TA1CTL = tassel_TACLK | ID_1 | TLMC_STOP; TA1CC0 |= ~ CC0 | TA1CC0 |= TAC0 | TAC0 | TAC0 = TAC0 | TAC0 | TAC0 = TAC0 | TCC1CAP #if defined (__TI_Compiler_version__)|| defined (__IAR_systems_icc_)|| Defined (__CrossWork__) #pragma vector=Timer1_A0_vector __interrupt void ISR_Timer1_a0 (void) #Elif defined (__GNU_)&(_ TI_TI_TIvector (_ TI_TIv_TI_TIv_TIv_TIver_vector)__interrupt (_ TIvert1_TA0_TIvector)#t1)#t1 (void TI_TI_TIvate_TIvert_TI_TIvate_TIvector (void CC0_TA0_TA0 如果(!((P3IN & BIT1)=BIT1)){ /*执行某些操作*/ } 否则{ /*执行其他操作*/ } }否则、如果(TA1CCTL0 & COV){ TA1CCTL0 &=~COV; /*执行某些操作*/ }
我在中断中放置一个断点、TA1CCR0的值持续增加、但 CCIFG 标志永远不会置位。 我缺少什么吗?
谢谢、
Fred