본문 바로가기
임베디드/RaspberryPi

p268 6-6 풀업 풀다운 인터럽트

by sj0020 2020. 10. 22.

 

#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