개발/임베디드
ARM Cortex M3 프로그래밍3 - 인터럽트, NVIC, DMA
- 인터럽트 : Fetch-Decode-Excute 방식대로 수행하는 것이 지속 불가능한 예외를 처리 : 인터럽트 체크는 파이프라인 각 단계 직후마다 수행 : M3는 Exception Vector를 이용하여 HW적으로 예외 번호에 해당하는 예외 처리 : Vectoring: 예외 처리로 뛰는 과정. 즉, 저장된 예외처리 주소(Handler Addr.)를 HW적으로 보냄 : 모든 인터럽트는 CPU 외부에서 발생. 저전력 상태의 CPU 깨움 - NVIC : Nested Vectored Interrupt Controller : M3에선 NVIC 전용 함수들이 CMSIS로 제공됨 : 외부 GPIO를 그룹화하여 해당 번호마다 외부 인터럽트 소스로 사용 - 인터럽트 우선순위 : Nesting: 수행 중인 인터럽트보다..