BASIC4MCU | 질문게시판 | atmega128a 카운터/타이머 출력비교 질문이요
페이지 정보
작성자 초짜 작성일2019-08-17 00:54 조회5,002회 댓글1건
https://www.basic4mcu.com/bbs/board.php?bo_table=gac&wr_id=9751
본문
출력비교가 멀가지고 머를 기준으로 도대체 출력비교를 하는건가요? ㅠㅠ
책에 출력비교라고만 적혀있네요 ㅠㅠ
제가 알아봤는데 TCNT 값이 OCR 값과 같을시 중단된다는데.
그럼 Tcnt값이 초기값인데 초기값을 게속 증가시켜서 OCR값과 같을시 그대로 그 타이머는 중단되고 안돌아 가는건가요??
아니면 중단되고 TCNT 값이 다시 0이되는 건가요??
제 생각엔 후자가 맞다면 일상으로 예를 들어
TCNT 초기값은 0으로 줬다 치고
주기 값을 1초로 줬는데 TCNT 가 1초가 되서 다시 0초로 돌아가야 하는데 하는일을 다 못끝냈으면 그냥 그걸 중단하고 다시 0초로 돌아가
그 일을 다시 하는 건가요?
댓글 1
조회수 5,002master님의 댓글
master 작성일
출력비교매치가 아니고 OCRx 레지스터 비교매치입니다.
타이머 모드 이름은 "CTC(Clear Timer on Compare Match)모드"
타이머 모드 종류에 상관없이 TCNTx와 OCRx 레지스터가 같으면 TIFRx 레지스터의 OCFx 플래그가 Set 됩니다.
여러개의 타이머 모드 중에서 TCNTx 레지스터는 대부분 증가하지만 일부 모드에서는 증가 후 감소하기도 합니다.
증가하는 방향이든 감소하는 방향이든 같으면 TIFRx 레지스터의 OCFx 플래그가 Set 됩니다.
CTC 모드에서는 TIFRx 레지스터의 OCFx 플래그가 Set 되는 것 외에도 TCNTx를 Clear 시킵니다.