#include <OneWire.h> //Biblioteca do protocolo One Wire
#include <DallasTemperature.h> //Biblioteca de funções do sensor DS18B20
//Esse número 12 é o número do pino digital que eu conectarei o meu sensor.
OneWire oneWire(12); //Cria um objeto chamado oneWire para eu manipular suas funcionalidades ao longo do código
//Cria um objeto da classe DallasTemperature chamado SensorTemp,
//responsável por manipular o sensor de temperatura DS18B20. Ao criar
//o objeto SensorTemp, passamos a referência do objeto oneWire (isto é,
//&oneWire), para que a classe DallasTemperature saiba com qual objeto
//OneWire se comunicar.
DallasTemperature SensorTemp(&oneWire);
void setup()
{
//Inicializa a comunicação serial
Serial.begin(115200);
//Inicializa o sensor DS18B20
SensorTemp.begin();
}
void loop()
{
SensorTemp.requestTemperatures();
//Solicita ao sensor DS18B20 para realizar uma leitura da temperatura.
//Essa função manda um comando ao sensor, que coleta a temperatura atual
//e a armazena internamente, de modo que possamos acessá-la.
float temperatureC = SensorTemp.getTempCByIndex(0);
float temperatureF = SensorTemp.getTempFByIndex(0);
//Armazena a temperatura em graus Fahrenheit na variável temperatureF.
//A função getTempFByIndex(0) faz a mesma coisa que getTempCByIndex(0),
//mas converte o valor diretamente para Fahrenheit.
//Mostra as temperaturas no monitor serial
Serial.print(temperatureC);
Serial.println("ºC");
Serial.print(temperatureF);
Serial.println("ºF");
delay(5000);
}