Go Down

Topic: Leggere input analogico e salvare sulla microsd (Read 1 time) previous topic - next topic

lesto

#15
Apr 05, 2011, 10:03 pm Last Edit: Apr 05, 2011, 10:04 pm by lesto Reason: 1
l'hai fatto anche per
inizializzazione SD 1:
inizializzazione SD 2:
??

se è solo il 3 che risponde 0, allora il problema è in quella classe, altrimenti in una delle precedenti

edit: certo che ci vorrebbe una chat stile FB per ste cose, mannaggia...
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

ratto93

non ho Fb xk odio i social net xò l'ho vista e si servirebbe:) ora riprovo...
Se corri veloce come un fulmine, ti schianterai come un tuono.

lesto

Code: [Select]

boolean SDClass::begin(uint8_t csPin) {
 /*

   Performs the initialisation required by the sdfatlib library.

   Return true if initialization succeeds, false otherwise.

  */
 boolean pass1, pass2, pass3;
 pass1 = card.init(SPI_HALF_SPEED, csPin);
 pass2 = volume.init(card);
 pass3 = root.openRoot(volume);
 Serial.print("inizializzazione SD 1:");
 Serial.println(pass1, BIN);
 if (!pass1){
   Serial.print("ERRORE inizializzazione SD 1:");
   Serial.print( card.errorCode() );
   Serial.print( " " );
   Serial.println( card.errorData() );
 }

 Serial.print("inizializzazione SD 2:");
 Serial.println(pass2, BIN);
 if ( !pass2 ){
   Serial.println("Errore init 2:\nThe value one, true, is returned for success and the value zero, false, is returned for failure.  Reasons for failure include not finding a valid partition, not finding a valid FAT file system in the specified partition or an I/O error.");
 }
 Serial.print("inizializzazione SD 3:");
 Serial.println(pass3, BIN);
 if (!pass3){
   Serial.println("Errore init 3:\nReasons for failure include \a fileName contains an invalid DOS 8.3 file name, the FAT volume has not been initialized, a file is already open, the file already exists, the root directory is full or an I/O error.");
 }
 return pass1 &&
        pass2 &&
        pass3;
}

prova con questo codice, cosa ti dice?
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

ratto93

Se corri veloce come un fulmine, ti schianterai come un tuono.

lesto

prova con l'ultimo codice, che ti da numero e tipo di errore... poi lo cerchi sul forum a vedere se c'è soluzione.

ps. Fb è ottimo per organizzare le grigliate al parco :)
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

ratto93


prova con l'ultimo codice, che ti da numero e tipo di errore... poi lo cerchi sul forum a vedere se c'è soluzione.

ps. Fb è ottimo per organizzare le grigliate al parco :)

solo per le gragliate.... :) si dai ti ringrazio intanto ci dormo su e poi riprovo... grazie ancora.....
Se corri veloce come un fulmine, ti schianterai come un tuono.

mastergov

hmmm
sto provando questo codice, per effettuare una lettura e inviarlo ad un file sulla microsd problemi di compilazione non ne da
ma il led non si accende mai quindi significa che cè qualcosa che non va, Ho detto al led di accendersi quando entra nel loop() e di spegnersi quando se ne esce ma niente rimane morto li
che ne pensate ?

Code: [Select]
   
    #include "SD.h"
    #define LED 13             
         
         
        void setup() { 
          Serial.begin(9600);
          pinMode(LED, OUTPUT);     
        } 
     
    void loop() {
       
             
         
      int sensorValue = analogRead(A0);
      int sensorValue2 = analogRead(A1);
     
      Serial.println(sensorValue, DEC);
      File dataFile = SD.open("datalog.txt", FILE_WRITE);
     
      if (dataFile) {
        dataFile.println(sensorValue,sensorValue2);
        dataFile.close();
         
         
         
     
    }
     
       digitalWrite(LED, HIGH);   
              delay(1000);       
     
      }


leo72

1) da loop() non puoi uscire. Come dice il nome è una funzione che viene eseguita all'infinito.
2) tu dovresti avere il led fisso acceso, stando al tuo codice.

Stilgar

Ciao,
se il file non vuoi mai chiuderlo, potresti imporre l'apertura nel setup().
Forse non riesce ad aprire il file e va in ciclo continuo in
Code: [Select]
File dataFile = SD.open("datalog.txt", FILE_WRITE);
A Console cosa vedi?

mastergov

no il led è sempre spento non acceso cmq perchè non Apriamo un canale IRCnet per Arduino italiano?



leo72

Domanda: tu apri una connessione seriale e come prima istruzione di loop() stampi a seriale una lettura. La vedi oppure no?

Go Up