Использование CCS, встроенное программирование, MSP430F63736A
В моем приложении я использую Timer A для переключения светодиода (ON/OFF) в разное время.
Например: Светодиод горит - 0,5 сек. Светодиод не горит - 3 сек.
Мне нужно сбросить таймер, когда он достигнет значения в регистре TA1CCR0. Эти времена (0,5 с и 3 с) находятся в регистре TA1CCR0. Проблема в том, что если я изменю значение регистра TA1CCR0 с 0,5 сек до 3 сек, он будет считать от 0,5 до 3 сек. И мне нужны полные 3 секунды, поэтому мне нужен таймер сброса.
Это процедура прерывания, в которой я переключаю светодиод
if (P4OUT == 0x00)
{
P4OUT ^= BIT6; // LED ON
TA1CCR0 = (sekunda*t1); //t1- 3 s.... pc 2s
}
else
{
P4OUT = 0x00;
TA1CCR0 = (sekunda*t2);
}
}