Étape 19 : Télécharger le CODE
Avant de télécharger le code, retirez soit Arduino du bouclier ou Bluetooth module Rx et Tx. Copiez le code ci-dessous et collez-le dans votre ide Arduino. J’ai commenté devant les lignes afin que les débutants puissent comprendre le code facilement. Voici le code :
#include < LiquidCrystal.h > //Adding toutes les bibliothèques
#include < dht11.h >
#define START_CMD_CHAR ' *'
#define CMD_ANALOGWRITE 11
#define MAX_COMMAND 20 / / max code Numéro de commande. utilisé pour la vérification des erreurs.
#define MIN_COMMAND 10 / / minimum code Numéro de commande. utilisé pour la vérification des erreurs.
#define MAX_ANALOGWRITE 255
#define PIN_HIGH 3
#define PIN_LOW 2
bouton int = 7 ; définir le numéro d’identification et de la valeur
inttempPin = A1 ;
temp de flotteur ;
État int = 0 ;
intpotPin = A0 ;
valeur int = 0 ;
dht11 DHT11 ;
LiquidCrystallcd (12, 16, 5, 4, 3, 2) ;
InText chaîne ;
void setup() {}
DHT11.Attach(8) ; en disant Arduino qui auquel est attaché capteur DHT11 broche
pinMode(button,INPUT) ;
LCD.Begin(16,2) ;
Serial.Begin(9600) ;
Serial.Flush() ;
LCD.Print ("lampe LED Arduino") ; imprimer le message de démarrage
Delay(2000) ;
LCD.Clear() ;
LCD.Print("Control:") ; Dire quel mode est utilisé pour contrôler le Conseil conduit
lcd.setCursor(0,1) ;
LCD.Print("Potensiometer") ;
Delay(2000) ;
LCD.Clear() ;
}
void loop()
{
LCD.Clear() ;
LCD.Print("INSTRUCTABLES") ;
Delay(50) ;
Si (digitalRead (bouton) == HIGH & & État == 0) / / changement de mode par les instructions données par l’utilisateur
{
Etat ++ ;
LCD.Print("Control:") ;
lcd.setCursor(0,1) ;
LCD.Print("app") ;
Delay(2000) ;
LCD.Clear() ;
}
ElseIf (digitalRead (bouton) == HIGH & & État == 1)
{
Etat ++ ;
LCD.Print("Control:") ;
lcd.setCursor(0,1) ;
LCD.Print("Potensiometer") ;
Delay(2000) ;
LCD.Clear() ;
}
ElseIf (digitalRead (bouton) == HIGH & & État == 2)
{
Etat = Etat-2 ;
intchk = DHT11.read() ;
Temp = analogRead(tempPin) ; recevant la tension de sortie du capteur de température
Temp = temp * 0.48828125 ; conversion de la tension de sortie en température en degré Celsius
LCD.Print ("Temp:") ;
LCD.Print(temp) ;
LCD.Print("*C") ;
lcd.setCursor(0,1) ;
LCD.Print("Humi:") ;
LCD.Print((int)DHT11.Humidity,DEC) ;
LCD.Print("%") ;
Delay(4000) ;
LCD.Clear() ;
}
Si (État == 1) / / Code pour controlloing led board de l’app
{
Serial.Flush() ;
intard_command = 0 ;
intpin_num = 0 ;
intpin_value = 0 ;
charget_char = ' ' ;
get_char = Serial.read() ;
Si (get_char! = START_CMD_CHAR) return ;
ard_command = Serial.parseInt() ;
pin_num = Serial.parseInt() ;
pin_value = Serial.parseInt() ;
Si (ard_command == CMD_ANALOGWRITE) {}
analogWrite (pin_num, pin_value) ;
}
}
ElseIf (État == 0) / / Code pour contrôler l’application de Potensiometer
{
valeur = analogRead(potPin) ;
valeur = carte (valeur, 0, 1023, 0, 255) ;
analogWrite(11,value) ;
}
}
Handheld_led_lamp.INO