Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Пищание активным зуммером

Поскольку вы уже знаете, как работает активный зуммер, заставить его пищать можно просто включая и выключая вывод GPIO. В этом упражнении мы подаём питание на зуммер через вывод GPIO, ждём короткое время, выключаем и повторяем. Так получается отчётливый звуковой сигнал.

Note

Этот пример предназначен для активного зуммера. Если использовать пассивный, звук может быть странным или нестабильным. Выполняйте это упражнение только с активным зуммером.

Требования к оборудованию

  • Активный зуммер
  • Перемычки (female-to-male или male-to-male, в зависимости от вашей схемы)

Проект из шаблона

Создайте новый проект. Чтобы его настроить, выполните:

cargo generate --git https://github.com/ImplFerris/pico2-template.git --tag v0.3.2

Когда появится запрос, задайте проекту имя, например «active-beep», и выберите embassy в качестве HAL.

Основная логика

Убедитесь, что зуммер подключён к GPIO 15. Вывод переключается каждые 500 миллисекунд, чтобы включать и выключать зуммер.

#![allow(unused)]
fn main() {
let mut buzzer = Output::new(p.PIN_15, Level::Low);

loop {
    buzzer.set_high();
    Timer::after_millis(500).await;

    buzzer.set_low();
    Timer::after_millis(500).await;
}
}

Клонируйте существующий проект

Можно клонировать (или использовать как образец) проект, который я создал, и перейти в папку active-beep.

git clone https://github.com/ImplFerris/pico2-embassy-projects
cd pico2-embassy-projects/active-beep