tone() / Arduino

Добавлено 31 октября 2018 в 21:31

Описание

Генерирует на выводе прямоугольный сигнал заданной частоты (с коэффициентом заполнения 50%). Можно указать продолжительность, в противном случае сигнал будет выдаваться до вызова noTone(). Вывод может быть подключен к пьезозуммеру или другому динамику для воспроизведения тона.

Одновременно может генерироваться только один тон. Если тон уже воспроизводится на другом выводе, вызов tone() не будет иметь никакого эффекта. Если тон воспроизводится на том выводе, вызов установит следующую частоту.

Использование функции tone() будет мешать выводу ШИМ сигнала на выходах 3 и 11 (на платах, отличающихся от Mega).

Тоны ниже 31 Гц генерировать невозможно.

Синтаксис

tone(pin, frequency)
tone(pin, frequency, duration)

Параметры

pin: вывод, на котором необходимо генерировать тон.

frequency: частота тона в герцах (unsigned int).

duration: продолжительность тона в миллисекундах (необязательно) (unsigned long).

Возвращает

Ничего.

Примечания и предупреждения

Если вы хотите проиграть разные высоты на разных выводах, вам необходимо вызвать noTone() на одном выводе, прежде чем вызвать tone() на следующем выводе.

 

Теги

ArduinoПрограммирование

На сайте работает сервис комментирования DISQUS, который позволяет вам оставлять комментарии на множестве сайтов, имея лишь один аккаунт на Disqus.com.

В случае комментирования в качестве гостя (без регистрации на disqus.com) для публикации комментария требуется время на премодерацию.


  • 2020-06-21alex malex

    Про минимальную частоту сигнала оператора tone() нам сказали - а вот какова будет МАКСИМАЛЬНАЯ частота генерации?