Étape 4: Programmation de la carte Arduino
Nous avons utilisé l’Arduino IDE V1.05 pour ce projet. Le sketch Arduino utilisé pour ce projet repose en grande partie sur le croquis de le Parola_Zone_TimeMsg.ino de l’exemple de bibliothèque de Parola v2.1.
Pour ce projet, vous devrez installer les bibliothèques suivantes d’Arduino :
MD_Parola Library (bibliothèque de Parola v2.1) de https://parola.codeplex.com
MD_MAX72xx Library (bibliothèque d’affichage Max72XX LED Matrix v2.6) de http://arduinocode.codeplex.com
MD_DS1307 bibliothèque (DS1307 Real Time Clock) de http://arduinocode.codeplex.com
Bibliothèque de DHT (DHT11, DHT21/22 capteur de température et d’humidité Library) de http://playground.arduino.cc/Main/DHTLib
Nous utilisons une autre bibliothèque de DHT pour ce projet que nous avons l’intention d’utiliser un capteur différent de DHTxx à l’avenir comme la plage (températures négatives) qui n’est pas pris en charge dans la bibliothèque de DHT11 et de DHT21/22, qui est assez similaire à la DHT11 et a une plus grande précision (une décimale).
Notez cette ancienne version de la bibliothèque de MD_MAX72xx (versions antérieures à la version V2.6) ne fonctionnera pas avec nos mis à jour le module Bi-color LED Matrix.
Nous devons modifier le fichier MD_MAX72xx.h pour qu’il fonctionne avec nos modules de LED Matrix jolliFactory modifiées qui fonctionnent de manière similaire aux modules FC16 LED Matrix.
Fondamentalement, pour le fichier MD_MAX72xx.h, il faut modifier pour spécifier que nous n’utilisons pas le matériel Parola avec
#define USE_PAROLA_HW 0 //1
Spécifiez plutôt que nous utilisons le matériel FC16 qui est compatible avec notre module LED Matrix modifié avec
#define USE_FC16_HW 1 //0
Voici un extrait du fichier MD_MAX72xx.h modifié indiquant les changements.
/** \def USE_PAROLA_HW Set to 1 (default) to use the Parola hardware modules. The software was originally designed to operate with this hardware type. */ #define USE_PAROLA_HW 0 //1 /** \def USE_GENERIC_HW Set to 1 to use 'generic' hardware modules commonly available, with connectors at the top and bottom of the PCB, available from many sources. */ #define USE_GENERIC_HW 0 /** \def USE_ICSTATION_HW Set to 1 to use ICStation DIY hardware module kits available from http://www.icstation.com/product_info.php?products_id=2609#.UxqVJyxWGHs This hardware must be set up with the input on the RHS. */ #define USE_ICSTATION_HW 0 /** \def USE_FC16_HW Set to 1 to use FC16 hardware module kits. FC16 modules are similar in format to the ICStation modules but are wired differently. Modules are identified by a FC-16 designation on the PCB */ #define USE_FC16_HW 1 //0 /** \def USE_OTHER_HW Set to 1 to use other hardware not defined above. Module 0 (Data In) must be set up on the RHS and the CUSTOM hardware defines must be set up in the MD_MAD72xx_lib.h file under for this section, using the HW_Mapper utility to work out what the correct values to use are. */ #define USE_OTHER_HW 0
Si vous devrez peut-être régler l’heure sur votre module horloge, utilisez l’esquisse de l’exemple MD_DS1307_Control.ino de la bibliothèque du DS1307 (MD_DS1307) trouvé à http://arduinocode.codeplex.com et télécharger à votre carte Arduino pour le définir.
Comme nous utilisons seulement 3 Matrices de LED dans la zone de gauche pour afficher l’heure, la police à largeur fixe large 5 dot initialement utilisée dans l’exemple de Parola est trop large pour s’adapter parfaitement. Nous avons modifié la police pour l’affichage numérique pour être seulement 4 point de large. Il faut aussi modifier le Parola_Zone_TimeMsg.ino pour elle de travailler avec seulement 7 modules LED Matrix.
Vous pouvez télécharger le croquis modifié ainsi que le fichier de police requis ci-dessous.
< JF_Parola_Zone_TimeMsg_V1_0 Télécharger esquisse et polices fichier >
Puis télécharger le croquis sur la carte Arduino. Si tout est mis en place droite, vous verrez la zone de gauche indique l’heure en vert et date, température et humidité informations défilement dans la zone de droite en rouge.