Buongiorno ragazzi,
sto cercando di usare un sensore Bme680 per il calcolo dello IAQ e mi sto basando su questo codice:
scaricando il codice sulla mia board, da seriale, tutti i parametri compreso lo IAQ, vengono stampati correttamente.
lo step successivo è stato quello di far stampare tutti questi valori su un oled per mezzo della libreria:
#include <U8g2lib.h> // https://github.com/olikraus/u8g2 - v2.27.6
per cui se dall'esempio precedente identifico:
String CalculateIAQ(int score) {
String IAQ_text = "air quality is ";
score = (100 - score) * 5;
if (score >= 301) IAQ_text += "Hazardous";
else if (score >= 201 && score <= 300 ) IAQ_text += "Very Unhealthy";
else if (score >= 176 && score <= 200 ) IAQ_text += "Unhealthy";
else if (score >= 151 && score <= 175 ) IAQ_text += "Unhealthy for Sensitive Groups";
else if (score >= 51 && score <= 150 ) IAQ_text += "Moderate";
else if (score >= 00 && score <= 50 ) IAQ_text += "Good";
Serial.print("IAQ Score = " + String(score) + ", ");
return IAQ_text;
}
e poi faccio:
u8g2.clearBuffer();
u8g2.setFont(u8g2_font_6x10_tf); // imposto font
u8g2.setCursor (1, 37);
u8g2.print("IAQ: ");
u8g2.println(String (IAQ_text));
u8g2.sendBuffer();
l'oled stampa solo IAQ:
C'è qualcosa che non capisco. Potete aiutarmi?
Grazie