17-03-2020, 11:17
Witam wszystkich użytkowników Arduino .
Posiadam arduino uno z trzema czujnikami ds 18b20 i wyświetlaczem Lcd 128 x 64 . Problem polega na tym że podczas wyswietlania pomiaru wartość zmienia sie po pól cyfry ( powstają dziwne znaki ), czcionki wielkości 15 punktów , druga sprawa czy jest możliwość wyświetlenia temp z ds 18b20 z jednym miejcem po przecinku z zachowaniem dużej dokładności ?
Z góry dziękuje za wszystkie sugestie .
Posiadam arduino uno z trzema czujnikami ds 18b20 i wyświetlaczem Lcd 128 x 64 . Problem polega na tym że podczas wyswietlania pomiaru wartość zmienia sie po pól cyfry ( powstają dziwne znaki ), czcionki wielkości 15 punktów , druga sprawa czy jest możliwość wyświetlenia temp z ds 18b20 z jednym miejcem po przecinku z zachowaniem dużej dokładności ?
Kod:
// End of constructor list
#define ONE_WIRE_BUS 7
OneWire oneWire(ONE_WIRE_BUS);
// Pass our oneWire reference to Dallas Temperature.
DallasTemperature sensors(&oneWire);
void setup(void) {
u8g2.begin();
// Inicjacja czujnika
sensors.begin();
}
void loop(void) {
u8g2.setFont(u8g2_font_5x7_tr);
u8g2.firstPage();
do {
u8g2.setCursor(5, 8);
u8g2.print(F("TEMP 10 PULKA"));
u8g2.setCursor(79, 8);
u8g2.print(F("TEMP DNIA"));
u8g2.setFont(u8g2_font_4x6_tf);
u8g2.setCursor(10, 33);
u8g2.print(F("TEMP"));
u8g2.setCursor(11, 40);
u8g2.print(F("KEG"));
u8g2.setCursor(40, 33);
u8g2.print(F("TEMP"));
u8g2.setCursor(37, 40);
u8g2.print(F("SRODEK"));
u8g2.setCursor(72, 33);
u8g2.print(F("TEMP"));
u8g2.setCursor(67, 40);
u8g2.print(F("GLOWICA"));
u8g2.setCursor(98, 33);
u8g2.print(F("CISNIEN"));
u8g2.setCursor(107, 40);
u8g2.print(F("ATM"));
u8g2.setFont(u8g2_font_luBS14_tf);
u8g2.setCursor(9, 24);
sensors.requestTemperatures();
u8g2.print(sensors.getTempCByIndex(1));
u8g2.setFont(u8g2_font_balthasar_titling_nbp_tn);
u8g2.setCursor(4, 59);
u8g2.print(sensors.getTempCByIndex(1));
u8g2.setCursor(37,59);
u8g2.print(sensors.getTempCByIndex(2));
} while ( u8g2.nextPage() );
delay(100);