Satura rādītājs:

Arduino klavieres ar spiedpogu slēdžiem: 3 soļi
Arduino klavieres ar spiedpogu slēdžiem: 3 soļi

Video: Arduino klavieres ar spiedpogu slēdžiem: 3 soļi

Video: Arduino klavieres ar spiedpogu slēdžiem: 3 soļi
Video: #3 Как запрограммировать ПЛК Outseal Arduino — контакты и реле 2024, Novembris
Anonim
Arduino klavieres ar spiedpogu slēdžiem
Arduino klavieres ar spiedpogu slēdžiem
Arduino klavieres ar spiedpogu slēdžiem
Arduino klavieres ar spiedpogu slēdžiem

Izveidoja: Haotian Ye

Pārskats

Šī ir klavieru tāfele ar astoņiem spiedpogu slēdžiem, kas ļauj atskaņot vienu oktāvu (Do Re Mi Fa So La Si Do), un ar šo vienu oktāvu varat mēģināt atskaņot dažas dziesmas, kas jums patīk. Šim projektam ir dažas svarīgas zināšanas, kas jums jāzina pirms darba uzsākšanas.

Pirmkārt, mums jāzina klavieru pamata notis.

Frekvences ir norādītas zemāk:

Vai - 261 Hz

Atkārtoti - 294 Hz

Mi - 329 Hz

Fā - 349 Hz

Tātad - 392 Hz

La - 440 Hz

Si - 493 Hz

Vai - 523 Hz

Otrkārt, es jums parādīšu, kā izveidot ķēdi, izmantojot detaļas, kuras var iegādāties Lee elektroniskajā veikalā. Visbeidzot, es iepazīstināšu un izskaidrošu kodu, kas jāaugšupielādē Arduino panelī.

Jums nepieciešamās detaļas:

Arduino Uno R3 (produkta ID: 10997)

USB A līdz B kabelis M/M (produkta ID: 29861)

10K rezistors * 8 (produkta ID: 91516)

Dažādas piekares slēdža krāsas * 8 (produkta ID: 3124, 31242, 31243, 31245, 31246)

Mini skaļrunis (produkta ID: 41680)

Maizes dēlis (produkta ID: 106861)

Džemperu vadi (produkta ID: 21801)

1. darbība: 1. darbība: ķēdes izveide

1. darbība: ķēdes izveide
1. darbība: ķēdes izveide
1. darbība: ķēdes izveide
1. darbība: ķēdes izveide
1. darbība: ķēdes izveide
1. darbība: ķēdes izveide
1. darbība: ķēdes izveide
1. darbība: ķēdes izveide

Vispirms ievietojiet visus spiedpogas slēdžus un mini skaļruni uz maizes dēļa pa vienam un saskaņojiet tos vienā rindā. Pēc tam pievienojiet katra spiedpogas slēdža tapas zemei. Otrkārt, pievienojiet 10k rezistorus starp pozitīvo jaudu un katras spiedpogas slēdža pārējām tapām. Un pievienojiet šo kolonnu Arduino dēļa tapām 2-9. Pievienojiet zemi arī zemējuma tapai un pozitīvo jaudu - 3.3 V tapai Arduino. Visbeidzot, pievienojiet mini skaļruni Arduino tapai 10.

2. darbība: 2. darbība: kods un skaidrojums

Tālāk norādītais kods ir tas, ko es uzrakstīju

const int melns = 2;

const int balts = 3;

const int sarkans = 4;

const int zaļš = 5;

const int zils = 6;

const int melns2 = 7;

const int zaļā2 = 8;

const int red2 = 9;

const int skaļrunis = 10; // Saistiet visus spiedpogu slēdžus un skaļruni ar arduino signāla tapām

int frekvence = {262, 294, 330, 349, 392, 440, 493, 523}; // masīvā ir visas vienas oktāvas frekvences

void setup () {

// ievietojiet šeit savu iestatīšanas kodu, lai palaistu vienu reizi:

pinMode (melns, INPUT);

pinMode (balta, INPUT);

pinMode (sarkans, INPUT);

pinMode (zaļa, INPUT);

pinMode (zils, INPUT);

pinMode (melns2, IEEJA);

pinMode (zaļa2, INPUT);

pinMode (sarkans2, IEEJA);

pinMode (skaļrunis, OUTPUT);

tonis (runātājs, 2000);

Sērijas sākums (9600);

}

void loop () {

// ievietojiet savu galveno kodu šeit, lai palaistu atkārtoti:

if (digitalRead (black) == LOW) // nospiežot spiedpogas slēdzi "DO"

{tonis (skaļrunis, frekvence [0], 50);

kavēšanās (50);

noTone (runātājs);}

citādi, ja (digitalRead (balts) == LOW) // nospiežot spiedpogas slēdzi "RE"

{tonis (skaļrunis, frekvence [1], 50);

kavēšanās (50);

noTone (runātājs);}

citādi, ja (digitalRead (sarkans) == LOW) // nospiežot spiedpogas slēdzi "MI"

{tonis (skaļrunis, frekvence [2], 50);

kavēšanās (50);

noTone (runātājs);}

citādi, ja (digitalRead (zaļš) == LOW) // nospiežot spiedpogas slēdzi "FA"

{tonis (skaļrunis, frekvence [3], 50);

kavēšanās (50);

noTone (runātājs);}

citādi, ja (digitalRead (zils) == LOW) // nospiežot spiedpogas slēdzi "SO"

{tonis (skaļrunis, frekvence [4], 50);

kavēšanās (50);

noTone (runātājs);}

citādi, ja (digitalRead (black2) == LOW) // nospiežot spiedpogas slēdzi "LA"

{tonis (skaļrunis, frekvence [5], 50);

kavēšanās (50);

noTone (runātājs);}

citādi, ja (digitalRead (green2) == LOW) // nospiežot spiedpogas slēdzi "SI"

{tonis (skaļrunis, frekvence [6], 50);

kavēšanās (50);

noTone (runātājs);}

citādi, ja (digitalRead (red2) == LOW) // nospiežot spiedpogas slēdzi "DO"

{tonis (skaļrunis, frekvence [7], 50);

kavēšanās (50);

noTone (runātājs);}

cits // kad neko nespied

noTone (skaļrunis);

}

Pirmkārt, mums ir jāpasludina visi spiedpogu slēdži un skaļrunis par Arduino tapu no 2 līdz 10. Katrs slēdzis apzīmē vienu piezīmi. Pēc tam izmantojiet vienu masīvu, lai ievietotu visas frekvences. Tālāk paziņojums If un else ir tas, ko es izmantoju, lai Arduino zinātu, kuru spiedpogas slēdzi es nospiežu.

Visbeidzot, pievienojiet savu Arduino plati datoram vai klēpjdatoram, izmantojot USB A līdz B kabeli. Pirms koda augšupielādes jums joprojām ir jālejupielādē Arduino programmatūra un jāveic daži noklusējuma iestatījumi. Izvēlieties Tools -> Board -> Arduino/Genuino Uno; Tad mums jāizvēlas sakaru ports, kas savienots ar Arduino plati. Atlasiet Rīki -> Port, pēc tam -porta nosaukumu, kas apzīmēts ar "(Arduino/Genuino Uno)." Pēc tam jūs varat augšupielādēt kodu Arduino panelī.

Ieteicams: