# 在Macropython中使用按钮控制RGBLED
from machine import Pin
from time import sleep
redLEDPin = 16
greenLEDPin = 17
blueLEDPin = 18
myRedLED = Pin(redLEDPin, Pin.OUT)
myGreenLED = Pin(greenLEDPin, Pin.OUT)
myBlueLED = Pin(blueLEDPin, Pin.OUT)
redButPin = 13
greenButPin = 14
blueButPin = 15
myRedBut = Pin(redButPin, Pin.IN, Pin.PULL_UP)
myGreenBut = Pin(greenButPin, Pin.IN, Pin.PULL_UP)
myBlueBut = Pin(blueButPin, Pin.IN, Pin.PULL_UP)
redButStateNow = 1
greenButStateNow = 1
blueButStateNow = 1
redButStateOld = 1
greenButStateOld = 1
blueButStateOld = 1
redLEDState = False
greenLEDState = False
blueLEDState = False
while True:
redButStateNow = myRedBut.value()
greenButStateNow = myGreenBut.value()
blueButStateNow = myBlueBut.value()
print(redButStateNow, greenButStateNow, blueButStateNow)
if redButStateOld == 0 and redButStateNow == 1:
redLEDState = not redLEDState
myRedLED.value(redLEDState)
redButStateOld = redButStateNow
if greenButStateOld == 0 and greenButStateNow == 1:
greenLEDState = not greenLEDState
myGreenLED.value(greenLEDState)
greenButStateOld = greenButStateNow
if blueButStateOld == 0 and blueButStateNow == 1:
blueLEDState = not blueLEDState
myBlueLED.value(blueLEDState)
blueButStateOld = blueButStateNow
sleep(.1)