Почему зуммер не выключается после работы tone?

MrNikto

✩✩✩✩✩✩✩
12 Сен 2021
45
0
Всем привет. Подключил зуммер(пищалку) и запустил с помощью tone(8, 400, 400). Но даже после работы, он издает тихие импульсные звуки и потребляет 3 - 3.2 mA
Схема подключения обычное: D8, GND, VCC
Пробовал отключить питание после завершения, тихие импульсные звуки исчезли, но потребление все равно 3 - 3.2 mA.
Функция noTone() тоже не помогла
Сам зуммер в виде готово модуля с Али
C++:
#include <GyverPower.h>

void setup() {
  power.autoCalibrate();
  power.setSleepMode(POWERDOWN_SLEEP);
 
  pinMode(7, OUTPUT); // Мосфет для отключения питания
  digitalWrite(7, 1);
  pinMode(8, OUTPUT);
}

void loop() {
  tone(8, 400, 400);
  delay(400);
  noTone(8);
  digitalWrite(7, 0);
  power.sleepDelay(5000);
}
 

Старик Похабыч

★★★★★★★
14 Авг 2019
4,226
1,292
Москва
Что бы проверить фантомные писки попробуйте перенести на 7-ой пин.
При подключении пищалки рекомендуется использовать резистор.
Далее vcc пищалки можно подключить к другом цифровому пину и перед уходом в глубокий сон принудительно ставить состояние пина в 0, а если надо пищать , то конечно в 1
 

PiratFox

★★★★★✩✩
13 Фев 2020
1,707
474
@MrNikto,а можете фотку крупным планом выложить, с нескольких сторон.
 

PiratFox

★★★★★✩✩
13 Фев 2020
1,707
474
@MrNikto, Насколько я вижу, это активная пищалка. Даже если на неё частоту не подавать, всё равно пищать будет при низком уровне на входе. Low Level Trigger. Попробуйте отсоединить её от ардуины, сохранив питание, и входом I/O поиграться. Ну, чтобы убедится.
 

MrNikto

✩✩✩✩✩✩✩
12 Сен 2021
45
0
@PiratFox, Вот только что пробовал, ничего

@PiratFox, потребление 3.2mA сохраняется даже после выключения питания. Зуммер тогда уже не пищит. Возможно ли что потребление идёт через пин?
 

MrNikto

✩✩✩✩✩✩✩
12 Сен 2021
45
0
@PiratFox, через входное напряжение gnd ардуино после отправки в сон. Выключаю с помощью мосфета
 

PiratFox

★★★★★✩✩
13 Фев 2020
1,707
474
Ага. Попробуйте вход I/O затянуть на + питания, через резистор примерно 10 кОм.
 

PiratFox

★★★★★✩✩
13 Фев 2020
1,707
474
@MrNikto, тогда, похоже, плата зуммера того. Бракованная. Увы и ах.
 

Геннадий П

★★★★★★✩
14 Апр 2021
1,950
621
44
Давно бы уже проверили модуль пищалки отдельно. Подключаете к питанию. Управляющий вход подключаете на GND - должна пищать, при переключении на VCC - должна отключаться.

И да. К какому модулю подключаете: ардуино, есп или еще чего?
Потому как если эту пищалку подключить к питанию 5В, а управляющий сигнал подать 3.3В (например с ЕСП) то из-за разницы напряжений управляющий мосфет на пищалке может не полностью закрываться.
 

MrNikto

✩✩✩✩✩✩✩
12 Сен 2021
45
0
@Геннадий П, использую ардуино нано атмега 168. Пробовал разное питание, 5в и напрямую от li-ion аккумулятора 3.6в, результат одинаковый
 

bort707

★★★★★★✩
21 Сен 2020
3,009
898
проверяй отдельно, без контроллера
не будет он работать отдельно, это пассивный бузер. Описание и схема легко находится в гугле .

Транзистор тут исключительно для усиления сигнала

@MrNikto, чтобы уменьщить потребление - кроме выключения питания мосфетом попробуйте добавить перевод управляющего пина в Z-состояние
C++:
pinMode(8, INPUT);
перед следующим включением бузера не забудьте перевести пин обратно в ВЫХОД
 
Изменено:
  • Лойс +1
Реакции: Старик Похабыч

MrNikto

✩✩✩✩✩✩✩
12 Сен 2021
45
0
чтобы уменьщить потребление - кроме выключения питания мосфетом попробуйте добавить перевод управляющего пина в Z-состояние
@bort707, Спасибо Вам большое! Теперь после завершения ничего не потребляет.
Я читал, что функция tone сама переводит pin в OUTPUT. Пробовал убрать OUTPUT перед включением и все равно работает. Еще раз спасибо!