Съдържание:

Пиано Arduino с превключватели с бутони: 3 стъпки
Пиано Arduino с превключватели с бутони: 3 стъпки

Видео: Пиано Arduino с превключватели с бутони: 3 стъпки

Видео: Пиано Arduino с превключватели с бутони: 3 стъпки
Видео: #3 Как запрограммировать ПЛК Outseal Arduino — контакты и реле 2024, Юли
Anonim
Пиано Arduino с превключватели с бутони
Пиано Arduino с превключватели с бутони
Пиано Arduino с превключватели с бутони
Пиано Arduino с превключватели с бутони

Създадено от: Haotian Ye

Общ преглед

Това е пиано дъска с осем превключвателя с бутони, която ви позволява да свирите една октава (Do Re Mi Fa So La Si Do) и с тази една октава можете да опитате да свирите някои песни, които харесвате. За този проект има някои важни знания, които трябва да знаете, преди да започнете.

Първо, трябва да знаем честотите на основните ноти на пиано.

Честотите са изброени по -долу:

Do - 261Hz

Re - 294Hz

Mi - 329Hz

Fa - 349Hz

Така че - 392Hz

La - 440Hz

Si - 493Hz

Do - 523Hz

Второ, ще ви покажа как да изградите веригата, като използвате частите, които могат да бъдат закупени от електронния магазин на Lee. Накрая , ще представя и обясня кода, който трябва да бъде качен на дъската на Arduino.

Части, които ще ви трябват:

Arduino Uno R3 (ID на продукта: 10997)

USB A към B кабел M/M (ID на продукта: 29861)

10K резистор * 8 (ID на продукта: 91516)

Различни цветове на Tack Switch * 8 (ID на продукта: 3124, 31242, 31243, 31245, 31246)

Мини високоговорител (ID на продукта: 41680)

Платформа (ID на продукта: 106861)

Джъмперни проводници (ID на продукта: 21801)

Стъпка 1: Стъпка 1: Изграждане на веригата

Стъпка 1: Изграждане на веригата
Стъпка 1: Изграждане на веригата
Стъпка 1: Изграждане на веригата
Стъпка 1: Изграждане на веригата
Стъпка 1: Изграждане на веригата
Стъпка 1: Изграждане на веригата
Стъпка 1: Изграждане на веригата
Стъпка 1: Изграждане на веригата

Първо поставете всички превключватели с бутони и мини високоговорителя в чертежа един по един и ги съпоставете на един ред. След това свържете щифтовете на всеки бутон за превключване към земята. Второ свържете 10k резистора между положителната мощност и другите щифтове на всеки бутон. И свържете тази колона към щифтове 2-9 на Arduino Board. Също така, свържете земята към заземяващия щифт и положителната мощност към 3.3v щифт на Arduino. Накрая свържете мини високоговорителя към щифта 10 на Arduino.

Стъпка 2: Стъпка 2: Код и обяснение

Кодът по -долу е това, което написах

const int черно = 2;

const int бяло = 3;

const int червено = 4;

const int зелено = 5;

const int синьо = 6;

const int black2 = 7;

const int green2 = 8;

const int red2 = 9;

const int speaker = 10; // Свържете всички превключватели с бутони и високоговорител със сигналните щифтове на arduino

int честота = {262, 294, 330, 349, 392, 440, 493, 523}; // масивът съдържа всички честоти от една октава

void setup () {

// поставете кода за настройка тук, за да стартирате веднъж:

pinMode (черен, INPUT);

pinMode (бял, INPUT);

pinMode (червен, INPUT);

pinMode (зелен, INPUT);

pinMode (син, INPUT);

pinMode (black2, INPUT);

pinMode (green2, INPUT);

pinMode (red2, INPUT);

pinMode (високоговорител, OUTPUT);

тон (оратор, 2000);

Serial.begin (9600);

}

void loop () {

// поставете основния си код тук, за да се изпълнява многократно:

if (digitalRead (черен) == LOW) // когато натиснете превключвателя "DO"

{тон (високоговорител, честота [0], 50);

забавяне (50);

noTone (говорител);}

иначе if (digitalRead (бяло) == LOW) // когато натиснете превключвателя с бутон "RE"

{тон (високоговорител, честота [1], 50);

забавяне (50);

noTone (говорител);}

else if (digitalRead (red) == LOW) // когато натиснете превключвателя с бутон "MI"

{тон (високоговорител, честота [2], 50);

забавяне (50);

noTone (говорител);}

else if (digitalRead (green) == LOW) // когато натиснете превключвателя с бутон "FA"

{тон (високоговорител, честота [3], 50);

забавяне (50);

noTone (говорител);}

else if (digitalRead (blue) == LOW) // когато натиснете превключвателя "SO"

{тон (високоговорител, честота [4], 50);

забавяне (50);

noTone (говорител);}

else if (digitalRead (black2) == LOW) // когато натиснете превключвателя "LA"

{тон (високоговорител, честота [5], 50);

забавяне (50);

noTone (говорител);}

else if (digitalRead (green2) == LOW) // когато натиснете превключвателя "SI"

{тон (високоговорител, честота [6], 50);

забавяне (50);

noTone (говорител);}

else if (digitalRead (red2) == LOW) // когато натиснете превключвателя "DO"

{тон (високоговорител, честота [7], 50);

забавяне (50);

noTone (говорител);}

else // когато не натиснете нищо

noTone (говорител);

}

Първо, трябва да обявим всички превключватели и високоговорители с бутони като щифт от 2 до 10 на Arduino. Всеки превключвател представлява една нота. След това използвайте един масив, за да поставите всички честоти вътре. След това изявлението If и else е това, което използвам, за да уведомя Arduino кой превключвател с бутон натискам.

И накрая, свържете вашата Arduino платка към вашия компютър или лаптоп с usb кабел A към B. Преди да качите кода си, все още трябва да изтеглите софтуера Arduino и да направите някои настройки по подразбиране. Изберете Инструменти -> Табло -> Arduino/Genuino Uno; След това трябва да изберем комуникационния порт, свързан към платката Arduino. Изберете Инструменти -> Порт, след което името на порта е означено с „(Arduino/Genuino Uno)“. След това можете да качите кода на дъската на Arduino.

Препоръчано: