En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de cookies pour vous proposer des contenus et services adaptés. Mentions légales.
Vous êtes ici :   Accueil » Données sur LCD
 
Prévisualiser...  Imprimer...  Imprimer la page...
Prévisualiser...  Imprimer...  Imprimer la section...

Rubriques

Rencontres (SM)

Mike James's

De jolis Modèles à voir sur ce site

 ↑  

Astuces (SM)

 ↑  

Mon Materiel

 ↑  

HMS TRENCHANT

 ↑  

Le U73

 ↑  

S100 SchnellBoot

 ↑  

La JOCELYNE

 ↑  

Le MOLCH

 ↑  

Réseaux sociaux

Données sur LCD

rss Cet article est disponible en format standard RSS pour publication sur votre site web :
https://papy94.fr/Site/data/fr-articles.xml

Envoyer des résultats sur un ecran LCD

LCD

  • Specification:
  • Interface: I2C
  • I2C Address: 0x27
  • Pin Definition : GND、VCC、SDA、SCL
  • Back lit (Blue with White char color)
  • Supply voltage: 5V
  • PCB Size : 98mm×60mm
  • Contrast Adjust : Potentiomètre

Reprise du code Arduino sait memoriser l'heure et ajout des lignes pour envoyer l'heure sur le LCD

LCD_03 LCD_02

le code avec: arduino 1.8.0

2 librairies : LiquidCrystal_I2C_AvrI2C.h et RTClib-master renommée en  RTClib.h dans le répertoire Librairie

/*Arduino 1.8.0 Tiny RTC I2C et LCD 20x4
mis a jour mars 2017
branchement Tiny RTC  --> ARDUINO UNO ou NANO
DS   --> --
SCL  --> A5          vert
SDA  --> A4          Jaune
VCC  --> 5Volts      Rouge
GND  --> GND         Noir

branchement LCD  -->  Tiny RTC
SQ   --> --
DS   --> --
SCL  --> SLC          vert
SDA  --> SDA          Jaune
VCC  --> VCC          Rouge
GND  --> GND          Noir
*/
#include <Wire.h>
#include "RTClib.h"
RTC_DS1307 RTC;

#include < >
//LiquidCrystal_I2C_AvrI2C lcd(0x27,16,2);  // set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal_I2C_AvrI2C lcd(0x27,20,4);  // set the LCD address to 0x27 for a 20 chars and 4 line display
//SCL(jaune) = A5
//SDA(vert)  = A4
//Alim en 5V
//Masse


void setup () {
  Serial.begin(9600); //Initialiser le port serie
  Wire.begin();       //Initialiser la bibliotheque Wire
  RTC.begin();        //Initialiser le module RTC
  //Verifier si le module RTC fonctionne, sinon nous envoyons Erreur sur le PC
  if (! RTC.isrunning()) {
    Serial.println("RTC ne fonctionne pas!");
    //Enlever le commentaire de la ligne suivante, pour mettre le module a l'heure du PC
    //RTC.adjust(DateTime(__DATE__, __TIME__));
  }

  lcd.begin();
  lcd.backlight() ;     
  lcd.setCursor(1,0);
  lcd.print("Jour =");   //position 0,ligne 0
  lcd.setCursor(1,1);
  lcd.print("Date =");   //position 0,ligne 1
  lcd.setCursor(0,2);
  lcd.print("Heure =");  //position 0,ligne 2
  lcd.setCursor(4,3);
  lcd.print(".....");    //position 4,ligne 3
}
void loop () {
  DateTime now = RTC.now();
  //enlever le commentaire pour affichage sur l ecran PC
  /*if (now.day() < 10){Serial.print("0");}
  Serial.print(now.day(), DEC);Serial.print('/'); //Imprimer Jour et barre

  if (now.month() < 10){Serial.print("0");}
  Serial.print(now.month(), DEC);Serial.print('/'); //Imprimer mois et barre

  Serial.print(now.year(), DEC);Serial.print(' '); //Imprimer annee et espace

  if (now.hour() < 10){Serial.print("0");}
  Serial.print(now.hour(), DEC);  Serial.print(':'); //Imprimer heure et :

  if (now.minute() < 10){Serial.print("0");}
  Serial.print(now.minute(), DEC);Serial.print(':');//Imprimer minute et :

  if (now.second() < 10){Serial.print("0");}
  Serial.print(now.second(), DEC);Serial.println(); //Imprimer seconde et saut de ligne

  delay(5000);  //Delay de 5s entre les envoies ecran PC
  */
  EnvoiDate ();
}

void EnvoiDate() {
  DateTime now = RTC.now();
  lcd.setCursor(8,0); //Envoi LCD Jour
  switch (now.dayOfTheWeek()) {
  case 1:
   lcd.print("Lundi");
   break;
  case 2:
   lcd.print("Mardi");
   break;
  case 3:
   lcd.print("Mercredi");
   break;
  case 4:
   lcd.print("Jeudi");
   break;
  case 5:
   lcd.print("Vendredi ");
   break;
  case 6:
   lcd.print("Samedi");
   break;
  case 7:
   lcd.print("Dimanche");
   break;
 }
 
  lcd.setCursor(8,1); //Envoi LCD Jour et barre
  if (now.day() < 10){lcd.print("0");}  lcd.print(now.day(),DEC);  lcd.setCursor(10,1);  lcd.print('/');   

  lcd.setCursor(11,1); //Envoi LCD mois et barre
  if (now.month() < 10){lcd.print("0");}  lcd.print(now.month(),DEC);  lcd.setCursor(13,1);  lcd.print('/');

  lcd.setCursor(14,1);//Envoi LCD annee
  lcd.print(now.year(),DEC);

  lcd.setCursor(8,2); //Envoi LCD heure et :
  if (now.hour() < 10){lcd.print("0");}  lcd.print(now.hour(),DEC);  lcd.setCursor(10,2);  lcd.print(':');

  lcd.setCursor(11,2);//Envoi LCD minute et :
  if (now.minute() < 10){lcd.print("0");}  lcd.print(now.minute(),DEC);  lcd.setCursor(13,2);  lcd.print(':');   

  lcd.setCursor(14,2);//Envoi LCD second
  if (now.second() < 10){lcd.print("0");}  lcd.print(now.second(),DEC);
}


Date de création : 01/03/2014 @ 19h07
Dernière modification : 01/03/2017 @ 09h54
Page lue 6353 fois

Traduction

Recherche

Recherche

Préférences


Se reconnecter :
Votre nom (ou pseudo) :
Votre mot de passe
<O>


  649346 visiteurs
  9 visiteurs en ligne

  Nombre de membres 115 membres
Connectés :
( personne )
Snif !!!

Cela peut servir

 ↑  

Calendrier

Lien constructions

Il faut ètre inscrit sur les forums
_ Buildingreport of my type VIIC scale 1:35 Forum RCgroups
_ My 1/32 VIIC Forum RCgroups
_ graupner Shark conversion Forum RCgroups
_ Engel Gato anyone building Forum RCgroups
_ VII-C/41 REVELL au 1/72ém Forum La royale
_ VII-C/41 REVELL au 1/72ém Forum subsim

 ↑  

Annonce

Archives Nouvelles


+ Année 2017
 -  Année 2017
+ Année 2015
 -  Année 2015
+ Année 2014
 -  Année 2014
+ Année 2013
 -  Année 2013
+ Année 2012
 -  Année 2012
+ Année 2011
 -  Année 2011
+ Année 2010
 -  Année 2010
+ Année 2009
 -  Année 2009
Vous êtes ici :   Accueil » Données sur LCD