Tool/software: Code Composer Studio
Here is my code for toggling led with interrupt but it is not working properly.
Please help me out
#include <msp430.h>
/**
* main.c
*/
int main(void)
{
WDTCTL = WDTPW | WDTHOLD; // stop watchdog timer
P1DIR |= ( BIT0 | BIT6 ); //set p1.0 & p1.6 as output
P1DIR &= ~BIT3; //set p1.3 as input
P1OUT |= BIT0; // Turn p1.0 led ON
P1OUT &= ~BIT6; // Turn p1.6 led OFF
P1REN |= BIT3; // Enable pull up/down p1.3
P1OUT |= BIT3; // Set p1.3 as pull up
P1SEL &= 0x00; // setting p1 pins as input/output
P1IE |= BIT3; //Enable interrupt for p1.3
P1IFG &= ~BIT3; // Clears Interrupt flag for p1.3
P1IES = BIT3; // Set High to low to p1.3
_bis_SR_register(LPM4_bits+ GIE);
return 0;
}
#pragma vector = PORT1_VECTOR
__interrupt void PORT1(void)
{
if( (P1IFG & BIT3) != 0) // check for p1IFG.3 is set or not
{
P1OUT ^= (BIT0 ); //toggle p1.0
P1IFG &= ~BIT3; // clears P1.3 interrupt flag
}
}