728x90
A GREAT thank you .
The code works.
Can you confirm the screen for oled 128 x 128 please .
I'l receveid it soon.
Are you ok with this choice ?
//Déclaration of screen 128x128 /*
U8G2_SSD1327_EA_W128128_1_SW_I2C u8g2(U8G2_R0, A5, A4);
ou le
U8G2_SSD1327_MIDAS_128X128_1_SW_I2C u8g2(U8G2_R0, A5, A4); */
The good code
`// Pour l'écran
#include <Arduino.h>
#include <U8g2lib.h>
//Pour les sondes
#include <DallasTemperature.h> //DS18B20 pour température de l'eau et de l'air
#include <Wire.h>
//les librairies de l'écran
// pour les fontes https://github.com/olikraus/u8g2/wiki/fntlistall
// poue l'écran https://github.com/olikraus/u8g2/wiki/u8g2setupc
// Déclaratipon de l'écran 128x64
U8G2_SSD1306_128X64_NONAME_2_SW_I2C u8g2 (U8G2_R0, A5, A4);
//Déclaration de l'écran 128x128
/*
U8G2_SSD1327_EA_W128128_1_SW_I2C u8g2(U8G2_R0, A5, A4);
ou le
U8G2_SSD1327_MIDAS_128X128_1_SW_I2C u8g2(U8G2_R0, A5, A4);
*/
// les 2 sondes DS18B20
#define ONE_WIRE_BUS_1 2 // sonde pour l'eau pin 2
#define ONE_WIRE_BUS_2 4 // sonde pour l'air pin 4
OneWire oneWire_in(ONE_WIRE_BUS_1); // sonde pour l'eau
OneWire oneWire_out(ONE_WIRE_BUS_2); // sonde pour l'air
DallasTemperature sensor_eau(&oneWire_in); // sonde pour l'eau
DallasTemperature sensor_air(&oneWire_out); // sonde pour l'air
void setup(void)
{
/* U8g2 Project: SSD1306 Test Board */
pinMode(A4, OUTPUT);
digitalWrite(A4, 0);
u8g2.begin();
u8g2.setPowerSave(0);
// start serial port
Serial.begin(9600);
Serial.println("Dallas Temperature Control Library Demo - TwoPin_DS18B20");
// Start up the library
sensor_eau.begin(); // sonde pour l'eau
sensor_air.begin(); // sonde pour l'air
// déclaration de la pin 2 et 4
pinMode(2, INPUT);
pinMode(4, INPUT);
int readValEau = analogRead(2);// met à zéro la sonde EAU
int readValAir = analogRead(4);// met à zéro la sonde AIR
}
void loop(void)
{
int sensorValue = analogRead(A0); //A0
u8g2.firstPage();
do {
// AFFICHAGE SUR SERIAL
Serial.print("Recherche des temperatures...");
sensor_eau.requestTemperatures();
sensor_air.requestTemperatures();
Serial.println(" done");
// sonde EAU
Serial.print("Température eau: ");
Serial.println(sensor_eau.getTempCByIndex(0));
// sonde AIR
Serial.print("Température air: ");
Serial.println(sensor_air.getTempCByIndex(0));
delay ( 500);
/*/modele d'écriture
u8g2.setFont(u8g2_font_ncenB14_tr);
u8g2.setCursor(0, 15);
u8g2.print("Hello World!");
*/
/* fonte 8 pixels u8g2_font_t0_11_tf
fonte 10 pixels u8g2_font_7x14_mr X11
fonte 12 pixels u8g2_font_9x15_mn X11
fonte 14 pixels u8g2_font_t0_18_mn UW ttyp0
fonte 16 pixels u8g2_font_crox3c_tn crox
fonte 20 pixels u8g2_font_fur20_tf Free Universal
*/
// Affichage Niveau batterie
u8g2.setFont(u8g2_font_t0_11_tf);///(u8g2_font_ncenB14_tr)
u8g2.setCursor(0, 8);
u8g2.println("NIVEAU BATTERIE");
//delay ( 1000);
// pour le voltage de la batterie
// Conversion du signal (which goes from 0 - 1023) to a voltage (0 - (V):
int sensorValue = analogRead(A0);//******************************************************* A3 pour la voiture bateau
// écrit la valeur lue
float voltage = sensorValue * (5.0 / 1023.0);
u8g2.setCursor(0, 24);// position 0, sur la 1 ere ligne,
u8g2.print(voltage);
u8g2.print("V");
//Affichage températures Air
u8g2.setFont(u8g2_font_t0_11_tf);
u8g2.setCursor(0, 44);
u8g2.println("TEMP. AIR ");
u8g2.print(" ");
u8g2.print(sensor_air.getTempCByIndex(0));
u8g2.print(" ");
u8g2.print("C");
// Affichage températures Eau
u8g2.setFont(u8g2_font_t0_11_tf);
u8g2.setCursor(0, 64);
u8g2.println("TEMP. EAU ");
u8g2.print(" ");
u8g2.print(sensor_eau.getTempCByIndex(0));
u8g2.print(" ");
u8g2.print("C");
} while ( u8g2.nextPage() );
}`
'홍익인간 프로젝트 > Arduino C' 카테고리의 다른 글
Arduino Uno TM1637 Display (0) | 2020.12.16 |
---|---|
Arduino Basic (0) | 2020.12.12 |
[아두이노] GPS 모듈의 사용 1편 - GPS 로그 찍어보기 (0) | 2020.12.07 |
Wire Library (0) | 2020.12.01 |
SSD1306 dual I2C display (0) | 2020.12.01 |