Skip to content

Matrix/InfraRouge

#include <Adafruit_GFX.h> #include <Adafruit_NeoMatrix.h> #include <Adafruit_NeoPixel.h> #include <Wire.h> #include <SparkFun_GridEYE_Arduino_Library.h>

// Définition de la matrice NeoPixel 8x8 #define PIN 3 // Broche utilisée pour les LEDs #define MATRIX_SIZE 8 // Taille de la matrice 8x8

Adafruit_NeoMatrix matrix = Adafruit_NeoMatrix(MATRIX_SIZE, MATRIX_SIZE, PIN, NEO_MATRIX_TOP + NEO_MATRIX_LEFT + NEO_MATRIX_ROWS + NEO_MATRIX_PROGRESSIVE, NEO_GRB + NEO_KHZ800);

// Configuration du capteur Grid-EYE GridEYE grideye;

// Définition des températures pour activer les LEDs #define TEMP_THRESHOLD 26.5 // Température à partir de laquelle une LED s'allume en rouge

void setup() { Serial.begin(115200);

// Initialisation de la matrice LED matrix.begin(); matrix.setBrightness(50); matrix.fillScreen(0); matrix.show();

// Initialisation du capteur Grid-EYE Wire.begin(); grideye.begin();

Serial.println("Système prêt !"); }

void loop() { matrix.fillScreen(0); // Toutes les LEDs éteintes par défaut

// Lecture des températures des 64 pixels du Grid-EYE for (int i = 0; i < 64; i++) { float temperature = grideye.getPixelTemperature(i);

// Convertir l'index en coordonnées X, Y sur la matrice 8x8
int x = i % MATRIX_SIZE;   // Colonne (0 à 7)
int y = i / MATRIX_SIZE;   // Ligne (0 à 7)

// Si la température dépasse le seuil, la LED devient rouge
if (temperature >= TEMP_THRESHOLD) {
  matrix.drawPixel(x, y, matrix.Color(255,255, 255)); // Rouge
}

}

matrix.show(); // Mettre à jour l'affichage

delay(0); // Petite pause avant la prochaine mise à jour }

Edited by Jayson ROUSTAN

Merge request reports

Loading