Obsah:

Narodeninový koláč Arduino: 4 kroky
Narodeninový koláč Arduino: 4 kroky

Video: Narodeninový koláč Arduino: 4 kroky

Video: Narodeninový koláč Arduino: 4 kroky
Video: Narodeninová torta | Adriana Poláková | Kuchyna Lidla 2024, November
Anonim

V tomto návode vyrobím veľmi jednoduchý a základný projekt arduino: narodeninovú tortu!

Na štítu obrazovky UTFT na arduine je zobrazená narodeninová torta a reproduktor hrá hudbu „Všetko najlepšie k narodeninám“.

Keď zapálite mikrofón, sviečky sa vypnú.

Krok 1: Materiály

Materiály
Materiály
Materiály
Materiály
Materiály
Materiály
Materiály
Materiály

Na tento jednoduchý projekt budete potrebovať:

- arduino MEGA

- reproduktor alebo bzučiak

- modul mikrofónu

- štít arduino obrazovky UTFT

Pre tento projekt som sa rozhodol použiť dosku arduino MEGA z dvoch dôvodov: má veľa pamäte a veľa pinov.

Na tento projekt nemôžete použiť arduino UNO, pretože keď je na ňom zapojená obrazovka UTFT, všetky piny sú skryté (pre mikrofón a reproduktor nie sú k dispozícii žiadne ďalšie) a nemá dostatok pamäte (knižnica UTFT je veľmi veľký).

Krok 2: Zapojenie

Elektrické vedenie
Elektrické vedenie
Elektrické vedenie
Elektrické vedenie
Elektrické vedenie
Elektrické vedenie
Elektrické vedenie
Elektrické vedenie

Reproduktor sa pripája na piny D40 a GND arduina.

Mikrofón sa pripája na kolíky GND („G“), 5V („+“) a A10 („A0“).

Obrazovka UTFT sa pripája ako bežný štít.

Štít obrazovky UTFT nie je úplne kompatibilný s arduino MEGA: konektor USB dosky arduino je príliš veľký

Aby som tento problém vyriešil, zapojil som obrazovku UTFT na iný arduino štít (s dlhšími kolíkmi), potom som zapojil oba na arduino.

Krok 3: Kalibrujte mikrofón

Kalibrujte mikrofón
Kalibrujte mikrofón
Kalibrujte mikrofón
Kalibrujte mikrofón

Na kalibráciu mikrofónu budete potrebovať skrutkovač a počítač.

Najprv si do arduina nahrajte nasledujúci kód:

int val = 0;

void setup () {Serial.begin (9600); } prázdna slučka () {val = analogRead (10); Serial.println (val); oneskorenie (100); }

Potom choďte na sériový monitor a kalibrujte mikrofón otáčaním potenciometra skrutkovačom, keď nie je žiadny zvuk, hodnota musí byť približne 30 ~ 40.

Keď fúkate do mikrofónu, hodnota musí byť vyššia ako 100.

Keď hovoríte (aj nahlas), uistite sa, že je hodnota menšia ako 100.

Krok 4: Kód

Tu je kód projektu.

Na UTFT zobrazí narodeninovú tortu so sviečkami a s reproduktorom zahrá „Happy birthday“. Torta je vyrobená z obdĺžnikov.

Tento program vyžaduje knižnicu UTFT.

#zahrnúť

externý uint8_t BigFont ; // zmeňte tieto hodnoty podľa modelu obrazovky UTFT myGLCD (ITDB28, A5, A4, A3, A2); int melódia = {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); // modré pozadie myGLCD.setColor (200, 125, 50); // hnedý koláč myGLCD.fillRect (100, 90, 220, 160); myGLCD.setColor (255, 255, 255); // biela poleva myGLCD.fillRect (100, 90, 220, 105); myGLCD.setColor (255, 50, 50); // červené čiary myGLCD.fillRect (100, 120, 220, 123); myGLCD.fillRect (100, 140, 220, 143); myGLCD.setColor (255, 255, 0); // žltá čiara myGLCD.fillRect (100, 130, 220, 133); myGLCD.setColor (255, 170, 255); // ružové sviečky myGLCD.fillRect (128, 70, 132, 90); myGLCD.fillRect (158, 70, 162, 90); myGLCD.fillRect (188, 70, 192, 90); myGLCD.setColor (255, 255, 0); // oheň sviečok myGLCD.fillCircle (130, 62, 5); myGLCD.fillCircle (160, 62, 5); myGLCD.fillCircle (190, 62, 5); myGLCD.setColor (0, 255, 0); // správa k narodeninám myGLCD.print („HAPPY BIRTHDAY!“, CENTER, 200); for (int thisNote = 0; thisNote 100) {myGLCD.setColor (20, 200, 150); // vypne sviečky myGLCD.fillCircle (130, 62, 5); myGLCD.fillCircle (160, 62, 5); myGLCD.fillCircle (190, 62, 5); myGLCD.setColor (255, 255, 255); // a zobrazí správu „gratulujeme“myGLCD.print („GRATULUJEME !!!“, CENTRUM, 10); oneskorenie (10 000); myGLCD.clrScr (); // vyčistenie obrazovky po 10 s}}}

Odporúča: