Все периферийные устройства, подключаемые к микроконтроллеру, делятся на две основные категории:
Цифровой актюатор — устройство с двумя четкими состояниями: ВКЛЮЧЕНО и ВЫКЛЮЧЕНО.
Управление осуществляется через цифровой выход Arduino:
| Характеристика | Пассивный зуммер | Активный зуммер |
|---|---|---|
| Управление | Функция tone() | digitalWrite() |
| Частота звука | Любая (31 Гц - 65535 Гц) | Фиксированная (обычно 2-4 кГц) |
| Создание мелодий | Возможно | Невозможно |
| Внешний вид | Нет маркировки сверху | Есть маркировка "+" |
Функция tone(pin, frequency, duration) генерирует прямоугольный сигнал на указанном пине.
| Октава/Нота | C (До) | D (Ре) | E (Ми) | F (Фа) | G (Соль) | A (Ля) | B (Си) |
|---|---|---|---|---|---|---|---|
| 4 октава | 262 Гц | 294 Гц | 330 Гц | 349 Гц | 392 Гц | 440 Гц | 494 Гц |
| 5 октава | 523 Гц | 587 Гц | 659 Гц | 698 Гц | 784 Гц | 880 Гц | 988 Гц |
| Компонент | Количество | Пин подключения |
|---|---|---|
| Arduino Uno/Nano | 1 | - |
| Пассивный зуммер | 1 | D9 (для tone) |
| Светодиод | 1 | D8 |
| Резистор 220 Ом | 1 | Для светодиода |
| Вибромодуль (доп.) | 1 | D10 |
| Соединительные провода | 10-15 | Папа-папа |
| Макетная плата | 1 | 400 или 800 точек |
Цель: При каждом звуковом сигнале светодиод загорается.
Цель: Воспроизвести 5 нот подряд с разными частотами.
Цель: Реализовать сигнал бедствия (··· --- ···) на зуммере.
Цель: Создать синхронизированную систему из трех устройств.
Цель задания: Научиться создавать сложные звуковые последовательности, работать с функциями tone() и noTone(), интегрировать звук с визуальными и тактильными эффектами.
Для управления цифровыми актюаторами используется функция digitalWrite(pin, state), где pin - номер цифрового вывода, state - HIGH (5В) или LOW (0В).
Светодиод имеет низкое сопротивление и может сгореть при подключении напрямую к 5В. Резистор ограничивает ток. Модуль вибромотора уже содержит транзистор и ограничивающие резисторы на плате модуля.
Пин будет находиться в неопределённом состоянии (вход с высоким импедансом). Устройство может работать некорректно или не работать вообще. Всегда настраивайте пины с помощью pinMode() перед использованием.
Активный зуммер имеет встроенный генератор и издаёт звук фиксированной частоты при подаче питания. Пассивный зуммер требует внешнего генератора сигнала (функция tone()) и может воспроизводить разные частоты.
Функция noTone() останавливает генерацию звука на указанном пине. Без неё звук может продолжаться до следующего вызова tone() или перезагрузки.
Совет: Экспериментируйте с длительностями нот и паузами между ними. Попробуйте создать свою собственную мелодию, изменяя частоты в небольших пределах (±20 Гц).