mirror of
https://github.com/pybricks/pybricks-projects.git
synced 2026-09-15 02:52:41 +00:00
snippets/pup/light: add basic light and math demo
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
from pybricks.pupdevices import Light
|
||||
from pybricks.parameters import Port
|
||||
from pybricks.tools import wait
|
||||
|
||||
# Initialize the light.
|
||||
light = Light(Port.A)
|
||||
|
||||
# Blink the light forever.
|
||||
while True:
|
||||
# Turn the light on at 100% brightness.
|
||||
light.on(100)
|
||||
wait(500)
|
||||
|
||||
# Turn the light off.
|
||||
light.off()
|
||||
wait(500)
|
||||
@@ -0,0 +1,27 @@
|
||||
from pybricks.pupdevices import Light
|
||||
from pybricks.parameters import Port
|
||||
from pybricks.tools import wait, StopWatch
|
||||
|
||||
# The math module is part of standard MicroPython:
|
||||
# https://docs.micropython.org/en/latest/library/math.html
|
||||
from math import pi, cos
|
||||
|
||||
# Initialize the light and a StopWatch.
|
||||
light = Light(Port.A)
|
||||
watch = StopWatch()
|
||||
|
||||
# Cosine pattern properties.
|
||||
PERIOD = 2000
|
||||
MAX = 100
|
||||
|
||||
# Make the brightness fade in and out.
|
||||
while True:
|
||||
# Get phase of the cosine.
|
||||
phase = watch.time()/PERIOD*2*pi
|
||||
|
||||
# Evaluate the brightness.
|
||||
brightness = (0.5 - 0.5*cos(phase))*MAX
|
||||
|
||||
# Set light brightness and wait a bit.
|
||||
light.on(brightness)
|
||||
wait(10)
|
||||
Reference in New Issue
Block a user