Работа с звуком
Функция tone() в Arduino IDE поможет в озвучивании поделок. На сайте www.arduino.ru имеется следующее описание данной функции.
tone()
Генерирует на порту вход/выхода сигнал — прямоугольную «волну», заданной частоты и с 50% рабочим циклом. Длительность может быть задана параметром, в противном случае сигнал генерируется пока не будет вызвана функция noTone(). К порту вход/выхода может быть подключен пьезо или другой динамик для воспроизведения сигнала.
Воспроизводиться одновременно может только один сигнал. Если сигнал уже воспроизводится на одном порту, то вызов Tone() с номером другого порта в качестве параметра ни к чему не приведет, если же Tone() будет вызвана с тем же номером порта, то будет установлена новая частота сигнала.
Использование функции Tone() помешает использовать ШИМ на портах вход/выхода 3 и 11 (кроме платы Arduino Mega).
Собираем схему согласно рисунка
В Arduino IDE создаем новый скетч и вставляем следующий код
void setup() { // Настройка порта 5 на выход pinMode(5, OUTPUT); } void loop() { tone(5, 262, 100);// генерируется сигнал на пин 5 частотой 262 Гц 100 мс - нота до delay(100);// задержка между сигналами tone(5, 294, 100);//нота ре delay(100); // задержка между сигналами tone(5, 330, 100); //нота ми delay(100); // задержка между сигналами tone(5, 349, 100); //нота фа delay(100); // задержка между сигналами tone(5, 392, 100); //нота соль delay(100); // задержка между сигналами tone(5, 440, 100); //нота ля delay(100); // задержка между сигналами tone(5, 494, 100); //нота си delay(100); // задержка между сигналами tone(5, 523, 100); //нота до delay(2000); // задержка между сигналами }
Загружаем скетч в Arduino и наслаждаемся гаммой.
Теперь, поискав в интернете ноты к любимой мелодии, поделка может её проиграть.