Sadržaj:

Kako napraviti Arduino gitarski tuner: 4 koraka
Kako napraviti Arduino gitarski tuner: 4 koraka

Video: Kako napraviti Arduino gitarski tuner: 4 koraka

Video: Kako napraviti Arduino gitarski tuner: 4 koraka
Video: Как сделать видео передатчик - UHF TV передатчик 2024, Studeni
Anonim
Kako napraviti Arduino gitarski tuner
Kako napraviti Arduino gitarski tuner

Ovo su upute za izradu tunera za gitaru od Arduina i nekoliko drugih komponenti. S osnovnim znanjem o elektronici i kodiranju moći ćete napraviti ovaj štimer za gitaru.

Prvo morate znati koji su materijali.

Materijali:

- 1 Arduino (koristio sam Arduino 1)

- 1 LCD zaslon (16x2)

- 1 potenciometar

- 1 električni mikrofon

- 1 250 Ohm otpornik

- Nekoliko žica

-Lemilica

- 1 Piezo

Korak 1: Igle za lemljenje

Igle za lemljenje
Igle za lemljenje

Prvo što trebate učiniti je lemiti igle na LCD, no morate se pobrinuti da su lemljene na ispravan način. Na gornjoj slici prikazuje koje pinove gdje treba spojiti. GND pin bi trebao biti spojen na terminal potenciometra kao na Tinkercad dijagramu. (NAPOMENA: Vrlo je važno da pinove povežete prema uputama, jer u protivnom tuner neće raditi.)

Korak 2: Povežite sve

Povezivanje svega
Povezivanje svega

Nakon lemljenja žica na LCD, potrebno je spojiti nekoliko drugih žica.

1.) Prvo što trebate učiniti je spojiti GND i 5V na Arduinu na matičnu ploču dopuštajući mu napajanje. Zatim spojite elektron na digitalni pin 7 i GND.

2.) Zatim spojite piezo na ploču za GND i spojite je na digitalni pin 6.

3.) Nakon toga potenciometar povežete stezaljku 1 s pozitivnom trakom na ploči, a priključak 2 s trakom GND na ploči, a zatim spojite brisač s kontrastnom iglom na LCD -u.

Korak 3: Kodiranje

Kodiranje
Kodiranje

Nakon što ste sve spojili na ispravan način, morate programirati tuner tako da zaista radi svoj posao. Ispod je kôd

// uključuje kod knjižnice: #include

// inicijalizira knjižnicu brojevima pinova sučelja 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 visokiA = 880;

int zujalica = 8; int functionGenerator = A1;

void setup () {

// postavljanje broja stupaca i redaka LCD -a:

lcd.begin (16, 2);

// Ispis poruke na LCD -u.

lcd.print ("zdravo, svijete!");

Serial.begin (9600);

// briše sve na LCD -u, zatim postavlja pokazivač, ispis

lcd.setCursor (0, 1); }

void loop () {{100} {101}

Serial.println (analogRead (functionGenerator));

kašnjenje (50);

// postavite kursor na stupac 0, redak 1

// (napomena: redak 1 je drugi red, budući da brojanje počinje s 0):

if (analogRead (functionGenerator) == 450) {

lcd.clear ();

lcd.setCursor (8, 1);

ton (zujalica, 250);

lcd.print ("A");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (8, 1);

ton (zujalica, 250);

lcd.print ("B");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (8, 1);

ton (zujalica, 250);

lcd.print ("C");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (8, 1);

ton (zujalica, 250);

lcd.print ("D");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (8, 1);

ton (zujalica, 250);

lcd.print ("E");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (8, 1);

ton (zujalica, 250);

lcd.print ("F");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (8, 1);

ton (zujalica, 250);

lcd.print ("G");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (8, 1);

ton (zujalica, 250);

lcd.print ("A");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (4, 1);

ton (zujalica, 250);

lcd.print ("A");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (12, 1);

ton (zujalica, 250);

lcd.print ("A");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (4, 1);

ton (zujalica, 250);

lcd.print ("B");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (12, 1);

ton (zujalica, 250);

lcd.print ("B");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (4, 1);

ton (zujalica, 250);

lcd.print ("C");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (12, 1);

ton (zujalica, 250);

lcd.print ("C");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (4, 1);

ton (zujalica, 250);

lcd.print ("D");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (12, 1);

ton (zujalica, 250);

lcd.print ("D");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (4, 1);

ton (zujalica, 250);

lcd.print ("E");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (12, 1);

ton (zujalica, 250);

lcd.print ("E");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (4, 1);

ton (zujalica, 250);

lcd.print ("F");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (12, 1);

ton (zujalica, 250);

lcd.print ("F");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (4, 1);

ton (zujalica, 250);

lcd.print ("G");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (12, 1);

ton (zujalica, 250);

lcd.print ("G");

kašnjenje (1000);

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

lcd.clear ();

lcd.setCursor (4, 1);

ton (zujalica, 250);

lcd.print ("A");

kašnjenje (1000); }

else {noTone (zujalica); } kašnjenje (10); }

Korak 4: Priključite ga na napajanje

Priključivanje na napajanje
Priključivanje na napajanje

Za posljednji korak sve što trebate učiniti je pronaći izvor napajanja i spojiti ga na Arduino, onaj koji imate i možete početi koristiti tuner.

Preporučeni: