본문 바로가기
728x90
반응형
SMALL

인터럽트 서비스 루틴3

[AVR] 타이머 오버플로우 인터럽트 타이머 오버플로우 인터럽트 ATmega128에는 일정 시간마다 횟수 (TCNTn)를 세는 타이머가 있다. 이 횟수가 최대값에서 최소값으로 초기화될 때 인터럽트를 발생시키면, 특정한 시간 간격으로 인터럽트 서비스 루틴을 실행할 수 있다. 타이머 오버플로우 인터럽트 (Timer overflow interrupt)라고 하는 이 인터럽트는 딜레이함수를 대신할 수 있다. 타이머의 구조와 동작 8비트 타이머의 카운터 부분으로 구성되었다. MCU의 메인 클락이나 TOSC1 핀으로 입력 받은 신호를 분주한 것이 타이머의 클락 신호가 된다. 분주비는 1, 8, 32, 64, 128, 256, 1024 중 하나의 값으로 정할 수 있다. TCNTn은 카운트 횟수를 저장하는 레지스터이다. Control Logic은 매 타이머.. 2022. 6. 10.
[AVR] 인터럽트 (Interrupt) (3) EICRB (External Interrupt Control Resister B) EICRB 레지스터는 외부 인터럽트 7, 6, 5, 4 동작에 관한 설정을 하는 레지스터이다. • BIT 7 - Interrupt Sense Control7 1 - 외부 인터럽트 7의 트리거 방식을 설정 • BIT 6 - Interrupt Sense Control7 0 - 외부 인터럽트 7의 트리거 방식을 설정 • BIT 5 - Interrupt Sense Control6 1 - 외부 인터럽트 6의 트리거 방식을 설정 • BIT 4 - Interrupt Sense Control6 0 - 외부 인터럽트 6의 트리거 방식을 설정 • BIT 3 - Interrupt Sense Control5 1 - 외부 인터럽트 5의 트리거 방.. 2022. 6. 9.
[AVR] 인터럽트 (Interrupt) (2) ATmega128 리셋 벡터 / 인터럽트 벡터 ATmega128에서는 리셋 벡터를 포함하여서 총 35개의 인터럽트 벡터를 가지고 있다. 그 갯수는 다음과 같다. - 리셋 (1개) - 외부 인터럽트 (8개) - 타이머/카운터 관련 인터럽트 (14개) - 각종 통신 관련 인터럽트 (8개) - 그 외 ADC, EEPROM, 아날로그 비교기 (4개) 위에서부터 우선순위가 가장 높은 순이다. 인터럽트 처리 과정 마이크로 컨트롤러의 인터럽트 처리 과정의 전체적인 맥락은 비슷하지만 세부적인 구조는 종류에 따라 다르다. 1. 인터럽트 요청 신호 검출 : 프로그램을 수행하는 도중에 인터럽트 요청이 발생할 경우 해당 장치의 인터럽트 플래그가 세트된다. 이 인터럽트 플래그는 인터럽트 서비스 루틴이 수행되면 자동으로 클리어된.. 2022. 6. 9.
728x90
반응형
LIST