void Scrivi() {
dataFile = SD.open("datalog.txt", FILE_WRITE); //apre file csv
if(dataFile) {
// qui puoi assegna true alla tua variabile se serve.
} else {
Serial.println("Errore apertura file Datalog.txt");
delay(100);
return; // ritorna alla funzione chiamante
}
noInterrupts(); //d
Prima si chiama SD.open(...) il quale restituisce un file descrittore valido se l'apertura del file ha successo, diversamente il descrittore non contiene nulla e non entra in if (dataFile) ma dentro l'else.
Tuttavia i preferisco rimuovere l'else così:
void Scrivi() {
dataFile = SD.open("datalog.txt", FILE_WRITE); //apre file csv
if(! dataFile) {
Serial.println("Errore apertura file Datalog.txt");
delay(100);
return; // ritorna alla funzione chiamante
}
noInterrupts(); //d
Ciao.