summaryrefslogtreecommitdiff
path: root/examples/rp2/pwm_fade.py
diff options
context:
space:
mode:
authorDamien George <damien@micropython.org>2021-01-21 00:34:08 +1100
committerDamien George <damien@micropython.org>2021-01-30 00:42:29 +1100
commit469345e7285128739e2934e7934e107ffda79fc1 (patch)
treea410ce2d427770a01d5b6f4d1b3ff2fb342cd94b /examples/rp2/pwm_fade.py
parentef3ee7aa1005cd1f15c2144d4b46feb792ab3185 (diff)
rp2: Add new port to Raspberry Pi RP2 microcontroller.
This commit adds a new port "rp2" which targets the new Raspberry Pi RP2040 microcontroller. The build system uses pure cmake (with a small Makefile wrapper for convenience). The USB driver is TinyUSB, and there is a machine module with most of the standard classes implemented. Some examples are provided in the examples/rp2/ directory. Work done in collaboration with Graham Sanderson. Signed-off-by: Damien George <damien@micropython.org>
Diffstat (limited to 'examples/rp2/pwm_fade.py')
-rw-r--r--examples/rp2/pwm_fade.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/examples/rp2/pwm_fade.py b/examples/rp2/pwm_fade.py
new file mode 100644
index 000000000..7264edaa2
--- /dev/null
+++ b/examples/rp2/pwm_fade.py
@@ -0,0 +1,25 @@
+# Example using PWM to fade an LED.
+
+import time
+from machine import Pin, PWM
+
+
+# Construct PWM object, with LED on Pin(25).
+pwm = PWM(Pin(25))
+
+# Set the PWM frequency.
+pwm.freq(1000)
+
+# Fade the LED in and out a few times.
+duty = 0
+direction = 1
+for _ in range(8 * 256):
+ duty += direction
+ if duty > 255:
+ duty = 255
+ direction = -1
+ elif duty < 0:
+ duty = 0
+ direction = 1
+ pwm.duty_u16(duty * duty)
+ time.sleep(0.001)