pigpioの割り込み関数callbackを使ってLEDのONOFFを実行
SWの接続は SWは横側でOnOff
SWOFF時 3.3V −−− SWオープン
SWON時 3.3V −−− SWクローズ −−− 10kΩ −−− GND
□□□□□□□□□□□□□□□□□□□□□□□□□□□□|−−− gpio24
つまり電流は 10kΩ側とgpio側に分岐して流れる
LEDは gpio21 −−− +LED- −−− 200Ω −−− GND
ボタンを押す都度、LEDがONOFF
tickで起動時からの時間を見ているので、一定時間内は無視するロジックを
入れてください
#!/usr/bin/python
# -*- coding: utf-8 -*-
import pigpio
import time
LedPin = 21
PIN=24
pi = pigpio.pi()
Led_status = True
def setup():
pi.set_mode(PIN, pigpio.INPUT)
pi.set_mode(LedPin, pigpio.OUTPUT)
pi.write(LedPin, pigpio.HIGH)
def cb_interrupt(gpio, level, tick):
global Led_status
print(tick)
if Led_status==True:
pi.write(LedPin, pigpio.LOW)
print('LED OFF')
Led_status = False
else:
pi.write(LedPin, pigpio.HIGH)
print('LED ON')
Led_status = True
def main():
cb = pi.callback(PIN, pigpio.FALLING_EDGE, cb_interrupt)
while True:
time.sleep(1)
def destroy():
pi.write(LedPin, pigpio.LOW)
pi.stop()
if __name__ == '__main__':
setup()
try:
main()
except KeyboardInterrupt:
destroy()