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.
 
 
Prévisualiser...  Imprimer...  Imprimer la page...
Prévisualiser...  Imprimer...  Imprimer la section...
Vous êtes ici :   Accueil » Données sur LCD
 
 

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 7698 fois

Traduction

Recherche

Recherche

Préférences


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


  839354 visiteurs
  10 visiteurs en ligne

  Nombre de membres 119 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