Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <SimpleDHT.h>
- #include <LiquidCrystal.h>
- #include <Wire.h>
- #include "DS3231.h"
- int button = 0;
- int brochebutton = 2; //Variables Comptage
- int etat = 0;
- int ecran = 1;
- int pinDHT11 = 2;
- SimpleDHT11 dht11;
- LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
- byte temperature = 0; //Variables Températures
- byte humidity = 0;
- int contrast = 75;
- RTClib RTC; //Variables heures
- int tiltPin = 5;
- int compteurnombredepas = 0; //Variables Compteur de pas
- int tiltState = 0;
- void setup()
- {
- Serial.begin(9600);
- pinMode(brochebutton, INPUT_PULLUP); //Décclare la Broche du bouton
- lcd.begin(16, 2); //
- analogWrite(6, contrast); //Déclare la valeur du contraste
- Wire.begin(); //
- pinMode(tiltPin, INPUT); //Déclare l'entre du capteur de mouvement
- }
- void loop() {
- button = digitalRead(brochebutton); //Met la valeur envoyé par le bouton sur la variable Buttun
- if (button == 0 && etat == 0) //Si le button est appuyé et etat est a 0
- {
- ecran++; //Alors changer d'écran
- etat = 1; //et changer Etat à 1
- }
- if (etat == 1 && button ==1) //Si le bouton n'est pas appuyé et que l'état est à 1
- {
- etat = 0; //Alors mettre etat à 0 (permet de recommmencer la boucle button)
- }
- if (ecran == 1) //Si nous sommes sur l'écran
- {
- lcd.clear(); //
- lcd.setCursor(0, 0); //Paramétres d'affichages
- lcd.print("Heure:"); //
- lcd.setCursor(0, 1); //
- DateTime now = RTC.now(); //Ajoute une fonction chronométrage
- lcd.print(now.hour(), DEC); //Affiche l'heure
- lcd.print(':');
- lcd.print(now.minute(), DEC); //Affiche les minutes
- lcd.print(':');
- lcd.print(now.second(), DEC); //affiche les secondes
- delay(20);
- }
- if (ecran == 2) //Si nous sommes sur l'écran 2
- {
- lcd.clear(); //
- lcd.setCursor(0, 0); //Parametres d'affichages
- lcd.print("Nombre de Pas:"); //
- lcd.setCursor(0, 1); //
- tiltState = digitalRead(tiltPin); //Déclares la valeur de tiltState sur la broche tiltPin
- if (tiltState ==0) //Si le capteur capte un mouvement alors:
- {
- compteurnombredepas++; //Ajouter 1 pas à la variable
- }
- lcd.print(compteurnombredepas); //Afficher le nombre de pas
- delay(20);
- }
- if (ecran == 3) //Si nous sommes sur l'écran 3
- {
- lcd.clear(); //
- lcd.setCursor(0, 0); //Parametres d'affichage
- lcd.print("Temperature"); //
- lcd.setCursor(0, 1); //
- if (dht11.read(pinDHT11, &temperature, &humidity, NULL)) //Si aucune valeur n'est capté par le capteur de température et humidité alors:
- {
- Serial.print("Read DHT11 failed."); //Afficher
- return;
- }
- lcd.print((int)temperature); lcd.print(" C "); //Afficher sur l'écran La temperature suivi du sygle "Dégres celsius"
- delay(200);
- }
- if (ecran>3) //Si nous essayons d'aller sur l'ecran 4 rebasucler sur l'ecran 1
- {
- ecran = 1;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement