Merge branch 'LED-Fix' of github.com:Metallicow/micropython into Metallicow-LED-Fix

This commit is contained in:
Damien George 2014-06-01 18:30:03 +01:00
commit 15a5738e1d
2 changed files with 49 additions and 3 deletions

View File

@ -2,8 +2,8 @@ import pyb
def led_angle(seconds_to_run_for):
# make LED objects
l1 = pyb.Led(1)
l2 = pyb.Led(2)
l1 = pyb.LED(1)
l2 = pyb.LED(2)
accel = pyb.Accel()
for i in range(20 * seconds_to_run_for):

46
examples/switch.py Normal file
View File

@ -0,0 +1,46 @@
__doc__ = """
switch.py
=========
Light up some leds when the USR switch on the pyboard is pressed.
Example Usage::
Micro Python v1.0.1 on 2014-05-12; PYBv1.0 with STM32F405RG
Type "help()" for more information.
>>> import switch
>>> switch.run_loop([2, 3])
Loop started.
Press Ctrl+C to break out of the loop.
"""
import pyb
switch = pyb.Switch()
red_led = pyb.LED(1)
green_led = pyb.LED(2)
orange_led = pyb.LED(3)
blue_led = pyb.LED(4)
all_leds = [red_led, green_led, orange_led, blue_led]
def run_loop(use_leds=[]):
"""
Start the loop.
:param `use_leds`: Which leds to light up upon switch press.
:type `use_leds`: list of integers [1-4]
"""
print('Loop started.\nPress Ctrl+C to break out of the loop.')
leds = [all_leds[i - 1] for i in use_leds]
while 1:
try:
if switch():
[led.on() for led in leds]
else:
[led.off() for led in leds]
except OSError: # VCPInterrupt # Ctrl+C in interpreter mode.
break
if __name__ == '__main__':
run_loop()