视频
代码解析,实物演示 [视频]
准备
接线
![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cDovL2VuaWFudGVhbS5jb20vdXBsb2Fkcy8yMDE5MTIwOC9mYTRkNmQ3MTRmMmQ1Yjg5Njk5ZjUzMTlkNjliZWUwNy5wbmc?x-oss-process=image/format,png)
代码(python3)
import time,os
import RPi.GPIO as GPIO
BUTTON=18
GPIO.setmode(GPIO.BCM)
GPIO.setup(BUTTON,GPIO.IN,pull_up_down=GPIO.PUD_DOWN)
def click():
times=0
click_status=1
for x in range(80):
v=GPIO.input(BUTTON)
if v==1 and click_status==0:
click_status=1
if v==0 and click_status==1:
click_status=0
times+=1
time.sleep(0.01)
return times
while True:
if GPIO.input(BUTTON)==1:
times=click()
if times!=0:
print('按下次数:',times)
if times==2:
print('关机键')
os.system('sudo poweroff')
if times==3:
print('重启')
os.system('sudo reboot')
time.sleep(0.01)