Pi Ada Tutorial release 1.6.0 (#1898)
* Pi Ada Tutorial release 1.6.0 * Remove extra newline before URL in TOML file Force rebuild by removing redundant lines at the end of the file --------- Co-authored-by: Martin Krischik <martin.krischik@kpt.ch>
This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
name = "pico_ada_c01_blink"
|
||||
description = "Chapter 1: Blinking LEDs - Getting Started on the Raspberry Pi Pico"
|
||||
long-description = """My first steps into Ada programming on the Pico: from Jeremy Grosser's classic
|
||||
blink example through explicit pin control to using an external LED, plus thoughts on the elegant (but still
|
||||
experimental) Ravenscar profile.
|
||||
|
||||
Starting simple with LED blinking in Ada - internal LED, external LED with proper renaming, and a look at why Ravenscar
|
||||
looks so clean (even if it's not quite ready for everyday use yet).
|
||||
|
||||
Contained in Chapter 01 are:
|
||||
|
||||
1. blink - Jeremy Grosser Ada sample
|
||||
2. sketch_01_1_blink - Chapter 1.1 Blink internal LED
|
||||
3. sketch_01_2_blink - Chapter 1.2 Blink external LED
|
||||
|
||||
Read the full tutorial at [Chapter 1: Blinking LEDs - Getting Started with Ada on the Raspberry Pi
|
||||
Pico](https://pi-ada-tutorial.sourceforge.io/pico_ada_c01_blink), [GNATdoc
|
||||
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c01_blink/), [SourceForge
|
||||
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c01_blink/)
|
||||
"""
|
||||
|
||||
version = "1.6.0"
|
||||
licenses = "GPL-3.0-or-later"
|
||||
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
|
||||
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
|
||||
maintainers-logins = ["krischik"]
|
||||
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c01_blink"
|
||||
tags = ["raspberry", "pi", "pico", "rp2040", "ada2022", "embedded"]
|
||||
executables = [
|
||||
"blink",
|
||||
"sketch_01_1_blink",
|
||||
"sketch_01_2_blink"
|
||||
]
|
||||
|
||||
[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]]
|
||||
pico_bsp = "^2"
|
||||
|
||||
# vim: set textwidth=72 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:31d658ae9f84f8b353774b2e54611a9475d4c9e517469247effa8fa0d2a9dd9a",
|
||||
"sha512:4dac5be0e3caa7531fdfe1101f741260a8fc846a66cb97fc4f13174c438060b41d55b78968e4c0e144edec47ac10628fb0786d23a0724740a336dcff1217f9df",
|
||||
]
|
||||
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c01_blink-1.6.0.tgz"
|
||||
@@ -0,0 +1,70 @@
|
||||
name = "pico_ada_c01_blink_lt"
|
||||
description = "Chapter 1 Reloaded: Blinking LEDs on Both Cores"
|
||||
long-description = """Blinking LEDs on Both Cores Updated Chapter 1 using the new light_tasking_rp2040
|
||||
runtime - now with proper multi-core support, Ada.Real_Time, and delay until for accurate, slippage-free LED blinking on
|
||||
Raspberry Pi Pico.
|
||||
|
||||
After quick community help, I rewrote Chapter 1 to use light tasking on both RP2040 cores. No more manual timers -
|
||||
clean, precise dual-LED blinking with zero slippage.
|
||||
|
||||
Contained in Chapter 01 reloaded are:
|
||||
|
||||
1. blink - Jeremy Grosser Ada sample
|
||||
2. sketch_01_1_blink - Chapter 1.1 Blink internal LED
|
||||
3. sketch_01_2_blink - Chapter 1.2 Blink external LED
|
||||
4. double_blink-main - double blink using both cores.
|
||||
|
||||
Read the full tutorial at [Chapter 1 Reloaded: Dual-Core Light Tasking - Blinking LEDs on Both
|
||||
Cores](https://pi-ada-tutorial.sourceforge.io/pico_ada_c01_blink_lt), [GNATdoc
|
||||
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c01_blink_lt/), [SourceForge
|
||||
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico2_ada_c01_blink_lt/)
|
||||
"""
|
||||
|
||||
version = "1.6.0"
|
||||
licenses = "GPL-3.0-or-later"
|
||||
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
|
||||
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
|
||||
maintainers-logins = ["krischik"]
|
||||
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c01_blink_lt"
|
||||
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
|
||||
executables = [
|
||||
"blink",
|
||||
"sketch_01_1_blink",
|
||||
"sketch_01_2_blink",
|
||||
"double_blink-main"
|
||||
]
|
||||
|
||||
[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"
|
||||
light_tasking_rp2040 = "^15.3"
|
||||
|
||||
[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:a7bda08ec392c135748d42fc228333fc39c8c7151263e1937c29e66e566d2d03",
|
||||
"sha512:6ef77437ab83961d7b733f5f88ce064e1d24c29d3c87be29e4c657530f7ce78882ec7d5de204c6636538ca7ec612425ac0da1d1e01567e9d0e923226ba199f88",
|
||||
]
|
||||
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c01_blink_lt-1.6.0.tgz"
|
||||
|
||||
@@ -0,0 +1,65 @@
|
||||
name = "pico_ada_c02_button_and_led"
|
||||
description = "Chapter 2 - Button controled LEDs"
|
||||
long-description = """Controlling an LED with a button on the Raspberry Pi Pico using Ada - two simple
|
||||
but useful interaction examples.
|
||||
|
||||
In this chapter I combine a push button with an LED. We start with basic on/off control, then move to a toggle-style
|
||||
table lamp with software debounce.
|
||||
|
||||
Contained in Chapter 02 are:
|
||||
|
||||
1. sketch_02_1_button_and_led - Chapter 2.1 Switch LED with Button
|
||||
2. sketch_02_2_table_lamp - Chapter 2.2 Simple table lamp
|
||||
|
||||
Read the full tutorial at [Chapter 2 - Button &
|
||||
LED](https://pi-ada-tutorial.sourceforge.io/pico_ada_c02_button_and_led), [GNATdoc
|
||||
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c02_button_and_led/), [SourceForge
|
||||
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c02_button_and_led/)
|
||||
"""
|
||||
|
||||
version = "1.6.0"
|
||||
licenses = "GPL-3.0-or-later"
|
||||
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
|
||||
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
|
||||
maintainers-logins = ["krischik"]
|
||||
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c02_button_and_led"
|
||||
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
|
||||
executables = [
|
||||
"sketch_02_1_button_and_led",
|
||||
"sketch_02_2_table_lamp"
|
||||
]
|
||||
|
||||
[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"
|
||||
light_tasking_rp2040 = "^15.3"
|
||||
|
||||
[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:b610425b387f6e96fcdd1858b6ce8babab2933ebe9e42566555ffa69c3fdbbdb",
|
||||
"sha512:7bd1a4a19e28a4a34f124716e5680e34fd023f1be79dc99408874730c13f96fd21ea075fe6383bbb8291061d27a02b3013305ae8bbdbc8976e9d5e1b3e366112",
|
||||
]
|
||||
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c02_button_and_led-1.6.0.tgz"
|
||||
|
||||
@@ -0,0 +1,70 @@
|
||||
name = "pico_ada_c03_led_bar"
|
||||
description = "Chapter 3 - Cylon LED Bar: flowing light upgraded to a menacing scanner"
|
||||
long-description = """Building a smooth flowing LED bar on the Raspberry Pi Pico with Ada - from a simple
|
||||
chasing light to a proper menacing Cylon scanner effect using real-time delays.
|
||||
|
||||
In this chapter we turn ten LEDs into a flowing light bar. We start with the basic Freenove example using an array of
|
||||
RP.GPIO.GPIO_Point (aliased limited tagged types). We then improve it with a pre-calculated sine-harmonic timing table
|
||||
to create a realistic Cylon scanner - all done with Ada.Real_Time and zero floating-point at runtime for perfect
|
||||
jitter-free movement.
|
||||
|
||||
Contained in Chapter 03 are:
|
||||
|
||||
1. Sketch_03_1_Flowing_Light - straight port of the classic flowing light
|
||||
2. Cylon_Light - the final dramatic Cylon scanner with organic easing
|
||||
3. Cylon_Light_Float - Floating point version of Cylon_Light
|
||||
|
||||
Read the full tutorial at [Chapter 3 - Cylon LED Bar: flowing light upgraded to a menacing
|
||||
scanner](https://pi-ada-tutorial.sourceforge.io/pico_ada_c03_led_bar), [GNATdoc
|
||||
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c03_led_bar/), [SourceForge
|
||||
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c03_led_bar/)
|
||||
|
||||
(The Cylons did nothing wrong. Humans created the perfect companion species and then completely messed it up.)
|
||||
"""
|
||||
version = "1.6.0"
|
||||
licenses = "GPL-3.0-or-later"
|
||||
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
|
||||
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
|
||||
maintainers-logins = ["krischik"]
|
||||
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c03_led_bar"
|
||||
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
|
||||
executables = [
|
||||
"sketch_03_1_flowing_light",
|
||||
"cylon_light_float",
|
||||
"cylon_light"
|
||||
]
|
||||
|
||||
[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"
|
||||
light_tasking_rp2040 = "^15.3"
|
||||
|
||||
[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:5d8cdfe3d4fa43d4aef73b6acba0924e8f555386db8a0efe91aedfaa6e027a4a",
|
||||
"sha512:5143f0a0eab2149b818d89c6a0da37124e9612a521eccc65c8315d8ff19dde0777eadef73f8e29bf01c18a24f27db25ae7afe18753e3f650359e6fb00ffeeea1",
|
||||
]
|
||||
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c03_led_bar-1.6.0.tgz"
|
||||
|
||||
@@ -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.6.0"
|
||||
licenses = "GPL-3.0-or-later"
|
||||
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
|
||||
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
|
||||
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.5"
|
||||
light_tasking_rp2040 = "^15.3"
|
||||
|
||||
[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:1c0dc4e2802f3e9b6ca2735fe42564cd3384a4f0f75a3e73127096c973e5143b",
|
||||
"sha512:fe9a0d144338413bf17ebedeb42de80f57e41526184350a18fd8f1a7824cd0ab23d1310a2e03853c6787b3b6d8264d49c1a0809b10136555d0c634ff83546e83",
|
||||
]
|
||||
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c04_pwm-1.6.0.tgz"
|
||||
|
||||
@@ -0,0 +1,67 @@
|
||||
name = "pico_ada_c05_rgb"
|
||||
description = "Chapter 5: Controlling an RGB LED with PWM"
|
||||
long-description = """Learn how to drive a common-cathode RGB LED using the RP2040's PWM peripherals.
|
||||
This chapter introduces a reusable Ada package for colour control and demonstrates both random colours and a smooth
|
||||
colour-wheel gradient.
|
||||
|
||||
Extend the simple LED examples to full-colour control with an RGB LED. Create a reusable `Pico.Analog.RGB_LED` package
|
||||
and explore two sketches: random colours (using the embedded runtime) and a smooth colour-wheel transition.
|
||||
|
||||
Contained in Chapter 05 are:
|
||||
|
||||
2. sketch_05_1_random_color_light.adb - Chapter 5.1 Random Color Light
|
||||
3. sketch_05_2_gradient_color_light.adb - Chapter 5.2 Gradient Color Light
|
||||
|
||||
Read the full tutorial at [Chapter 5: Controlling an RGB LED with
|
||||
PWM](https://pi-ada-tutorial.sourceforge.io/pico_ada_c05_rgb), [GNATdoc
|
||||
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c05_rgb/), [SourceForge
|
||||
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c05_rgb/)
|
||||
"""
|
||||
|
||||
version = "1.6.0"
|
||||
licenses = "GPL-3.0-or-later"
|
||||
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
|
||||
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
|
||||
maintainers-logins = ["krischik"]
|
||||
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c05_rgb"
|
||||
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
|
||||
executables = [
|
||||
"sketch_05_1_random_color_light",
|
||||
"sketch_05_2_gradient_color_light"
|
||||
]
|
||||
|
||||
[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.5"
|
||||
embedded_rp2040 = "^15.3"
|
||||
|
||||
[configuration.values]
|
||||
rp2040_hal.Use_Startup = false
|
||||
rp2040_hal.Interrupts = "bb_runtimes"
|
||||
embedded_rp2040.Max_CPUs = 2
|
||||
embedded_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:ee3443b789a4cad1d9ecff2c084737feb3656a09daeea75ae21cc0f05ab2a479",
|
||||
"sha512:866dcf6ef9a993d41439cd895eac4854d0dd6063203b17be312dc35613e4f190218ba1eb7a0c784340288600d60e4e5406569e75d123536038e47b8076ae22d7",
|
||||
]
|
||||
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c05_rgb-1.6.0.tgz"
|
||||
|
||||
@@ -0,0 +1,69 @@
|
||||
name = "pico_ada_c06_neopixel"
|
||||
description = "Chapter 6: Controlling 8 NeoPixel RGB LED"
|
||||
long-description = """Learn how to drive WS2812 (NeoPixel) LEDs on the Raspberry Pi Pico using the RP2040
|
||||
PIO in Ada. Includes a square-wave diagnostic, fixes for the official ws2812_demo, and two complete animation sketches.
|
||||
|
||||
From understanding the WS2812 protocol to writing our own PIO code and creating colourful animations - everything you
|
||||
need to make NeoPixels dance with Ada on the Pico.
|
||||
|
||||
Contained in Chapter 06 are:
|
||||
|
||||
1. square_wave-main.adb - Simple Square Wave test using PIO (for timing reference)
|
||||
1. ws2812_demo.adb - Jeremy Grosser's WS2812 demo adapted for the RP2040 and Ada 2022
|
||||
2. sketch_06_1_led_pixel.adb - Chapter 6.1 NeoPixel LED Pixel
|
||||
3. sketch_06_2_rainbow_light.adb - Chapter 6.2 NeoPixel Rainbow Light
|
||||
|
||||
Read the full tutorial at [Chapter 6: Controlling an NeoPixel LED with
|
||||
PWM](https://pi-ada-tutorial.sourceforge.io/pico_ada_c06_neopixel), [GNATdoc
|
||||
documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_ada_c06_neopixel/), [SourceForge
|
||||
repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c06_neopixel/)
|
||||
"""
|
||||
version = "1.6.0"
|
||||
licenses = "GPL-3.0-or-later"
|
||||
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
|
||||
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
|
||||
maintainers-logins = ["krischik"]
|
||||
website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c06_neopixel"
|
||||
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
|
||||
executables = [
|
||||
"square_wave-main",
|
||||
"ws2812_demo",
|
||||
"sketch_06_1_led_pixel",
|
||||
"sketch_06_2_rainbow_light"
|
||||
]
|
||||
|
||||
[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.5"
|
||||
embedded_rp2040 = "^15.3"
|
||||
|
||||
[configuration.values]
|
||||
rp2040_hal.Use_Startup = false
|
||||
rp2040_hal.Interrupts = "bb_runtimes"
|
||||
embedded_rp2040.Max_CPUs = 2
|
||||
embedded_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:4c1826d6d613db3faffd74ae139761b9314b8a916d48ddb9c95d589be90bbd5f",
|
||||
"sha512:f89c66511209761e68ce5761f066ad4cb8e457e47b0ef6bf9f169e151b25266165861a101af255e356439316441ecfe1f3b1aee5e5f9e62c23b35c2d0a737dfb",
|
||||
]
|
||||
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c06_neopixel-1.6.0.tgz"
|
||||
|
||||
@@ -0,0 +1,60 @@
|
||||
name = "pico_xbsp"
|
||||
description = "Extended board support package for Raspberry Pi Pico"
|
||||
long-description = """Extended board support package (XBSP) for the Raspberry Pi Pico.
|
||||
|
||||
This crate extends the official pico_bsp from Jeremy Grosser with additional, reusable components. It is designed for
|
||||
general use in any Ada project targeting the RP2040-based Raspberry Pi Pico and is not limited to the Pi Ada Tutorial.
|
||||
|
||||
It is developed in parallel with the [Pi Ada Tutorial](https://pi-ada-tutorial.sourceforge.io/) and therefore also
|
||||
supplies the exact support packages used in the tutorial chapters. This dual role makes pico_xbsp equally suitable for:
|
||||
|
||||
* Standalone embedded Ada projects that only need the extra functionality, and * Readers following the tutorial who want
|
||||
ready-made, well-documented building blocks.
|
||||
|
||||
Current content:
|
||||
|
||||
1. Pico.Analog - Analogue GPIO using Pulse Width Modulation (PWM).
|
||||
1. Pico.Analog.RGB_LED - Analogue RGB LED control using Pulse Width Modulation (PWM).
|
||||
2. Pico.UART_IO - UART Text Output (Input comes later).
|
||||
|
||||
All packages are supplied with complete GNATDOC annotations.
|
||||
|
||||
* [GNATdoc documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/)
|
||||
* [SourceForge repository](https://sourceforge.net/projects/pi-ada-tutorial/)
|
||||
|
||||
The crate will grow with each new tutorial chapter while remaining a clean, independent library.
|
||||
"""
|
||||
version = "1.6.0"
|
||||
licenses = "GPL-3.0-or-later"
|
||||
authors = ["Martin Krischik <krischik@users.sourceforge.net>"]
|
||||
maintainers = ["Martin Krischik <krischik@users.sourceforge.net>"]
|
||||
maintainers-logins = ["krischik"]
|
||||
website = "https://pi-ada-tutorial.sourceforge.io/"
|
||||
tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"]
|
||||
|
||||
[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]]
|
||||
pico_bsp = "^2.2"
|
||||
|
||||
# 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:907ff0a34e782049d67483c34d7c5da628921a562f83219eddd33ef3d37b40c1",
|
||||
"sha512:b40adbd2c0653a644cd5f1465b30ded07702cf78720d215978cda23d0c373bdd7b751d9c1e0c3732a639f7254b3b7fe0d289cc22211bda1285b5fd9050b4761d",
|
||||
]
|
||||
url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_xbsp-1.6.0.tgz"
|
||||
|
||||
Reference in New Issue
Block a user