170.95K
AI
Категория: ЭлектроникаЭлектроника

Лекция 5

1.

ПРОГРАММИРОВАНИЕ МИКРОКОНТРОЛЛЕРОВ
ЛЕКЦИЯ 05
ГЕНЕРАЦИЯ ЗВУКА НА МК
Управление
пьезопищалкой
Активная и пассивная пищалка, генерация тонов, мелодии
МИКРОКОНТРОЛЛЕРЫ
ПРАКТИЧЕСКИЙ КУРС

2.

01
·
ВВЕДЕНИЕ
02 / 09
Что такое пьезопищалка?
Пьезоэлектрический излучатель (buzzer) — устройство, которое преобразует электрический сигнал в звуковые
колебания за счёт обратного пьезоэффекта. При подаче переменного напряжения пластина деформируется и
создаёт звуковую волну.
Пьезоэффект
Диапазон частот
Применение
Механическая деформация
кристалла под действием
электрического поля. Обратный
эффект используется для генерации
звука.
Обычно 1–5 кГц. Наиболее громкий
звук — около резонансной частоты
конкретной модели (часто ~2–3 кГц).
Сигнализация, уведомления, простые
мелодии, обратная связь в
устройствах, учебные проекты.
ПЬЕЗОПИЩАЛКА
ЧТО ЭТО ТАКОЕ

3.

02
·
ТИПЫ
03 / 09
Два типа пьезоизлучателей
Активная пищалка
Пассивная пищалка
(Active Buzzer)
(Passive Buzzer)
• Внутри есть генератор
• Достаточно подать постоянный ток
• Звук фиксированной частоты
• Управление: HIGH / LOW
• Генератора внутри нет
• Нужен переменный сигнал
• Можно менять частоту (ноты)
• Управление: ШИМ / переключение
Проще в использовании.
Подходит для сигналов «бип».
Гибче: мелодии, разные тоны.
Требует генерации частоты.
ПЬЕЗОПИЩАЛКА
АКТИВНАЯ И ПАССИВНАЯ

4.

03
·
СХЕМОТЕХНИКА
04 / 09
Подключение к микроконтроллеру
01
02
03
04
Полярность
У большинства пищалок есть «+» и «−». Плюс — к выводу МК, минус — к GND. При обратном подключении звук слабее или
отсутствует.
Токоограничение
Многие пищалки потребляют 10–30 мА. Обычно можно подключать напрямую. При сомнениях — резистор 100–220 Ом или
транзистор.
Выбор пина
Для пассивной пищалки удобны пины с аппаратным ШИМ или таймером. Для активной подойдёт любой цифровой выход.
Усиление
Для большей громкости используют транзистор (NPN или MOSFET) или специализированный драйвер. Не превышайте
допустимый ток порта.
ПЬЕЗОПИЩАЛКА
ПОДКЛЮЧЕНИЕ

5.

04
·
СПОСОБЫ УПРАВЛЕНИЯ
05 / 09
Как управлять звуком
01
Простой HIGH/LOW
02
Переключение пина
Только для активной пищалки. Включили — пищит на своей
частоте, выключили — тишина.
Для пассивной: быстро меняем HIGH
частотой. Частота = высота тона.
03
04
Функция tone()
В Arduino: tone(pin, freq, duration). Удобно для нот и
мелодий. Работает с пассивной пищалкой.
ПЬЕЗОПИЩАЛКА
LOW с нужной
Таймер / ШИМ
Аппаратная генерация частоты. Точнее, меньше нагрузка на
CPU, можно менять duty cycle.
МЕТОДЫ

6.

05
·
ЧАСТОТЫ И НОТЫ
06 / 09
Частоты основных нот (Гц)
Высота тона определяется частотой переключения. Чем выше частота — тем выше звук.
C4 (До)
D4 (Ре)
E4 (Ми)
F4 (Фа)
262 Гц
294 Гц
330 Гц
349 Гц
G4 (Соль)
A4 (Ля)
B4 (Си)
C5 (До)
392 Гц
440 Гц
494 Гц
523 Гц
ПЬЕЗОПИЩАЛКА
МУЗЫКАЛЬНЫЕ ТОНА

7.

06
·
ПРАКТИКА
07 / 09
Пример на Arduino (пассивная пищалка)
const int BUZZER = 8;
// пин пищалки
void setup() {
pinMode(BUZZER, OUTPUT);
}
// Простой тон на 1 секунду
void playTone(int freq, int ms) {
tone(BUZZER, freq, ms);
delay(ms + 50);
// небольшая пауза
}
void loop() {
playTone(262, 300);
playTone(294, 300);
playTone(330, 300);
playTone(349, 500);
delay(1000);
}
ПЬЕЗОПИЩАЛКА
// До
// Ре
// Ми
// Фа
ПРИМЕР КОДА

8.

07
·
РЕКОМЕНДАЦИИ
08 / 09
На что обратить внимание
Резонансная частота
У каждой пищалки есть частота максимальной громкости.
Обычно указана в даташите (2–4 кГц). Используйте её для самых
громких сигналов.
Мелодии и паузы
Между нотами добавляйте короткие паузы (20–50 мс). Иначе
ноты сливаются. Для ритма используйте разную длительность.
ПЬЕЗОПИЩАЛКА
Duty cycle
При генерации прямоугольного сигнала оптимальный duty cycle
≈ 50%. Слишком узкие импульсы сильно снижают громкость.
Блокирующие функции
tone() и delay() блокируют цикл. Для сложных проектов лучше
аппаратные таймеры или неблокирующие подходы.
ПРАКТИЧЕСКИЕ СОВЕТЫ

9.

08
·
ИТОГИ
09 / 09
Ключевые выводы
1
Активная пищалка — простое включение/выключение, фиксированная частота
2
Пассивная пищалка — нужна генерация переменного сигнала, можно играть ноты
3
Высота тона определяется частотой переключения пина
4
В Arduino удобно использовать tone(pin, frequency, duration)
5
Учитывайте резонансную частоту для максимальной громкости
6
Для сложных мелодий и многозадачности лучше аппаратные таймеры
ПЬЕЗОПИЩАЛКА
ЗАКЛЮЧЕНИЕ
English     Русский Правила