Menu
CoddyTech

Звуковые сигналы и тишина

Часть раздела Выходные сигналы путешествия по Arduino на Coddy. Урок 11 из 24.

Чтобы остановить звук, вызови noTone(pin). Звуковой сигнал — это тон, ожидание, затем тишина:

tone(8, 1000);
delay(100);
noTone(8);

В tone() можно также передать третье число — длительность в миллисекундах. После этого тон остановится сам:

tone(8, 1000, 100);  // звуковой сигнал длительностью 100 ms
delay(200);         // звуковой сигнал, затем 100 ms тишины

Внимание: tone() не ждёт окончания звукового сигнала. Следующая строка выполняется сразу, пока зуммер всё ещё звучит. Поэтому для разделения сигналов по-прежнему нужен delay(): без него два сигнала подряд накладываются друг на друга, и ты слышишь один.

challenge icon

Задание

Легко

Заставь зуммер на контакте 8 пищать парами, как звонящий телефон:

  • сигнал частотой 1000 Гц длительностью 100 мс
  • 100 мс тишины
  • второй сигнал длительностью 100 мс
  • одна секунда тишины, затем повтор

Нажми Run, затем Check.

Попробуйте сами

const int buzzerPin = 8;

void setup() {
}

void loop() {
  // звуковой сигнал, короткая пауза, звуковой сигнал, затем секунда тишины
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Выходные сигналы

Потренируйтесь самостоятельно: Песочница Arduino