Для генерации звука определенной частоты используется команда tone:
tone(контакт, частота) – генерировать сигнал определенной частоты (в Герцах) на определенном пине Arduino tone(контакт, частота, длительность) – генерировать сигнал определенной частоты (в Герцах) на определенном пине Arduino в течение заданного в миллисекундах времени noTone(контакт) – прекратить генерацию звука на этом контакте |
Примечание: команда tone может генерировать звук только на одном контакте. Для использования нескольких спикеров их можно либо подключить на один и тот же контакт, либо генерировать на них звук по очереди (только один спикер звучит в определенный момент времени). Еще вариант – генерировать частоты на пинах, не используя команду tone
Подключать низкоомные динамики (например, 4 Ом, 8 Ом) напрямую на вход Arduino нельзя, так как в этом случае ток через динамик в соответствии с законом Ома U = I · R
I = U / R = 5 В / 4 Ом = 1,25 А = 1250 мА, что намного больше тока, который допустим для пина Arduino 40 мА
Поэтому мощные динамики подключают, например, через транзистор (схема будет рассмотрена позже) или, как и в случае со светодиодом, используют резистор, чтобы ограничить проходящий через динамик ток (схема слева).
|
|
Используемые в занятии спикеры с материнских плат компьютеров имеют высокое сопротивление и малый ток (но и существенно тише звук), поэтому можно их подключать напрямую к пину Arduino одним контактом, и к земле другим контактом. На некоторых спикерах есть маркировка полярности, но особой разницы, какой контакт спикера подключить к пину Arduino, а какой – к земле, нет.