LCD-USB-TTL-Classe-Python
Introduction
Afin de faciliter la prise de contrôle via USB, nous avons développé des classes pouvant être utilisées directement sur Raspberry-Pi et Linux (pas encore testé sous Windows).
L'afficheur LCD devient vraiment facile à prendre en main. Cela nous a permis de mettre en oeuvre un support pour les caractères accentués (cfr classe EuropeanLcdMatrix) :-)
Grâce à la classe LcdMatrix, vous pouvez envoyer des ordres directement à l'afficheur LCD en utilisant un code qui devient nettement plus lisible.
Installation
Les sources sont disponibles ici sur GitHub et vous pouvez facilement les installer sur votre Raspberry-Pi.
Démarrez une cession terminal et tapez la commande suivant:
git clone https://github.com/mchobby/lcdmtrx
Ce qui créera un sous répertoire lcdmtrx dans lequel se trouve le code en python.
Allons explorer les fichiers:
cd lcdmtrx ls
Vous pouvez y voir le fichier lcdmtrx.py contenant les classe Python et les différents programmes de test dont le nom de fichier se termine par "Test.py" (mais nous y reviendrons plus tard)
Détecter le port USB
Les scripts de test Python contiennent une variable PORT_SERIE qui indique au script le port USB surlequel vous avez branchez votre afficheur LCD USB.
Vous pouvez facilement retrouver cette information en utilisant la commande dmesg juste après avoir branché le l'afficheur sur votre Raspberry-Pi ou ordinateur.
Vous pouvez alors identifier le périphérique. Dans ce cas présent, il s'agit ttyACM0 et nom complet du périphérique sera /dev/ttyACM0
Adapter le code d'exemple si nécessaire pour adapter le nom du périphérique USB si nécessaire
Par exemple, prenons le cas de lcdmtrx-WriteTest.py que nous allons modifier à l'aide de nano (crf la commande suivante)
nano lcdmtrx-WriteTest.py
Exécuter les exemples
Une fois votre port USB identifié et l'exemple modifier comme indiqué ci-dessus (si cela est vraiment nécessaire), il ne reste plus qu'à exécuter les différents exemple pour voir le résultat apparaitre sur l'écran LCD.
Tapez la commande suivante dans le terminal de votre Raspberry-Pi:
python lcdmtrx-WriteTest.py
Si vous utilisez un PC sous Linux, vous aurez peut être besoin d'utiliser un sudo pour que Python puisse accéder librement au périphérique /dev/ttyACMx
Les fichiers & les classes
Fichiers
Voici une description des fichiers:
* lcdmtrx.py : contient la classe LcdMatrix et EuropeLcdMatrix * lcdmtrx-FullTest.py : TEST COMPLET. * lcdmtrx-WriteTest.py : TEST RESTREINT centré sur l'affichage de texte. * lcdmtrx-EuropeanTest.py : Utilise la classe EuropeLcdMatrix pour définir un charset francophile supportant les caractères éèàç€ et une methode write_european() permettant d'afficher du texte avec accentués. Toutes les méthodes de la classe LcdMatrix restent utilisable.
Les classes
- LcdMatrix : Classe Python pour gérer le backpack Adafruit USB+Série LCD et ses fonctionnalités.
- EuropeLcdMatrix : Dérivé de LcdMatrix pour ajouter le support des caractères Accentués Europeen é è ê ç à dans une bank de caractère personnalisés. Déclare également la fonction write_european() à utiliser pour envoyer du texte accentués. Voyez l'exemple lcdmtrx-EuropeanTest.py.
Les fonctions
- compose_custom_char() : fonction permettant de créer plus facilement des caractères personnalisés. Voir lcdmtrx-FullTest.py et lcdmtrx-EurpeanTest.py.
Obtenir de l'aide
Même si les noms de fonctions sont en anglais, les classes sont documentées en Français.
Vous pouvez facilement obtenir de l'aide directement à partir de Pyhton.
Démarrez Python en mode interactif:
python -i
Puis saisissez les commandes suivantes:
from lcdmtrx import * help( LcdMatrix ) help( EuropeLcdMatrix )
Tutoriel USB + Serial RGB Backlight Character LCD Backpack créé par Tyler Cooper pour AdaFruit Industries.
Tutoriel traduit et augmenté par Meurisse D. pour MCHobby.be
Traduit avec l'autorisation d'AdaFruit Industries - Translated with the permission from Adafruit Industries - www.adafruit.com
Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : « Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.
L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.