Съдържание:
Видео: Пиано Arduino: 3 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:50
Това "Пиано" е в състояние да свири октава на истинско пиано. Натискането на бутоните ще представлява натискане на клавиш на пианото. Звукът ще се предава през пиезо говорител.
Стъпка 1: Материали
1. Arduino Uno
2. USB проводник
3. 3 дъски
4. 8 Бутони
5. 8 100 Ома резистори
6. Лектор „Пиезо“
7. Много мъжки проводници (около 20)
8. Поялник
Стъпка 2: Изградете настройката
Изградете 8 бутона, като всеки влиза в 8 различни щифта в Arduino, добавяйки резистор към всеки и ги свързвате към земята (използвайки мъжки проводници).
Свържете високоговорителя към определения щифт Arduino, а другата страна към земята. Ще трябва да запоите проводниците към високоговорителя, за да не падне. Уверете се, че двата проводника, споени към високоговорителя, не се допират един до друг.
Стъпка 3: Изграждане на кода
#define NOTE_B0 31 #define NOTE_C1 33 #define NOTE_CS1 35 #define NOTE_D1 37 #define NOTE_DS1 39 #define NOTE_E1 41 #define NOTE_F1 44 #define NOTE_FS1 46 #define NOTE_G1 49 #define NOTE_DEFine NOTE_B1 62 #define NOTE_C2 65 #define NOTE_CS2 69 #define NOTE_D2 73 #define NOTE_DS2 78 #define NOTE_E2 82 #define NOTE_F2 87 #deteine NOTE_FS2 93 #define NOTE_G2 98 #dete NOTE_DefineNET2 #define NOTE_C3 131 #define NOTE_CS3 139 #define NOTE_D3 147 #define NOTE_DS3 156 #define NOTE_E3 165 #define NOTE_F3 175 #define NOTE_FS3 185 #define NOTE_G3 196 #dete NOTE_G3 233 ЗАБЕЛЕЖКА_C4 262 #дефинирай ЗАБЕЛЕЖКА_CS4 277 #дефинирай ЗАБЕЛЕЖКА_D4 294 #дефинирай ЗАБЕЛЕЖКА_F4 349 #дефинирай ЗАБЕЛЕЖКА_FS4 370 #дефинирай ЗАБЕЛЕЖКА_G4 392 #дефинирай ЗАБЕЛЕЖКА4 #д efine NOTE_CS5 554 #define NOTE_D5 587 #define NOTE_DS5 622 #define NOTE_E5 659 #define NOTE_F5 698 #define NOTE_FS5 740 #deteine NOTE_G5 784 #deteine ЗАБЕЛЕЖКА_GS5 831 #deteNET6 1109 #define NOTE_D6 1175 #define NOTE_DS6 1245 #define NOTE_E6 1319 #define NOTE_F6 1397 #define NOTE_FS6 1480 #define NOTE_G6 1568 #deteine NOTE_GS6 1661 #define NOTE_A6 1760 #define6DEFine дефинирай NOTE_D7 2349 #define NOTE_DS7 2489 #define NOTE_E7 2637 #define NOTE_F7 2794 #define NOTE_FS7 2960 #define NOTE_G7 3136 #define NOTE_GS7 3322 #define NOTE_A7 3520 #dete NOTE_Ef7 4699 #дефинирай ЗАБЕЛЕЖКА_DS8 4978
Тези "#дефиниции" са за да кажат на говорещия коя честота прави коя бележка
const int C = 2; const int D = 3; const int E = 4; const int F = 5; const int G = 6; const int A = 7; const int B = 8; const int C2 = 9; const int piezoPin = 10; int cState = 0; int dState = 0; int eState = 0; int fState = 0; int gState = 0; int aState = 0; int bState = 0; int c2State = 0;
Определете щифтовете на Arduino към бутоните. "cState, dState, eState и т.н.;" са променливи, които запазват дали бутонът е натиснат. 0 означава, че не е натиснат, а 1 означава, че е натиснат.
void setup () {// поставете вашия код за настройка тук, за да стартирате веднъж: pinMode (10, OUTPUT); Serial.begin (9600); }
void loop () {// поставете основния си код тук, за да се изпълнява многократно: cState = digitalRead (C); dState = digitalRead (D); eState = digitalRead (E); fState = digitalRead (F); gState = digitalRead (G); aState = digitalRead (A); bState = digitalRead (B); c2State = digitalRead (C2);
Състоянието на бутона (ако е натиснат или не) се записва в "cState, dState, eState и т.н.;"
0 означава, че не е натиснат, а 1 означава, че е натиснат.
if (cState == 1) {тон (пиезоПин, 131); } else {noTone (piezoPin);} if (dState == 1) {тон (piezoPin, 147); } else {noTone (piezoPin);} if (eState == 1) {тон (piezoPin, 165); } else {noTone (piezoPin);} if (fState == 1) {тон (piezoPin, 175); } else {noTone (piezoPin);} if (gState == 1) {тон (piezoPin, 196); } else {noTone (piezoPin);} if (aState == 1) {тон (piezoPin, 220); } else {noTone (piezoPin);} if (bState == 1) {тон (piezoPin, 247); } else {noTone (piezoPin);} if (c2State == 1) {тон (piezoPin, 262); } else {noTone (piezoPin);}}
Ако бутонът е натиснат, той казва на серво да играе на честотата на сертифициране (бележка). Функцията
{noTone (piezoPin);} им казва, че ако бутонът не е натиснат, за да пуснете нищо. Следователно, когато бутонът е натиснат, той ще свири определената му нота.
Препоръчано:
Просто пиано Arduino: 8 стъпки
Обикновено пиано Arduino: Днес ще създадем просто пиано Arduino с една октава, което може да бъде чудесна отправна точка за други проекти. Този проект ще въведе основни компоненти и програмиране на Arduino на ниво гимназия. Докато кодът е предварително изработен, хората
Пиано Arduino с ръчни и 7 предварително зададени песни: 7 стъпки
Пиано Arduino с ръчни и 7 предварително зададени песни: Клавиатурата на Arduino, свързана с LCD, има режим 2. Ръчният режим & Режим на предварително зададени настройки. Използвах 7 бутона за просто пиано със 7 клавиша и 1 бутон за режим на настройка, за да превключите на 7 предварително зададени песни
Пиано звучи с помощта на Arduino на TinkerCad: 4 стъпки
Пиано звучи с помощта на Arduino в TinkerCad: В този урок ще научите как да използвате зумер (или пиезо говорител) с Arduino. Звукови сигнали могат да бъдат намерени в алармени устройства, компютри, таймери и потвърждение за въвеждане от потребителя, като щракване на мишката или натискане на клавиш. Ще научите също как да използвате tone () и
Мини пиано с помощта на Arduino: 4 стъпки
Мини пиано с помощта на Arduino: Урок за Arduino: Мини пиано с помощта на Arduino В това видео ще ви покажа как да направите мини пиано с помощта на Arduino
Въздушно пиано с помощта на IR сензор за близост, високоговорител и Arduino Uno (надстроено/част 2): 6 стъпки
Въздушно пиано с помощта на IR сензор за близост, високоговорител и Arduino Uno (надстроено/част 2): Това е подобрена версия на предишния проект за въздушно пиано?. Тук използвам JBL високоговорител като изход. Включих и сензорен бутон за промяна на режимите според изискванията. Например- режим на твърди баси, нормален режим, висок fr