Cuprins:

Tort Aniversar Arduino: 4 pași
Tort Aniversar Arduino: 4 pași

Video: Tort Aniversar Arduino: 4 pași

Video: Tort Aniversar Arduino: 4 pași
Video: Aceasta este cea mai perfectă cremă pentru torturi și prăjituri. Se prepară foarte simplu| SavurosTV 2024, Iulie
Anonim

În acest instructable, voi face un proiect arduino foarte simplu și de bază: un tort de ziua de naștere!

Un tort de ziua de naștere este afișat pe ecranul ecranului UTFT de pe arduino și un difuzor redă muzica „La mulți ani”.

Când suflați la microfon, lumânările se sting.

Pasul 1: Materiale

Materiale
Materiale
Materiale
Materiale
Materiale
Materiale
Materiale
Materiale

Pentru acest proiect simplu, veți avea nevoie de:

- un arduino MEGA

- un difuzor sau un buzzer

- un modul de microfon

- un ecran arduino UTFT

Am decis să folosesc o placă arduino MEGA pentru acest proiect din două motive: are multă memorie și are o mulțime de pini.

Nu puteți utiliza un arduino UNO pentru acest proiect, deoarece atunci când ecranul UTFT este conectat la acesta, toate pinii sunt ascunși (nu mai sunt disponibili pentru microfon și difuzor) și nu are suficientă memorie (biblioteca UTFT este foarte mare).

Pasul 2: Cablare

Cablare
Cablare
Cablare
Cablare
Cablare
Cablare
Cablare
Cablare

Boxa se conectează la pinii D40 și GND ai arduino-ului.

Microfonul se conectează la pinii GND ("G"), 5V ("+") și A10 ("A0").

Ecranul UTFT se conectează ca un scut obișnuit.

Ecranul UTFT nu este pe deplin compatibil cu arduino MEGA: mufa USB a plăcii arduino este prea mare

Pentru a rezolva această problemă, am conectat ecranul UTFT pe un alt scut arduino (cu pini mai lungi), apoi le-am conectat pe ambele pe arduino.

Pasul 3: Calibrați microfonul

Calibrați microfonul
Calibrați microfonul
Calibrați microfonul
Calibrați microfonul

Pentru a calibra microfonul, veți avea nevoie de o șurubelniță și de computer.

În primul rând, încărcați următorul cod pe arduino:

int val = 0;

void setup () {Serial.begin (9600); } void loop () {val = analogRead (10); Serial.println (val); întârziere (100); }

Apoi mergeți la monitorul serial și calibrați microfonul rotind potențiometrul cu șurubelnița atunci când nu există sunet, valoarea trebuie să fie de aproximativ 30 ~ 40.

Când suflați la microfon, valoarea trebuie să fie mai mare de 100.

Asigurați-vă că valoarea este mai mică de 100 atunci când vorbiți (chiar tare).

Pasul 4: Codul

Iată codul proiectului.

Afișează un tort de ziua cu lumânări pe UTFT și joacă „La mulți ani” cu difuzorul. Tortul se face cu dreptunghiuri.

Acest program necesită biblioteca UTFT.

#include

extern uint8_t BigFont ; // modificați aceste valori în funcție de modelul de ecran UTFT myGLCD (ITDB28, A5, A4, A3, A2); int melodie = {196, 196, 220, 196, 262, 247, 196, 196, 220, 196, 294, 262, 196, 196, 392, 330, 262, 247, 220, 349, 349, 330, 262, 294, 262}; int noteDurations = {8, 8, 4, 4, 4, 2, 8, 8, 4, 4, 4, 2, 8, 8, 4, 4, 4, 4, 3, 8, 8, 4, 4, 4, 2}; int val = 0; void setup () {myGLCD. InitLCD (); myGLCD.setFont (BigFont); myGLCD.fillScr (20, 200, 150); // fundal albastru myGLCD.setColor (200, 125, 50); // tort maro myGLCD.fillRect (100, 90, 220, 160); myGLCD.setColor (255, 255, 255); // glazură albă myGLCD.fillRect (100, 90, 220, 105); myGLCD.setColor (255, 50, 50); // linii roșii myGLCD.fillRect (100, 120, 220, 123); myGLCD.fillRect (100, 140, 220, 143); myGLCD.setColor (255, 255, 0); // linia galbenă myGLCD.fillRect (100, 130, 220, 133); myGLCD.setColor (255, 170, 255); // lumânări roz myGLCD.fillRect (128, 70, 132, 90); myGLCD.fillRect (158, 70, 162, 90); myGLCD.fillRect (188, 70, 192, 90); myGLCD.setColor (255, 255, 0); // focul lumânărilor myGLCD.fillCircle (130, 62, 5); myGLCD.fillCircle (160, 62, 5); myGLCD.fillCircle (190, 62, 5); myGLCD.setColor (0, 255, 0); // mesaj la mulți ani myGLCD.print ("LA MULȚI ANI!", CENTRE, 200); for (int thisNote = 0; thisNote 100) {myGLCD.setColor (20, 200, 150); // stinge lumânările myGLCD.fillCircle (130, 62, 5); myGLCD.fillCircle (160, 62, 5); myGLCD.fillCircle (190, 62, 5); myGLCD.setColor (255, 255, 255); // și afișează mesajul „felicitări” myGLCD.print („FELICITĂRI !!!”, CENTER, 10); întârziere (10000); myGLCD.clrScr (); // ștergeți ecranul după 10 secunde}}

Recomandat: