본문 바로가기
Internet of Things

[메카트로닉스] #2. External Interrupt with Arduino

by junnykim 2023. 11. 30.

 

~ Interrupt에 대한 설명은 앞 글 참고하기 ~

 

 

 

Arduino는 digital I/O port의 2,3번 핀에 External Interrupt 기능을 지원한다.

Pin3을 External Interrupt로 사용하려면?

attachInterrupt(1, function_name, mode)

첫 번째 parameter = Interrupt 번호 (0: pin2, 1: pin3)

두 번째 parameter = interrupt service routine 이름

마지막 parameter = interrupt가 발생하는 조건을 설정하는 parameter. RISING, FALLONG, LOW, CHANGE 중 하나를 사용할 수 있다

  • LOW : LOW 상태일 때
  • CHANGE : 입력 값이 변할 때
  • RISING : LOW -> HIGH
  • FALLING : HIGH -> LOW
  • HIGH : HIGH 상태일 때

 

Chattering 현상

스위치를 누르다 보면, 상태가 변할 때마다 플로팅과 비슷한 현상이 매우 짧게 나타난다. 

이 증상을 채터링(chattering)이라고 한다.

전자 회로 내의 스위치 접점이 닫히거나 열리는 순간에 기계적인 진동에 의해 매우 짧은 시간 안에 스위치가 붙었다가 떨어지는 것을 반복하는 현상

 

 

대안 LPF(LowPass Filter)

고주파 신호를 통과시키지 않는다. 따라서 높은 주파수의 chattering이 INT1으로 전해지지 않도록 막는 역할을 한다.

캐패시터를 넣어주는 것으로 HW적인 방법이다.

 

 

 

참고 : https://m.blog.naver.com/roboholic84/220880882127

 

푸쉬버튼의 단점[채터링/디바운스/플로팅/바운딩]

안녕하세요! 메카솔루션입니다. 오늘은 스위치의 단점 대해 자세히 알아보고자 합니다. 그전에 푸쉬 ...

blog.naver.com

이수용 교수님 메카트로닉스 개론 강의자료

댓글