请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:MSP430G2553 您好!
我正在使用主时钟并探索中断。 Port1和 Timer0中断工作正常。
我不理解 Timer1中断32kHz XTAL 时钟源。
我需要使用 Timer1的1秒中断。
如何配置 P2SEL 位和定时器寄存器?
#include "MSP430G2553.h" #define LED1 BIT6 #define LED2 BIT4 #define Button BIT3 //端口1.3 int main (void) { WDTCTL = WDTPW + WDTHOLD; CCTL0|=CCIE; TACCR0 = 3; TACTL = tassel_0 + MC_1; TACTL |= TACLR; __ENABLE_INTERRUPT (); CCTL1|=CCIE; // CCR0中断使能 TA1CCR1 = 32768-1; TA1CTL = tassel_1 + MC_1 +TAIE;
P2DIR&=~BIT6; P2DIR|=BIT7; P2SEL|=BIT6 + BIT7; P1DIR &=~按钮; //按钮是输入 P1OUT |=按钮; //上拉电阻 器 P1REN |=按钮; //启用电阻 器的 P1IES |=按钮; //低电平到高电平转换 P1IE 上的中断|=按钮; //中断启用 __enable_interrupt (); P1DIR|=LED1; P1OUT&=~(LED1); P1DIR&=~BIT0; P1SEL|=BIT0; while (1) { } #pragma vector=Port1_vector __interrupt void Port1 (void) { P1OUT^=BIT6; P1OUT^=(BIT3); P1IFG&&~(BIT3); } #pragma vector=TIMER0_A1_vector _ interrupt void Timer0 (BITS= 1IES); ^ 1TAC1STREL = tALP1COL; ^= TIFLECTRL = tag1 void ~1 tAL= TA1CLR1TAG_TA1CLR|(void TAL= TI_TA1CLR);#TA1STAL= t1 t_TA1CLR = t_TA1STAC1 t_TA1CLR = t