#btn_interrupt.py
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
count = 0
def handler(channel):
global count
count = count +1
print count
GPIO.setup(23, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.setup(24, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
GPIO.add_event_detect(24, GPIO.RISING, callback=handler)
try:
GPIO.wait_for_edge(23, GPIO.FALLING)
print "Falling edge detected."
except keyboardInterrupt:
GPIO.cleanup() #clean up GPIO on CTRL_C. CTRL_C를 눌렀을 때. 비정상적인 동작=강제종료 가 발생하였으므로 clean up 해준다
GPIO.cleanup()
# Try쪽에서 실행하다가 except부분에서 예외처리 . 객체지향 언어의 특징..
c언어에서는 if else로 예외처리
sudo - root 권한으로 처리한다는 의미
'임베디드 > RaspberryPi' 카테고리의 다른 글
16x2lcd raspberrypi (0) | 2020.10.29 |
---|---|
라즈베리파이4, 3 핀맵 , 데이터시트 (0) | 2020.10.23 |
p280 MCP3008 ADC 장치 (0) | 2020.10.23 |
p267 6-5 콜백방식 (0) | 2020.10.22 |
p265 6-4 폴링방식 (0) | 2020.10.22 |