diff --git a/index/pi/pico_ada_c07_buzzer/pico_ada_c07_buzzer-1.7.1.toml b/index/pi/pico_ada_c07_buzzer/pico_ada_c07_buzzer-1.7.1.toml new file mode 100644 index 00000000..e9414a6d --- /dev/null +++ b/index/pi/pico_ada_c07_buzzer/pico_ada_c07_buzzer-1.7.1.toml @@ -0,0 +1,70 @@ +name = "pico_ada_c07_buzzer" +description = "Chapter 7: Controlling active and passive Buzzer" +long-description = """Learn how to drive active and passive buzzers with the Raspberry Pi Pico using Ada. +From simple doorbell switches to PWM-generated sweeping alert tones - including hardware tips with flyback diodes and +oscilloscope measurements. + +In this chapter we connect both active and passive buzzers to the Pico. We start with a simple button-controlled +doorbell, improve the passive buzzer with bit-banging, and finally create a clean sweeping alert tone using the Pico's +PWM hardware. We also look at inductive-load protection and why a diode is essential. + +Contained in Chapter 07 are: + +1. sketch_07_1_doorbell.adb - Chapter 7.1 Doorbell with active buzzer +2. sketch_07_2_alert.adb - Chapter 7.2 Alert with passive buzzer +3. pwm_alert.adb - Use PWM to drive an passive buzzer +4. buzz_and_blink-main.adb - Use tasks to drive both a buzzer and an LED + +Read the full tutorial at [Chapter 7: Controlling a Buzzer](https://pi-ada-tutorial.sourceforge.io/pico_ada_c07_buzzer), [GNATdoc +documentation](https://pi-ada-tutorial.sourceforge.io/gnatdoc/pico_doc/), [SourceForge +repository](https://sourceforge.net/p/pi-ada-tutorial/code/ci/master/tree/pico_ada_c07_buzzer/) +""" +version = "1.7.1" +licenses = "GPL-3.0-or-later" +authors = ["Martin Krischik "] +maintainers = ["Martin Krischik "] +maintainers-logins = ["krischik"] +website = "https://pi-ada-tutorial.sourceforge.io/pico_ada_c07_buzzer" +tags = ["raspberry", "pi", "pico", "rp2040", "tasking", "light-tasking", "ada2022", "embedded"] +executables = [ + "buzz_and_blink-main", + "pwm_alert", + "sketch_07_1_doorbell", + "sketch_07_2_alert"] + +[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" +embedded_rp2040 = "^15.4" + +[configuration.values] +pico_xbsp.Variant = "tasking" +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:21f6c12ec35ec649cc96fbecbe845045660b5b7f33a35094246ed4f7e3f759e8", +"sha512:76a90b99908791284c03420bed42e3ae8781d49d296e173a217c4e61086dea082142116acb1597e4c7dafa435e7e8807f1b84be212f4e978be13b4679518f32c", +] +url = "https://sourceforge.net/projects/pi-ada-tutorial/files/Alire/pico_ada_c07_buzzer-1.7.1.tgz" +