인터럽트 처리방식
기존의 무한반복(polling) 대신에, 인터럽트 처리방식으로 센서측정하는 기법(함수)
int wiringPiISR(pin, edgeType, callback)
※ 해석하자면 특정 pin에서, 지정된 인터럽트가 발생되면, 콜백함수가 자동적으로 호출됩니다.
edge_type은 아래 그림을 보고 참고 하시기 바랍니다.
코드 구현
const gpio = require('node-wiring-pi');
const BUTTON = 29;
const LED = 7;
const DetectButton = function(){
gpio.digitalWrite(LED,1);
gpio.delay(50);
gpio.digitalWrite(LED,0);
}
process.on('SIGINT',function(){
gpio.digitalWrite(LED,0);
console.log("Exit...");
process.exit();
});
gpio.pinMode(BUTTON,gpio.INPUT);
gpio.pinMode(LED,gpio.OUTPUT);
console.log("이벤트 방식 : 버튼을 누르면 LED가 켜집니다...");
gpio.wiringpiISR(BUTTON,gpio.INT_EDGE_RISING,DetectButton);
'Coding > Raspberry pi - node.js' 카테고리의 다른 글
실습 - PWM을 이용한 LED 밝기 제어 (0) | 2019.10.09 |
---|---|
WiringPi GPIO API인 PWM이용하기 (0) | 2019.10.09 |
실습 - 버튼, 광센서, 터치센서, Relay를 이용한 프로그램 (0) | 2019.10.07 |
실습 - 터치센서, 광센서를 활용한 코드 (0) | 2019.10.07 |
Relay 스위치와 소리센서 제어하기 (0) | 2019.10.07 |
댓글