// AT - MEDIDAS ELÉTRICAS E INSTRUMENTAÇÃO - UNIVERSO - 2024-1
// Aluno Diego Bauerfeldt Azevedo
//Etapa inicial = Carregamento dos componentes e constantes
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
const float BETA = 3950; // Deve corresponder ao coeficiente beta do termistor (que foi verificado no manual do Wokwi)
LiquidCrystal_I2C LCD = LiquidCrystal_I2C(0x27, 16, 2);
void printTempValue() {
//Limpa o display LCD e converte o valor da entrada analógica para a variável celsius
LCD.clear();
int analogValue = analogRead(0); // captura valor da entrada
float celsius = 1 / (log(1 / (1023. / analogValue - 1)) / BETA + 1.0 / 298.15) - 273.15; //aplica a formula de conversão do valor de entrada para graus celsius
LCD.setCursor(0, 0);
LCD.println("Temperatura Lida");
LCD.setCursor(6, 1);
LCD.println(celsius);
return;
}
void setup() {
//Inicia comunicação e parametriza a entrada analógica no pino 0
Serial.begin(115200);
analogReadResolution(10);
pinMode(0,INPUT);
//Inicia o display LCD e faz a apresentação da faculdade e do aluno
LCD.init();
LCD.backlight();
LCD.setCursor(5, 0); //definie a posição inicial do texto no display LCD
LCD.print("UNIVERSO");
LCD.setCursor(0, 1); //definie a posição inicial do texto no display LCD
LCD.print("DIEGO BAUERFELDT");
delay(3000); //Aguarda 3 segundos para avançar
//Limpa o display LCD e faz a apresentação da atividade e da disciplina
LCD.clear();
LCD.setCursor(7, 0);
LCD.println("AT");
LCD.setCursor(0, 1);
LCD.println("MEDID ELE e INST");
delay(3000); //Aguarda 3 segundos para avançar
}
void loop() {
printTempValue();
delay(3000); //Aguarda 3 segundos para avançar
}