problema nella scrittura su SD nel loop

Salve
mi serviva acquisire dati da una porta analogica e memorizzarli su una micro SD , ma ho un problema nello sketch , quello che pensavo di fare era aprire il file per la scrittura nel setup poi scrivere ogni T secondi ed in fine stoppare tutto tramite un pulsante.
ora questo è solo un abbozzo varie cose vanno sistemate , ma l'errore che mi da è:

Potenza-SD:30: error: 'myFile' does not name a type

myFile = SD.open("potenza.txt" , FILE_WRITE);

^

exit status 1
'myFile' does not name a type

questo è lo sketch

#include <SPI.h>
#include <SD.h>

float Vs;
float Vmax=0;
float Vmin=5;
byte Apin1=A7;
byte n=0;
byte in1=3;
byte ing1=1;
byte ou1=2;
File myFile;

void setup() {

pinMode(ou1,OUTPUT);
pinMode(in1,INPUT);
pinMode(53,OUTPUT);
Serial.begin(9600);
//-----------inizializzazione---------------
 Serial.print("Initializing SD card...");

  if (!SD.begin(53)) {
    Serial.println("initialization failed!");
    return;
  }
  Serial.println("initialization done.");
}
myFile = SD.open("potenza.txt" , FILE_WRITE);

void loop() {

  for(n=0;n<50;n++){
  Vs=analogRead(Apin1)*0.00489;
  if(Vs>Vmax){
    Vmax=Vs;
    }else
      if(Vs<Vmin){
      Vmin=Vs;
      }
      delayMicroseconds(900);
   }
Vs=(Vmax-Vmin)*2333.45;//potenza apparente in W

if (myFile) {
    Serial.print("Writing to file...");
    myFile.println(Vs);
  } else {
    Serial.println("error opening for writeing file");
  }


Vmax=0;
Vmin=5;

digitalWrite(ou1,HIGH);
delay(5000);
digitalWrite(ou1,LOW);
if (ing1==LOW)
  {
   while (ing1==LOW)
    {
     ing1=digitalRead(in1);
    }
    
if (myFile) {
  myFile.close();
  } else {
    Serial.println("error closing file");
  }

    Serial.println("done.");
    digitalWrite(ou1,HIGH);
    delay(1000);
    digitalWrite(ou1,LOW);
    delay(10000);
  }

}

Ti sei accorto di DOVE hai inserito quella riga?

si :cold_sweat:

ho risolto inserendola nel loop .

Sarò monotono, ma errori di questo tipo si risolvono INDENTANDO il codice (o facendolo indentare automaticamente dall'IDE con Ctrl-T).

Se lo avessi fatto ti saresti immediatamente accorto del problema in 2 secondi, senza sbatterci la testa fino ad arrivare a scrivere nel forum... :wink:

docdoc:
Sarò monotono, ma errori di questo tipo si risolvono INDENTANDO il codice (o facendolo indentare automaticamente dall'IDE con Ctrl-T).

Se lo avessi fatto ti saresti immediatamente accorto del problema in 2 secondi, senza sbatterci la testa fino ad arrivare a scrivere nel forum... :wink:

Docdoc l indenta tutto ;D