MSP430G2433 Timer interrupt 테스트
MSP430 시리즈는 종류가 많아서 시리즈마다 약간씩 설정 부분이 다른데... 기록해 둘 필요가 있는것 같다.
(개인적으로 TI는 통합해서 설정할 수 있도록 코드를 정리 해 줬으면 좋겠다. 출시 될때마다 조금씩 바껴서 불편한점이 많다.)
MSP430G 타이머 초기화 코드
#define enable() __bis_SR_register(GIE)
#define TIMER0_VALUE 8000 //@ 8Mhz -> 1ms
#define Timer0Set(Value) (CCR0 += Value)
void InitTimer0(void)
{
//타이머 초기화
TACTL = TASSEL_2 + MC_2; // SMCLK, Contmode
CCR0 = 8000;
CCTL0 = CCIE; // CCR0 toggle, interrupt enabled
}
MSP430G 타이머 인터럽트 핸들러
//------------------------------------------------------------------------------
// Timer_A - Interrupt Handler
//------------------------------------------------------------------------------
#pragma vector = TIMER0_A0_VECTOR
__interrupt void Timer_A0_ISR(void)
{
//Led1Toggle();
gTimeTick++;
Timer0Set(TIMER0_VALUE);
}