AVR Timer

cdm·2023년 11월 29일
0

AVR

목록 보기
1/8
  • TCCR(Timer Counter Control Register)
  • TCNT(Timer Count)
  • TIFR(Timer Interrupt Flag Register)
  • OCR(Output Compare Register)

Flag
-TOV(Timer overflow)
-OCF(Output Compare Flag)

Mode
CTC(Clear Timer on Compare)


각각 data sheet를 보고 필요한 레지스터의 비트를 사용.(선언)

Timer0의 경우 8비트 타이머로서 TCNT가 overflow 될 때 flag를 씀..
TIFR을 읽어서 flag를 확인 한 후 반복문을 빠져나와 flag를 초기화.
flag에 1을 기록하게 되면 초기화.

기준 타이머를 정해놓고 반복문 등을 통해 시간을 제어.

16bit 타이머의 경우 CTC모드를 사용.
OCR와 OCF를 사용하여 기준 시간을 선언 및 측정.

TCCR1A : 타이머의 모드 선택 레지스터
WGM12, WGM11, WGM10: 1 0 0
CTC 모드
TCNTn 값이 증가하다가 OCRx 값이 되면 0 으로 초기화 되면서 compare 인터럽트가 발생.
TCNTn 안의 값 0~OCRx 사이의 값을 반복


TCCR1B : 분주비 설정 레지스터

0개의 댓글