Sisällysluettelo:
Video: Kuinka tehdä Arduino -kitaraviritin: 4 vaihetta
2025 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2025-01-13 06:57
Nämä ovat ohjeet kitaravirittimen valmistamiseksi Arduinosta ja useista muista komponenteista. Elektroniikan ja koodauksen perustiedolla pystyt tekemään tämän kitaravirittimen.
Ensin sinun on tiedettävä materiaalit.
Materiaalit:
- 1 Arduino (käytin Arduino 1: tä)
- 1 LCD -näyttö (16x2)
- 1 potentiometri
- 1 elektretimikrofoni
- 1250 ohmin vastus
- Useita johtoja
-Juotin
- 1 pietsoa
Vaihe 1: Juotosnastat
Ensimmäinen asia, joka sinun on tehtävä, on juottaa nastat nestekidenäyttöön, mutta sinun on varmistettava, että ne on juotettu oikein. Yllä olevassa kuvassa se osoittaa, mitkä nastat tulisi kytkeä mihin. GND -nastan tulee olla kytketty potentiometrin liittimeen, kuten Tinkercad -kaaviossa. (HUOMAUTUS: On erittäin tärkeää, että liität nastat ohjeiden mukaisesti, muuten viritin ei toimi.)
Vaihe 2: Yhdistä kaikki
Johtojen juottamisen jälkeen nestekidenäyttöön on liitettävä useita muita johtoja.
1.) Ensimmäinen asia, joka sinun on tehtävä, on kytkeä Arduinon GND ja 5 V leipälevyyn, jotta se saa virtaa. Liitä sitten elektreetti digitaaliseen nastaan 7 ja GND: hen.
2.) Liitä pietso GND -leipälevyyn ja liitä se digitaaliseen nastaan 6.
3.) Tämän jälkeen potentiometri menee, kytket liittimen 1 leipälevyn positiiviseen nauhaan ja liittimen 2 leipälevyn GND -nauhaan, ja kytket sitten pyyhkimen nestekidenäytön kontrastitappiin.
Vaihe 3: Koodaus
Kun olet liittänyt kaiken oikein, sinun on ohjelmoitava viritin niin, että se todella tekee tehtävänsä. Alla on koodi
// sisällytä kirjastokoodi: #include
// alustetaan kirjasto liitäntätappien numeroilla 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 korkeaA = 880;
int summeri = 8; int -funktio Generaattori = A1;
void setup () {
// LCD -näytön sarakkeiden ja rivien määrän määrittäminen:
lcd. alku (16, 2);
// Tulosta viesti nestekidenäyttöön.
lcd.print ("hei, maailma!");
Sarja.alku (9600);
// tyhjennä kaikki nestekidenäytöstä ja aseta sitten kohdistin, printt
lcd.setCursor (0, 1); }
void loop () {
Serial.println (analogRead (functionGenerator));
viive (50);
// aseta kohdistin sarakkeeseen 0, rivi 1
// (Huomautus: rivi 1 on toinen rivi, koska laskenta alkaa nollasta):
if (analogRead (functionGenerator) == 450) {
lcd.clear ();
lcd.setCursor (8, 1);
ääni (summeri, 250);
lcd.print ("A");
viive (1000);
} else if (analogRead (functionGenerator) == 494) {
lcd.clear ();
lcd.setCursor (8, 1);
ääni (summeri, 250);
lcd.print ("B");
viive (1000);
} else if (analogRead (functionGenerator) == 523) {
lcd.clear ();
lcd.setCursor (8, 1);
ääni (summeri, 250);
lcd.print ("C");
viive (1000);
} else if (analogRead (functionGenerator) == 587) {
lcd.clear ();
lcd.setCursor (8, 1);
ääni (summeri, 250);
lcd.print ("D");
viive (1000);
} else if (analogRead (functionGenerator) == 659) {
lcd.clear ();
lcd.setCursor (8, 1);
ääni (summeri, 250);
lcd.print ("E");
viive (1000);
} else if (analogRead (functionGenerator) == 699) {
lcd.clear ();
lcd.setCursor (8, 1);
ääni (summeri, 250);
lcd.print ("F");
viive (1000);
} else if (analogRead (functionGenerator) == 784) {
lcd.clear ();
lcd.setCursor (8, 1);
ääni (summeri, 250);
lcd.print ("G");
viive (1000);
} else if (analogRead (functionGenerator) == 880) {
lcd.clear ();
lcd.setCursor (8, 1);
ääni (summeri, 250);
lcd.print ("A");
viive (1000);
} else if (analogRead (functionGenerator)> 400 && digitalRead (functionGenerator) <449) {
lcd.clear ();
lcd.setCursor (4, 1);
ääni (summeri, 250);
lcd.print ("A");
viive (1000);
} else if (analogRead (functionGenerator)> 451 && digitalRead (functionGenerator) <470) {
lcd.clear ();
lcd.setCursor (12, 1);
ääni (summeri, 250);
lcd.print ("A");
viive (1000);
} else if (analogRead (functionGenerator)> 471 && digitalRead (functionGenerator) <493) {
lcd.clear ();
lcd.setCursor (4, 1);
ääni (summeri, 250);
lcd.print ("B");
viive (1000);
} else if (analogRead (functionGenerator)> 495 && digitalRead (functionGenerator) <509) {
lcd.clear ();
lcd.setCursor (12, 1);
ääni (summeri, 250);
lcd.print ("B");
viive (1000);
} else if (analogRead (functionGenerator)> 509 && digitalRead (functionGenerator) <522) {
lcd.clear ();
lcd.setCursor (4, 1);
ääni (summeri, 250);
lcd.print ("C");
viive (1000);
} else if (analogRead (functionGenerator)> 524 && digitalRead (functionGenerator) <556) {
lcd.clear ();
lcd.setCursor (12, 1);
ääni (summeri, 250);
lcd.print ("C");
viive (1000);
} else if (analogRead (functionGenerator)> 557 && digitalRead (functionGenerator) <586) {
lcd.clear ();
lcd.setCursor (4, 1);
ääni (summeri, 250);
lcd.print ("D");
viive (1000);
} else if (analogRead (functionGenerator)> 588 && digitalRead (functionGenerator) <620) {
lcd.clear ();
lcd.setCursor (12, 1);
ääni (summeri, 250);
lcd.print ("D");
viive (1000);
} else if (analogRead (functionGenerator)> 621 && digitalRead (functionGenerator) <658) {
lcd.clear ();
lcd.setCursor (4, 1);
ääni (summeri, 250);
lcd.print ("E");
viive (1000);
} else if (analogRead (functionGenerator)> 660 && digitalRead (functionGenerator) <679) {
lcd.clear ();
lcd.setCursor (12, 1);
ääni (summeri, 250);
lcd.print ("E");
viive (1000);
} else if (analogRead (functionGenerator)> 680 && digitalRead (functionGenerator) <698) {
lcd.clear ();
lcd.setCursor (4, 1);
ääni (summeri, 250);
lcd.print ("F");
viive (1000);
} else if (analogRead (functionGenerator)> 700 && digitalRead (functionGenerator) <742) {
lcd.clear ();
lcd.setCursor (12, 1);
ääni (summeri, 250);
lcd.print ("F");
viive (1000);
} else if (analogRead (functionGenerator)> 743 && digitalRead (functionGenerator) <783) {
lcd.clear ();
lcd.setCursor (4, 1);
ääni (summeri, 250);
lcd.print ("G");
viive (1000);
} else if (analogRead (functionGenerator)> 785 && digitalRead (functionGenerator) <845) {
lcd.clear ();
lcd.setCursor (12, 1);
ääni (summeri, 250);
lcd.print ("G");
viive (1000);
} else if (analogRead (functionGenerator)> 846 && digitalRead (functionGenerator) <879) {
lcd.clear ();
lcd.setCursor (4, 1);
ääni (summeri, 250);
lcd.print ("A");
viive (1000); }
else {noTone (summeri); } viive (10); }
Vaihe 4: Liitä se virtalähteeseen
Viimeisenä vaiheena sinun tarvitsee vain löytää virtalähde ja kytkeä se Arduinoon, jolla voit aloittaa virittimen käytön.