티스토리 뷰

정보통신 및 로봇제어시스템

인터럽트 소스

시작이반입니다 시작이반입니다 2021. 7. 7. 07:00

인터럽트 소스

인터럽트(interrupt)란 앞에서 언급한 바와 같이, 외부 또는 내부로부터의 긴급 서비스 요청에 의하여 CPU가 현재 실행중인 일을 잠시 중단하고 그 요청에 합당한 서비스를 해주는 기법입니다. ATmega128의 외부핀 중에는 INTO(pin no.25)이라는 외부 인터럽트 핀이 있어서 여기에 외부장치로부터의 긴급 서비스 요청선이 연결됩니다. 예컨대 ATmega128을 화재경보기로 사용하는 경우 핀 INTO(PD0)에는 화재감지기가 연결되어 있어서 화재가 나면 이를 감지하고 핀 INT0의 논리 레벨을 +5V에서 OV로 바꿉니다. 구체적인 예로서 화재감지기로 바이메탈 (bi-matal)을 쓰는 경우를 봅시다. 바이메탈은 열팽창 계수가 서로 다른 두 장의 금속판[황동 (cu, zn 합금)과 인바르(Ni, FE 합금)]을 붙여 놓은 것으로, 화재가 나서 온도가 오르면 한 쪽(황등)의 열팽창이 다른쪽 보다 커서 구부러지기 때문에 금속판이 어스선에 접촉됩니다. 그러므로 금속판은 OV로 되고, 이것이 INT0에 연결되어 있으므로 INTO 핀이 +5V에서 OV로 바뀝니다. 이것이 바로 외부로부터의 긴급 서비스 요청입니다. 또 내부의 타이머에서 설정시간이 지난다든가 USART에서 수신이 완료된다든가 해주셔도 이 또한 인터럽트 발생 요건이 되는데, 이것이 내부로부터의 긴급 서비스 ATmegal28의 CPU는 모든 명령의 마지막 요청입니다. 사이클에서 인터럽트 요청여부를 체크함으로써 이 요청의 유무를 알아내고, 이 요청을 받은 CPU는 현재 실행중인 명령 또는 그 다음의 프로그램으로 되돌아가서 중단된 요청에 합당한 서비스를 본래 마친 후, 일정의 처리 순서에 따라 처리합니다. 중단 지점에서부터 명령 프로그램을 다시 실행합니다. 이것 인터럽트는 인터럼트 3대 요소만 이해하면 된다고 할 정도로 이들이 중요합니다. 인터럽트 요소의 3대 요소는 인터럽트 소스와 인터럽트 벡터와 인터럽트 우선순위입니다. 인터럽트 소스는 누가 인터럽트를 요청할 수 있는지의 문제이고, 인터럽트 우선순위는 동시에 2개 이상의 인터럽트가 요청되는 경우 정해주느냐의 문제입니다.

'정보통신 및 로봇제어시스템' 카테고리의 다른 글

인터럽트 우선순위  (0) 2021.07.14
인터럽트 발생 조건  (0) 2021.07.09
인터럽트 소스  (0) 2021.07.07
I/O포트의 기능  (0) 2021.07.05
하드웨어 롤에 대해 알아보기  (0) 2021.07.03
마이크로컨트롤러 개발지원툴  (0) 2021.07.01
댓글
댓글쓰기 폼
공지사항
최근에 달린 댓글
Total
1,227
Today
0
Yesterday
4
링크
TAG
more
«   2021/09   »
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    
글 보관함