Функция tone() останавливает сигнал, генерируемый выводе Arduino, вызванный функцией tone(). Если сигнал не генерируется, то вызов данной функции ни к чему не приведёт.
ПРИМЕЧАНИЕ. Если необходима генерация сигналов на разных выводах Arduino, то нужно вначале остановить один сигнал функцией noTone(), и затем генерировать новый сигнал на другом выводе функцией tone().
Синтаксис:
1 |
noTone (pin) |
Где:
- pin — номер вывода Arduino, на котором будет остановлена генерация сигнала (меандра).
Пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
const byte sound_pin = 11; // вывод 11 Arduino для динамика void setup() { } void loop () { tone(sound_pin, 1915); // воспроизводим сигнал с частотой 1915 Гц delay(1000); // ждём 1000 мс (длительность воспроизведения сигнала) tone(sound_pin, 1700); delay(1000); tone(sound_pin, 1519); delay(1000); tone(sound_pin, 1432); delay(1000); tone(sound_pin, 1275); delay(1000); tone(sound_pin, 1136); delay(1000); tone(sound_pin, 1014); delay(1000); noTone(sound_pin); // выключаем звук } |
В данном примере к цифровому выводы № 11 Arduino подключается пьезодинамик. В основном цикле (функция loop()) программы реализован алгоритм воспроизведения мелодии.