Étape 3: L’esquisse
L’esquisse n’est pas aussi simple que de copier et coller les deux sketches ensemble, j’ai eu de le modifier pour accueillir les deux appareils et dire l’Arduino pour obtenir les données de la sonde et l’afficher sur l’écran LCD. Mais les Variables et les bibliothèques restent les mêmes.
Il y a une copie compressée de l’esquisse dans ce instructable vous pouvez l’ajuster comme bon vous semble.
J’ai commencé par définir les bibliothèques que nous avons besoin pour l’écran LCD. Pour plus de détails sur la façon de charger les bibliothèques dans votre dossier de bibliothèque Arduino suivent les instructions dans ce instructable :
charger les bibliothèques
#include < Wire.h >
#include < LCD.h >
#include < LiquidCrystal_I2C.h >
La j’ai défini les variables requises par l’écran LCD et le LM35
J’ai ajouté le tempf variable afin d’afficher la température en Fahrenheit
Définir des variables pour l’écran LCD
#define I2C_ADDR 0 x 27 //Define I2C adresse où le PCF8574A est
#define BACKLIGHT_PIN 3
#define En_pin 2
#define Rw_pin 1
#define Rs_pin 0
#define D4_pin 4
#define D5_pin 5
#define D6_pin 6
#define D7_pin 7
définir des variables pour le capteur de température LM35
temp de flotteur ; Définir la variable temp flotteur
flotteur tempf ; Définir la Fahrenheit variable float
capteur int = 0 ; fiche de capteur centrale sur la broche analogique 0
Puis j’ai initialisé le LCD en utilisant cette ligne :
Initialiser l’écran LCD
LiquidCrystal_I2C lcd (I2C_ADDR, En_pin, Rw_pin, Rs_pin, D4_pin, D5_pin, D6_pin, D7_pin) ;
Dans la configuration du Sub, je dis la Arduinio que j’utilise un 16 X 2 LCD, le rétro-éclairage s’allume et imprimer quelques lignes qui ne changeront pas.
void setup() {}
LCD.Begin (16,2) ; Définir l’écran LCD comme colonne 16 par 2 rangs
Allumer le rétro-éclairage
lcd.setBacklightPin(BACKLIGHT_PIN,POSITIVE) ;
lcd.setBacklight(HIGH) ;
lcd.setCursor(0,0) ; Goto première colonne (colonne 0) et la première ligne (0)
LCD.Print ("Temp C =") ; Imprimer à l’emplacement de curseur
lcd.setCursor(0,1) ; Goto première colonne (colonne 0) et la deuxième ligne (1)
LCD.Print ("Temp F =") ; Imprimer à l’emplacement du curseur
}
Dans la boucle Sub je lire la température de la sonde, changez-la en Celsius et afficher sur la première ligne, puis changer à nouveau pour Fahrenheit et affichez-la sur la deuxième rangée. La répétition du processus toutes les 5 secondes
void loop() {}
Temp = analogRead(sensor) ; assigner la sortie analogique de temp
Temp = temp * 0.48828125 ; conversion degrés celsius---0.48828125 volts = [(5V*1000)/1024] 10 tempf = (temp * 1,8) + 32 ; Convering de celsius à fahreneit
lcd.setCursor(8,0) ; Déplacez le curseur sur la position 8 au rang 1
LCD.Print(temp) ; imprimer la température en degrés Celsius
lcd.setCursor(8,1) ; Déplacez le curseur sur la position 8 au rang 2
LCD.Print(tempf) ; imprimer la température en degrés Fahrenheit
Delay(5000) ; attendez 5 secondes
}
J’espère que vous aimez, si vous avez des questions n’hésitent pas à demander.
Profitez de