//024_02_20_Cartão SD e DB18S20 Copy

#include <SdFat.h>
#include <OneWire.h>            //Do sketch 2024_01_23_Lendo_DB18S20_v1
#include <DallasTemperature.h>//Do sketch 2024_01_23_Lendo_DB18S20_v1
 
SdFat sdCard;
SdFile meuArquivo;
 
// Pino ligado ao CS do modulo
const int chipSelect = 10;

//**********     Parte referente ao sketch 2024_01_23_Lendo_DB18S20_v1
const int PINO_ONEWIRE = 8;         // Estou usando o NANO então mudei p 8
OneWire oneWire(PINO_ONEWIRE);      // Cria um objeto OneWire
DallasTemperature sensor(&oneWire); // Informa a referencia da biblioteca dallas temperature para Biblioteca onewire
DeviceAddress endereco_temp;        // Cria um endereco temporario da leitura do sensor
//**********
void setup()
{
  Serial.begin(9600);
  //**********     Parte referente ao sketch 2024_01_23_Lendo_DB18S20_v1
  Serial.println("2024_02_19_Grava_Cartao_SD_V2");  //Inclui para identificar o programa
  Serial.println("Medindo Temperatura - DB18S20"); // Imprime a mensagem inicial
  
  sensor.begin(); ;                     // Inicia o sensor
  //********** 
  pinMode(A5, INPUT);       // Define o pino do potenciometro como entrada
  // Inicializa o modulo SD
  if(!sdCard.begin(chipSelect,SPI_HALF_SPEED))sdCard.initErrorHalt();   // Inicializa o modulo SD
  // Abre o arquivo Grava_temperatura.txt
  if (!meuArquivo.open("Grava_temperatura.txt", O_RDWR | O_CREAT | O_AT_END)) {    // Abre o arquivo LER_POT.TXT
    sdCard.errorHalt("Erro na abertura do arquivo Grava_temperatura.txt!");
  }
}
 
void loop()
{
  //**********     Parte referente ao sketch 2024_01_23_Lendo_DB18S20_v1
  sensor.requestTemperatures();               // Envia comando para realizar a conversão de temperatura
  if (!sensor.getAddress(endereco_temp,0)) { // Encontra o endereco do sensor no barramento
    Serial.println("SENSOR NAO CONECTADO"); // Sensor conectado, imprime mensagem de erro
  } else {
    Serial.print("Temperatura = "); // Imprime a temperatura no monitor serial
    Serial.println(sensor.getTempC(endereco_temp), 1); // Busca temperatura para dispositivo
  }
  delay(1000);
 
  meuArquivo.println("2024_02_19_Grava_Cartao_SD_V2");
  meuArquivo.print("Leitura Temperatura: ");
  meuArquivo.println(sensor.getTempC(endereco_temp));
  meuArquivo.close();
  while (1) {}
  
  delay(1000);
}
$abcdeabcde151015202530fghijfghij