Arduino Nano ESP32 - Matrice de LED

Affichage matriciel à LED, également connu sous le nom d'affichage LED ou d'affichage matriciel à points, est largement utilisé. Dans ce tutoriel, nous allons apprendre :

Ensuite, vous pourrez facilement adapter le code pour d'autres matrices LED telles que la matrice LED 16x8, la matrice LED 64x8 ...

Préparation du matériel

1×Arduino Nano ESP32
1×USB Cable Type-C
1×FC-16 LED Matrix 32x8
1×FC-16 LED Matrix 8x8
1×Generic LED Matrix 8x8
1×Breadboard
1×Jumper Wires
1×(Optional) DC Power Jack
1×(Recommended) Screw Terminal Adapter for Arduino Nano

Or you can buy the following sensor kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

À propos de la matrice LED

Affichage matriciel à LED

Il existe de nombreux types de matrices LED. Avec l'ESP32, la matrice LED basée sur MAX7219 est largement utilisée. La matrice LED basée sur MAX7219 présente les caractéristiques suivantes :

  • Une unité de base d'une matrice LED est un bloc.
  • Chaque bloc dispose d'une matrice LED 8x8 (64 LED) et d'un pilote MAX7219.
  • Il existe deux formes de bloc populaires : le module générique et le module FC-16.
  • Une matrice LED peut être composée d'un seul bloc ou de plusieurs blocs en chaîne en guirlande.
  • Vous pouvez acheter une matrice LED multiblocs pré-assemblée (par exemple, 4-en-1, 8-en-1).
  • Vous pouvez également acheter plusieurs blocs et les câbler pour former une matrice LED de la taille souhaitée.
  • Vous déclarerez la taille de la matrice LED que vous utilisez dans le code Arduino Nano ESP32.

Brochage

Schéma de brochage de la matrice LED

Une matrice LED est formée par un ou plusieurs blocs. Chaque bloc comprend deux groupes de broches :

  • Groupe de broches d'entrée :
    • VCC : se connecte à 5V.
    • GND : se connecte à GND.
    • DIN est la broche de données, connectez-la à n'importe quelle broche numérique de l'Arduino Nano ESP32.
    • CS : Sélection de puce, connectez-la à n'importe quelle broche numérique de l'Arduino Nano ESP32.
    • CLK : broche d'horloge, connectez-la à n'importe quelle broche numérique de l'Arduino Nano ESP32.
  • Groupe de broches de sortie :
    • VCC : se connecte au VCC du groupe de broches d'entrée du module suivant.
    • GND : se connecte au GND du groupe de broches d'entrée du module suivant.
    • DOUT : Sortie de données, se connecte à la broche DIN du groupe de broches d'entrée du module suivant.
    • CS : se connecte au CS du groupe de broches d'entrée du module suivant.
    • CLK se connecte au CLK du groupe de broches d'entrée du module suivant.

Diagramme de câblage

Si la matrice LED est constituée d'un seul bloc :

  • Connectez les groupes de broches d'entrée à Arduino Nano ESP32
  • Laissez le groupe de broches de sortie déconnecté
Schéma de câblage Arduino Nano ESP32 8x8 LED matrice FC-16

This image is created using Fritzing. Click to enlarge image

Schéma de câblage générique de matrice LED 8x8 pour Arduino Nano ESP32

This image is created using Fritzing. Click to enlarge image

Si la matrice LED est pré-assemblée en plusieurs blocs :

  • Connectez les groupes de broches d'entrée à l'Arduino Nano ESP32
  • Laissez le groupe de broches de sortie déconnecté
Schéma de câblage de la matrice de LED Arduino Nano ESP32

This image is created using Fritzing. Click to enlarge image

Si la matrice LED est composée de plusieurs blocs par vous-même :

  • Connectez les groupes de broches d'entrée du premier bloc à l'Arduino Nano ESP32
  • Connectez les groupes de broches de sortie de chaque bloc aux groupes de broches d'entrée du bloc suivant
  • Laissez le groupe de broches de sortie du dernier bloc déconnecté
Schéma de câblage de la matrice de LED 32x8 Arduino Nano ESP32 FC-16

This image is created using Fritzing. Click to enlarge image

Car l'affichage consomme beaucoup de courant (jusqu'à 1A à la luminosité maximale) :

  • N'utilisez pas l'alimentation de la broche 5V de l'Arduino Nano ESP32.
  • Utilisez plutôt une alimentation externe de 5V. L'Arduino Nano ESP32 et la matrice de LED peuvent partager l'alimentation d'un adaptateur 5V.

Car l'Arduino Nano ESP32 se connecte à la matrice LED via les broches SPI :

  • Broche D13 (SCK) et D11 (MOSI) sur Arduino Nano ESP32
  • La broche D10 (CS) peut être changée pour n'importe quelle broche.

Comment programmer pour une matrice LED

Il n'est pas facile de contrôler la matrice de LED. Heureusement, des bibliothèques sont disponibles pour faciliter cela. Voici un guide étape par étape sur la manière de programmer un Arduino Nano ESP32 pour contrôler la matrice de LED.

  • Inclure les bibliothèques :
#include <MD_Parola.h> #include <MD_MAX72xx.h>
  • Précisez quel matériel est utilisé : GENERIC_HW ou FC16_HW.
#define HARDWARE_TYPE MD_MAX72XX::FC16_HW
  • Définissez combien de blocs de LED sont utilisés. Par exemple, une matrice LED 4-en-1 a 4 blocs.
#define MAX_DEVICES 4
  • Définissez la broche qui se connecte à la broche CS de la matrice LED. Par exemple, la broche D10.
#define CS_PIN D10
  • Créez une nouvelle instance de la classe MD_Parola pour l'affichage de la matrice LED.
MD_Parola ledMatrix = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES);
  • Code dans la fonction setup():
void setup() { ledMatrix.begin(); // initialiser l'objet ledMatrix.setIntensity(0); // définir la luminosité de l'affichage de la matrice LED (de 0 à 15) ledMatrix.displayClear(); // effacer l'affichage de la matrice LED }
  • Affichez du texte, des nombres et montrez des effets animés : voir la partie suivante

Arduino Nano ESP32 - Code de la matrice LED

Le code ci-dessous est pour un affichage matriciel LED FC-16 32x8 (4 blocs). Mais vous pouvez facilement l'adapter pour 8x8, 16x8, 64x8...

/* * Ce code Arduino Nano ESP32 a été développé par newbiely.fr * Ce code Arduino Nano ESP32 est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/arduino-nano-esp32/arduino-nano-esp32-led-matrix */ #include <MD_Parola.h> #include <MD_MAX72xx.h> #define HARDWARE_TYPE MD_MAX72XX::FC16_HW #define MAX_DEVICES 4 // 4 blocks #define CS_PIN D10 // The Arduino Nano ESP32 pin connected to the CS pin of the LED matrix // create an instance of the MD_Parola class MD_Parola ledMatrix = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES); void setup() { ledMatrix.begin(); // initialize the LED Matrix ledMatrix.setIntensity(0); // set the brightness of the LED matrix display (from 0 to 15) ledMatrix.displayClear(); // clear LED matrix display } void loop() { ledMatrix.setTextAlignment(PA_LEFT); ledMatrix.print("Left"); // display text delay(2000); ledMatrix.setTextAlignment(PA_CENTER); ledMatrix.print("Center"); // display text delay(2000); ledMatrix.setTextAlignment(PA_RIGHT); ledMatrix.print("Right"); // display text delay(2000); ledMatrix.setTextAlignment(PA_CENTER); ledMatrix.setInvert(true); ledMatrix.print("Invert"); // display text inverted delay(2000); ledMatrix.setInvert(false); ledMatrix.print(1234); // display number delay(2000); }

Étapes rapides

Pour commencer avec Arduino Nano ESP32, suivez ces étapes :

  • Si vous débutez avec l'Arduino Nano ESP32, consultez le tutoriel sur comment configurer l'environnement pour l'Arduino Nano ESP32 dans l'Arduino IDE.
  • Câblez les composants conformément au schéma fourni.
  • Connectez la carte Arduino Nano ESP32 à votre ordinateur à l'aide d'un câble USB.
  • Lancez l'Arduino IDE sur votre ordinateur.
  • Sélectionnez la carte Arduino Nano ESP32 et le port COM correspondant.
  • Ouvrez le Gestionnaire de bibliothèques en cliquant sur l'icône Gestionnaire de bibliothèques dans la barre de navigation gauche de l'Arduino IDE
  • Recherchez “MD_Parola”, puis trouvez la bibliothèque MD_Parola
  • Cliquez sur le bouton Install.
Bibliothèque MD_Parola pour Arduino Nano ESP32
  • On vous demandera d'installer la bibliothèque « MD_MAX72XX »
  • Cliquez sur le bouton Install All pour installer la dépendance.
Bibliothèque MD_MAX72XX pour Arduino Nano ESP32
  • Copiez le code ci-dessus et ouvrez-le avec Arduino IDE
  • Cliquez sur le bouton Upload sur Arduino IDE pour charger le code sur Arduino Nano ESP32
  • Observez l'affichage de la matrice de LED

Code Arduino Nano ESP32 pour matrice de LED – Texte défilant

Lorsque vous souhaitez imprimer un long message qui est trop long pour tenir sur un affichage matriciel à LED, vous pouvez utiliser la technique de l'effet de défilement du texte.

Le code Arduino Nano ESP32 ci-dessous montre comment faire défiler un message sur l'affichage de la matrice de LED.

/* * Ce code Arduino Nano ESP32 a été développé par newbiely.fr * Ce code Arduino Nano ESP32 est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/arduino-nano-esp32/arduino-nano-esp32-led-matrix */ #include <MD_Parola.h> #include <MD_MAX72xx.h> #define HARDWARE_TYPE MD_MAX72XX::FC16_HW #define MAX_DEVICES 4 // 4 blocks #define CS_PIN D10 // The Arduino Nano ESP32 pin connected to the CS pin of the LED matrix // create an instance of the MD_Parola class MD_Parola ledMatrix = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES); void setup() { ledMatrix.begin(); // initialize the object ledMatrix.setIntensity(0); // set the brightness of the LED matrix display (from 0 to 15) ledMatrix.displayClear(); // clear led matrix display ledMatrix.displayScroll("ESP32", PA_CENTER, PA_SCROLL_LEFT, 100); } void loop() { if (ledMatrix.displayAnimate()) { ledMatrix.displayReset(); } }

Pour plus d'effets de texte, veuillez visiter la référence de la bibliothèque MD_Parola.

Vidéo

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!