Table des matières:
- Étape 1: L'affichage
- Étape 2: le bit Bluetooth
- Étape 3: Communication BT et le programme
- Étape 4: Le code et le pouvoir
- Étape 5: Mise à jour 2020 - Affichages matriciels 2 X 4 (8x8)
Vidéo: Affichage matriciel 8x8 avec BT : 5 étapes (avec images)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:05
J'ai acheté une matrice 4 panneaux 8x8 sur Ebay (Chine) il y a quelques mois.
J'ai été un peu déçu quand j'ai réalisé que c'était câblé côte à côte, pas de haut en bas pour lequel la plupart des exemples sur le Net sont écrits ! Voir l'étape 2.
Je suppose que j'aurais pu modifier le code (je ne sais pas comment), mais ma paresse habituelle m'a dit de chercher quelque chose de déjà écrit. Je suis tombé sur un exemple et j'y suis resté !
J'ai joué avec des messages fixes mais j'ai ensuite décidé d'essayer de programmer le message via Bluetooth.
Ensuite, j'ai voulu sauvegarder et récupérer les messages !
Il y a eu beaucoup d'essais et d'erreurs, mais après quelques heures de codage, j'ai réussi à le faire fonctionner.
J'essaye toujours de lui trouver une utilisation pratique !!:-)
Étape 1: L'affichage
Comme mentionné précédemment, l'affichage est câblé de gauche à droite, plutôt que de haut en bas.
Je suis sûr qu'un autre code aurait pu être modifié pour compenser cela !
Je ne me souviens pas d'où j'ai téléchargé le code de travail, cependant, une recherche de "cosmicvoid matrix ou LedControlMS.h" peut aider. La bibliothèque LedControlMS.h est requise pour ce projet.
La seule partie de ce code que j'ai modifiée était le nombre d'affichages car il semble qu'il ait été défini sur 5, je viens de le changer en 4.
J'ai commandé un autre écran x4 pour voir comment cela fonctionne avec 8 matrices au lieu de 4 !
Étape 2: le bit Bluetooth
Chaque fois que je joue avec un appareil Bluetooth, je me réfère toujours à cet excellent instructable !
www.instructables.com/id/Modify-The-HC-05-B…
Ce Instructable vous dira tout ce que vous devez savoir sur la façon de configurer et de coupler le HC-05 à un téléphone mobile ou une tablette.
Je l'ai couplé avec un Samsung Galaxy 6 Edge et une Tab A sans problème.
J'ai modifié la vitesse de communication à 57600.
Étape 3: Communication BT et le programme
Pour communiquer avec le HC-05, j'ai téléchargé une application gratuite sur le Play Store, il y en a plusieurs disponibles, - celle que j'ai choisie s'appelle Bluetooth Terminal HC-05 - c'est une excellente application !
Une fois que vous avez couplé le HC-05 à un téléphone ou une tablette, voici ce qui se produit.
Lorsque l'arduino est réinitialisé, le programme lit tous les messages stockés dans l'EEPROM et les affiche sur le téléphone/tablette - voir photo.
Les informations affichées sont l'emplacement de la mémoire (0-9), la longueur du message et le message lui-même à chaque emplacement.
J'ai arrangé le code pour stocker jusqu'à un message de 90 caractères à l'adresse 5 pour Msg 0, 105 pour Msg 1 …….905 pour Msg 9.
Adresse 0, 100 …. 900 contiennent la longueur du message.
Le dernier message enregistré / récupéré s'affiche.
L'envoi de quoi que ce soit à l'Arduino via BT remplace le message actuel.
Pour stocker le message affiché (utilisez le tilde "~"), envoyez ~0 pour stocker à l'emplacement 0, ~5 pour stocker à l'emplacement 5, etc.
Pour récupérer et afficher un message stocké, utilisez "^" (carat), par exemple ^3 chargera et affichera le message à l'emplacement Mem 3.
Lorsqu'un message est stocké ou récupéré, l'emplacement mémoire actuel est stocké à l'adresse EEPROM 1023 - elle est utilisée à la mise sous tension pour afficher le dernier message affiché.
Étape 4: Le code et le pouvoir
Comme d'habitude, mon code est rangé comme une chambre d'ado, mais j'ai plein de commentaires dedans !
Il peut y avoir du code superflu car il y a eu quelques essais et erreurs.
La routine d'affichage affichera tout ce qui se trouve dans le tableau msg. La police n'est pas complète donc l'affichage de certains caractères entraînera des résultats imprévisibles !
Si quelqu'un pouvait me dire comment modifier le signe $ pour le signe £ ou mieux encore l'ajouter, alors je lui en serais extrêmement reconnaissant
Il peut être nécessaire de coder en dur un message à l'emplacement 0 juste pour donner un point de départ, cela peut être écrasé lorsque le programme est opérationnel !
par exemple
EEPROM.write(0, '5'); // longueur du msg stocké à l'emplacement 0
EEPROM.write(5, 'L'); //msg stocké à l'emplacement 05EEPROM.write(6, 'o');
EEPROM.write(7, 'c');
EEPROM.write(8, ' ');
EEPROM.write(9, '0');
En l'absence de messages stockés, à la mise sous tension, l'affichage sera imprévisible et le téléphone / la tablette affichera des informations étranges mais cohérentes car, comme pour la plupart des EEPROM, les données par défaut à chaque emplacement sont FF Hex (225 décimal).
Ce prototype a été construit à l'aide d'un Arduino Uno, mais j'utiliserai un mini pro pour le projet fini.
J'ai l'intention d'utiliser 3 piles de 1,5 V, donc pour économiser de l'énergie, j'éteindrai le HC-05 après avoir sélectionné un message. Le simple fait de déconnecter/reconnecter l'alimentation n'est pas suffisant car il enverra des informations tronquées à l'écran.
Il semblerait nécessaire d'isoler les pins TR & RX avant de brancher/débrancher l'alimentation !
Étape 5: Mise à jour 2020 - Affichages matriciels 2 X 4 (8x8)
Après une meilleure compréhension du MAX7219, j'ai réussi à relier 2 écrans ensemble !
il y avait juste quelques lignes de code qui devaient être modifiées - voir ino ci-joint.
Conseillé:
Lumière d'horloge à affichage matriciel à bande LED contrôlée par WiFi : 3 étapes (avec images)
Lumière d'horloge à affichage matriciel à bande LED contrôlée par WiFi : bandes LED programmables, par ex. basé sur WS2812, sont fascinants. Les applications sont multiples et vous pouvez rapidement obtenir des résultats impressionnants. Et d'une certaine manière, la construction d'horloges semble être un autre domaine auquel je pense beaucoup. En commençant par une certaine expérience dans
Badge d'affichage matriciel LED portable : 8 étapes (avec photos)
Badge d'affichage matriciel à LED portable : organisez-vous un événement, un concours ou même organisez-vous une fête d'anniversaire ? Les badges sont des objets polyvalents qui peuvent rendre les présentations et les célébrations beaucoup plus faciles. ……….." s
Affichage matriciel à LED en réseau Mirolo pour la signalisation numérique : 22 étapes (avec images)
Affichage matriciel à LED en réseau Mirolo pour la signalisation numérique : La signalisation numérique peut être utile lors d'événements pour informer les visiteurs des panneaux à venir, des changements d'horaire ou fournir des informations de manière dynamique. L'utilisation d'écrans matriciels à LED rend les messages lisibles même de loin et attire l'attention
Affichage matriciel à LED à défilement 48 X 8 à l'aide d'Arduino et de registres à décalage : 6 étapes (avec images)
Affichage matriciel de LED à défilement 48 x 8 à l'aide d'Arduino et de registres à décalage. C'était mon premier projet avec une carte de développement Arduino. C'était un défi lancé à m
Contrôle du réseau matriciel LED avec Arduino Uno (face de robot alimenté par Arduino): 4 étapes (avec images)
Contrôle du tableau de matrices LED avec Arduino Uno (face de robot alimenté par Arduino) : cette instructable montre comment contrôler un tableau de matrices LED 8x8 à l'aide d'un Arduino Uno. Ce guide peut être utilisé pour créer un affichage simple (et relativement bon marché) pour vos propres projets. De cette façon, vous pouvez afficher des lettres, des chiffres ou des animations personnalisées