wiki:SujetTP3-2017

Version 1 (modified by franck, 9 years ago) (diff)

--

TP3 : Pilotage d'un écran LCD en mode utilisateur

Objectifs:

  • Configuration des GPIOs pour le pilotage d'un périphérique
  • Fonctionnement d'un écran LCD et fonctions de base
  • Affichage du monitoring système

Pré-requis (Raspberry Pi):

  • Outils de compilation croisée
  • Configuration et utilisation des GPIO

Ressources:

Prenez le temps de parcourir les documents sur les afficheurs LCD HD44780 avant de commencer le TP.

1. Configuration des GPIO pour le pilotage de l'écran

L'écran LCD de type HD44780 dispose de plusieurs signaux de contrôle et de données. Les signaux de contrôle sont au nombre de 3: RS, RW et E. Les signaux de données sont au nombre de 4 ou 8 suivant le mode.

Dans ce TP, nous utiliserons l'écran en mode 4-bit car la carte Raspberry Pi dispose d'un nombre limité de GPIO. De plus, le signal RW sera connecté directement à la masse car nous allons gérer que les opérations d'écriture (Note: les GPIO de la carte Raspberry Pi ne supporte pas les niveaux de tension 5V émis par l'afficheur).

Les signaux de contrôle RS et E sont utilisés de la manière suivante:

  • RS vaut 1 pour l'envoi d'une donnée (e.g. un caractère) et vaut 0 pour l'envoi d'une commande.
  • E est un signal de validation; la valeur sur le bus de données (4 bits) est pris en compte à chaque front descendant de ce signal.

Voici le mapping des GPIO pour les différents signaux:

Signal LCD GPIO
RS 7
E 8
D4, D5, D6, D7 22, 23, 24, 25

Pour le contrôle des GPIO, vous utiliserez ce que vous avez vu lors du précédent TP.

Pour contrôler l'afficheur nous devons répondre aux questions suivantes:

  • Comment faut-il configurer les GPIOs pour les différents signaux de l'afficheur LCD ?
  • Comment écrire des valeurs vers le LCD ?
  • Quelles valeurs doivent être envoyées vers l'afficheur pour réaliser l'initialisation ?
  • Comment envoyer demander l'affichage d'un caractère ?
  • Comment envoyer des commandes telles que l'effacement de l'écran, le déplacement du curseur, etc. ?

2. Fonctionnement de l'écran et fonctions de base

Comme cela a été présenté en cours la prise en compte de la donnée est réalisée lors d'un front descendant du signal E. Pour créer un front descendant:

  • on place la donnée,
  • puis le signal E est mis à 1 pendant 1µs puis remis à 0 pendant une 1µs supplémentaire pour garantir le délai entre deux commandes.

Attachments (2)

Download all attachments as: .zip