Inhoudsopgave:

Hoe maak je een Arduino Gitaar Tuner: 4 stappen
Hoe maak je een Arduino Gitaar Tuner: 4 stappen
Anonim
Hoe maak je een Arduino Gitaar Tuner
Hoe maak je een Arduino Gitaar Tuner

Dit zijn de instructies om een gitaartuner te maken van een Arduino en verschillende andere componenten. Met basiskennis van elektronica en codering ben je in staat om deze gitaarstemmer te maken.

Allereerst moet je weten wat de materialen zijn.

Materialen:

- 1 Arduino (ik gebruikte een Arduino 1)

- 1 LCD-scherm (16x2)

- 1 Potmeter

- 1 Electret-microfoon

- 1 250 Ohm Weerstand

- Meerdere draden

-Soldeerbout

- 1 piëzo

Stap 1: Soldeerpennen

Soldeerpennen
Soldeerpennen

Het eerste dat u moet doen, is de pinnen op het LCD-scherm solderen, maar u moet ervoor zorgen dat ze op de juiste manier worden gesoldeerd. In de bovenstaande afbeelding ziet u welke pinnen waar moeten worden aangesloten. De GND-pin moet worden aangesloten op een aansluiting van de potentiometer zoals in het Tinkercad-diagram. (OPMERKING: het is erg belangrijk dat u de pinnen aansluit zoals aangegeven, anders werkt de tuner niet.)

Stap 2: Alles aansluiten

Alles verbinden
Alles verbinden

Na het solderen van de draden aan het LCD-scherm zijn er verschillende andere draden die u moet aansluiten.

1.) Het eerste dat u hoeft te doen, is de GND en 5V op de Arduino op het breadboard aansluiten, zodat deze stroom krijgt. Sluit vervolgens de electret aan op de digitale pin 7 en GND.

2.) Sluit vervolgens de piëzo aan op het breadboard voor GND en sluit deze aan op digitale pin 6.

3.) Daarna gaat de potentiometer, je sluit terminal 1 aan op een positieve strip op het breadboard en terminal 2 op een GND-strip op het breadboard, je sluit vervolgens de wiper aan op de contrastpin op het LCD-scherm.

Stap 3: Coderen

codering
codering

Als je alles op de juiste manier hebt aangesloten, moet je de tuner zo programmeren dat hij ook echt zijn werk doet. Hieronder is de code

// voeg de bibliotheekcode toe:#include

// initialiseer de bibliotheek met de nummers van de interface-pinnen LiquidCrystal lcd (12, 11, 5, 4, 3, 2);

intA = 440;

intB = 494;

intC = 523;

intD = 587;

intE = 659;

intF = 699;

intG = 784;

int hoogA = 880;

int-zoemer = 8; int functieGenerator = A1;

ongeldige setup() {

// stel het aantal kolommen en rijen van het LCD-scherm in:

lcd.begin (16, 2);

// Druk een bericht af op het LCD-scherm.

lcd.print("hallo wereld!");

Serieel.begin(9600);

// wis alles op het LCD-scherm en stel vervolgens de cursor in, de printt

lcd.setCursor(0, 1); }

lege lus() {

Serial.println(analogRead(functionGenerator));

vertraging (50);

// zet de cursor op kolom 0, regel 1

//(let op: regel 1 is de tweede rij, aangezien het tellen begint met 0):

if (analogRead (functionGenerator) == 450) {

lcd.wissen();

lcd.setCursor(8, 1);

toon (zoemer, 250);

lcd.print("A");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor(8, 1);

toon (zoemer, 250);

lcd.print("B");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor(8, 1);

toon (zoemer, 250);

lcd.print("C");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor(8, 1);

toon (zoemer, 250);

lcd.print("D");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor(8, 1);

toon (zoemer, 250);

lcd.print("E");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor(8, 1);

toon (zoemer, 250);

lcd.print("F");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor(8, 1);

toon (zoemer, 250);

lcd.print("G");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor(8, 1);

toon (zoemer, 250);

lcd.print("A");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor(4, 1);

toon (zoemer, 250);

lcd.print("A");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor (12, 1);

toon (zoemer, 250);

lcd.print("A");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor(4, 1);

toon (zoemer, 250);

lcd.print("B");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor (12, 1);

toon (zoemer, 250);

lcd.print("B");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor(4, 1);

toon (zoemer, 250);

lcd.print("C");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor (12, 1);

toon (zoemer, 250);

lcd.print("C");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor(4, 1);

toon (zoemer, 250);

lcd.print("D");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor (12, 1);

toon (zoemer, 250);

lcd.print("D");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor(4, 1);

toon (zoemer, 250);

lcd.print("E");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor (12, 1);

toon (zoemer, 250);

lcd.print("E");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor(4, 1);

toon (zoemer, 250);

lcd.print("F");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor (12, 1);

toon (zoemer, 250);

lcd.print("F");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor(4, 1);

toon (zoemer, 250);

lcd.print("G");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor (12, 1);

toon (zoemer, 250);

lcd.print("G");

vertraging (1000);

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

lcd.wissen();

lcd.setCursor(4, 1);

toon (zoemer, 250);

lcd.print("A");

vertraging (1000); }

anders { noTone (zoemer); } vertraging(10); }

Stap 4: Aansluiten op stroom

Aansluiten op stroom
Aansluiten op stroom

Voor de laatste stap hoef je alleen maar een stroombron te vinden en deze op de Arduino aan te sluiten, een die je hebt en waarmee je de tuner kunt gaan gebruiken.

Aanbevolen: