ATmega16 에서의 Timer/Counter 및 PWM의 사용법
- 최초 등록일
- 2010.06.12
- 최종 저작일
- 2010.06
- 15페이지/
한컴오피스
- 가격 1,000원
![할인쿠폰받기](/images/v4/document/ico_det_coupon.gif)
소개글
ATmega16 에서의 Timer/Counter 및 PWM의 사용법
목차
* Timer
* Counter
* 기본동작
1. Timer/Counter0 플리스캐일러(Prescaler)
본문내용
Timer/Counter는 내부 I/O 클럭이나 외부 크리스탈을 소스로 사용하고 사용자가 필요로 하는 주기로 발생하는 임의의 작업을 할 수 있다. 즉 Timer/Counter는 입력으로 들어오는 펄스를 셈하는 장치라고 정의할 수 있다.
입력으로 들어오는 펄스가 어디에 존재하느냐에 따라서 타이머와 카운터로 나눈다. 즉, 클럭의 소스가 마이크로 컨트롤러의 크리스탈에 의존하면 타이머가 되고, 마이크로 컨트롤러의 외부핀에 들어오는 펄스를 셈하면 카운터가 되는 것이다.
Timer/Counter는 단순히 펄스만 셈하는 것이 아니고, 시간과 관련된 시간 지연, 이벤트 카운팅, 펄스 폭 측정, 펄스 폭 변조(PWM), 직렬 포트의 보레이트(Baud rate) 발생기, Input Capture 기능, Output Compare 기능 등 여러 가지에 응용되고 있다. 이러한 기능은 Timer/Counter의 부수적인 기능으로 범용 Timer/Counter는 이러한 기능이 없고, 특수 Timer/Counter에만 존재한다.
Timer/Counter를 흔히 통칭해서 부르기에 같은 기능이라고 생각하고 사용하지만 실상 세분하여 본다면 타이머와 카운터는 엄연히 서로 다른 기능을 말하는 것을 이해해야 한다.
* Timer
- 내부 클럭을 이용하여 일정시간 간격의 펄스를 만들어 냄.
- 일정한 시간 경과 후에 인터럽트를 발생.
- 내부 클럭은 빠르고, 분주가 가능하고, 범위내에서 클럭 선택이 가능. (동기모드)
* Counter
- 외부핀(TOSC1, TOSC2, T0, T1)을 통해서 들어오는 펄스를 계수(Edge Detector)하여 Event Counter로 동작.
- 외부 클럭은 느리고, 분주가 불가능하고, 외부 클럭을 그대로 사용. (비동기 모드)
위에서 비교된 바와 같이 Timer와 Counter는 입력받는 소스가 다르면서 원리적인 차이가 있으나 그 사용 목적과 결과는 같으므로 통칭의 개념으로 부르며 사용되고 있다.
타이머는 입력 클럭을 클럭 소스로 받아 2분주하는 플립플롭으로 구성되어 있다.
참고 자료
없음