• Première étape
  • Matériel et accessoires ; GPIO
  • Projets
  • Logiciel
    • Serveur Web
  • Arduino & ESP8266
  • Automatisation de la maison
  • Sonstiges
    • News
Facebook Twitter YouTube
Tutorials for Raspberry Pi Tutorials for Raspberry Pi
  • Matériel et accessoires ; GPIO
  • Projets
  • Logiciel
  • Serveur Web
  • Première étape
  • Automatisation de la maison
  • Anglais
  • Allemand
Tutorials for Raspberry Pi Tutorials for Raspberry Pi
Home»Matériel et accessoires ; GPIO»Contrôlez un écran LCD HD44780 via I2C avec le Raspberry Pi

Contrôlez un écran LCD HD44780 via I2C avec le Raspberry Pi

Facebook Twitter LinkedIn Tumblr Email Reddit
Share
Facebook Twitter LinkedIn Email Tumblr Reddit Telegram WhatsApp

Les écrans à caractères LCD sont un moyen simple et économique d’afficher un texte. Grâce au contrôleur HD44780, la commande des modules est devenue très simple. Cependant, il faut occuper de nombreux GPIO pour cela. Une alternative est le bus de données I2C, ce qui signifie que seuls deux GPIO sont utilisés.

Dans ce tutoriel, un écran 20×04 à caractères HD44780 est contrôlé à l’aide d’un adaptateur d’affichage I2C. Un convertisseur logique est utilisé pour ajuster le niveau de tension du module sans endommager les GPIO.

 

Accessoires

Pour accéder à un écran HD47780 via I²C, j’ai utilisé les accessoires suivants :

  • Écran 20×04 ou 16×02 Caractère HD44780
  • Adaptateur d’écran I2C
  • Convertisseur de niveau logique I2C
  • Breadboard
  • Câble jumper

 

Raspberry Pi hd44780 i2c display
Les tiges de l’adaptateur LCD I2C s’adaptent parfaitement à l’écran et peuvent être soudées. Certains écrans sont déjà livrés avec un adaptateur I²C soudé.

 

Installation

Les GPIO Raspberry Pi ne peuvent pas obtenir plus de 3,3 V de tension, mais il y a quelques modules (comme cet écran), qui envoient et veulent recevoir des signaux de 5 V. Pour cela, un convertisseur de niveau logique peut être utilisé, lequel a deux côtés. D’un côté, les connexions qui fonctionnent à 3,3 V sont connectées et de l’autre, celles qui fonctionnent à 5 V. Vous pouvez le reconnaître à différentes caractéristiques (LV – HV), comme vous le voyez dans l’image suivante :

647241639_842

Les tiges sont ensuite connectées comme suit :

Raspberry Pi Convertisseur de niveau 3,3 V Convertisseur de niveau 5 V Adaptateur LCD I2C
3,3 V (Broche 1) LV — —
5 V (Broche 2) — HV VCC
GND (Broche 6) GND GND GND
GPIO2 / SDA (Broche 3) TX1 (ci-dessous) — —
GPIO3 / SCL (Broche 5) TX1 (ci-dessus) — —
—  — TX0 (ci-dessous) SDA
—  — TX0 (ci-dessus) SCL

 

Voici un dessin schématique :

 

Raspberry Pi HD44780 I2C Display Controller

Toute tige de terre peut être prise. Par souci de clarté, j’ai choisi la tige 20 au lieu de la tige 6 sur le schéma.

Cette configuration est également utilisable avec d’autres modules qui nécessitent des signaux d’une tension supérieure à 3,3 V (dans ce cas 5 V) (horloge temps réel, etc.).

 

Logiciels

Avant de pouvoir commencer, deux outils I²C sont nécessaires, que nous installons :

sudo apt-get install python-smbus i2c-tools

Ensuite, nous publierons I2C (si vous l’avez déjà publié à partir de tutoriels précédents, vous pouvez l’ignorer) :

sudo raspi-config

Sous « Options d’interface »> « I2C », nous l’activons. Ajoutez maintenant les entrées correspondantes dans le fichier des modules :

sudo nano /etc/modules

Ces deux lignes sont ajoutées à la fin :

Shell
1
2
i2c-bcm2708
i2c-dev

Il faut ensuite le redémarrer, afin que tous les changements prennent effet.

sudo reboot

 

Si vous avez déjà connecté l’écran, vous pouvez maintenant tester s’il a été détecté (si vous avez un des premiers Raspberry Pi’s [Rev.1], vous devez indiquer 0 au lieu de 1) :

sudo i2cdetect -y 1

La sortie devrait ressembler à ceci :

 

pi@raspberrypi ~ $ sudo i2cdetect -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- 27 -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

Si vous voyez un nombre autre que 27, vous devez le modifier dans le fichier lcddriver.py (ADDRESS = 0x27).

Commençons par le code :

mkdir hd44780 && cd hd44780
wget http://tutorials-raspberrypi.de/wp-content/uploads/scripts/hd44780_i2c.zip
unzip hd44780_i2c.zip

À l’aide des deux scripts inclus, il est maintenant possible d’aborder l’affichage. Pour ce faire, nous ouvrons la console Python et entrons le code suivant :

sudo python

Python
1
2
3
4
5
6
7
8
9
10
import lcddriver
de l'importation de temps *
 
lcd = lcddriver.lcd()
lcd.lcd_clear()
 
lcd.lcd_display_string("RaspberryPi-", 1)
lcd.lcd_display_string("      Tutorials.fr", 2)
lcd.lcd_display_string("", 3)
lcd.lcd_display_string("HD44780 I2C Tutorial", 4)

Le premier paramètre du lcd_display_stringest pour le texte et le second pour la ligne. Vous ne devez pas changer toutes les lignes à la fois, mais vous ne pouvez pas remplacer facilement les caractères individuels. Le texte entier (avec le caractère modifié à la position souhaitée) doit alors être retransmis.

Le contraste de mon adaptateur I2C était au début très faible. Si rien ne devait s’afficher, testez la roue au dos et regardez en oblique sur l’écran.

20160115_212307

 

 

Code de référence : https://github.com/CaptainStouf/raspberry_lcd4x20_I2C

contrôleur lcd Ecran hd44780 i2c python
Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
Previous ArticleRaspberry Pi : Configuration du streaming en direct sur YouTube
Next Article Comment utiliser un capteur d’empreintes digitales Raspberry Pi pour l’authentification

Related Posts

Connecter un clavier Raspberry Pi – Code Lock

Enregistrer les données des capteurs Raspberry Pi avec ThingSpeak et les analyser

Construire un capteur de porte / fenêtre Raspberry Pi avec Reed Relais

Utiliser Raspberry Pi comme récepteur radio (autoradio FM, PC de voiture)

Leave A Reply Cancel Reply

MCP3008 : Lire des signaux analogiques sur le Raspberry Pi

Raspberry Pi : Commutateur de relais de commande via GPIO

Mesure de la distance infrarouge avec Raspberry Pi (Sharp GP2Y0A02YK0F)

Installer Windows 10 IoT sur le Raspberry Pi

Apprendre à programmer sur le Raspberry Pi – Partie 1 : Introduction

Construire une balance numérique Raspberry Pi (avec capteur de poids HX711)

ABONNEZ-VOUS MAINTENANT
Et recevez de nouveaux tutoriels dans votre boîte de réception.
Cliquez ici pour soumettre!

Merci!

Nous vous contacterons bientôt.

Tutorials for Raspberry Pi
Facebook Twitter YouTube
  • Politique de confidentialité
  • Conditions de service & Politique sur les cookies

Type above and press Enter to search. Press Esc to cancel.