Цитата(thrush007 @ Jun 13 2014, 23:55)

Настраиваете тактирование таймера-счетчика и выбираете режим счета "вверх до переполнения" в регистре TA1CTL. Потом выбираете режим захвата, захват по нарастающему (или спадающему) фронту, синхронный захват в регистре TA1CCTLx. Запускаете таймер. Теперь по фронту сигнала на выводе CCIxA в регистре TA1CCRx будет защелкиваться значение таймера-счетчика и вызываться прерывание. При первом прерывании надо сбросить (и обнулить) таймер-счетчик и опять его запустить. При втором прерывании считать значение регистра TA1CCRx (это будет период сигнала на выводе CCIxA) и сбросить, обнулить, запустить опять таймер. И так далее.
Сделал как ты сказал , заработало в прерывание попадаю , но вне зависимости от частоты заначение TAR счетного регистра одно и тоже
Вот моя настройка
{
TA1CCR0 = time;
TA1CCR2 =(unsigned int )time/2;
TA1CCTL2 = OUTMOD_4+CM_1+CCIE+CCIS1+SCS ;
TA1CTL = TASSEL_2| MC_1;
}
потом я попадаю в прерывание
#pragma vector=TIMER1_A1_VECTOR
__interrupt void Timer1_A1 (void)
{
uint16_t currentValue = TAR; // тут смотрю в дебагере значение счетчика
uint16_t currentValue = TA1CCR2;
}
значения TAR и TA1CCR2 почемуто от частоты не зависят