Inhoudsopgave:

Verlicht je Valentijn met sprankelende RGB-matrix - Ajarnpa
Verlicht je Valentijn met sprankelende RGB-matrix - Ajarnpa

Video: Verlicht je Valentijn met sprankelende RGB-matrix - Ajarnpa

Video: Verlicht je Valentijn met sprankelende RGB-matrix - Ajarnpa
Video: BachataLounge Candle Light Edition (3 rooms) | Official Trailer | 26.10.2013 2024, Juli-
Anonim

Door Seeed StudioSeeed Volg meer door de auteur:

Handmatige Co2-detector voor binnen (voor Covid-19-doel)
Handmatige Co2-detector voor binnen (voor Covid-19-doel)
Handmatige Co2-detector voor binnen (voor Covid-19-doel)
Handmatige Co2-detector voor binnen (voor Covid-19-doel)
Speel Grove analoge microfoon met Wio-aansluiting
Speel Grove analoge microfoon met Wio-aansluiting
Speel Grove analoge microfoon met Wio-aansluiting
Speel Grove analoge microfoon met Wio-aansluiting
Grove - TF Mini LiDAR met Wio-aansluiting
Grove - TF Mini LiDAR met Wio-aansluiting
Grove - TF Mini LiDAR met Wio-aansluiting
Grove - TF Mini LiDAR met Wio-aansluiting

Over: Hallo, wij zijn applicatie-ingenieurs in Seeed. Het delen van projecten met de maker-community is geweldig. Ik hoop dat je het leuk vindt XD Seeed is de IoT-hardware-enabler die services biedt die IoT-ontwikkelaars in staat stellen om snel … Meer over Seeed Studio »

Valentijnsdag komt eraan, ontmoet je iemand die op het eerste gezicht verliefd werd?

Stap 1: Dingen die in dit project worden gebruikt

Hardware onderdelen

  • Seeeduino V4.2
  • Basisschild V2
  • Grove - RGB LED-matrix met stuurprogramma
  • Grove - Watersensor

Software-apps en online services

Arduino IDE

Stap 2: Hardwareverbinding

Hardwareverbinding
Hardwareverbinding

In dit project gebruiken we een watersensor om water te detecteren, als er water is, wordt een kloppend hart weergegeven in RGB LED Matrix.

Om dit effect te bereiken, moet u Grove - Water Sensor aansluiten op de D2-poort in Base Shield en ook Grove - RGB LED Matrix aansluiten op de I2C-poort erin. Sluit vervolgens Base Shield aan op Seeeduino, net zoals op de afbeelding hierboven.

Stap 3: Softwareprogrammering

Om RGB LED-matrix in uw programma te gebruiken, moet u de bibliotheek toevoegen aan uw Arduino IDE. De bibliotheek is te downloaden in

Seeed_RGB_LED_Matrix

Voeg na het toevoegen van de bibliotheek het headerbestand van de matrix toe aan uw code:

#include "grove_two_rgb_led_matrix.h"

Het definiëren van macro's is een goede gewoonte, het kan uw code gemakkelijker te lezen of aan te passen maken. Zo kun je macro's definiëren om aan te geven op welke poort de watersensor is aangesloten, of welke snelheid het kloppende hart moet aangeven.

#define SENSOR_PIN 2

#define INTERVAL 500

Wanneer alles klaar is, declareert u een matrixinstantie voor later gebruik.

GroveTwoRGBLedMatrixClass-matrix;

En klik hier om de afbeeldingseditor te krijgen om uw eigen afbeeldingen te maken. Als u een kleur in de kleurenbalk kiest, op stippen in het tekengebied klikt om te tekenen en op de knop Bijwerken of Invoegen onder in het tekengebied drukt, wordt uw afbeelding geconverteerd naar code en weergegeven in het vak aan de rechterkant.

Afbeelding
Afbeelding

Mijn afbeelding ziet er als volgt uit. U kunt die code die wordt weergegeven naar uw project kopiëren en ze vervolgens in RGB LED-matrix weergeven door te coderen.

Afbeelding
Afbeelding

De setup()-procedure wordt één keer uitgevoerd wanneer uw programma start, dus we initialiseren de pin van de matrix en de watersensor erin.

ongeldige setup() {

Draad.begin(); pinMode (SENSR_PIN, INPUT); WAIT_MATRIX_READY(); }

De loop()-procedure wordt herhaaldelijk uitgevoerd, dus we gebruiken deze om te detecteren of er water is of niet door de volgende code te volgen:

if (digitalRead (SENSOR_PIN) == LAAG) {

}

Wanneer de watersensor LAAG aangeeft, betekent dit dat er water is, dus het kloppend hart moet worden weergegeven in de RGB LED-matrix

for (uint8_t i = 0; i <EMOJI_COUNT(voorbeeld); ++i) {matrix.displayFrames(EMOJI(voorbeeld, i), INTERVAL, false, 1); vertragingsinterval); }

De voltooide loop()-procedure ziet er als volgt uit en u kunt de volledige code downloaden aan het einde van dit artikel.

lege lus() {

if (digitalRead (SENSOR_PIN) == LAAG) { for (uint8_t i = 0; i < EMOJI_COUNT (voorbeeld); ++i) { matrix.displayFrames (EMOJI (voorbeeld, i), INTERVAL, false, 1); vertragingsinterval); } } }

Klik op de knop Uploaden in Arduino IDE om uw programma naar Seeeduino te uploaden en probeer iets nats in de watersensor te plaatsen, kijk wat er gebeurt.

BELANGRIJK:

In deze versiefirmware van RGB LED-matrix als u uw eigen afbeelding met UNO-serie wilt maken, moet u het bestand van Arduino wijzigen. Als u mega of lotus gebruikt, is de wijziging niet nodig.

Zoek de Arduino-installatiemap Arduino\hardware\arduino\avr\libraries\Wire\src en open het Wire.h-bestand

verandering

#define BUFFER_LENGTH 32

naar binnen

#define BUFFER_LENGTH 128

Zoek vervolgens de Arduino-installatiemap Arduino\hardware\arduino\avr\libraries\Wire\src\utility en open het twi.h-bestand.

verandering

#define TWI_BUFFER_LENGTH 32

naar binnen

#define TWI_BUFFER_LENGTH 128

Aanbevolen: