Turinys:

Kaip pasidaryti „Arduino“gitaros imtuvą: 4 žingsniai
Kaip pasidaryti „Arduino“gitaros imtuvą: 4 žingsniai

Video: Kaip pasidaryti „Arduino“gitaros imtuvą: 4 žingsniai

Video: Kaip pasidaryti „Arduino“gitaros imtuvą: 4 žingsniai
Video: Arducopter на гоночном квадрокоптере. Это вам не INAV! Часть первая. Базовая настройка 2024, Gruodis
Anonim
Kaip pasidaryti „Arduino“gitaros imtuvą
Kaip pasidaryti „Arduino“gitaros imtuvą

Tai yra instrukcijos, kaip iš „Arduino“ir kelių kitų komponentų pagaminti gitaros imtuvą. Turėdami pagrindines elektronikos ir kodavimo žinias, galėsite pagaminti šį gitaros derintuvą.

Pirmiausia turite žinoti, kokios medžiagos yra.

Medžiagos:

- 1 „Arduino“(aš naudoju „Arduino 1“)

- 1 LCD ekranas (16x2)

- 1 potenciometras

- 1 elektretinis mikrofonas

- 1 250 omų rezistorius

- Keletas laidų

-Lituoklis

- 1 pjezo

1 žingsnis: litavimo kaiščiai

Litavimo kaiščiai
Litavimo kaiščiai

Pirmas dalykas, kurį reikia padaryti, yra lituoti kaiščius prie LCD, tačiau turite įsitikinti, kad jie yra lituojami teisingai. Aukščiau esančiame paveikslėlyje parodyta, kurie kaiščiai turėtų būti prijungti kur. GND kaištis turi būti prijungtas prie potenciometro gnybto, kaip parodyta Tinkercad diagramoje. (PASTABA: labai svarbu prijungti kaiščius taip, kaip nurodyta, kitaip imtuvas neveiks.)

2 žingsnis: viską sujunkite

Viską jungiantis
Viską jungiantis

Po litavimo laidų prie LCD yra keletas kitų laidų, kuriuos reikia prijungti.

1.) Pirmas dalykas, kurį jums reikia padaryti, yra prijungti „Arduino“GND ir 5 V prie duonos lentos, leidžiančios jam turėti galią. Tada prijunkite elektretą prie skaitmeninio kaiščio 7 ir GND.

2.) Tada prijunkite pjezo prie GND duonos lentos ir prijunkite prie skaitmeninio kaiščio 6.

3.) Po to eina potenciometras, prijunkite 1 gnybtą prie teigiamos juostos ant duonos lentos, o 2 gnybtą - prie GND juostos ant duonos lentos, tada prijunkite valytuvą prie kontrastinio kaiščio LCD ekrane.

3 žingsnis: kodavimas

Kodavimas
Kodavimas

Tinkamai prijungę viską, turite užprogramuoti imtuvą taip, kad jis iš tikrųjų atliktų savo darbą. Žemiau yra kodas

// įtraukite bibliotekos kodą: #include

// inicijuoti biblioteką naudojant sąsajos kaiščių numerius 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 aukštasA = 880;

int garsinis signalas = 8; int funkcijaGeneratorius = A1;

void setup () {

// nustatyti LCD stulpelių ir eilučių skaičių:

LCD. pradžia (16, 2);

// Spausdinkite pranešimą į LCD.

lcd.print ("labas, pasauli!");

Serial.begin (9600);

// išvalykite viską LCD ekrane, tada nustatykite žymeklį, spaudinį

lcd.setCursor (0, 1); }

void loop () {

Serial.println (analogRead (functionGenerator));

vėlavimas (50);

// nustatykite žymeklį į 0 stulpelį, 1 eilutę

// (pastaba: 1 eilutė yra antra eilutė, nes skaičiavimas prasideda nuo 0):

if (analogRead (functionGenerator) == 450) {

lcd.clear ();

lcd.setCursor (8, 1);

tonas (garsinis signalas, 250);

lcd.print ("A");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (8, 1);

tonas (garsinis signalas, 250);

lcd.print ("B");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (8, 1);

tonas (garsinis signalas, 250);

lcd.print ("C");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (8, 1);

tonas (garsinis signalas, 250);

lcd.print ("D");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (8, 1);

tonas (garsinis signalas, 250);

lcd.print ("E");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (8, 1);

tonas (garsinis signalas, 250);

lcd.print ("F");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (8, 1);

tonas (garsinis signalas, 250);

lcd.print ("G");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (8, 1);

tonas (garsinis signalas, 250);

lcd.print ("A");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (4, 1);

tonas (garsinis signalas, 250);

lcd.print ("A");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (12, 1);

tonas (garsinis signalas, 250);

lcd.print ("A");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (4, 1);

tonas (garsinis signalas, 250);

lcd.print ("B");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (12, 1);

tonas (garsinis signalas, 250);

lcd.print ("B");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (4, 1);

tonas (garsinis signalas, 250);

lcd.print ("C");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (12, 1);

tonas (garsinis signalas, 250);

lcd.print ("C");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (4, 1);

tonas (garsinis signalas, 250);

lcd.print ("D");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (12, 1);

tonas (garsinis signalas, 250);

lcd.print ("D");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (4, 1);

tonas (garsinis signalas, 250);

lcd.print ("E");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (12, 1);

tonas (garsinis signalas, 250);

lcd.print ("E");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (4, 1);

tonas (garsinis signalas, 250);

lcd.print ("F");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (12, 1);

tonas (garsinis signalas, 250);

lcd.print ("F");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (4, 1);

tonas (garsinis signalas, 250);

lcd.print ("G");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (12, 1);

tonas (garsinis signalas, 250);

lcd.print ("G");

vėlavimas (1000);

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

lcd.clear ();

lcd.setCursor (4, 1);

tonas (garsinis signalas, 250);

lcd.print ("A");

vėlavimas (1000); }

else {noTone (garsinis signalas); } uždelsimas (10); }

4 veiksmas: prijunkite jį prie maitinimo šaltinio

Jungimas prie maitinimo
Jungimas prie maitinimo

Paskutiniame žingsnyje jums tereikia rasti maitinimo šaltinį ir prijungti jį prie „Arduino“, kurį galite pradėti naudoti imtuvu.

Rekomenduojamas: