Не останавливается зуммер

Тема в разделе "Arduino & Shields", создана пользователем Tfactor, 28 мар 2021.

  1. Tfactor

    Tfactor Нуб

    1. Код (C++):
      void setup() {
        Serial.begin(57600);
         pinMode(10, OUTPUT);

         tone (10, 600);

         delay(1000);

         tone(10, 900);

         delay(1000);

         noTone(10);
         digitalWrite(10, 0);

         delay(1000);
      }

      void loop() {
       
         Serial.println(digitalRead(10));

      }
     
  2. parovoZZ

    parovoZZ Гуру

    Вопрос в чём?
     
  3. Tfactor

    Tfactor Нуб

    Как заставить его прекращать пищать?
     
  4. parovoZZ

    parovoZZ Гуру

    Отключить. Электронно (программно) или физически через выключатель.
     
  5. Tfactor

    Tfactor Нуб

    В том-то и дело, мне надо отключить его программно, но он не реагирует на функцию noTone()
     
  6. Ariadna-on-Line

    Ariadna-on-Line Гуру

    Зуммер - это автопищалка. То бишь излучатель звука с генератором. Тогда команда tone(пин, частота) - не для него. Ему нужен только постоянный ток питания. Если он включен между +5в и пин10, подайте digitalWrite (10, HIGH) для замолкания.
     
    Tfactor нравится это.
  7. Tfactor

    Tfactor Нуб

    Спасибо большое, но почему-то, когда я заливаю прошивку без функции noTone(), но с digitalWrite(10, 1), все равно не останавливается, а когда вместе - все нормально, но в любом случае, спасибо!
     
    Последнее редактирование: 30 мар 2021
  8. Ariadna-on-Line

    Ariadna-on-Line Гуру

    Так может надо
    digitalWrite(10, HIGH) и digitalWrite(10, LOW) использовать ?
    digitalWrite(10, 1) - это не по-Ардуински вроде.
     
  9. akl

    akl Гуру

    Код (C++):
    #define HIGH 0x1
    #define LOW  0x0

    #define INPUT 0x0
    #define OUTPUT 0x1