• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

buzzer постоянно пищит

mishgan

Member
Есть модуль NodeMCU + пьезодинамик (buzzer) - типа такого Высокое Качество Пассивный Зуммер Модуль для Arduino Новый DIY Kit купить на AliExpress . Контакт i/o подключил к контакту GPIO16. Подаю питание и динамик начинает немножко гудеть.
Замеряю напряжение на GPIO16 и получаю 0,05В. Вот и причина гудения. Хотя в коде прописано
analogWrite(pin_zvuk,0); Подскажите как бороться с этим?
 

Сергей_Ф

Moderator
Команда форума
@mishgan Попробуйте управлять пищалкой нулем, а не единицей. Т.е. подключите её одним контактом к пину, другим к + 3.3v питания. В коде инвертируйте значения. А чтобы не путаться используйте определения
Код:
#define BUZZER_ON LOW
#define BUZZER_OFF HIGH
Если не поможет, смените пин на 15 - у меня не пищит на нем.
 
Последнее редактирование:

tretyakov_sa

Moderator
Команда форума
Есть модуль NodeMCU + пьезодинамик (buzzer) - типа такого Высокое Качество Пассивный Зуммер Модуль для Arduino Новый DIY Kit купить на AliExpress . Контакт i/o подключил к контакту GPIO16. Подаю питание и динамик начинает немножко гудеть.
Замеряю напряжение на GPIO16 и получаю 0,05В. Вот и причина гудения. Хотя в коде прописано
analogWrite(pin_zvuk,0); Подскажите как бороться с этим?
Питание сколько вольт подаете?
 

tretyakov_sa

Moderator
Команда форума
Скорее всего там схема с pnp транзистором. Она работает в обратной логике. Когда на выходе "0" транзистор открыт когда "1" транзистор закрыт. Если за питать схему от 5 вольт и подавать логику от esp8266 транзистор всегда будет открыт. За питайте модуль от 3.3 вольта и подавайте инверсную логику в перерывах между работой на входе должна быть логическая "1". Если оставите логический "0" через зуммер будет протекать ток и схема будет потреблять ток и может быть слышен шум.
buzzer arduino.jpg
 

mishgan

Member
Она работает в обратной логике. Когда на выходе "0" транзистор открыт когда "1" транзистор закрыт.
Там не обратная логика. Когда на пине 0 то он выдает почему то 0,05в(хотя их там не должно быть). Транзистор от них все равно открывается и слышен слабый гул. Если на пине 1 то он гудит как мне нужно.
 

tretyakov_sa

Moderator
Команда форума
Если VCC идет на транзистор, то все соответствует схеме которую я дал. При такой схеме питать строго от 3.3 вольта. При питании от 5 вольт транзистор будет открыт и при "0" и "1". Все будет соответствовать заявленной теме
buzzer постоянно пищит
 
Сверху Снизу