푸시버튼 2

[간단한 아두이노 코딩] 4. 버튼 입력 제어하기 (인터럽트)

버튼 입력 제어하기 (인터럽트) 1. Busy waiting vs Interrupt [간단한 아두이노 코딩] 3. 버튼 입력 제어하기에서 다뤘던 방식은 loop 함수를 이용하여 지속적으로 BUTTON이 연결된 GPIO를 확인하는 방식이었다. void loop(){ if(digitalRead(BUTTON)==HIGH) doSomething(); } 이와 같이 원하는 결과가 들어올 때까지 확인하면서 대기하는 방식을 Busy waiting이라고 한다. 유사한 개념으로는 Polling이 있으나, 약간의 차이는 있다. (Busy waiting은 끊임 없이 확인하는 방식이고 Polling은 주기적으로 확인하는 방식이다.) Busy waiting의 문제는 확인하는 동작이 반복되는 동안 다른 작업을 수행할 수 없다는 ..

[간단한 아두이노 코딩] 3. 버튼 입력 제어하기

버튼 입력 제어하기 1. 버튼 동작 방식 우리가 일상 생활에서 접하는 버튼들은 아래와 같이 간단한 구조로 되어 있다. 위와 같이 버튼을 눌렀을 때는 A와 B 사이에 끊어진 도선이 연결되면서 전기가 흐르는 형식이다. 이렇게 직접적으로 전류를 제어하는 버튼들이 있는 반면 반대로 처음에는 연결되어 있다가 눌렀을 때 떨어지는 반대 버튼도 있고, 전류의 흐름을 직접 제어하지 않고 간접적으로 제어하는 버튼들도 있다. 우리는 가장 기본적인 형태의 버튼을 이용하여 버튼 입력을 받고, 그에 따른 동작을 수행할 수 있도록 코드를 구성할 예정이다. 2. 푸시 버튼 이번에 사용할 푸시 버튼은 앞에서 말한 것과 같이 눌렀을 때 도선이 연결되어 동작하는 버튼으로, 4개의 접점을 가진다. 이 4개의 접점을 통해서 기존 버튼의 동작..

페이스북으로 공유카카오톡으로 공유카카오스토리로 공유트위터로 공유URL 복사