Taula de continguts:
- Pas 1: passadors de soldadura
- Pas 2: connectar-ho tot
- Pas 3: Codificació
- Pas 4: connectar-lo a l'alimentació
Vídeo: Com fer un sintonitzador de guitarra Arduino: 4 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:10
Aquestes són les instruccions per fabricar un sintonitzador de guitarra amb un Arduino i diversos components més. Amb coneixements bàsics d’electrònica i codificació, podreu fabricar aquest sintonitzador de guitarra.
Primer de tot, primer cal saber quins són els materials.
Materials:
- 1 Arduino (he utilitzat un Arduino 1)
- 1 pantalla LCD (16x2)
- 1 potenciòmetre
- 1 micròfon Electret
- Resistència de 1 250 Ohm
- Diversos cables
-Soldador
- 1 Piezo
Pas 1: passadors de soldadura
El primer que heu de fer és soldar els pins a la pantalla LCD, però heu d’assegurar-vos que es soldin de la manera correcta. A la imatge superior, es mostra quins pins han d’anar connectats on. El pin GND hauria d’anar connectat a un terminal del potenciòmetre com al diagrama de Tinkercad. (NOTA: És molt important que connecteu els pins de la manera que s'indica, en cas contrari el sintonitzador no funcionarà.)
Pas 2: connectar-ho tot
Després de soldar els cables a la pantalla LCD, hi ha diversos cables que cal connectar.
1.) El primer que heu de fer és connectar el GND i el 5V de l'Arduino a la placa de control, cosa que li permet tenir energia. A continuació, connecteu l'electret al pin digital 7 i GND.
2.) A continuació, connecteu el piezo a la taula de suport per a GND i connecteu-lo al pin digital 6.
3.) Després d'això va el potenciòmetre, connecteu el terminal 1 a una tira positiva de la placa de connexió i el terminal 2 a una tira GND de la placa de control, i després connecteu l'eixugaparabrises al pin de contrast de la pantalla LCD.
Pas 3: Codificació
Un cop hàgiu connectat tot correctament, heu de programar el sintonitzador perquè realment faci el seu treball. A continuació es mostra el codi
// inclou el codi de la biblioteca: #include
// inicialitzeu la biblioteca amb els números dels pins de la interfície 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;
configuració nul·la () {
// configureu el nombre de columnes i files de la pantalla LCD:
lcd.begin (16, 2);
// Imprimiu un missatge a la pantalla LCD.
lcd.print ("hola, món!");
Serial.begin (9600);
// esborreu-ho tot a la pantalla LCD i, a continuació, configureu el cursor, la impressió
lcd.setCursor (0, 1); }
bucle buit () {
Serial.println (analogRead (functionGenerator));
retard (50);
// configureu el cursor a la columna 0, línia 1
// (nota: la línia 1 és la segona fila, ja que el recompte comença per 0):
if (analogRead (functionGenerator) == 450) {
lcd.clear ();
lcd.setCursor (8, 1);
to (brunzidor, 250);
lcd.print ("A");
retard (1000);
} else if (analogRead (functionGenerator) == 494) {
lcd.clear ();
lcd.setCursor (8, 1);
to (brunzidor, 250);
lcd.print ("B");
retard (1000);
} else if (analogRead (functionGenerator) == 523) {
lcd.clear ();
lcd.setCursor (8, 1);
to (brunzidor, 250);
lcd.print ("C");
retard (1000);
} else if (analogRead (functionGenerator) == 587) {
lcd.clear ();
lcd.setCursor (8, 1);
to (brunzidor, 250);
lcd.print ("D");
retard (1000);
} else if (analogRead (functionGenerator) == 659) {
lcd.clear ();
lcd.setCursor (8, 1);
to (brunzidor, 250);
lcd.print ("E");
retard (1000);
} else if (analogRead (functionGenerator) == 699) {
lcd.clear ();
lcd.setCursor (8, 1);
to (brunzidor, 250);
lcd.print ("F");
retard (1000);
} else if (analogRead (functionGenerator) == 784) {
lcd.clear ();
lcd.setCursor (8, 1);
to (brunzidor, 250);
lcd.print ("G");
retard (1000);
} else if (analogRead (functionGenerator) == 880) {
lcd.clear ();
lcd.setCursor (8, 1);
to (brunzidor, 250);
lcd.print ("A");
retard (1000);
} else if (analogRead (functionGenerator)> 400 && digitalRead (functionGenerator) <449) {
lcd.clear ();
lcd.setCursor (4, 1);
to (brunzidor, 250);
lcd.print ("A");
retard (1000);
} else if (analogRead (functionGenerator)> 451 && digitalRead (functionGenerator) <470) {
lcd.clear ();
lcd.setCursor (12, 1);
to (brunzidor, 250);
lcd.print ("A");
retard (1000);
} else if (analogRead (functionGenerator)> 471 && digitalRead (functionGenerator) <493) {
lcd.clear ();
lcd.setCursor (4, 1);
to (brunzidor, 250);
lcd.print ("B");
retard (1000);
} else if (analogRead (functionGenerator)> 495 && digitalRead (functionGenerator) <509) {
lcd.clear ();
lcd.setCursor (12, 1);
to (brunzidor, 250);
lcd.print ("B");
retard (1000);
} else if (analogRead (functionGenerator)> 509 && digitalRead (functionGenerator) <522) {
lcd.clear ();
lcd.setCursor (4, 1);
to (brunzidor, 250);
lcd.print ("C");
retard (1000);
} else if (analogRead (functionGenerator)> 524 && digitalRead (functionGenerator) <556) {
lcd.clear ();
lcd.setCursor (12, 1);
to (brunzidor, 250);
lcd.print ("C");
retard (1000);
} else if (analogRead (functionGenerator)> 557 && digitalRead (functionGenerator) <586) {
lcd.clear ();
lcd.setCursor (4, 1);
to (brunzidor, 250);
lcd.print ("D");
retard (1000);
} else if (analogRead (functionGenerator)> 588 && digitalRead (functionGenerator) <620) {
lcd.clear ();
lcd.setCursor (12, 1);
to (brunzidor, 250);
lcd.print ("D");
retard (1000);
} else if (analogRead (functionGenerator)> 621 && digitalRead (functionGenerator) <658) {
lcd.clear ();
lcd.setCursor (4, 1);
to (brunzidor, 250);
lcd.print ("E");
retard (1000);
} else if (analogRead (functionGenerator)> 660 && digitalRead (functionGenerator) <679) {
lcd.clear ();
lcd.setCursor (12, 1);
to (brunzidor, 250);
lcd.print ("E");
retard (1000);
} else if (analogRead (functionGenerator)> 680 && digitalRead (functionGenerator) <698) {
lcd.clear ();
lcd.setCursor (4, 1);
to (brunzidor, 250);
lcd.print ("F");
retard (1000);
} else if (analogRead (functionGenerator)> 700 && digitalRead (functionGenerator) <742) {
lcd.clear ();
lcd.setCursor (12, 1);
to (brunzidor, 250);
lcd.print ("F");
retard (1000);
} else if (analogRead (functionGenerator)> 743 && digitalRead (functionGenerator) <783) {
lcd.clear ();
lcd.setCursor (4, 1);
to (brunzidor, 250);
lcd.print ("G");
retard (1000);
} else if (analogRead (functionGenerator)> 785 && digitalRead (functionGenerator) <845) {
lcd.clear ();
lcd.setCursor (12, 1);
to (brunzidor, 250);
lcd.print ("G");
retard (1000);
} else if (analogRead (functionGenerator)> 846 && digitalRead (functionGenerator) <879) {
lcd.clear ();
lcd.setCursor (4, 1);
to (brunzidor, 250);
lcd.print ("A");
retard (1000); }
else {noTone (timbre); } retard (10); }
Pas 4: connectar-lo a l'alimentació
Per a l'últim pas, només cal trobar una font d'alimentació i connectar-la a l'Arduino, una que teniu per començar a utilitzar el sintonitzador.
Recomanat:
Sintonitzador de guitarra Arduino: 3 passos
Sintonitzador de guitarra Arduino: aquí teniu un afinador de guitarra que he fet amb un Arduino Uno i algunes coses que tenia al voltant. Funciona així: hi ha 5 botons cadascun que produiran una nota diferent a la sintonització de guitarra estàndard EADGBE. Com que només tenia 5 botons, vaig escriure codi així
Sintonitzador Ukelele mitjançant LabView i NI USB-6008: 5 passos
Sintonitzador Ukelele amb LabView i NI USB-6008: com a projecte d'aprenentatge basat en problemes per al meu LabVIEW & Curs d'instrumentació a Humber College (Electrònica d'Enginyeria Tecnològica), vaig crear un sintonitzador d'ukelele que prendria una entrada analògica (to de corda d'ukelele), trobaria la freqüència fonamental
Sintonitzador de TV piratejat per llegir fotos de la Terra de satèl·lits: 7 passos (amb imatges)
Sintonitzador de TV piratejat per llegir fotos de la Terra de satèl·lits: hi ha molts satèl·lits per sobre dels nostres caps. Sabíeu que utilitzant només el vostre ordinador, sintonitzador de TV i antena de bricolatge senzilla, podríeu rebre'n les transmissions? Per exemple, imatges de la terra en temps real. Us mostraré com. Necessitareu: - 2 w
Sintonitzador: 9 passos
Afinador: aquest projecte va ser dissenyat per fabricar un afinador de guitarra mitjançant Vivado i una pantalla de 7 segments. Una vegada que el sintonitzador troba la freqüència del so introduït, el sintonitzador compararà aquest valor amb una llista de valors codificats per a freqüències exactes conegudes com
Corregiu una cadena de sintonitzador de ràdio vintage: 11 passos (amb imatges)
Corregiu una cadena de sintonitzador de ràdio vintage: ja hi ha alguns tutorials molt agradables a les ràdios antigues, però tenia un problema específic: la ràdio engega la ràdio fa soroll i es fa més forta amb el comandament de volum, però girant el comandament de sintonització no es mou l'agulla ni es canvia