Sur un écran oled i2c 128*64, je voudrais afficher la température de l'air ( KY-013)
de l'eau Ds18b20 et la tension de la batterie
Le code compile sans pb
Mon pb vient du branchement.
J'ai pris la base du code sur ce site
mais dans le code, il n'y a que le pin 8 utilisé pour l'écran
alors que l'image de branchement d'explication dis de se brancher sur le GND et les 2 places après AREF sur la droite de la carte arduino.
J'ai cherché sur le net et je ne sais pas comment brancher l'écran.
Merci
// utilisation de A0, A5
// du pin 8 pour l'ecran
// du pin 2 pour l'eau DS18b20
/*
AO récupère l’information du voltage ( avec GND fil direct à la batteri mais avec resistance en parallèle !!
A5 récupère l’information de la température Thermo résistance (modèle Keyes KY-013)
pin 2 récupère l’information de la température de la sonde étanche 1m DS18B20
pin 8 affichage de l'écran
5 Volt c'est la tension de la référence de tension de l'ADC.
J'espère que tu n'as pas raccordé directement le 12V à A0 ?
Il faut placer un pont diviseur à deux résistances pour que la tension sur A0 soit inférieure à 12V.
*/
#include <Adafruit_SSD1306.h> // la bibliothèque du l'écran
#include <Adafruit_GFX.h> // la bibliothèque du l'écran
#include <math.h> //KY-013 pour température de l'air
#include <OneWire.h> //DS18B20 pour température de l'eau
#include <DallasTemperature.h> //DS18B20 pour température de l'eau
/* Essai affichage voltage, température air et eau
// http://www.instructables.com/id/Arduino-OLED-Voltage-Meter/ le voltmètre
// A0 et GND entre les deux mettre resistance ( voir le lien)ic A0 pour le voltage
// A0 et lié à la batterie et GND à l'autre pôle de la batterie A3 pour voiture bateau
// 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/
//les librairies de l'écran
//https://github.com/adafruit/Adafruit_SSD1306
//https://github.com/adafruit/Adafruit-GFX-Library
//les librairies de la sonde étanche DS18B20
//https://github.com/PaulStoffregen/OneWire
*/
// les branchements
// L'écran OLED
#define OLED_RESET 8 // pin 8 (4 avant) pin 3 pour voiture bateau
Adafruit_SSD1306 display(OLED_RESET);
// Température de l'eau DS18B20
#define EAU_TEMPERATURE_PIN 2 // pin 4 pour voiture bateau
OneWire oneWire(EAU_TEMPERATURE_PIN);
DallasTemperature sensors(&oneWire);
// Température de l'air KY-013
int sensorPin = A5; // KY-013 Déclaration de la broche d'entrée AIR
// 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; // le nom de la variable de la températur AIR
}
///////////////////////////////////////
void setup(void)
{
// start serial port
Serial.begin(115200);
Serial.println("Dallas Temperature IC Control Library Demo");
// Start up the library
sensors.begin();
// INITIALISER AUSSI L'AFFICHEUR
display.clearDisplay();
}
void loop() {
// la température de l'eau
sensors.requestTemperatures();
double dTempWater = sensors.getTempCByIndex(0); // le nom de la variable de la températur EAU
// 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.setTextSize(1);//text size
display.setTextColor(WHITE);//text color
display.setCursor(0, 0);
display.println("Temp. Eau et Air");//affiche texte 1ere ligne 8 pixels
//display.setTextColor(BLACK, WHITE);
//display.println(); // affiche une ligne noire
display.println(temp); // ici on met la 1° température ( Keyes KY-013) AIR
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.setTextColor(BLACK, WHITE);
//display.println(); // affiche une ligne noire
display.println(dTempWater); // ici on met la 2° température eau (sonde étanche)(pin A2)
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
/*
les lignes de l'écran
niveau batterie 8 pixels
ligne noire 1 9
A0 Voltage 16 25
Temp. Eau et Air 8 33
ligne noire 1 34
A1 air KY-013 16 50
ligne noire 1 51
A2 ou dTempWater 16 67
3 lignes de trop, enlever les lignes noires
*/
// pour le voltage de la batterie
int sensorValue = analogRead(A0); // Conversion du signal (which goes from 0 - 1023) to a voltage (0 - (V):
float voltage = sensorValue * (5.0 / 1023.0); // écrit la valeur lue
display.print(voltage);
display.println("V");
display.display();
/*
5V c'est la tension de la référence de tension de l'ADC.
J'espère que tu n'as pas raccordé directement le 12V à A0 ?
Il faut placer un pont diviseur à deux résistances pour que la tension sur A0 soit inférieure à 12V.
*/
}
OLED SDA – Arduino MEGA 2560 pin 20
Bibliothèques :
Two Arduino libraries must be installed to start using the display. The SSD1306 driver library is used to initialize the display and provide low level display functions. The GFX library provides graphics functions for displaying text, drawing lines and circles, etc. Both these libraries are available from Adafruit.
Bien vérifier le type d'écran dans le fichier Adafruit_SSD1306.h de la bibli :
Mais du coup mon code ne marche pas.
J'ai défini mon écran en 128x64.
Ça avance quand même.
Je connecte à A4 et A5 mais le reset c'est lequel ?
SCL c'est pour Souce Clear ?
Je n'ai plus qu'à finir ce code pour faire le montage de la maquette
// utilisation de A0 pour le voltage , A1 pour AIR (KY-013)
// du pin 8 pour l'ecran ?? 2 pin A à choisir ??
// du pin 2 pour l'eau DS18b20
/*
AO récupère l’information du voltage ( avec GND fil direct à la batteri mais avec resistance en parallèle !!
A5 récupère l’information de la température Thermo résistance (modèle Keyes KY-013)
pin 2 récupère l’information de la température de la sonde étanche 1m DS18B20
pin 8 affichage de l'écran
5 Volt c'est la tension de la référence de tension de l'ADC.
J'espère que tu n'as pas raccordé directement le 12V à A0 ?
Il faut placer un pont diviseur à deux résistances pour que la tension sur A0 soit inférieure à 12V.
*/
#include <Adafruit_SSD1306.h> // la bibliothèque du l'écran
#include <Adafruit_GFX.h> // la bibliothèque du l'écran
#include <math.h> //KY-013 pour température de l'air
#include <OneWire.h> //DS18B20 pour température de l'eau
#include <DallasTemperature.h> //DS18B20 pour température de l'eau
/* Essai affichage voltage, température air et eau
// http://www.instructables.com/id/Arduino-OLED-Voltage-Meter/ le voltmètre
// A0 et GND entre les deux mettre resistance ( voir le lien)ici A0 pour le voltage
// A0 et lié à la batterie et GND à l'autre pôle de la batterie A3 pour voiture bateau
// 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/
//les librairies de l'écran
//https://github.com/adafruit/Adafruit_SSD1306
//https://github.com/adafruit/Adafruit-GFX-Library
//les librairies de la sonde étanche DS18B20
//https://github.com/PaulStoffregen/OneWire
*/
// les branchements
// L'écran OLED
#define OLED_RESET 8 // pin 8 pin 3 pour voiture bateau
Adafruit_SSD1306 display(OLED_RESET);
//définition de la taille de l'écran
#define SSD1306_128_64
// Température de l'eau DS18B20
#define EAU_TEMPERATURE_PIN 2 // pin 4 pour voiture bateau
OneWire oneWire(EAU_TEMPERATURE_PIN);
DallasTemperature sensors(&oneWire);
// Température de l'air KY-013
int sensorPin = A1; // KY-013 Déclaration de la broche d'entrée AIR
// 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; // le nom de la variable de la températur AIR
}
///////////////////////////////////////
void setup(void)
{
// start serial port
Serial.begin(115200);
Serial.println("Dallas Temperature IC Control Library Demo");
// Start up the library
sensors.begin();
// INITIALISER AUSSI L'AFFICHEUR
display.clearDisplay();
}
void loop() {
// la température de l'eau
sensors.requestTemperatures();
double dTempWater = sensors.getTempCByIndex(0); // le nom de la variable de la températur EAU
// 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.setTextSize(1);//text size
display.setTextColor(WHITE);//text color
display.setCursor(0, 0);
display.println("Temp. Eau et Air");//affiche texte 1ere ligne 8 pixels
//display.setTextColor(BLACK, WHITE);
//display.println(); // affiche une ligne noire
display.println(temp); // ici on met la 1° température ( Keyes KY-013) AIR
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.setTextColor(BLACK, WHITE);
//display.println(); // affiche une ligne noire
display.println(dTempWater); // ici on met la 2° température eau (sonde étanche)(pin A2)
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
/*
les lignes de l'écran
niveau batterie 8 pixels
ligne noire 1 9
A0 Voltage 16 25
Temp. Eau et Air 8 33
ligne noire 1 34
A1 air KY-013 16 50
ligne noire 1 51
A2 ou dTempWater 16 67
3 lignes de trop, enlever les lignes noires
*/
// pour le voltage de la batterie
int sensorValue = analogRead(A0); // Conversion du signal (which goes from 0 - 1023) to a voltage (0 - (V):
float voltage = sensorValue * (5.0 / 1023.0); // écrit la valeur lue
display.print(voltage);
display.println("V");
display.display();
/*
5V c'est la tension de la référence de tension de l'ADC.
J'espère que tu n'as pas raccordé directement le 12V à A0 ?
Il faut placer un pont diviseur à deux résistances pour que la tension sur A0 soit inférieure à 12V.
*/
}
SCL = Signal CLock
Teste un exemple de la bibliothèque avant de te lancer dans ton propre code : tu élimines une source d'erreur (toi même en l'occurence )
/* utilisation de A0 pour le voltage
A1 pour AIR (KY-013)
des A4 et A5 pour l'écran
du pin 2 pour l'eau DS18b20
AO récupère l’information du voltage avec GND fil direct à la batterie mais avec resistance en parallèle !!
A1 récupère l’information de la température Thermo résistance (modèle Keyes KY-013)
pin 2 récupère l’information de la température de la sonde étanche 1m DS18B20
A4 et A5 affichage de l'écran
"5 Volt c'est la tension de la référence de tension de l'ADC.
J'espère que tu n'as pas raccordé directement le 12V à A0 ?
Il faut placer un pont diviseur à deux résistances pour que la tension sur A0 soit inférieure à 12V".
*/
#include <Adafruit_SSD1306.h> // la bibliothèque du l'écran
#include <Adafruit_GFX.h> // la bibliothèque du l'écran
#include <math.h> //KY-013 pour température de l'air
#include <OneWire.h> //DS18B20 pour température de l'eau
#include <DallasTemperature.h> //DS18B20 pour température de l'eau
/* Essai affichage voltage, température air et eau
// http://www.instructables.com/id/Arduino-OLED-Voltage-Meter/ le voltmètre
// A0 et GND entre les deux mettre resistance ( voir le lien)ici A0 pour le voltage
// A0 et lié à la batterie et GND à l'autre pôle de la batterie A3 pour voiture bateau
// 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/
//les librairies de l'écran
//https://github.com/adafruit/Adafruit_SSD1306
//https://github.com/adafruit/Adafruit-GFX-Library
//les librairies de la sonde étanche DS18B20
//https://github.com/PaulStoffregen/OneWire
*/
// les branchements
// L'écran OLED
#define OLED_RESET 8 // pin 8 'virtuel' ?
Adafruit_SSD1306 display(OLED_RESET);
//définition de la taille de l'écran
#define SSD1306_128_64 // à modifier dans le dossier Liraries / dossier Adafruit_SSD1306.h avec
// éditeur de texte #define SSD1306_128_64 et pour les autres définitions d'écran
// écrire //#define SSD1306_128_32 #define SSD1306_128_16
// Température de l'eau DS18B20
#define EAU_TEMPERATURE_PIN 2 // pin 4 pour voiture bateau
OneWire oneWire(EAU_TEMPERATURE_PIN);
DallasTemperature sensors(&oneWire);
// Température de l'air KY-013
int sensorPin = A1; // KY-013 Déclaration de la broche d'entrée AIR
// 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; // le nom de la variable de la températur AIR
}
///////////////////////////////////////
void setup(void)
{
// start serial port
Serial.begin(115200);
Serial.println("Dallas Temperature IC Control Library Demo");
// Start up the library
sensors.begin();
// INITIALISER AUSSI L'AFFICHEUR
display.clearDisplay();
}
void loop() {
// la température de l'eau
sensors.requestTemperatures();
double dTempWater = sensors.getTempCByIndex(0); // le nom de la variable de la températur EAU
// 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.setTextSize(1);//text size
display.setTextColor(WHITE);//text color
display.setCursor(0, 0);
display.println("Temp. Eau et Air");//affiche texte 1ere ligne 8 pixels
//display.setTextColor(BLACK, WHITE);
//display.println(); // affiche une ligne noire
display.println(temp); // ici on met la 1° température ( Keyes KY-013) AIR
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.setTextColor(BLACK, WHITE);
//display.println(); // affiche une ligne noire
display.println(dTempWater); // ici on met la 2° température eau (sonde étanche)(pin A2)
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
/*
les lignes de l'écran
niveau batterie 8 pixels
ligne noire 1 9
A0 Voltage 16 25
Temp. Eau et Air 8 33
ligne noire 1 34
A1 air KY-013 16 50
ligne noire 1 51
A2 ou dTempWater 16 67
3 lignes de trop, enlever les lignes noires
*/
// pour le voltage de la batterie
int sensorValue = analogRead(A0); // Conversion du signal (which goes from 0 - 1023) to a voltage (0 - (V):
float voltage = sensorValue * (5.0 / 1023.0); // écrit la valeur lue
display.print(voltage);
display.println("V");
display.display();
/*
5V c'est la tension de la référence de tension de l'ADC.
J'espère que tu n'as pas raccordé directement le 12V à A0 ?
Il faut placer un pont diviseur à deux résistances pour que la tension sur A0 soit inférieure à 12V.
*/
}
J'ai créée un nouveau code basé sur l'exemple donné sur le site cité plus haut
code de base
/*-------------------------------------------------------------------------------------
* Template file for 4-pin I2C OLED display, e.g. from Geekcreit
* using Adafruit SSD1306 driver and GFX libraries.
* Tutorial:
* https://startingelectronics.org/tutorials/arduino/modules/OLED-128x64-I2C-display/
*-------------------------------------------------------------------------------------*/
#include <Wire.h>
#include <Adafruit_SSD1306.h>
#include <Adafruit_GFX.h>
// OLED display TWI address
#define OLED_ADDR 0x3C
// reset pin not used on 4-pin OLED module
Adafruit_SSD1306 display(-1); // -1 = no reset pin
// 128 x 64 pixel display
#if (SSD1306_LCDHEIGHT != 64)
#error("Height incorrect, please fix Adafruit_SSD1306.h!");
#endif
void setup() {
// initialize and clear display
display.begin(SSD1306_SWITCHCAPVCC, OLED_ADDR);
display.clearDisplay();
display.display();
}
void loop() {
// put your main code here, to run repeatedly:
}
code modifié
/* utilisation de A0 pour le voltage
A1 pour AIR (KY-013)
des A4 et A5 pour l'écran
du pin 2 pour l'eau DS18b20
AO récupère l’information du voltage avec GND fil direct à la batterie mais avec resistance en parallèle !!
A1 récupère l’information de la température Thermo résistance (modèle Keyes KY-013)
pin 2 récupère l’information de la température de la sonde étanche 1m DS18B20
A4 et A5 affichage de l'écran
"5 Volt c'est la tension de la référence de tension de l'ADC.
J'espère que tu n'as pas raccordé directement le 12V à A0 ?
Il faut placer un pont diviseur à deux résistances pour que la tension sur A0 soit inférieure à 12V".
*/
#include <math.h> //KY-013 pour température de l'air
#include <OneWire.h> //DS18B20 pour température de l'eau
#include <DallasTemperature.h> //DS18B20 pour température de l'eau
#include <Wire.h>
#include <Adafruit_SSD1306.h>
#include <Adafruit_GFX.h>
/* Essai affichage voltage, température air et eau
// http://www.instructables.com/id/Arduino-OLED-Voltage-Meter/ le voltmètre
// A0 et GND entre les deux mettre resistance ( voir le lien)ici A0 pour le voltage
// A0 et lié à la batterie et GND à l'autre pôle de la batterie A3 pour voiture bateau
// 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/
//les librairies de l'écran
//https://github.com/adafruit/Adafruit_SSD1306
//https://github.com/adafruit/Adafruit-GFX-Library
//les librairies de la sonde étanche DS18B20
//https://github.com/PaulStoffregen/OneWire
*/
// les branchements
// L'écran OLED
#define OLED_RESET 8 // pin 8 'virtuel' ?
Adafruit_SSD1306 display(OLED_RESET);
//définition de la taille de l'écran
#define SSD1306_128_64 // à modifier dans le dossier Liraries / dossier Adafruit_SSD1306.h avec
// éditeur de texte #define SSD1306_128_64 et pour les autres définitions d'écran
// écrire //#define SSD1306_128_32 #define SSD1306_128_16
// Température de l'eau DS18B20
#define EAU_TEMPERATURE_PIN 2 // pin 4 pour voiture bateau
OneWire oneWire(EAU_TEMPERATURE_PIN);
DallasTemperature sensors(&oneWire);
/*-------------------------------------------------------------------------------------
Template file for 4-pin I2C OLED display, e.g. from Geekcreit
using Adafruit SSD1306 driver and GFX libraries.
Tutorial:
https://startingelectronics.org/tutorials/arduino/modules/OLED-128x64-I2C-display/
-------------------------------------------------------------------------------------*/
// OLED display TWI address
#define OLED_ADDR 0x3C
//------------------------------------------
//------------------------------------------
// Déclaration et calcul de Température de l'air KY-013
int sensorPin = A1; // KY-013 Déclaration de la broche d'entrée AIR
// 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; // le nom de la variable de la températur AIR
}
void setup() {
// initialize and clear display
display.begin(SSD1306_SWITCHCAPVCC, OLED_ADDR);
display.clearDisplay();
display.display();
// start serial port
Serial.begin(115200);
Serial.println("Dallas Temperature IC Control Library Demo");
// Start up the library
sensors.begin();
}
void loop() {
// Déclaration de calcul de la température de l'eau
sensors.requestTemperatures();
double dTempWater = sensors.getTempCByIndex(0); // le nom de la variable de la températur EAU
// mesure de la valeur de tension continue à la CTN et convertion en °C
int readVal = analogRead(2);
double temp = Thermistor(readVal);
//------------------------------------------
//------------------------------------------
//Affichage sur l'écran
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.setTextSize(1);//text size
display.setTextColor(WHITE);//text color
display.setCursor(0, 0);
display.println("Temp. Eau et Air");//affiche texte 1ere ligne 8 pixels
//*****************************
//display.setTextColor(BLACK, WHITE);
//display.println(); // affiche une ligne noire
//*****************************
display.println(temp); // ici on met la 1° température ( Keyes KY-013) AIR
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.setTextColor(BLACK, WHITE);
//display.println(); // affiche une ligne noire
//*****************************
display.println(dTempWater); // ici on met la 2° température eau (sonde étanche)(pin A2)
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); // Conversion du signal (which goes from 0 - 1023) to a voltage (0 - (V):
float voltage = sensorValue * (5.0 / 1023.0); // écrit la valeur lue
display.print(voltage);
display.println("V");
display.display();
/*
les lignes de l'écran
niveau batterie 8 pixels
ligne noire 1 9
A0 Voltage 16 25
Temp. Eau et Air 8 33
ligne noire 1 34
A1 air KY-013 16 50
ligne noire 1 51
A2 ou dTempWater 16 67
3 lignes de trop, enlever les lignes noires
*/
}
Tu es sûr de ça ?
display.println("A0");//define analog pin 16 pixels
Sinon, je pense que tu devras optimiser ton affichage "sur le terrain" c'est à dire lorsque tu auras ton écran : positionner les textes, les nombres, etc. Surtout si tu utilises plusieurs tailles de caractères...
Mais tu découvriras ça lorsque tu auras l'écran !
Pour afficher une image, c'est un peu compliqué : si l'image est déjà sur internet, tu trouves son adresse (clic droit sur l'image, copier l'adresse de l'image) et tu cliques sur le rectangle bleu clair dans les commandes du forum (à côté de </>) qui ouvre un fenêtre pour copie l'adresse.
Si c'est un fichier que tu veux uploader toi même, il faut la mettre en attachement, comme tu le fais maintenant et publier ton message. Tu affiches le message et tu cliques droit sur le lien vers l'image -> copier l'adresse de l'image. Ensuite c'est pareil.
Je crois que c'est expliqué dans l'un des messages épinglés, que tu devrais avoir lus...