3주차 예비보고서(타이머와 카운터)
- 최초 등록일
- 2014.07.08
- 최종 저작일
- 2013.10
- 12페이지/
한컴오피스
- 가격 2,000원
![할인쿠폰받기](/images/v4/document/ico_det_coupon.gif)
목차
1 목적
2 내용
2.1 타이머와 카운터
2.2 ATMega128의 타이머/카운터
2.3 8비트 타이머/카운터
3 실습
3.1 실습 [7] : 타이머로 LED 점멸
3.2 실습 [8] : 타이머를 이용한 디지털 시계
4 참고문헌
본문내용
2.1.1 정 의
① 정확한 시간의 측정이 필요하다.(자명종과 스톱워치)
② 임베디드 시스템에서 타이머와 카운터가 시간측정의 일을 담당한다.
③ 타이머/카운터는 일정한 개수만큼의 클럭을 세어 시간으로 측정하므로, 정확한 시간 재기가 가능하다.
④ 타이머는 필요한 시간을 미리 레지스터에 설정하고, 다른 작업과 병행하게 타이머가 동작하고, 설정한 조건에서 인터럽트 발생하게 함으로써, MCU의 효율을 극대화 시킬 수 있다.
2.1.1 클럭과 카운터
① 클럭
: 시계(Clock)이며, 이는 일정한 시간 간격으로 0과 1의 값이 번갈아 나타난다. 주어진 일을 순서대로 정확한 시간에 처리하기 위해 사용된다.
② 카운터 : 클럭을 세는 장치이다.
<중 략>
① 사용할 타이머/카운터 결정
▸ 여기서는 8비트 타이머/카운터인 타이머/카운터 0를 사용
② 동작모드 결정
▸ 여기서는 일반 동작 모드 사용
▸ TCCR 레지스터의 CS를 제외한 모든 비트들을 0으로 세트
③ 타이머 클럭 결정(클럭소스 및 프리스케일러 결정)
▸ 여기서는 내부 클럭(7.3278MHz)을 사용
▸ 프리스케일러는 최대한 주기를 길게 하기 위해 1024를 사용
▸ ASSR/SFIOR는 디폴트, TCCR0의 CS비트를 ‘111’로 설정
④ 타이머 주기 결정
▸ 1초를 만들기 위해 10ms을 타이머 주기로 결정
▸ 인터럽트는 10ms마다 발생, 인터럽트가 100번 발생하면 1초로 간주
▸ 10ms를 맞추기 위해 세어야 하는 카운터 개수를 계산하고 그 카운터 계수를 만족시키기 위한 TCNT 초기값을 TCNT0에 넣음(183)
참고 자료
교제(HBE-MCU-Multi 로 배우는 마이크로컨트롤러 <AVR편>)