You are on page 1of 7

Premier programme ( LDR ) :

// code de la librairie

#include <LiquidCrystal.h>

// Nommer les LED

int led7 = 7;

int led6 = 6;

int led5 = 5;

int led4 = 4;

int led3 = 3;

int led2 = 2;

int led1 = 1;

int led0 = 0;

// initialiser la bibliothèque avec le numéro de la rotation

LiquidCrystal lcd (13,12,11,10,9,8);

void setup() {

// configurer le nombre de colonnes et de lignes du LCD

lcd.begin (16,2);

// initialiser les broches numériques en sortie

pinMode (led0,OUTPUT);

pinMode (led1,OUTPUT);

pinMode (led2,OUTPUT);

pinMode (led3,OUTPUT);

pinMode (led4,OUTPUT);

pinMode (led5,OUTPUT);

pinMode (led6,OUTPUT);
pinMode (led7,OUTPUT);

void loop() {

// lire la valeur du capteur

int LDR = analogRead(A0);

// inverser la plage des nombres du LDR ( la limite inférieure de la plage actuelle de la valeur 0 , la
limite supérieure de la plage actuelle de la valeur 1023 , la limite inférieure de la cible de la valeur 0 , la
limite supérieure de la cible de la valeur 255 )

int temp = map (LDR,0,1023,0,255);

// placez le curseur sur la colonne 0, ligne 0

lcd.setCursor(0,0);

// imprimer une valeur sur l'écran LCD

lcd.print("ADC VALUE = ");

// placez le curseur sur la colonne 0, ligne 1 ( note: la ligne 1 est la deuxième ligne, puisque le
comptage commence par 0)

lcd.setCursor(0,1);

// imprimer la température sur l'écran LCD

lcd.print(temp);

// le retard

delay(10);

// Effacer l'écran LCD

lcd.clear();

if (LDR==0){

// éteindre la LED en faisant la tension BASSE

digitalWrite(led1,LOW);

digitalWrite(led2,LOW);

digitalWrite(led3,LOW);
digitalWrite(led4,LOW);

digitalWrite(led5,LOW);

digitalWrite(led6,LOW);

digitalWrite(led7,LOW);

///////LED ON CONDITION///////

if (LDR>0){

digitalWrite (led7,HIGH);

if (LDR>32){

digitalWrite (led6,HIGH);

if (LDR>64){

digitalWrite (led5,HIGH);

if (LDR>96){

digitalWrite (led4,HIGH);

if (LDR>128){

digitalWrite (led3,HIGH);

if (LDR>160){

digitalWrite (led2,HIGH);

if (LDR>192){

digitalWrite (led1,HIGH);
}

if (LDR>224){

digitalWrite (led0,HIGH);

///////LED OFF CONDITION///////

if (LDR<0){

digitalWrite (led7,LOW);

if (LDR<32){

digitalWrite (led6,LOW);

if (LDR<64){

digitalWrite (led5,LOW);

if (LDR<96){

digitalWrite (led4,LOW);

if (LDR<128){

digitalWrite (led3,LOW);

if (LDR<160){

digitalWrite (led2,LOW);

if (LDR<192){

digitalWrite (led1,LOW);

}
if (LDR<224){

digitalWrite (led0,LOW);

Deuxième programme ( DHT ) :


// code de la librairie

#include <Wire.h>

#include "DHT.h"

//#include <HDC1000.h>

//HDC1000 mySensor;

//HDC1000 mySensor(0x41, 2)

// la broche numérique nous sommes connectés

#define DHTPIN 8

// DHT22

#define DHTTYPE DHT22

// Initialiser le capteur DHT pour Arduino

DHT dht(DHTPIN,DHTTYPE);

// Nommer les sorties utilisées

int FAN=7;

int MOTOR=6;

void setup(){

// définit le débit de données à 9600 bps

Serial.begin(9600);

// Initialiser les moteurs comme des sorties


pinMode(FAN, OUTPUT);

pinMode(MOTOR, OUTPUT);

//mySensor.begin();

// essayer le pilote de périphérique ouvert

Wire.begin();

void loop(){

// Lire l'humidité par défaut

float h=dht.readHumidity();

// Lire la température en Celsius (par défaut)

float T=dht.readTemperature();

// Imprimer les valeurs de température et d'humidité sur le moniteur série

Serial.print("Temperature: ");

Serial.print(T);

Serial.print("*****");

Serial.print("C, Humidity: ");

Serial.print(h);

Serial.println("%");

// Les conditions sur la température et l’humidité

if(h<=45)

digitalWrite(FAN,HIGH);

else

{
digitalWrite(FAN,LOW);

if(T<=37.5)

digitalWrite(MOTOR,HIGH);

else

digitalWrite(MOTOR,LOW);

// Retard 1 seconde

delay(1000);