Indholdsfortegnelse:
Video: Sådan laver du en Arduino Guitar Tuner: 4 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:25
Disse er instruktionerne til at lave en guitar tuner ud af en Arduino og flere andre komponenter. Med grundlæggende viden om elektronik og kodning vil du være i stand til at lave denne guitar tuner.
Først og fremmest skal du vide, hvad materialerne er.
Materialer:
- 1 Arduino (jeg brugte en Arduino 1)
- 1 LCD -skærm (16x2)
- 1 potentiometer
- 1 Electret mikrofon
- 1 250 Ohm modstand
- Flere ledninger
-Loddekolbe
- 1 Piezo
Trin 1: Loddepinde
Den første ting du skal gøre er at lodde stifterne til LCD'et, men du skal sørge for at de er loddet på den rigtige måde. På billedet ovenfor viser det, hvilke stifter der skal forbindes hvor. GND -stiften skal forbindes til en terminal på potentiometeret som i Tinkercad -diagrammet. (BEMÆRK: Det er meget vigtigt, at du forbinder stifterne på den måde, der er instrueret, ellers fungerer tuneren ikke.)
Trin 2: Tilslutning af alt
Efter lodning af ledningerne til LCD'et er der flere andre ledninger, du skal tilslutte.
1.) Den første ting du skal gøre er at tilslutte GND og 5V på Arduino til brødbrættet, så den kan få strøm. Tilslut derefter electret til den digitale pin 7 og GND.
2.) Tilslut derefter piezo til brødbrættet til GND og tilslut den til digital pin 6.
3.) Efter at potentiometeret er gået, tilslutter du klemme 1 til en positiv strimmel på brødbrættet og klemme 2 til en GND -strimmel på brødbrættet, og derefter tilslutter du visker til kontraststiften på LCD'et.
Trin 3: Kodning
Når du har tilsluttet alt på den rigtige måde, skal du programmere tuneren, så den rent faktisk gør sit arbejde. Nedenfor er koden
// inkludere bibliotekskoden: #include
// initialiser biblioteket med numrene på grænsefladestifterne 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 summer = 8; int functionGenerator = A1;
ugyldig opsætning () {
// konfigurer LCD's antal kolonner og rækker:
lcd.begin (16, 2);
// Udskriv en besked til LCD -skærmen.
lcd.print ("hej, verden!");
Serial.begin (9600);
// ryd alt på LCD, og indstil derefter markøren, printeren
lcd.setCursor (0, 1); }
void loop () {
Serial.println (analogRead (functionGenerator));
forsinkelse (50);
// indstil markøren til kolonne 0, linje 1
// (note: linje 1 er den anden række, da tællingen begynder med 0):
if (analogRead (functionGenerator) == 450) {
lcd.clear ();
lcd.setCursor (8, 1);
tone (summer, 250);
lcd.print ("A");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator) == 494) {
lcd.clear ();
lcd.setCursor (8, 1);
tone (summer, 250);
lcd.print ("B");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator) == 523) {
lcd.clear ();
lcd.setCursor (8, 1);
tone (summer, 250);
lcd.print ("C");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator) == 587) {
lcd.clear ();
lcd.setCursor (8, 1);
tone (summer, 250);
lcd.print ("D");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator) == 659) {
lcd.clear ();
lcd.setCursor (8, 1);
tone (summer, 250);
lcd.print ("E");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator) == 699) {
lcd.clear ();
lcd.setCursor (8, 1);
tone (summer, 250);
lcd.print ("F");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator) == 784) {
lcd.clear ();
lcd.setCursor (8, 1);
tone (summer, 250);
lcd.print ("G");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator) == 880) {
lcd.clear ();
lcd.setCursor (8, 1);
tone (summer, 250);
lcd.print ("A");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator)> 400 && digitalRead (functionGenerator) <449) {
lcd.clear ();
lcd.setCursor (4, 1);
tone (summer, 250);
lcd.print ("A");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator)> 451 && digitalRead (functionGenerator) <470) {
lcd.clear ();
lcd.setCursor (12, 1);
tone (summer, 250);
lcd.print ("A");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator)> 471 && digitalRead (functionGenerator) <493) {
lcd.clear ();
lcd.setCursor (4, 1);
tone (summer, 250);
lcd.print ("B");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator)> 495 && digitalRead (functionGenerator) <509) {
lcd.clear ();
lcd.setCursor (12, 1);
tone (summer, 250);
lcd.print ("B");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator)> 509 && digitalRead (functionGenerator) <522) {
lcd.clear ();
lcd.setCursor (4, 1);
tone (summer, 250);
lcd.print ("C");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator)> 524 && digitalRead (functionGenerator) <556) {
lcd.clear ();
lcd.setCursor (12, 1);
tone (summer, 250);
lcd.print ("C");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator)> 557 && digitalRead (functionGenerator) <586) {
lcd.clear ();
lcd.setCursor (4, 1);
tone (summer, 250);
lcd.print ("D");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator)> 588 && digitalRead (functionGenerator) <620) {
lcd.clear ();
lcd.setCursor (12, 1);
tone (summer, 250);
lcd.print ("D");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator)> 621 && digitalRead (functionGenerator) <658) {
lcd.clear ();
lcd.setCursor (4, 1);
tone (summer, 250);
lcd.print ("E");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator)> 660 && digitalRead (functionGenerator) <679) {
lcd.clear ();
lcd.setCursor (12, 1);
tone (summer, 250);
lcd.print ("E");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator)> 680 && digitalRead (functionGenerator) <698) {
lcd.clear ();
lcd.setCursor (4, 1);
tone (summer, 250);
lcd.print ("F");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator)> 700 && digitalRead (functionGenerator) <742) {
lcd.clear ();
lcd.setCursor (12, 1);
tone (summer, 250);
lcd.print ("F");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator)> 743 && digitalRead (functionGenerator) <783) {
lcd.clear ();
lcd.setCursor (4, 1);
tone (summer, 250);
lcd.print ("G");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator)> 785 && digitalRead (functionGenerator) <845) {
lcd.clear ();
lcd.setCursor (12, 1);
tone (summer, 250);
lcd.print ("G");
forsinkelse (1000);
} ellers hvis (analogRead (functionGenerator)> 846 && digitalRead (functionGenerator) <879) {
lcd.clear ();
lcd.setCursor (4, 1);
tone (summer, 250);
lcd.print ("A");
forsinkelse (1000); }
ellers {noTone (summer); } forsinkelse (10); }
Trin 4: Tilslutning til strøm
Til det sidste trin er alt du skal gøre at finde en strømkilde og slutte den til Arduino, en du har, som du kan begynde at bruge tuneren.
Anbefalede:
Sådan laver du RADAR ved hjælp af Arduino til Science Project - Bedste Arduino -projekter: 5 trin
Sådan laver du RADAR ved hjælp af Arduino til Science Project | Bedste Arduino -projekter: Hej venner, i denne instruktive vil jeg vise dig, hvordan du laver et fantastisk radarsystem bygget ved hjælp af arduino nano, dette projekt er ideelt til videnskabelige projekter, og du kan nemt lave dette med meget færre investeringer og chancer, hvis vinderpræmien er stor til
Arduino Guitar Tuner: 3 trin
Arduino Guitar Tuner: Her er en guitar tuner jeg lavede med en Arduino Uno og nogle ting jeg havde liggende. Det fungerer sådan: Der er 5 knapper hver, der producerer en anden note i standard guitar tuning EADGBE. Da jeg kun havde 5 knapper, skrev jeg kode, så
Sådan laver du en radar med Arduino - Arduino -projekt: 4 trin
Sådan laver du en radar med Arduino | Arduino Project: I denne artikel vil jeg lære dig, hvordan du kan lave en simpel radar med arduino. Se en fuld video tutorial her: Klik på mig
Sådan laver du en delt skærmvideo med fire trin: 4 trin (med billeder)
Sådan laver du en delt skærmvideo med fire trin: Vi ser ofte en samme person vise sig i en scene to gange i et tv -afspilning. Og så vidt vi ved, har skuespilleren ikke en tvillingebror. Vi har også set, at to sangvideoer er sat på en skærm for at sammenligne deres sangevner. Dette er kraften i spl
Sådan laver du en RockBand Guitar Playing Robot !: 15 trin (med billeder)
How to Make a RockBand Guitar Playing Robot !: For min første instruerbare … Hvad kan jeg sige, jeg elsker at tromme væk på rockband -sættet, men det er sjældent, at jeg har nogen at spille med mig; måske har jeg brug for flere venner, men ud af mit tilsyneladende ensomme liv (jk) kommer en temmelig sej ulidelig. Jeg har design