tone() / Arduino
Описание
Генерирует на выводе прямоугольный сигнал заданной частоты (с коэффициентом заполнения 50%). Можно указать продолжительность, в противном случае сигнал будет выдаваться до вызова noTone()
. Вывод может быть подключен к пьезозуммеру или другому динамику для воспроизведения тона.
Одновременно может генерироваться только один тон. Если тон уже воспроизводится на другом выводе, вызов tone()
не будет иметь никакого эффекта. Если тон воспроизводится на том выводе, вызов установит следующую частоту.
Использование функции tone()
будет мешать выводу ШИМ сигнала на выходах 3 и 11 (на платах, отличающихся от Mega).
Тоны ниже 31 Гц генерировать невозможно.
Синтаксис
tone(pin, frequency)
tone(pin, frequency, duration)
Параметры
pin
: вывод, на котором необходимо генерировать тон.
frequency
: частота тона в герцах (unsigned int
).
duration
: продолжительность тона в миллисекундах (необязательно) (unsigned long
).
Возвращает
Ничего.
Примечания и предупреждения
Если вы хотите проиграть разные высоты на разных выводах, вам необходимо вызвать noTone()
на одном выводе, прежде чем вызвать tone()
на следующем выводе.