본문 바로가기

[Microchip]/PIC16F

[PIC16F723] Timer0 인터럽트 테스트

 

[PIC16F723] Timer0 인터럽트 테스트

 

 

 

 

 

PIC16F723 타이머 구조

 

 

 

OPTION레지스터를 이용하여 Timer0관련 클럭 설정을 할 수 있다.

 

 

PIC16F723 타이머 초기화

void InitTimer0(void)
{

 // TMR0 Associate Registers Initial
 PS0 = 1        // Prescaler 1:4

 

 TMR0 = INTERVAL_1mS;  // Initial TMR0
 
 // Interrupt Associate Registers Initial
 T0IF = 0;     //Clear TMR0 Interrupt Flag
 T0IE = 1;     //Enable TMR0 Interrupt


 GIE = 1;     //Enable Global Interrupt

}

 

 

 

PIC16F723 타이머 인터럽트 핸들러(HTC)

//인터럽트 핸들러 

interrupt ServiceRoutine()
{
   // Timer0 Interrupt 발생하면

   if(T0IF)

  { 

    TMR0 = INTERVAL_1mS;  // Initial TMR0

    T0IF = 0;     // Clear Interrupt Flag

  }

 

 

 

 

반응형