Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
Autor: Haotian Ye
Pregled
Ovo je klavirska ploča s osam prekidača koji vam omogućuju sviranje jedne oktave (Do Re Mi Fa So La Si Do), a s ovom oktavom možete pokušati svirati neke pjesme koje volite. Za ovaj projekt postoje neka važna znanja koja morate znati prije nego počnete.
Prvo, moramo znati frekvencije osnovnih nota klavira.
U nastavku su navedene frekvencije:
Do - 261Hz
Re - 294Hz
Mi - 329Hz
Fa - 349Hz
Dakle - 392Hz
La - 440Hz
Si - 493Hz
Do - 523Hz
Drugo, pokazat ću vam kako izgraditi sklop pomoću dijelova koji se mogu kupiti u Lee's Electronic Storeu. Na kraju , predstavit ću i objasniti kôd koji je potrebno učitati na Arduino ploču.
Dijelovi koji će vam trebati:
Arduino Uno R3 (ID proizvoda: 10997)
USB A do B kabel M/M (ID proizvoda: 29861)
10K otpornik * 8 (ID proizvoda: 91516)
Različite boje prekidača za pričvršćivanje * 8 (ID proizvoda: 3124, 31242, 31243, 31245, 31246)
Mini zvučnik (ID proizvoda: 41680)
Oglasna ploča (ID proizvoda: 106861)
Žice za spajanje (ID proizvoda: 21801)
Korak 1: Korak 1: Izgradnja kruga
Prvo umetnite sve prekidače i mini zvučnike na ploču jedan po jedan i postavite ih u jedan red. Zatim spojite pinove svih prekidača na tlo. Zatim spojite 10k otpornika između pozitivne snage i ostalih pinova svakog prekidača. I povežite ovaj stupac s pinovima 2-9 na Arduino ploči. Također spojite uzemljenje na pin za uzemljenje i pozitivnu snagu na pin 3.3v na Arduinu. Na kraju, spojite mini zvučnik na pin 10 na Arduinu.
Korak 2: Korak 2: Kôd i objašnjenje
Kod ispod je ono što sam napisao
const int crno = 2;
const int bijela = 3;
const int crveno = 4;
const int zelena = 5;
const int plavo = 6;
const int crna2 = 7;
const int green2 = 8;
const int red2 = 9;
const int zvučnik = 10; // Povežite sve prekidače i zvučnike s arduino signalnim pinovima
int frekvencija = {262, 294, 330, 349, 392, 440, 493, 523}; // niz sadrži sve frekvencije jedne oktave
void setup () {
// ovdje postavite svoj kôd za postavljanje, da biste ga jednom pokrenuli:
pinMode (crno, INPUT);
pinMode (bijeli, ULAZ);
pinMode (crveno, INPUT);
pinMode (zeleno, ULAZ);
pinMode (plavo, INPUT);
pinMode (crni2, ULAZ);
pinMode (green2, INPUT);
pinMode (red2, INPUT);
pinMode (zvučnik, OUTPUT);
ton (govornik, 2000);
Serial.begin (9600);
}
void loop () {{100} {101}
// ovdje unesite svoj glavni kôd, za ponavljanje:
if (digitalRead (crno) == LOW) // kada pritisnete prekidač "DO"
{ton (zvučnik, frekvencija [0], 50);
kašnjenje (50);
noTone (zvučnik);}
else if (digitalRead (white) == LOW) // kada pritisnete prekidač "RE"
{ton (zvučnik, frekvencija [1], 50);
kašnjenje (50);
noTone (zvučnik);}
else if (digitalRead (crveno) == LOW) // kada pritisnete prekidač "MI"
{ton (zvučnik, frekvencija [2], 50);
kašnjenje (50);
noTone (zvučnik);}
else if (digitalRead (zeleno) == LOW) // kada pritisnete prekidač "FA"
{ton (zvučnik, frekvencija [3], 50);
kašnjenje (50);
noTone (zvučnik);}
else if (digitalRead (blue) == LOW) // kada pritisnete prekidač "SO"
{ton (zvučnik, frekvencija [4], 50);
kašnjenje (50);
noTone (zvučnik);}
else if (digitalRead (black2) == LOW) // kada pritisnete prekidač "LA"
{ton (zvučnik, frekvencija [5], 50);
kašnjenje (50);
noTone (zvučnik);}
else if (digitalRead (green2) == LOW) // kada pritisnete prekidač "SI"
{ton (zvučnik, frekvencija [6], 50);
kašnjenje (50);
noTone (zvučnik);}
else if (digitalRead (red2) == LOW) // kada pritisnete prekidač "DO"
{ton (zvučnik, frekvencija [7], 50);
kašnjenje (50);
noTone (zvučnik);}
else // kada ništa ne pritisnete
noTone (zvučnik);
}
Prvo moramo proglasiti sve prekidače i zvučnike tipkama kao pin od 2 do 10 na Arduinu. Svaki prekidač predstavlja jednu notu. Zatim upotrijebite jedan niz kako biste unutra postavili sve frekvencije. Zatim, if i else izjava je ono što koristim kako bih Arduino znao koji prekidač pritisnem.
Na kraju, povežite svoju Arduino ploču s računalom ili prijenosnim računalom pomoću USB kabela A do B. Prije nego što učitate kôd, još uvijek morate preuzeti Arduino softver i izvršiti neke zadane postavke. Odaberite Alati -> Ploča -> Arduino/Genuino Uno; Zatim moramo odabrati komunikacijski port spojen na Arduino ploču. Odaberite Alati -> Port, a zatim bilo koji naziv porta označen kao "(Arduino/Genuino Uno)." Zatim možete prenijeti kod na Arduino ploču.