Cuprins:

Cum să faci un acordor de chitară Arduino: 4 pași
Cum să faci un acordor de chitară Arduino: 4 pași

Video: Cum să faci un acordor de chitară Arduino: 4 pași

Video: Cum să faci un acordor de chitară Arduino: 4 pași
Video: Lectii de chitara - Cum sa acordam o chitara 2024, Noiembrie
Anonim
Cum să faci un acordor de chitară Arduino
Cum să faci un acordor de chitară Arduino

Acestea sunt instrucțiunile pentru a face un tuner de chitară dintr-un Arduino și alte câteva componente. Cu cunoștințe de bază despre electronică și codificare, veți putea face acest tuner de chitară.

Mai întâi trebuie să știți care sunt materialele.

Materiale:

- 1 Arduino (am folosit un Arduino 1)

- 1 ecran LCD (16x2)

- 1 potențiometru

- 1 microfon Electret

- Rezistor de 1 250 Ohm

- Mai multe fire

-Ciocan de lipit

- 1 piezo

Pasul 1: Pinii de lipit

Pinii de lipit
Pinii de lipit

Primul lucru pe care trebuie să-l faceți este lipirea pinilor pe ecranul LCD, totuși trebuie să vă asigurați că sunt lipiți corect. În imaginea de mai sus, arată ce pini trebuie conectați unde. Pinul GND ar trebui să fie conectat la un terminal al potențiometrului ca în diagrama Tinkercad. (NOTĂ: Este foarte important să conectați pinii așa cum este instruit, altfel tunerul nu va funcționa.)

Pasul 2: Conectarea totul

Conectând totul
Conectând totul

După lipirea firelor pe ecranul LCD, există mai multe fire pe care trebuie să le conectați.

1.) Primul lucru pe care trebuie să-l faceți este să conectați GND și 5V de pe Arduino la panou, permițându-i să aibă putere. Apoi conectați electretul la pinul digital 7 și GND.

2.) Apoi conectați piezo-ul la panoul pentru GND și conectați-l la pinul digital 6.

3.) După ce merge potențiometrul, conectați terminalul 1 la o bandă pozitivă de pe panou și terminalul 2 la o bandă GND de pe panou, apoi conectați ștergătorul la pinul de contrast de pe LCD.

Pasul 3: Codificare

Codificare
Codificare

După ce ați conectat totul în mod corect, trebuie să programați tunerul astfel încât acesta să își facă treaba. Mai jos este codul

// include codul bibliotecii: #include

// inițializați biblioteca cu numerele pinilor de interfață LiquidCrystal lcd (12, 11, 5, 4, 3, 2);

int A = 440;

int B = 494;

int C = 523;

int D = 587;

int E = 659;

int F = 699;

int G = 784;

int highA = 880;

int buzzer = 8; int functionGenerator = A1;

configurare nulă () {

// configurați numărul LCD de coloane și rânduri:

lcd.inceput (16, 2);

// Imprimați un mesaj pe ecranul LCD.

lcd.print ("salut, lume!");

Serial.begin (9600);

// ștergeți totul în ecranul LCD, apoi setați cursorul, printt

lcd.setCursor (0, 1); }

bucla nulă () {

Serial.println (analogRead (functionGenerator));

întârziere (50);

// setați cursorul la coloana 0, linia 1

// (notă: linia 1 este al doilea rând, deoarece numărarea începe cu 0):

if (analogRead (functionGenerator) == 450) {

lcd.clear ();

lcd.setCursor (8, 1);

ton (buzzer, 250);

lcd.print ("A");

întârziere (1000);

} else if (analogRead (functionGenerator) == 494) {

lcd.clear ();

lcd.setCursor (8, 1);

ton (buzzer, 250);

lcd.print ("B");

întârziere (1000);

} else if (analogRead (functionGenerator) == 523) {

lcd.clear ();

lcd.setCursor (8, 1);

ton (buzzer, 250);

lcd.print ("C");

întârziere (1000);

} else if (analogRead (functionGenerator) == 587) {

lcd.clear ();

lcd.setCursor (8, 1);

ton (buzzer, 250);

lcd.print ("D");

întârziere (1000);

} else if (analogRead (functionGenerator) == 659) {

lcd.clear ();

lcd.setCursor (8, 1);

ton (buzzer, 250);

lcd.print ("E");

întârziere (1000);

} else if (analogRead (functionGenerator) == 699) {

lcd.clear ();

lcd.setCursor (8, 1);

ton (buzzer, 250);

lcd.print ("F");

întârziere (1000);

} else if (analogRead (functionGenerator) == 784) {

lcd.clear ();

lcd.setCursor (8, 1);

ton (buzzer, 250);

lcd.print ("G");

întârziere (1000);

} else if (analogRead (functionGenerator) == 880) {

lcd.clear ();

lcd.setCursor (8, 1);

ton (buzzer, 250);

lcd.print ("A");

întârziere (1000);

} else if (analogRead (functionGenerator)> 400 && digitalRead (functionGenerator) <449) {

lcd.clear ();

lcd.setCursor (4, 1);

ton (buzzer, 250);

lcd.print ("A");

întârziere (1000);

} else if (analogRead (functionGenerator)> 451 && digitalRead (functionGenerator) <470) {

lcd.clear ();

lcd.setCursor (12, 1);

ton (buzzer, 250);

lcd.print ("A");

întârziere (1000);

} else if (analogRead (functionGenerator)> 471 && digitalRead (functionGenerator) <493) {

lcd.clear ();

lcd.setCursor (4, 1);

ton (buzzer, 250);

lcd.print ("B");

întârziere (1000);

} else if (analogRead (functionGenerator)> 495 && digitalRead (functionGenerator) <509) {

lcd.clear ();

lcd.setCursor (12, 1);

ton (buzzer, 250);

lcd.print ("B");

întârziere (1000);

} else if (analogRead (functionGenerator)> 509 && digitalRead (functionGenerator) <522) {

lcd.clear ();

lcd.setCursor (4, 1);

ton (buzzer, 250);

lcd.print ("C");

întârziere (1000);

} else if (analogRead (functionGenerator)> 524 && digitalRead (functionGenerator) <556) {

lcd.clear ();

lcd.setCursor (12, 1);

ton (buzzer, 250);

lcd.print ("C");

întârziere (1000);

} else if (analogRead (functionGenerator)> 557 && digitalRead (functionGenerator) <586) {

lcd.clear ();

lcd.setCursor (4, 1);

ton (buzzer, 250);

lcd.print ("D");

întârziere (1000);

} else if (analogRead (functionGenerator)> 588 && digitalRead (functionGenerator) <620) {

lcd.clear ();

lcd.setCursor (12, 1);

ton (buzzer, 250);

lcd.print ("D");

întârziere (1000);

} else if (analogRead (functionGenerator)> 621 && digitalRead (functionGenerator) <658) {

lcd.clear ();

lcd.setCursor (4, 1);

ton (buzzer, 250);

lcd.print ("E");

întârziere (1000);

} else if (analogRead (functionGenerator)> 660 && digitalRead (functionGenerator) <679) {

lcd.clear ();

lcd.setCursor (12, 1);

ton (buzzer, 250);

lcd.print ("E");

întârziere (1000);

} else if (analogRead (functionGenerator)> 680 && digitalRead (functionGenerator) <698) {

lcd.clear ();

lcd.setCursor (4, 1);

ton (buzzer, 250);

lcd.print ("F");

întârziere (1000);

} else if (analogRead (functionGenerator)> 700 && digitalRead (functionGenerator) <742) {

lcd.clear ();

lcd.setCursor (12, 1);

ton (buzzer, 250);

lcd.print ("F");

întârziere (1000);

} else if (analogRead (functionGenerator)> 743 && digitalRead (functionGenerator) <783) {

lcd.clear ();

lcd.setCursor (4, 1);

ton (buzzer, 250);

lcd.print ("G");

întârziere (1000);

} else if (analogRead (functionGenerator)> 785 && digitalRead (functionGenerator) <845) {

lcd.clear ();

lcd.setCursor (12, 1);

ton (buzzer, 250);

lcd.print ("G");

întârziere (1000);

} else if (analogRead (functionGenerator)> 846 && digitalRead (functionGenerator) <879) {

lcd.clear ();

lcd.setCursor (4, 1);

ton (buzzer, 250);

lcd.print ("A");

întârziere (1000); }

else {noTone (buzzer); } întârziere (10); }

Pasul 4: conectarea la alimentare

Conectarea la alimentare
Conectarea la alimentare

Pentru ultimul pas tot ce trebuie să faceți este să găsiți o sursă de alimentare și să o conectați la Arduino, una pe care o aveți, pe care o puteți începe să utilizați tunerul.

Recomandat: