Pages: 1 [2]   Go Down
Author Topic: Leggere input analogico e salvare sulla microsd  (Read 1131 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Shannon Member
****
Karma: 132
Posts: 10501
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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...
« Last Edit: April 05, 2011, 03:04:50 pm by lesto » Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Monselice PD Italy
Offline Offline
Faraday Member
**
Karma: 28
Posts: 5515
фон Крыса
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

non ho Fb xk odio i social net xò l'ho vista e si servirebbe:) ora riprovo...
Logged

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

0
Offline Offline
Shannon Member
****
Karma: 132
Posts: 10501
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Code:
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?
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Monselice PD Italy
Offline Offline
Faraday Member
**
Karma: 28
Posts: 5515
фон Крыса
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Tutti e tre rispondono zero
Logged

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

0
Offline Offline
Shannon Member
****
Karma: 132
Posts: 10501
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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 smiley
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Monselice PD Italy
Offline Offline
Faraday Member
**
Karma: 28
Posts: 5515
фон Крыса
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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 smiley
solo per le gragliate.... smiley si dai ti ringrazio intanto ci dormo su e poi riprovo... grazie ancora.....
Logged

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

Offline Offline
Newbie
*
Karma: 0
Posts: 28
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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:
   
    #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);       
     
      }
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 333
Posts: 22973
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

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.
Logged


Urbana Padova
Offline Offline
Full Member
***
Karma: 0
Posts: 196
a piccoli passi.
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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:
File dataFile = SD.open("datalog.txt", FILE_WRITE);
A Console cosa vedi?
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 28
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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


Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 333
Posts: 22973
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

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


Pages: 1 [2]   Go Up
Jump to: