For LCD, this is the only one that work for me:
IDE version 1.8.8
lcd.print(char(0xDF));
Those do not work for me:
// lcd.print(char(176));
// lcd.print(char("°"));
// lcd.print((char)176);
But thanks to this thread, I did solve my problem making my
MLX 90614 IR Thermometer.
My code so far, if someone is interested:
#include <Wire.h>
#include <Adafruit_MLX90614.h>
Adafruit_MLX90614 mlx = Adafruit_MLX90614();
#include <LiquidCrystal.h>
// LCD module connections (RS, E, D4, D5, D6, D7)
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
void setup() {
lcd.begin(16, 2);
lcd.clear();
Serial.begin(9600);
mlx.begin();
Serial.println("Adafruit MLX90614 test.");
Serial.println("");
lcd.setCursor(0, 0);
// Next line (0, 1)
lcd.print(" MLX 90614 Test ");
lcd.setCursor(0, 1);
lcd.print(" IR Thermometer ");
delay(2000);
}
void loop() {
Serial.print("Ambient = ");
lcd.setCursor(0, 0);
lcd.print("Ambient ");
lcd.setCursor(8, 0);
Serial.print(mlx.readAmbientTempC());
lcd.print(mlx.readAmbientTempC());
lcd.setCursor(13, 0);
// lcd.print(char(176));
// lcd.print(char("°"));
// lcd.print((char)176);
lcd.print(char(0xDF));
lcd.print(" C");
Serial.print("° C\tObject = ");
Serial.print(mlx.readObjectTempC());
lcd.setCursor(0, 1);
lcd.print("Object ");
lcd.setCursor(8, 1);
lcd.print(mlx.readObjectTempC());
lcd.setCursor(13, 1);
lcd.print(char(0xDF));
lcd.print(" C");
Serial.println("° C");
Serial.print("Ambient = ");
Serial.print(mlx.readAmbientTempF());
Serial.print("° F\tObject = ");
Serial.print(mlx.readObjectTempF());
Serial.println("° F");
Serial.println();
delay(500);
}