В этой статье мы поговорим зуммерах (пищалках), они бывают двух типов: активные и пассивные. Сначала разберём работу активного зуммера.
В этой статье мы поговорим зуммерах (пищалках), они бывают двух типов: активные и пассивные. Сначала разберём работу активного зуммера.
Зуммер — это электронный компонент для воспроизведения простых звуков. Активный зуммер содержит генератор, поэтому он издает звук всегда, когда на него подано напряжение. В отличие от активного, в пассивном зуммере нет такого генератора, поэтому для работы ему необходим внешний.
Активный зуммер легко использовать, но он может издавать звук только одной частоты. Для генерации звука через пассивный зуммер необходимо формировать ШИМ сигнал, но это позволяет регулировать звуки, которые он издает. Громче всего пассивный зуммер звучит на частоте 2 кГц.
Для работы зуммера необходим больший ток, чем может обеспечить цифровой выход микроконтроллера, поэтому мы будем использовать транзистор для управления зуммером.
Вариант управления зуммером при помощи NPN транзистора. Если на выходе Arduino сигнал высокого уровня, ток будет течь через R1, транзистор будет открыт и зуммер будет издавать звук. Если на выходе Arduino сигнал низкого уровня, то ток не проходит через R1, транзистор будет закрыт и зуммер не будет издавать звук.
Вариант управления зуммером при помощи PNP транзистора. Если на выходе Arduino сигнал низкого уровня, ток будет течь через R1, транзистор будет открыт и зуммер будет издавать звук. Если на выходе Arduino сигнал высокого уровня, то ток не проходит через R1, транзистор будет закрыт и зуммер не будет издавать звук.
В этом примере мы будем использовать вывод D12 Arduino для чтения состояния кнопки и вывод D9 для включения активного зуммера.
Теперь код скетча управления активным зуммером.
int buttonPin = 12; int buzzerPin = 9; void setup() { pinMode(buttonPin, INPUT); pinMode(buzzerPin, OUTPUT); } void loop() { if (digitalRead(buttonPin) == HIGH) { digitalWrite(buzzerPin, LOW); } else { digitalWrite(buzzerPin, HIGH); } }
Как только мы нажимаем кнопку, то на выводе D9 появляется высокий уровень сигнала, открывается транзистор и зуммер издает звук.
Скомпилируйте скетч, загрузите его на плату Arduino и проверьте как работает программа.