Part Number:MSP430G2553
Hello,
I am using MSP430G2553, specifically MSP430G2253IPW28 - TSSOP28 pin package.
The problem I am facing is with a button connected to the Pin P2.3.
There is no external pull-up on this pin only an internal Pull-up enabled upon configuration.
The program has a the PORT2_VECTOR configured.
But there is no interrupt break point hit.
There is an LED connected at Pin P1.0 in Active High configuration to indicate the occurrence of the interrupt.
Here is the snippet of the main I am trying to execute:
// P1.0 LED Active High/Low // P2.3 Button Input with Pull-up #include <msp430.h> int main(void) { WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer BCSCTL1 = CALBC1_1MHZ; //set range for the O. DCOCTL = CALDCO_1MHZ; //set DCO step modulation 1MHZ P1DIR = 0x01; // P1.0 output, else input P1OUT = 0x0; // P1.0 LED Off P2DIR &= ~BIT3; // P2.3 Input P2REN |= BIT3; // P2.3 pullup P2SEL &=~BIT3; P2SEL2&=~BIT3; P2OUT |= BIT3; // P2.3 set __disable_interrupt(); P2IES |= BIT3; // P2.3 Hi/lo edge P2IFG &= ~BIT3; // P2.3 IFG cleared P2IE |= BIT3; // P2.3 interrupt enabled while(1) //__bis_SR_register(LPM4_bits + GIE); // Enter LPM4 w/interrupt __bis_SR_register(GIE); } // Port 2 interrupt service routine #if defined(__TI_COMPILER_VERSION__) || defined(__IAR_SYSTEMS_ICC__) #pragma vector=PORT2_VECTOR __interrupt void Port_2(void) #elif defined(__GNUC__) void __attribute__ ((interrupt(PORT2_VECTOR))) Port_2 (void) #else #error Compiler not supported! #endif { P1OUT ^= 0x01; // P1.0 = toggle P2IFG &= ~BIT3; // P2.3 IFG cleared }
I would like to know if there is any mistake in the initialisation or configuration for P2.3.
Regards,
Ab