RASP-LCD-RGB-Utiliser

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche


MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

Ajustage Du Contraste

La platine utilise un LCD alphanumérique avec un potentiomètre de contraste externe. La première fois que vous l'utiliserez, ajustez le potentiomètre dans le coin inférieur droit jusqu'à ce que vous puissiez lire correctement le texte. Si le code n'est pas encore chargé dans le Pi, quelques rectangles peuvent apparaître à la place, ou vous pourriez ne rien voir du tout.

Préparer votre Pi pour l'I2C

Pour une introduction plus complète sur l'installation de I2C sur votre Pi vous pouvez faire un détour par notre tutoriel sur I2C.

Si vous avez installé Occidentalis, vous pouvez passer cette séquence. Pour les utilisateurs de Raspbian, éditez le fichier /etc/modules (sudo nano /etc/modules) et ajoutez y :

i2c-bcm2708
i2c-dev

à la fin du fichier. Ensuite, sauvegardez et redémarrez le système pour activer le pilote du matériel (hardware) I2C.

Avant de démarrer avec I2C sur le Pi, vous devrez effectuer quelques opération en ligne de commande (sur la console). Entrez les commandes suivantes pour ajouter le support SMBus à Python (le support SMBus comprend I2C) :

sudo apt-get install python-smbus
sudo apt-get install i2c-tools

i2c-tools n'est pas vraiment nécessaire, mais c'est un paquet très utile pour rechercher les périphériques I2C ou SMBus reliés à votre Pi. Si vous avez un périphérique I2C connecté mais que vous n'en connaissez pas l'adresse (une adresse I2C à 7-bits), ce paquet dispose d'un outil qui vous aidera à la trouver :

sudo i2cdetect -y 0 (si vous utilisez une version 1 de Raspberry Pi)
sudo i2cdetect -y 1 (si vous utilisez une version 2 de Raspberry Pi)

RASP-LCD-RGB-Use-01.jpg

Cette commande va rechercher toutes les adresses utilisées sur /dev/i2c-0 ou /dev/i2c-1. Si votre kit RGB LCD d'Adafruit y est connecté, vous devriez voir 0x20 affiché dans les résultats. 0x20 est l'adresse du kit sur le bus I2C.

Lorsque ces deux paquets sont installés, vous disposez de tout le nécessaire pour démarrer et accéder aux périphériques I2C (et SMBus) en Python.

Utiliser un exemple de code Python

Le code Python de la platine LCD pour Pi est disponible à Github à https://github.com/adafruit/Adafruit-Raspberry-Pi-Python-Code.

La meilleure façon de charger ce code pour votre Pi est de connecter un câble Ethernet, et de le télécharger/copier directement en utilisant 'git'.

Par défaut, Git est installé sur la plupart des distributions. Lancez simplement les commandes suivantes depuis un répertoire approprié (ex. "/home/pi"):

sudo apt-get install git
git clone https://github.com/adafruit/Adafruit-Raspberry-Pi-Python-Code.git
cd Adafruit-Raspberry-Pi-Python-Code
cd Adafruit_CharLCDPlate

Tester la bibliothèque

Une fois le code chargé dans un répertoire approprié, et la platine LCD correctement connectée, vous pouvez démarrer la démo de base de l'afficheur.

Utilisez la commande suivante pour démarrer la démo de base:

sudo python Adafruit_CharLCDPlate.py

Si vous disposez d'un Pi rev 2 (512MB), ou si vous n'obtenez pas d'affichage du tout, cela peut-être dû au changement de numéro de broche utilisé par le bus I2C (entre la révision 1 et révision 2 de Raspberry Pi). Éditez le fichier Adafruit_CharLCD.py avec un utilitaire comme nano :

nano Adafruit_CharLCD.py

et changez la ligne :

lcd = Adafruit_CharLCDPlate(busnum = 0)

en

lcd = Adafruit_CharLCDPlate(busnum = 1)

Utiliser le code de la bibliothèque

Interfacer un code d'exemple avec python est très simple!

Dans le dossier Adafruit_CharLCDPlate vous trouverez le script Python testLCD.py.

Ce script effectue tout une série d'opérations. La plus importante étant d'importer importe tous les sous-modules nécessaire.

Vous aurez besoin des fichiers Adafruit_I2C.py, Adafruit_MCP230xx.py et Adafruit_CharLCDPlate.py, tous localisés dans le même répertoire. Copiez les dans votre destination finale.

Ensuite, on initialise la platine par lcd = Adafruit_CharLCDPlate() - cela crée un 'objet' lcd, entame la communication avec la platine, initialise le LCD et les boutons.

Après l'initialisation, vous pouvez effacer l'afficheur à l'aide de lcd.clear() et écrire du texte avec lcd.message("le texte doit etre ici").

N'oubliez pas qu'il y a uniquement 16 caractères par ligne et qu'il n'y a pas de de retour à la ligne automatiquement.

Pour insérer retour à la ligne (le caractère "newline" comme dise les anglais), il faut utilisez le caractère spécial '\n' dans votre chaine de caractère. Voici un exemple : lcd.message("Adafruit RGB LCD\nPlate w/Keypad!").

Ensuite, vous pouvez gérer le rétroéclairage avec lcd.backlight(lcd.NOM_DE_LA_COULEUR_EN_ANGLAIS)NOM_DE_LA_COULEUR_EN_ANGLAIS est remplacé par:

  • RED pour rouge
  • YELLOW pour jaune
  • GREEN pour vert
  • TEAL pour vert-bleuâtre
  • BLUE pour bleu
  • VIOLET pour violet.

Ceci n'est valable que pour les afficheur LCD RGB. Pour les afficheurs LCD monochromes, utiliser seulement ON (allumé) et OFF (éteind).

Finalement, vous pouvez interroger la platine pour savoir quel bouton a été pressé à l'aide de buttonPressed(lcd.NOM_DU_BOUTON_EN_ANGLAIS) où NOM_DE_LA_COULEUR_EN_ANGLAIS est:

  • LEFT pour gauche
  • RIGHT pour droite
  • UP pour haut
  • DOWN pour base
  • SELECT pour le bouton de sélection.

Cette bibliothèque n'utilise pas la gestion par des interruptions donc vous n'aurez pas de signal d’interruption "interrupt go off" lorsqu'un bouton sera pressé. Vous devrez créer une boucle et interroger régulièrement l'état des boutons pour s'avoir si l'un d'entre eux pressé et lequel..

Voila, c'est terminé!

Si vous désirez afficher des messages élaborés, utilisez la commande Python permettant la création de chaîne de caractères et écrivez cette chaîne avec message()



Source: Adafruit 16x2 Character LCD + Keypad for Raspberry Pi écrit par LadyAda pour AdaFruit. Crédit AdaFruit Industries
Réalisé avec l'aide de Mr Carette J. à qui nous remettons tous nos remerciements.

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.

Traduit avec l'autorisation d'AdaFruit Industries - Translated with the permission from Adafruit Industries - www.adafruit.com