From 725b057bdf5c3a2150d967ae17dbb8de9e6085a3 Mon Sep 17 00:00:00 2001 From: Martin Krischik Date: Sat, 23 May 2026 18:09:17 +0200 Subject: [PATCH] pico_ada_c04_pwm 1.7.0 (#1930) * pico_ada_c04_pwm 1.7.0 (via `alr publish`) * pico_ada_c04_pwm update tar * Update pico_ada_c04_pwm-1.7.0.toml to use pico_xbsp 1.7 --- .../pico_ada_c04_pwm-1.7.0.toml | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 index/pi/pico_ada_c04_pwm/pico_ada_c04_pwm-1.7.0.toml diff --git a/index/pi/pico_ada_c04_pwm/pico_ada_c04_pwm-1.7.0.toml b/index/pi/pico_ada_c04_pwm/pico_ada_c04_pwm-1.7.0.toml new file mode 100644 index 00000000..bf811453 --- /dev/null +++ b/index/pi/pico_ada_c04_pwm/pico_ada_c04_pwm-1.7.0.toml @@ -0,0 +1,69 @@ +name = "pico_ada_c04_pwm" +description = "Chapter 4: Analog LED with PWM" +long-description = """Building smooth breathing LEDs and flowing light bars with hardware PWM on the +Raspberry Pi Pico using Ada. From jittery duty cycles to perfect linear dimming - guided by the Voltcraft MSO-5102B +oscilloscope and a deep dive into PWM slice mapping on both Pico 1 and Pico 2. + +In this chapter we create a reusable Pico.Analog package for PWM-based analogue output. We start with a classic +breathing light, then move on to a flowing light bar. Along the way the MSO-5102B reveals the real behaviour of our +code, and we discover (and fix) a subtle bug in the experimental RP2350 HAL. + +Contained in Chapter 04 are: + +1. Pwm - Original PWM sample from Jeremy Grosser +2. sketch_04_1_breathing_light - Chapter 4.1 Blink internal LED +3. sketch_04_2_flowing_light_2 - Chapter 4.1 Project Meteor Flowing Light + +Read the full tutorial at [Chapter 4: Analog & PWM](https://pi-ada-tutorial.sourceforge.io/pico_ada_c04_pwm), [GNATdoc +documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c04_pwm/), [SourceForge +repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c04_pwm/) +""" + +version = "1.7.0" +licenses = "GPL-3.0-or-later" +authors = ["Martin Krischik "] +maintainers = ["Martin Krischik "] +maintainers-logins = ["krischik"] +website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c04_pwm" +tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"] +executables = [ + "pwm", + "sketch_04_1_breathing_light", + "sketch_04_2_flowing_light_2" +] + +[build-switches] +"*".ada_version = ["-gnat2022"] +development.compile_checks = "Warnings" +development.contracts = "Yes" +development.runtime_checks = "Overflow" +release.compile_checks = "Warnings" +release.contracts = "No" +release.runtime_checks = "Default" +validation.compile_checks = "Warnings" +validation.contracts = "Yes" +validation.runtime_checks = "Everything" + +[[depends-on]] +rp2040_hal = "^2.7.1" +pico_bsp = "^2.2" +pico_xbsp = "^1.7" +light_tasking_rp2040 = "^15.4" + +[configuration.values] +rp2040_hal.Use_Startup = false +rp2040_hal.Interrupts = "bb_runtimes" +light_tasking_rp2040.Max_CPUs = 2 +light_tasking_rp2040.Board = "rpi_pico" + +# vim: set textwidth=120 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab : +# vim: set filetype=toml fileencoding=utf-8 fileformat=unix foldmethod=diff : +# vim: set spell spelllang=en_gb : + +[origin] +hashes = [ +"sha256:4182587d55e37a120ec6409b8938672f30fa20771374054b7f8da3cc463e4194", +"sha512:62f2aaca3994888a5e7af969f53a5a4d65720332e30c9dc5d30ce1ef76f2afffadaccb5da3cd18025614d7f1c3914eba6a0052a561147c1a7aa321de71be0b98", +] +url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c04_pwm-1.7.0.tgz" +