Merci
J'ai vu après mais je croyais qu'elle était incluse dans l'autre à cause de son nom…. eh ben non !
encore une erreur à la ligne après delay 1 milli seconde
Ce qui m'ennuie c'est que ce n'est pas une question de logique mais purement installation de logiciel et là, je ne peux pas faire grand chose ![]()
Arduino : 1.8.5 (Windows 10), Carte : "Arduino/Genuino Uno"
D:\ACER-Patrick\CLARISSE\Code bateau\Ecran_temp_volt\Ecran_temp_volt.ino: In function 'void loop()':
Ecran_temp_volt:38: error: 'display' was not declared in this scope
display.clearDisplay();
^
exit status 1
'display' was not declared in this scope
Ce rapport pourrait être plus détaillé avec
l'option "Afficher les résultats détaillés de la compilation"
activée dans Fichier -> Préférences.
#include <Adafruit_SSD1306.h> // la bibliothèque du l'écran
#include <Adafruit_GFX.h>
#include <math.h> //KY-013 pour température de l'air
// Essai affichage voltage, température air et eau
// http://www.instructables.com/id/Arduino-OLED-Voltage-Meter/ le voltmètre
// http://edu.mrpigg.ca/termo.html thermo resistor Keyes KY-013 pour l'air
// https://letmeknow.fr/blog/2016/08/10/le-capteur-de-temperature-ds18b20/
//la librairie de l'écran
//https://github.com/adafruit/Adafruit_SSD1306
#define OLED_RESET 4 Adafruit_SSD1306 display(OLED_RESET);
int sensorPin = A1; // KY-013 Déclaration de la broche d'entrée
// KY-013 Cette fonction convertit la valeur analogique lue en température en °C
double Thermistor(int RawADC)
{
double Temp;
Temp = log(10000.0 * ((1024.0 / RawADC - 1)));
Temp = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * Temp * Temp )) * Temp );
Temp = Temp - 273.15; // conversion de degrés Kelvin en °C
return Temp;
}
void loop() {
// KY-013 le programme mesure la valeur de tension continue à la CTN et convertit le résultat en °C
int readVal = analogRead(sensorPin);
double temp = Thermistor(readVal);
delay(1);//delay time 1 milli second
display.clearDisplay();
display.setTextSize(1);//text size
display.setTextColor(WHITE);//text color
display.setCursor(0, 0);
display.println("Niveau Batterie");//affiche texte 1ere ligne 8 pixels
display.setTextColor(BLACK, WHITE);
display.println(); // affiche une ligne noire
display.println("A0");//define analog pin 16 pixels
display.setTextSize(1);
display.setTextColor(WHITE);//text color
display.println("A1"); // ici on met la 1° température air ( Keyes KY-013)
display.setTextSize(2);//text size // mettre 2 pour 16 pixels
display.print(char(186)); //Affichage du symbole <°>
display.println("C"); //Affichage du symbole <C>
delay(500); // Attente 0,5 sec pour réactualiser
display.println("A2"); // ici on met la 2° température eau (sonde étanche)
display.setTextSize(2);//text size // mettre 2 pour 16 pixels
display.print(char(186)); //Affichage du symbole <°>
display.println("C"); //Affichage du symbole <C>
delay(500); // Attente 0,5 sec pour réactualiser
// pour le voltage de la batterie
int sensorValue = analogRead(A0); // Convertion du signal (which goes from 0 - 1023) to a voltage (0 - 5V):
float voltage = sensorValue * (5.0 / 1023.0); // écrit la valeur lue
display.print(voltage);
display.println("V");
display.display();
}
/*
AO récupère l’information du voltage
A1 récupère l’information de la température Thermo résistance (modèle Keyes KY-013)
A2 récupère l’information de la température de la sonde étanche 1m DS18B20
*/