Почему мой код не воспроизводит звук для Arduino ?

У меня есть следующий код, который я использую, чтобы попытаться воспроизвести мелодию на моем Arduino, но мелодии нет, только постукивание.

Я использую встроенный tone() функция для воспроизведения через динамик/зуммер.

Я знаю, что мое оборудование настроено правильно, потому что запуск примера кода в Интернете дает хорошие результаты мелодия.

void setup() { }
void loop() {

    noTone(6);
  // C7 в восьмом месте
    tone(6, 2093, 250); delay(250);
    noTone(6);
    //B7 на восьмом месте
    tone(6, 3951, 250); delay(250);
    noTone(6);    
    //G7 на четвертом месте
    tone(6, 3136, 500); delay(500);
    noTone(6);
    //G7 на восьмом месте
    tone(6, 3136, 250); delay(250);
    noTone(6);
    //F7 на восьмом месте
    tone(6, 2794, 250); delay(250);
    noTone(6);
    //E7 на восьмом месте
    tone(6, 2637, 250); delay(250);
    noTone(6);
    //E7 на четвертом месте
    tone(6, 2637, 500); delay(500);
    noTone(6);
    //G7 на восьмом месте
    tone(6, 3136, 250); delay(250);
    noTone(6);
    //G7 пополам
    tone(6, 3136, 1000); delay(1000);
    noTone(6);
    //C6 на четвертом месте
    tone(6, 1047, 500); delay(500);
    noTone(6);
    //B6 на восьмом месте
    tone(6, 1976, 250); delay(250);
    noTone(6);
    //G6 на восьмом месте
    tone(6, 1566, 250); delay(250);
    noTone(6);
    //C6 в восьмом месте
    tone(6, 1047, 250); delay(250);
    noTone(6);

}

Это должна быть мелодия для покерфейса с использованием функцииtone()

, 👍-1

Обсуждение

вам не нужен noTone, если вы запускаете другой тон., @Juraj

Пример кода, на который вы ссылаетесь, показывает контакт 8 в качестве соединения, но ваш код показывает контакт 6. Если ваша настройка оборудования «Правильна», поскольку пример кода работает, вам нужно посмотреть, чем тогда отличается ваш код от примера кода. это, как известно, работает., @jose can u c


2 ответа


1

Я только что скачал его, и он у меня работает.

Хммм. Попробуйте загрузить другие примеры еще раз, просто чтобы убедиться, что вы не сдвинули перемычку.

Другой способ проверить это — сократить программу до одной или двух строк и посмотреть, работает это или нет.

,

0

Какой динамик/зуммер вы подключаете? Возможно, потребуется больший ток, чем может выдержать контакт (несколько десятков мА, абсолютный максимум 40 мА, чтобы предотвратить повреждение контакта).

,