Arduino зуммер кодовая последовательность не срабатывает

У меня проблема с моим зуммером arduino: код должен выполнять следующие действия: У меня есть охранная система, где для того, чтобы открыть дверь, нужно ввести 4-значный код с пульта дистанционного управления. Если код верен, дверь открывается. если нет, вы можете попробовать еще раз. У вас есть 3 шанса попытаться ввести PIN до того, как сработает сигнализация. вот тут-то и возникает проблема: срабатывает код тревоги, но зуммер не издает никакого звука.

вот код для звукового сигнала тревоги:

if (tryCount>=3) { // if the pin is wrong 3 times we sound an alarm
    Serial.println("got in alarm");
    while(true) {
        Serial.println("got in while");
        noTone(buzzer);
        tone(buzzer,100,300);
        delay(300);
        noTone(buzzer);
        tone(buzzer,1000,300);
        delay(300);
    }
}

вот доказательство срабатывания тревожного кода:

trigger proof

вот полный код: https://create.arduino.cc/editor/mihimbc/8ec2fe30-d812-45cc-b0ae-850b437eb05b/preview

а вот и аппаратная схема:

arduino schmatics

, 👍2

Обсуждение

Является ли зуммер активным или пассивным? Только пассивные зуммеры могут управляться с помощью " tone(). Активные зуммеры могут включаться или выключаться только с помощью функции digitalWrite(), @chrisl

он очень активный. кстати, когда я перемещаю инструкцию для зуммера внутрь цикла, она работает, но в этой конкретной части программы-нет. и странно, что в соответствии с Serial.println, который я поместил внутрь while, кажется, что он добирается туда, но из зуммера не доносится ни звука, @mihalca bogdan


1 ответ


Лучший ответ:

1

Проблема была с зуммером, каким-то образом был неисправен зуммер, мне удалось его заменить, и проблема была решена. Спасибо всем за то, что вы уделили мне время и попытались помочь!

,