Përmbajtje:
- Hapi 1: Hapi 1: Ndërtimi i qarkut
- Hapi 2: Hapi 2: Kodi dhe Shpjegimi
- Hapi 3: Hapi 3: Demonstrim video
Video: Arduino Piano Me Ndërprerës të Butonit: 3 Hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:17
Krijuar nga: Haotian Ye
Vështrim i përgjithshëm
Kjo është një tabelë pianoje me tetë ndërprerës të butonave që ju lejon të luani një oktavë (Do Re Mi Fa So La Si Do) dhe me këtë një oktavë mund të provoni të luani disa këngë që ju pëlqejnë. Për këtë projekt ka disa njohuri të rëndësishme që duhet të dini para se të filloni.
Së pari, ne duhet të dimë frekuencat e notave bazë të një pianoje.
Frekuencat janë renditur më poshtë:
Bëni - 261Hz
Re - 294Hz
Mi - 329Hz
Fa - 349Hz
Pra - 392Hz
La - 440Hz
Si - 493Hz
Bëj - 523Hz
Së dyti, unë do t'ju tregoj se si të ndërtoni qarkun duke përdorur pjesët që mund të blihen nga Dyqani Elektronik i Lee. Së fundi , Unë do të paraqes dhe shpjegoj kodin që duhet të ngarkohet në tabelën Arduino.
Pjesët që ju nevojiten:
Arduino Uno R3 (Produkt ID: 10997)
Kabllo USB A në B M/M (Produkt ID: 29861)
Rezistencë 10K * 8 (ID e produktit: 91516)
Ngjyra të ndryshme të ndërruesit të kapëses * 8 (ID e produktit: 3124, 31242, 31243, 31245, 31246)
Mini altoparlant (ID e produktit: 41680)
Breadboard (ID e produktit: 106861)
Telat Jumper (ID e produktit: 21801)
Hapi 1: Hapi 1: Ndërtimi i qarkut
Së pari, futni të gjithë çelsat e butonit dhe altoparlantin në dërrasën e bukës një nga një dhe përputheni ato në një rresht. Pastaj lidhni kunjat e secilës ndërprerës të butonave në tokë. Së dyti lidhni rezistencat 10k midis fuqisë pozitive dhe kunjave të tjerë të secilit ndërprerës të butonit. Dhe, lidheni këtë kolonë me kunjat 2-9 në Arduino Board. Gjithashtu, lidhni tokën me kunjin e tokëzimit dhe fuqinë pozitive me pinin 3.3v në Arduino. Së fundi, lidhni mini -altoparlantin me pin 10 në Arduino.
Hapi 2: Hapi 2: Kodi dhe Shpjegimi
Kodi më poshtë është ai që kam shkruar
const int zi = 2;
const int bardhë = 3;
const int e kuqe = 4;
const int jeshile = 5;
const int blu = 6;
const int black2 = 7;
const int green2 = 8;
const int red2 = 9;
const int altoparlant = 10; // Lidhni të gjithë çelsat e butonit dhe altoparlantin me kunjat e sinjalit të arduino
frekuenca int = {262, 294, 330, 349, 392, 440, 493, 523}; // grupi përmban të gjitha frekuencat e një oktave
void setup () {
// vendosni kodin tuaj të konfigurimit këtu, për të ekzekutuar një herë:
pinMode (e zezë, INPUT);
pinMode (e bardhë, HYRJE);
pinMode (e kuqe, INPUT);
pinMode (jeshile, INPUT);
pinMode (blu, HYRJE);
pinMode (black2, INPUT);
pinMode (green2, INPUT);
pinMode (red2, INPUT);
pinMode (altoparlant, OUTPUT);
toni (folës, 2000);
Serial.filloj (9600);
}
lak void () {
// vendosni kodin tuaj kryesor këtu, për të ekzekutuar në mënyrë të përsëritur:
nëse (digitalRead (e zezë) == LOW) // kur shtypni çelësin e butonit "DO"
{toni (altoparlanti, frekuenca [0], 50);
vonesë (50);
noTone (folës);}
përndryshe nëse (digitalRead (e bardhë) == LOW) // kur shtypni çelësin e butonit "RE"
{toni (altoparlanti, frekuenca [1], 50);
vonesë (50);
noTone (folës);}
përndryshe nëse (digitalRead (e kuqe) == LOW) // kur shtypni çelësin e butonit "MI"
{toni (altoparlanti, frekuenca [2], 50);
vonesë (50);
noTone (folës);}
përndryshe nëse (digitalRead (green) == LOW) // kur shtypni çelësin e butonit "FA"
{toni (altoparlanti, frekuenca [3], 50);
vonesë (50);
noTone (folës);}
përndryshe nëse (digitalRead (blu) == LOW) // kur shtypni çelësin e butonit "SO"
{toni (altoparlanti, frekuenca [4], 50);
vonesë (50);
noTone (folës);}
përndryshe nëse (digitalRead (black2) == LOW) // kur shtypni çelësin e butonit "LA"
{toni (altoparlanti, frekuenca [5], 50);
vonesë (50);
noTone (folës);}
përndryshe nëse (digitalRead (green2) == LOW) // kur shtypni çelësin e butonit "SI"
{toni (altoparlanti, frekuenca [6], 50);
vonesë (50);
noTone (folës);}
përndryshe nëse (digitalRead (red2) == LOW) // kur shtypni çelësin e butonit "DO"
{toni (altoparlanti, frekuenca [7], 50);
vonesë (50);
noTone (folës);}
else // kur nuk shtyp asgjë
noTone (folës);
}
Së pari, ne duhet të deklarojmë të gjithë çelsat e butonit dhe altoparlantin si kunj nga 2 në 10 në Arduino. Çdo ndërprerës përfaqëson për një shënim. Pastaj, përdorni një grup për të vendosur të gjitha frekuencat brenda. Tjetra, deklarata Nëse dhe tjetër është ajo që përdor për të njoftuar Arduino -n se cilin ndërprerës të butonit që shtyp unë.
Së fundi, lidhni bordin tuaj Arduino me kompjuterin ose laptopin tuaj me kabllo usb A në B. Para se të ngarkoni kodin tuaj, ju ende duhet të shkarkoni programin Arduino dhe të bëni disa cilësime të paracaktuara. Zgjidhni Mjetet -> Bordi -> Arduino/Genuino Uno; Pastaj duhet të zgjedhim portën e komunikimit të lidhur me bordin Arduino. Zgjidhni Tools -> Port, atëherë cilido emër porti të jetë i etiketuar "(Arduino/Genuino Uno)." Pastaj, mund ta ngarkoni kodin në tabelën Arduino.
Recommended:
Ndërprerës i thjeshtë i butonit të monedhës LED (duke përdorur peshën): 8 hapa
Ndërprerës i thjeshtë i butonit të monedhës LED (duke përdorur peshën): Ky është një ndërprerës relativisht i thjeshtë i butonit të monedhës për të kryer. Kur pesha aplikohet në përçuesit e kapëses, forca në rënie ndriçon LED -të
Ndërfaqja e butonit - Arduino Bazat: 3 hapa
Butoni i Ndërfaqes - Bazat e Arduino: Butoni i butonit është një komponent që lidh dy pika në një qark kur e shtypni atë. Kur butoni është i hapur (i pa shtypur) nuk ka lidhje midis dy këmbëve të butonit, kështu që kunja është e lidhur me 5 volt (përmes resi-së tërheqëse
Përpjekja ime në melodinë zile të butonit Arduino: 11 hapa
Përpjekja ime në melodinë zile të butonit Arduino: Në këtë tutorial do t'ju tregoj se si një buton mund të fillojë një melodi. Gjatë vitit shkollor, shumë nga jetët tona drejtohen nga kambanat ose tonet që na bëjnë të ditur se kur është koha për t'u larguar ose koha për të shkuar. Shumica prej nesh rrallë ndalen dhe mendojnë se si ndryshojnë këto
Paneli i butonit USB Arduino: 5 hapa (me fotografi)
Paneli i butonave USB Arduino: Arduino Leonardo është një tabelë shumë e fuqishme me disa dallime të vogla nga Arduino UNO shumë e njohur. ATMega 32U4 është procesori kryesor në Leonardo. Ju mund ta përdorni këtë mikrokontrollues për komunikime serike përmes USB. Arduino Leo
Ndërprerës automatik i tastierës dhe miut - Ndërprerës USB në rrjedhën e sipërme: 5 hapa
Ndërprerës automatik i tastierës dhe miut - Ndërprerës USB në rrjedhën e sipërme: Në këtë projekt ne do të mbledhim një çelës automatik të tastierës dhe miut që lejon ndarjen e lehtë midis dy kompjuterëve. Ideja për këtë projekt erdhi nga nevoja ime, në çdo kohë të caktuar, të kisha dy kompjuterë në tavolina ime e laboratorit. Shumicën e rasteve është D -ja ime