80 lines
2.6 KiB
Plaintext
80 lines
2.6 KiB
Plaintext
====== Afficher sur écran LCD 1602 par interface I2C ======
|
|
|
|
===== Code include =====
|
|
La bibliothèque ''LiquidCrystal_I2C'' doit être connu de l'IDE.
|
|
|
|
{{electronique:arduino:idearduino_croquis_includelibrary.png?nolink|}}
|
|
|
|
===== Cablage =====
|
|
|
|
{{electronique:arduino:schema_display-by-i2c-lcd1602.png?nolink|}}
|
|
|
|
===== Code =====
|
|
|
|
<code C>
|
|
/********************************
|
|
* nom:I2C LCD1602
|
|
* fonction:Afficher sur I2C LCD1602 les caracteres suivants: "Hey ! toi" et "hello, world".
|
|
********************************/
|
|
|
|
/********************************/
|
|
// Librairie à inclure
|
|
#include <Wire.h>
|
|
#include <LiquidCrystal_I2C.h>
|
|
/**********************************************************/
|
|
char array1[]="Hey ! LuiqidCrystal I2C"; //une chaine a afficher sur le LCD
|
|
char array2[]="hello, world! "; //une chaine a afficher sur le LCD
|
|
int tim = 250; //valeur d'attente
|
|
int lcd_tailleLigne = 16; // nbre Caractères par ligne
|
|
// initialiser la librairie
|
|
LiquidCrystal_I2C lcd(0x27,16,2); // affecter l'adresse à 0x27 pour 16 caractères et 2 lignes d'affichage
|
|
/*********************************************************/
|
|
void setup()
|
|
{
|
|
lcd.init(); //initialiser le LCD
|
|
lcd.backlight(); //allumer le LCD
|
|
lcd.setCursor(0,0);
|
|
lcd.print("123456789012345678901234567890");
|
|
lcd.setCursor(0,1);
|
|
lcd.print("abonnel.fr");
|
|
delay(10 * tim); //attendre
|
|
lcd.clear();
|
|
}
|
|
/*********************************************************/
|
|
void loop()
|
|
{
|
|
lcd.setCursor(lcd_tailleLigne,0); // mettre le curseur en bout de ligne, à droite
|
|
for (int positionCounter1 = 0; positionCounter1 < lcd_tailleLigne - 1 + sizeof(array1) - 1; positionCounter1++)
|
|
{
|
|
lcd.scrollDisplayLeft(); //déplacer l'affichage
|
|
// afficher le message ou un " "
|
|
if (positionCounter1 >= sizeof(array1)-1) {
|
|
lcd.print(" ");
|
|
} else {
|
|
lcd.print(array1[positionCounter1]); // Afficher le caractere suivant
|
|
}
|
|
delay(tim); //attendre
|
|
}
|
|
|
|
// Afficher la seconde ligne
|
|
lcd.clear(); //effacer l'affichage et repositionner le curseur à 0, 0
|
|
lcd.setCursor(lcd_tailleLigne,1); // mettre le curseur en bout de ligne, à droite
|
|
for (int positionCounter = 0; positionCounter < lcd_tailleLigne - 1 + sizeof(array2) - 1; positionCounter++)
|
|
{
|
|
lcd.scrollDisplayLeft(); //déplacer l'affichage
|
|
// afficher le message ou un " "
|
|
if (positionCounter >= sizeof(array2)-1) {
|
|
lcd.print(" ");
|
|
} else {
|
|
lcd.print(array2[positionCounter]); // Afficher le caractere suivant
|
|
}
|
|
delay(tim); //attendre
|
|
}
|
|
|
|
lcd.clear(); //effacer l'affichage et repositionner le curseur à 0, 0
|
|
}
|
|
/************************************************************/
|
|
|
|
|
|
|
|
</code> |