Моя Ардуинка собственной персоной (всегда думал что она синяя, а она красная пришла).
Спикер. Добыт из недр системного блока.
Так как просто пропищать будет немного скучно и неэффектно и никто не поверит, то решил добавить светодиод. У меня с того же сайта были заказаны как обычные, так и трехцветные, решил позабавиться с трехцветными.
Светодиод трехцветный (RGB).
Подключив все по стандартной схеме приступил к написанию кода. Приведу лишь маленькие примеры из скетча, что бы какое-то представление имелось (что-то заимствовал из Интернета, что-то писал сам).
Сначала я объявил константы в виде нот, найдя в Инете их тон:
const int c = 261; // Нота До
const int d = 294; // Нота Ре
и т.д.
Нужно задействовать светодиод, не скажу, что гениальное решение, но ничего другого в голову не пришло.. Если тон меньше 600 Герц, то синий, выше 600, но ниже 750 - зеленый, ещё выше - красный. Пишется это очень просто:
if (ton<=600)
{
digitalWrite(2,HIGH);
digitalWrite(4,LOW);
digitalWrite(7,LOW);
}
Остальное по аналогии.
Немного теории: в языке ардуино есть функция tone, которая имеет параметры: вход на котором стоит динамик, тональность, длительность; но нужна ещё и задержка перед следующей нотой. Приводить код не буду, но думаю что все логично.
Я назову её beep...потому что её все так называют. И имеет она у меня два параметра нота (писал выше) и время звучания ноты. Далее все как по нотам :D
beep(a, 500);
beep(a, 500);
beep(a, 500);
beep(f, 350);
На этом все. Не претендую на уникальность и гениальность, просто немного HOW TO вам в ленту. Спасибо тем кто дочитал, если есть вопросы отвечу. Коротенькое видео того, что получилось: