BuzzerPIO_RP2040
Асинхронное воспроизведение звука на пассивном зумере через PIO с минимальной нагрузкой на процессор
Установка
Последняя опубликованная версия- Скачайте архив — реестр отдает его уже проверенным.
- В Arduino IDE выберите «Скетч → Подключить библиотеку → Добавить .ZIP библиотеку».
- Укажите скачанный файл — библиотека появится в списке доступных.
SHA-256:ef416ef061d775695812e0013fcfd6a8de50c34d05f29d890d5e096ec04fecdaBuzzerPIO_RP2040-2.5.0-ef416ef0.zipОписание
Стандартный tone() на RP2040 имеет проблемы с временем отклика и занимает ресурсы микроконтроллера. BuzzerPIO решает это через два PIO state machine: один генерирует ультразвуковой PWM-носитель (~95 кHz) для чистого звука без искажений, второй модулирует его на слышимой частоте. В итоге воспроизведение мелодий идёт асинхронно, процессор остаётся свободным. Поддерживаются непрерывные тоны и последовательности нот с заданной длительностью, автоматическое управление громкостью с перцептивно линейной кривой (0–100), пауза и возобновление воспроизведения. Занимает минимум ресурсов (всего четыре PIO-инструкции), работает параллельно с OneWirePIO, DHT22PIO и Wi-Fi, защищена от конфликтов на многоядерных системах через аппаратный spinlock.