Les afficheurs

il existe plusieurs type d'afficheurs…

les afficheurs lcd (texte)

il s'agit des afficheurs capable d'écrire des caractères sur 1 ou plusieurs lignes. ils sont assez faciles à mettre en oeuvre, assez bon marché, ils sont un complément très intéressant de l'arduino.

on trouve 2 principaux type d'afficheurs lcd (texte):

  • les afficheurs lcd type parallèle (ce sont les plus courant et les moins chers)
  • les afficheurs type série.

les afficheurs lcd type parallèle

pour discuter avec l'afficheur il faut respecter des protocoles qui vont dépendre de la puce implantée sur l'afficheur. dans la pratique la plupart des afficheurs qu'on l'on trouve dans le commerce (en tous cas ceux sur lesquels je suis tomber) sont compatible avec le protocole du Hitachi HD44780 (c'est celui qui est pris en charge par la librairie Liquidcrystal que l'on trouve dans les exemples livrés avec Arduino)

pour communiquer avec l'afficheur on utilise:

  • les broches de donnée (de D0 à D7)
  • RS,RW(read/write),et E(enable).

dans la pratique on met souvent la broche RW à la masse (pour mettre l'afficheur en mode lecture).

cf la partie éléctronique: par afficheur lcd parallèle (partie elec)

il existe 2 mode pour dialoguer l'afficheur lcd

  • le mode 4bits
  • le mode 8bits

le mode 4bits à l'avantage de n'utiliser que 4 fils pour les données (D4 à D7). on ne connecte pas les broches (D0 à D3).

hello world avec la librairie Liquidcrystal

on va commencer en prenant l'exemple “Helloworld” de la librairie Liquidcrystal. que l'on peut aussi trouver ici: http://arduino.cc/en/Tutorial/LiquidCrystal

on voit ici qu'il faut respecter plusieurs étapes:

  • importer la librairie Liquidcrystal:
#include <LiquidCrystal.h>
  • définir le brochage:
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

les broches sont définies dans l'ordre: RS;E;D4;D5;D6;D7

  • initialiser l'afficheur,définir le nombre de lignes et de caractères par ligne, et afficher “hello, world!”:
void setup() {
  // set up the LCD's number of columns and rows: 
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.print("hello, world!");
}

on voit bien ici que l'on utilise un afficheur 2 lignes de 16 caratères.

  • retour du curseur à la colonne 0 ligne 1:
  // set the cursor to column 0, line 1
  // (note: line 1 is the second row, since counting begins with 0):
  lcd.setCursor(0, 1);

c'est clairement commenté la ligne 1 est la seconde ligne car on commence à compter à zéro…

  • écrire le nombre de secondes depuis le démmarage de l'arduino.
  // print the number of seconds since reset:
  lcd.print(millis()/1000);

on reviendra plus tard sur l'affichage des nombres…

en résumé on voit ici que la programmation d'un afficheur reste relativement facile.

personnalisons un peu


prog/afficheurs.txt · Dernière modification: 2016/05/17 14:03 par admin_memo