需要准备的东西:
1.树莓派3b一台
2.杜邦线若干
3.发光led灯3个:红黄绿各一个
4.220Ω电阻一个
5.面包板一个
接线图:
使用python GPIO模块输入命令控制:
light-on -off
#!/usr/bin/python
#coding:utf-8
import RPi.GPIO as GPIO
import time
running = True
def init():
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.setup(26, GPIO.OUT) #设置bcm 26负责输出电压 红灯
GPIO.setup(19,GPIO.OUT) #黄灯
GPIO.setup(13,GPIO.OUT) #绿灯
def send_command(light,status):
if status=='on':
GPIO.output(light,GPIO.HIGH)
else:
GPIO.output(light,GPIO.LOW)
if __name__ == '__main__':
init()
while (running):
str = raw_input("请输入指令> ").replace(" ","");#去掉空格
strarray = str.split("-",2)#命令按照-拆成两个字符串数组
if len(strarray)>1:
light = 26
passed = True
lightname = strarray[0]
action = strarray[1]
if lightname=='red':
light = 26
elif lightname=='yellow':
light=19
elif lightname=='green':
light=13
else:
passed=False
if passed:
if action=='on':
send_command(light,action)
print(lightname+"的状态:打开")
elif action=='off':
send_command(light,action)
print(lightname+"的状态:关闭")
else:
print (u"无法识别的命令~")
else:
print (u"无法识别的命令~")
elif (str=='stop') or (str=='exit'):
running = False
print (u"......即将退出~~")
else:
print (u"无法识别的命令~")
time.sleep(2)
# not used
GPIO.cleanup()
运行命令效果图: