시험 일주일도 안 남았는데, 교수님이 중간고사 왜 이렇게 못 봤냐고 ㅋㅎ 말하셔서 기말은 좀 공부할 예정 ㅎㅎㅎ
Interrupt?
어떠한 일을 중단시키는 것을 의미한다.
즉, 소프트웨어적인 관점에서 프로그램이 수행되고 있는 동안에 어떤 특정한 조건이 만족되면, 기존에 수행되던 프로그램을 일시적으로 중지하고 다른 일을 수행하는 것이다.
인터럽트가 발생하게 되면 기존의 프로그램을 중지하고, 다른 일을 수행하는데 다른 일을 인터럽트 서비스 루틴(ISR : Interrupt Service Routine)라고 부른다.
인터럽트 발생 -> 현재 실행중인 프로그램의 주소를 저장 후 중지 -> 인터럽트 서비스 루틴 실행 -> 인터럽트 서비스 루틴 종료 -> 기존 실행 중 프로그램의 중지되었던 부분부터 다시 실행
interrupt는 HW와 SW로 나뉜다.
거기서 HW는 External과 Internal로 나뉜다. 이 수업에서는 External만 얘기하셔서 이거 위주로 정리!
External Interrupt의 신호
Trigger 신호 ? = 외부 인터럽트를 발생시키는 신호
1. Low level : 계속 Low를 유지하는 신호
2. Falling Edge : High -> Low로 떨어질 때의 신호
3. Rising Edge : Low -> High로 올라갈 때의 신호
풀업 방식 (with 스위치 신호)
평소 : High
스위치 누르는 순간 : Falling Edge
누르고 있는 동안 : Low level
스위치 떼는 순간 : Rising Edge
풀다운 방식 (with 스위치 신호)
평소 : High
스위치 누르는 순간 : Rising Edge
스위치 떼는 순간 : Falling Edge
참고 :
https://blog.naver.com/PostView.nhn?blogId=alsrb968&logNo=220758027872
'Internet of Things' 카테고리의 다른 글
[메카트로닉스] #3. Timer Interrupt with Arduino (0) | 2023.11.30 |
---|---|
[메카트로닉스] #2. External Interrupt with Arduino (0) | 2023.11.30 |
댓글