Sadržaj:
- Korak 1: Stvari korištene u ovom projektu
- Korak 2: Priča
- Korak 3: Povezivanje hardvera
- Korak 4: Programiranje softvera
- Korak 5: Kodirajte
Video: Osvijetlite svoje Valentinovo pjenušavom matricom: 5 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:36
Valentinovo je prilika za vas da pošaljete ljubavne poruke. Zašto ne biste napravili zabavno LED lice s jeftinim komponentama da izrazite svoj osjećaj!
Korak 1: Stvari korištene u ovom projektu
Hardverske komponente
- Seeeduino V4.2
- Base Shield
- Grove - Crvena LED matrica s upravljačkim programom
- Grove - Pokret (PAJ7620U2)
Softverske aplikacije i mrežne usluge
Arduino IDE
Korak 2: Priča
Korak 3: Povezivanje hardvera
U ovom projektu koristimo senzor gesta kao ulaz i dajemo povratne informacije upravljačkom programu LED matrice za napajanje crvene LED matrice.
Morate spojiti Grove - Gesture i Grove - Red LED Matrix w/Driver s I^2^C portom osnovnog štita koji je priključen na Seeeduino. Zatim spojite Seeeduino na računalo putem USB kabela.
Korak 4: Programiranje softvera
Plan za ovaj projekt je prikazati statične emojije (uplakano lice i lice koje čeka) kada nema čitanja lijeve ili desne geste.
Prikažite dinamične emojije koji mijenjaju položaj očiju s kontroliranim pokretom lijevo ili desno kada se čita lijeva ili desna gesta.
U određenom položaju oka, srce koje kuca bit će prikazano na LED matrici.
Uzorke LED zaslona dizajnirao je LED Matrix Editor, možete promijeniti ili dodati svoje LED uzorke u gore prikazanim programima.
Da biste se pripremili za ovaj projekt, potrebno je instalirati Grove - Gesture, Grove - Red LED Matrix w/Driver i MsTimer2 knjižnice u Arduino IDE.
#include "Grove_LED_Matrix_Driver_HT16K33.h"
#include "MsTimer2.h" #include "paj7620.h" #include "Wire.h"
Tijekom postupka postavljanja inicirali smo funkcije Serial, matrix i MsTimer2. Inicijalizirani serijski broj koristi se za otklanjanje pogrešaka u programu, pa je nepotrebno spajanje na računalo ili korištenje serijskog monitora nakon otklanjanja pogrešaka. U ovom projektu koristimo MsTimer2 za kontrolu prikaza statičkog emojija.
// Pokrenuo serijski program za ispravljanje pogrešaka.
Serial.begin (9600); while (! Serijski); paj7620Init (); Wire.begin (); matrica.init (); matrix.setBrightness (15); matrix.setBlinkRate (BLINK_OFF); MsTimer2:: set (1000, displayStatic); MsTimer2:: start ();
U glavnoj petlji uzimamo samo dva izlaza senzora gesta, GES_RIGHT_FLAG, GES_LEFT_FLAG, a oni se koriste za usmjeravanje funkcije displayDynamic ().
Funkcija displayDynamic () izračunat će interval od posljednjeg prikaza dinamičkog emojija do trenutnog vremena, ako interval prelazi TIMEOUT, prestat će reproducirati statički emoji i postaviti prikazani indeks dinamičkog emojija za početak. Kada se čitaju geste slijeva nadesno, početni indeks je 0, a indeks će se povećati nakon ponovnog čitanja gesta s lijeva na desno. Inače, početni indeks je zadnji indeks DYNAMIC niza, a indeks će se smanjiti.
void displayDynamic (bool leftToRight) {
unsigned long currentTime = millis (); if (currentTime - prevTime> TIMEOUT) {dIndex = leftToRight? 0: ARRAY_LENGTH (DYNAMIC) - 1; showStatic = false; } // Ovo se koristi za izbjegavanje prekoračenja granice. if (dIndex> = ARRAY_LENGTH (DYNAMIC) || dIndex <= -1) {heartBeat (); dIndex = leftToRight? NIZ_DUŽINA (DINAMIČKI) - 1: 0; } prevTime = currentTime; matrixDisplay = DYNAMIC [leftToRight? dIndex ++: dIndex--]; }
Nijedna gesta se ne čita ako se prekorači TIMEOUT razdoblje, bit će vraćena statična reprodukcija emojija.
Prenesite program na svoj Seeeduino, sve je gotovo. Igrajte se i zabavite!
Korak 5: Kodirajte
#include "Grove_LED_Matrix_Driver_HT16K33.h"
#include "MsTimer2.h" #include "paj7620.h" #include "Wire.h" #define TIMEOUT 5000 #define GES_REG_ADDR 0x43 #define ARRAY_LENGTH (niz) (sizeof (niz) / sizeof (niz [0])) Matrica_8x8 matrica; uint64_t matrixDisplay = 0; bez potpisa dugo prevTime = millis (); int8_t sIndex = 0; bool showStatic = true; const uint64_t STATIC = {0x00003c0000a54200, 0x00003c000000e700, 0x00003c004242e700}; int8_t dIndex = 0; const uint64_t DYNAMIC = {0x00003c000021e700, 0x00003c000042e700, 0x00003c000084e700}; const uint64_t HEART = {0x00183c7e7e240000, 0x00183c7effff6600, 0x183c7effffffff66, 0x00183c7effff6600}; void displayStatic (void) {if (showStatic) {matrixDisplay = STATIC [sIndex]; sIndex = (sIndex + 1) % ARRAY_LENGTH (STATIČKO); }} void heartBeat () {for (uint8_t i = 0; i TIMEOUT) {showStatic = false; prevTime = currentTime; dIndex = leftToRight? 0: ARRAY_LENGTH (DYNAMIC) - 1; } // Ovo se koristi za izbjegavanje prekoračenja granice. if (dIndex> = ARRAY_LENGTH (DYNAMIC) || dIndex TIMEOUT) {showStatic = true; } matrix.writeOnePicture (matrixDisplay); matrix.display (); kašnjenje (100); }
Preporučeni:
Matrični sat 8x8 sa LED matricom i upozorenje protiv upada: 4 koraka (sa slikama)
Matrični sat sa 8x8 matricom i upozorenje protiv upada: U ovom uputstvu ćemo vidjeti kako izgraditi matrični sat sa 8 x 8 vodova koji se aktivira detekcijom pokreta. Ovaj sat se može koristiti i kao uređaj protiv provale koji šalje poruku upozorenja ako je pokret otkriveno za telegram bot !!! Učinit ćemo s dva različita
Tenis za tenis sa LED matricom, Arduinom i džojstikom: 5 koraka (sa slikama)
Tenis za tenis sa LED matricom, Arduinom i džojstikom: Ovaj je projekt namijenjen početnicima i iskusnim majstorima. Na osnovnoj razini to se može učiniti pomoću ploče, žica za kratkospojnike i zalijepiti za komad otpadnog materijala (koristio sam drvo) s Blu-Tackom i bez lemljenja. Međutim, na više napretka
Upravljanje LED matricom pomoću Arduina: 5 koraka
Upravljanje LED matricom pomoću Arduina: Bok, prijatelju. U ovom članku ću vam pokazati kako koristiti Led Matrix pomoću Arduina. LED matrica je zbirka LED dioda u obliku niza. Led matrice imaju različite stupce i retke, ovisno o vrsti. Predstavljajući nekoliko LED dioda sa certifikatom
Osvijetlite svoje Valentinovo sjajnom RGB matricom: 3 koraka
Osvijetlite svoje Valentinovo svjetlucavom RGB matricom: Valentinovo dolazi, upoznajete li nekoga tko se zaljubio na prvi pogled?
3D ispisana LED svjetlucava oznaka s imenom - Osvijetlite svoje ime u svjetlu!: 4 koraka (sa slikama)
3D ispisana LED bljeskajuća oznaka s imenom-Osvijestite svoje ime u svjetlu !: Ovo je lijep mali projekt u kojem izrađujete oznaku s imenom koja je vrlo blistava i upadljiva koristeći višebojna LED svjetla. Video upute: Za ovaj projekt ćete potrebno: 3D ispisani dijelovi https://www.thingiverse.com/thing:2687490 Mali