Пьезо-зуммер плохо звучит с ATmega328
Я использую ATmega328 для управления ЖК-дисплеем 16x2, светодиодом и пьезоизлучателем. Пьезо-зуммер должен гудеть каждые 5 секунд. Но он не издает приятного звука, а лишь издает слабое гудение. Подозревая, что зуммер неисправен, я проверил его отдельно от источника питания 5 В, и он работал хорошо. Затем я снова включил его в цепь и проверил величину тока, используемого всей цепью. Он составлял около 26 мА, когда зуммер и светодиод были выключены, и 36 мА, когда зуммер и светодиод были включены. Так что нет проблем. Кроме того, зуммер иногда начинает звучать слишком хорошо. Это происходит примерно через полминуты после включения цепи. Похоже, что зуммер немного прогревается, прежде чем он сможет работать должным образом. Но это случается изредка.
Я использую аналоговый контакт A0 (или контакт № 23 на ATmega328) для управления зуммером и подачи на него прямоугольной волны 100 Гц.
В чем может быть причина этой проблемы?
@Bhuvnesh, 👍0
Обсуждение2 ответа
Некоторые зуммеры являются активными зуммерами и при включении питания издают автоколебания. Другим зуммерам требуется колебательный сигнал на их контактах, чтобы издавать звук. Если зуммер работает на 5 В, то это активный зуммер, и вам нужно только подать на него ВЫСОКИЙ сигнал, чтобы он заработал. Не пытайтесь подавать на него прямоугольную волну частотой 100 Гц.
Он хорошо работал с постоянным источником питания 5 В, но не тогда, когда эти постоянные 5 В подавались с помощью кода (здесь я не говорю о волне 100 Гц, я изменил код, чтобы получить постоянные 5 В)., @Bhuvnesh
Если он хорошо работает с прямым питанием 5 В, а не с выводом Arduino, вам, вероятно, понадобится транзистор для управления зуммером.
Вот пример управления зуммером с помощью транзистора: https://www.maxphi.com/piezo-buzzer-interfacing-arduino-tutorial
- Пассивный зуммер работает с AnalogWrite(), но не с DigitalWrite(). Он также имеет постоянный статический шум.
- Как включить и выключить зуммер
- Пьезозвук мелодия ардуино для автосигнализации
- Плохое качество звука при использовании пьезоэлемента в TinkerCad
- Не выходит из цикла for
- Шум на пьезо-аналоговом чтении из-за источника питания Arduino
- Как сделать так, чтобы мой пьезо-зуммер гудел только один раз без повторения?
- Использование функции millis() вместо функции delay() при воспроизведении мелодии
Что касается «_Я тестировал его отдельно от источника питания 5 В_»: вы имеете в виду без прямоугольной волны? Тогда у вас должен быть автоколебательный зуммер, верно? Вы пытаетесь управлять им с помощью программной прямоугольной волны?, @Edgar Bonet
дать зуммер digitalWrite(HIGH), @Juraj
даже на простом пьезо 100 гц очень глубокий звук плохо играется на пьезо, @Juraj
@ Эдгар Хани, да, без прямоугольной волны ... я использовал 5 В от внешнего источника ... Это сработало хорошо. Но при подаче 5В с помощью микроконтроллера он не работал до нескольких секунд., @Bhuvnesh
почему вы подаете сигнал 100 Гц? ... вы сказали, что он работает с 5 В постоянного тока, @jsotola
@jsotola Я хочу сыграть несколько нот, @Bhuvnesh
@jsotola, тогда есть ли какое-то название этого типа зуммера, которое мне нужно?, @Bhuvnesh
вам нужен динамик, а не зуммер, @jsotola
Но я видел, как ноты проигрываются на пьезоэлементе... Как же это возможно?, @Bhuvnesh
пьезодинамик против пьезозуммера, @Juraj
если он не работает с digitalWrite(pin, HIGH) (и pinMode(pin, OUTPUT) в setup()), то покажи нам свой код, @Juraj