Com este exemplo você irá monitorar ao mesmo tempo a luminosidade e a temperatura do sistema, visualizando os dois parâmetros pelo Display LCD 16x2.
Dificuldade:
Montagem:
Programação:
Material Utilizado:
A Montagem
O Sketch
Não esqueça de importar a biblioteca para o Arduino: Biblioteca_Termistor
#include <LiquidCrystal.h> //Inclui a biblioteca do LCD
#include <Thermistor.h> //Inclui a biblioteca do Thermistor
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //Configura os pinos do Arduino para se comunicar com o LCD
Thermistor temp(0); //Configura o pino A0 para a leitura do Thermistor (0 = A0 / 1 = A1 / ...)
#define LDR A1 //Define LDR como A1
float luminosidade; //Variável para armazenar o valor da luminosidade
int amostra; //Variável para se guardar os valores das amostras da luminosidade
int temperatura; //Variavel para armazenar o valor da temperatura
void setup()
{
lcd.begin(16, 2); //Inicia o LCD com dimensões 16x2(Colunas x Linhas)
}
void loop()
{
temperatura = temp.getTemp(); //Pega a temperatura do Thermistor e armazena na variável temperatura em ºC
amostra = 0; //Zera a variável amostra
//Pega 1000 amostras
for(int i=0; i < 100 ; i++)
{
luminosidade = analogRead(LDR); //Armazena o valor lido pelo LDR
luminosidade = (luminosidade / 1024) * 100; //Transforma o valor lido em porcentagem
amostra = amostra + luminosidade; //Armazena na variável amostra
}
//=================
amostra = amostra/100; //Tira a média das amostras
lcd.setCursor(0,0); //Posiciona o cursor na primeira coluna(0) e na primeira linha(0) do LCD
lcd.print("Temperatura: "); //Imprime no LCD "Temperatura: "
lcd.print(temperatura); //Imprime o valor da temperatura
lcd.print("C"); //Imprime "C" indicando que está na escala Celsius
lcd.setCursor(0,1); //Posiciona o cursor na primeira coluna(0) e na segunda linha(1) do LCD
lcd.print("Luminosida.: "); //Imprime no LCD "Luminosida.: "
lcd.print(amostra); //Imprime o valor da luminosidade
lcd.print("%"); //Imprime "%" indicando que a luminosidade está em porcentagem
}