Here is my code for Input Capture.
Remember that TACCRx is the register that store the time (TAR) when the capture occur.
#include <msp430g2553.h>
void main(void) {
WDTCTL = WDTPW + WDTHOLD; // Stop WDT
TACTL |= TASSEL_2 + MC_2; // SMCLK + Continuous mode
TACCTL0 |= CM_1 + CCIS_0 + SCS + CAP + CCIE ; // Raising Edge + CCI0A + Sync + Capture Mode + Interrupt enable
P1OUT = 0x00;
P1DIR |= BIT0; //RED LED
P1SEL |= BIT1; //set this bit as Input Capture (TA0.CCI0A)
_BIS_SR(LPM0_bits + GIE); //SMCLK active + Interrupts
}
#pragma vector=TIMER0_A0_VECTOR
__interrupt void Timer_A (void)
{
P1OUT ^= 0x01; //Toggle RedLED
}