Оглавление:
- Шаг 1. Необходимые материалы
- Шаг 2: Время строительства
- Шаг 3. Модуль звукового датчика и светодиод RGB
- Шаг 4: Код
- Шаг 5: Заключительные мысли
Видео: Клавиатурный модуль фортепиано с RGB-светодиодами: 5 шагов (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:52
вступление
Здравствуйте, дамы и господа, добро пожаловать на мой самый первый инструктаж! Сегодня я научу вас, как создать фортепиано с основными компонентами, являющимися модулем клавиатуры и пьезозуммером, и научу его воспроизводить DO-RE-MI и так далее.
Модуль клавиатуры чаще всего предназначен для использования в качестве клавиатуры в сочетании с RFID-меткой Arduino для создания сейфа для ценных вещей. В этом случае я поменял клавиатуру, вместо того, чтобы защищать что-то, я решил использовать простую радость и музыку.
Идея Концепция
Идея этого творения возникла из простого счастливого воспоминания, когда я играл на ксилофоне, когда я был моложе в музыкальном классе. Количество радости и возбуждения, пробегающее по моему телу, было на пике, я имею в виду, что каждый ребенок был легко удовлетворен, а мое удовлетворение от игры на ксилофоне.
Исследовать
После того, как лампочка вашей идеи загорится выше, нужно провести небольшое исследование. Посмотрев какое-то время в Интернете, я наткнулся на свою идею, о которой изначально думал! Модуль клавиатуры превратился в пианино, здесь кто-то создал такое же видео проекта. Забегая вперед, мне нужно было добавить отдельный компонент, который еще больше улучшил бы проект, но сделал бы его более интересным и мог бы назвать его своим.
Шаг 1. Необходимые материалы
Список материалов
- Пьезозуммер 1x ▶
- Модуль клавиатуры 4x4 1x ▶
- Arduino Uno 1x ▶
- Кабель USB 2.0 типа A / B 1x ▶
- Модуль звукового датчика 1x ▶
- Светодиод RGB 1x ▶
- Резистор 330 Ом 3x ▶
- Перемычка между штекером и гнездом 8x ▶
- 4x перемычка между мужчинами и женщинами ▶
- 3-контактная перемычка между штекером и гнездом 1x ▶
Список материалов приведен в порядке изображений выше.
Шаг 2: Время строительства
Модуль клавиатуры 4x4 и пьезо-зуммер
Теория
Поскольку модуль клавиатуры 4x4 и пьезозуммер содержат так много отдельных входных контактов, я решаю разделить используемые компоненты на две пары. Ориентация на клавиатуру, обычно используемую как вход. Модуль матричной клавиатуры SunFounder 4 * 4 представляет собой матричную некодированную клавиатуру, состоящую из 16 клавиш, включенных параллельно. Клавиши каждой строки и столбца подключаются через контакты снаружи - контакты Y1-Y4, как указано рядом, управляют строками, когда X1- Х4, колонны.
Цель
Назначение этих компонентов для всего проекта состоит в том, чтобы позволить пользователю нажимать кнопку, которая настроена на определенный звук, создаваемый пьезозуммером через частоту в герцах.
Вывод матричного модуля - вывод Arduino
- 4 - 2
- 3 - 3
- 2 - 4
- 1 - 5
- 5 - 6
- 6 - 7
- 7 - 8
- 8 - 13
Пьезо-зуммер - вывод Arduino
Черный - GND
Красный - Мощность
Моя самая сложная задача в этой сборке - выяснить, куда подключается каждый провод. Выше я расскажу вам, как быстро и легко найти места для проводов, при условии, что следуйте инструкциям сверху вниз, не торопитесь и убедитесь, что каждый штифт правильно вставлен в правильный слот.
* Совет: проследите, где находится каждый провод, от одного конца до другого.
Все эскизы конкретных компонентов проводов Tinkercad имеют правильную цветовую кодировку, поэтому внимательно следите за ними
Шаг 3. Модуль звукового датчика и светодиод RGB
Модуль звукового датчика и светодиод RGB
Теория
Модуль звукового датчика позволяет определять, когда уровень звука превышает установленное вами значение. Звук улавливается микрофоном и подается в операционный усилитель LM393. Когда уровень звука превышает заданное значение, на модуле загорается светодиод и выход.
Цель
Назначение этих компонентов для всего проекта состоит в том, чтобы получить показания звука / громкости модуля звукового датчика, и посредством этого считывания светодиод RGB активирует правильный цвет, относящийся к звуку.
Модуль звукового датчика - вывод Arduino (используйте 3-контактную перемычку)
- Выход - аналоговый вывод A0
- GND - Любой открытый контактный слот GND
- VCC - 3 В
Светодиод с общим анодом (+) RGB - вывод Arduino
- Красный - 9
- Мощность - 5В
- Зеленый - 10
- Синий - 11
Имейте в виду, что каждый отдельный провод должен проходить через резистор 330 Ом. Используйте изображение выше как ссылку.
Моя самая сложная задача в этой сборке - выяснить, куда подключается каждый провод. Выше я предлагаю вам быстрый и простой способ определения местоположения проводов, если следовать ему сверху вниз, совет - не торопитесь и убедитесь, что каждый вывод правильно вставлен в правильный слот, чтобы предотвратить будущую отладку.
* Совет: следите за тем, где вставляется каждый провод, в любом случае
Все эскизы отдельных проводов компонентов Tinkercad имеют правильную цветовую кодировку, поэтому следуйте инструкциям
Шаг 4: Код
Код
Этот код позволяет всем компонентам работать вместе, используя вновь определенную функцию, содержащую все множество элементов управления, один компонент, который имеет много изменяемых переменных, эти компоненты были светодиодом RGB и с использованием цвета rgb для изменения цвета при включении, а также пьезозуммера и звук, который он будет издавать, в зависимости от нажатия кнопки.
В этом коде должна быть библиотека клавиатуры.
Ссылка здесь:
После загрузки добавьте новую библиотеку в Arduino, а затем вставьте одну строку кода, необходимую для ее активации.
Трудности, которые у меня возникли во время кода, заключались в том, где разместить вновь определенные функции, поскольку методом проб и ошибок я понял, что это должно быть в настройке, а не в цикле.
Код
#include // Библиотека клавиатуры
int greenPin = 11; // Зеленый вывод RGB подключен к цифровому выводу 9
int redPin = 10; // Красный вывод RGB, подключенный к цифровому выводу 9
int bluePin = 9; // Синий вывод RGB подключен к цифровому выводу 9 int speakerPin = 12; // динамик, подключенный к цифровому выводу 12 const byte ROWS = 4; // четыре строки const byte COLS = 4; // четыре цвета const int soundPin = A0; // звуковой датчик присоединяется к A0
символьные ключи [ROWS] [COLS] = {
{'a', 'b', 'c', 'd'}, {'e', 'f', 'g', 'h'}, {'i', 'j', 'k', ' l '}, {' m ',' n ',' o ',' p '}}; // Визуализация модуля клавиатуры
byte rowPins [ROWS] = {2, 3, 4, 5}; // подключаемся к выводам ряда клавиатуры
byte colPins [COLS] = {6, 7, 8, 13}; // подключаемся к колонке распиновки клавиатуры
Keypad keypad = Keypad (makeKeymap (keys), rowPins, colPins, ROWS, COLS); // Создает ключи
void setup () {
pinMode (динамикPin, ВЫХОД); // устанавливает динамик как выход
pinMode (redPin, ВЫХОД); // устанавливает красный контакт как выходной pinMode (greenPin, OUTPUT); // устанавливает зеленый контакт как выходной pinMode (bluePin, OUTPUT); // устанавливает синюю булавку как выход
Serial.begin (9600);
} void setColor (int red, int green, int blue) // Новая определенная функция, позволяющая RGB отображать цвет через код RGB {#ifdef COMMON_ANODE red = 255 - red; green = 255 - зеленый; blue = 255 - синий; #endif analogWrite (redPin, красный); analogWrite (greenPin, зеленый); analogWrite (bluePin, синий); }
void beep (unsigned char speakerPin, int frequencyInHertz, long timeInMilliseconds) {// звуковые функции
int x; long delayAmount = (long) (1000000 / frequencyInHertz); long loopTime = (long) ((timeInMilliseconds * 1000) / (delayAmount * 2)); для (x = 0; x
void loop () {
char key = keypad.getKey (); int value = analogRead (soundPin); // считываем значение A0 Serial.println (value); // выводим значение
if (ключ! = NO_KEY) {
Serial.println (ключ); } если (ключ == 'а') {звуковой сигнал (SpeakerPin, 2093, 100); setColor (218, 112, 214); } если (ключ == 'б') {звуковой сигнал (SpeakerPin, 2349, 100); setColor (218, 112, 214); } если (ключ == 'c') {звуковой сигнал (динамикPin, 2637, 100); setColor (218, 112, 214); } если (ключ == 'd') {звуковой сигнал (динамикPin, 2793, 100); setColor (218, 112, 214); } если (ключ == 'е') {звуковой сигнал (SpeakerPin, 3136, 100); setColor (218, 112, 214); } если (ключ == 'е') {звуковой сигнал (SpeakerPin, 3520, 100); setColor (218, 112, 214); } если (ключ == 'g') {звуковой сигнал (динамикPin, 3951, 100); setColor (218, 112, 214); } если (ключ == 'ч') {звуковой сигнал (SpeakerPin, 4186, 100); setColor (218, 112, 214); } если (ключ == 'я') {звуковой сигнал (SpeakerPin, 2093, 100); setColor (230, 230, 0); } если (ключ == 'j') {звуковой сигнал (SpeakerPin, 2349, 100); setColor (180, 255, 130); } если (ключ == 'k') {звуковой сигнал (динамикPin, 2637, 100); setColor (130, 255, 130); } если (ключ == 'л') {звуковой сигнал (SpeakerPin, 2739, 100); setColor (130, 220, 130); } если (ключ == 'м') {звуковой сигнал (SpeakerPin, 3136, 100); setColor (0, 255, 255); } если (ключ == 'п') {звуковой сигнал (SpeakerPin, 3520, 100); setColor (0, 220, 255); } если (ключ == 'о') {звуковой сигнал (SpeakerPin, 3951, 100); setColor (0, 69, 255); } если (ключ == 'р') {звуковой сигнал (динамикPin, 4186, 100); setColor (255, 0, 255); }}
Шаг 5: Заключительные мысли
Последние мысли
Заключительные мысли об этом проекте: его предназначение - быть игрушкой, приносить веселье и простую радость. Поскольку этот проект является завершенным и работает над ним, я считаю, что эта сборка может быть дополнена, возможно, дополнительными компонентами, такими как элемент записи, или элемент copy / simon say, или даже ЖК-дисплей с нотами, появляющимися для воспроизведения определенной песни.
Я хотел бы узнать ваше мнение о модуле клавиатуры, какие компоненты, по вашему мнению, могли быть добавлены. Собираетесь ли вы использовать его в каком-нибудь из ваших проектов? Пожалуйста, разместите свои идеи в разделе комментариев ниже.
Не забудьте поделиться, если вам понравился этот проект Arduino.
Рекомендуемые:
Светодиодный модуль RGB на 500 пикселей: 9 шагов (с изображениями)
500 LED-Pixel RGB-Brick: Некоторое время назад я создал светодиодный шкаф 10x10 LED с некоторыми из этих светодиодов WS2812, но даже если можно играть в олдскульную игру Snake с подключенным к нему смартфоном, я хочу чего-то большего. особый. Поэтому я решил поставить к нему еще несколько светодиодов, ара
Arduino - Плитки для фортепиано: 16 шагов (с изображениями)
Arduino - Piano Tiles: Здравствуйте, интернет-пользователи! Речь пойдет о том, как сделать то, что ОПРЕДЕЛЕННО не является копией мобильной игры на arduino uno r3. Поэтому для начала вам понадобятся все части, а именно: ! 1x Arduino Uno r3 (42 доллара США) 2x LCD Keypad Shield (19 долларов США каждый) 5
Простое электронное фортепиано: 3 шага (с изображениями)
Простое электронное пианино: электроника может очень легко создавать звуки, используя всего несколько частей. Вот как сделать простое пианино, используя таймер 555. Я спроектировал и протестировал эту схему с помощью Tinkercad, а затем собрал настоящую вещь. Вот все, что вам понадобится: 1 x
Светодиодный модуль Arduino RGB: 4 шага (с изображениями)
Светодиодный модуль Arduino RGB: сегодня вы узнаете, как использовать светодиодный модуль RGB, который можно использовать как несколько светодиодов одновременно. Я получил свой от Kuman, как включенный в их комплект Arduino UNO Kit, который был предоставлен для этого урока бесплатно
Напольное фортепиано: 9 шагов (с изображениями)
Напольное пианино: Я сделал это напольное пианино как проект для работы. Конечно, нас вдохновил фильм «БОЛЬШОЙ» - вы знаете эту сцену - где Том Хэнкс и Роберт Лоджия играют на гигантском напольном пианино в FAO Schwarz. Это доставило мне много хлопот и потребовало очень, пяти