Monselice PD Italy
Offline
Faraday Member
Karma: 15
Posts: 4919
фон Крыса
|
 |
« on: June 03, 2012, 02:59:28 pm » |
Sto usando la SD library, per logare dei dati letti in maniera analogica, ho però un problema, salva i dati ad intervalli troppo lunghi, mi salva i tre dati ogni circa un secondo ma vorrei aumentare la velocità di salvataggio, avete idee di come posso fare ? la SDfat lib non posso usarla perchè il mio ATmega funziona a 8MHz e mi da dei problemi.. Grazie in anticipo..
|
|
|
|
|
Logged
|
Se corri veloce come un fulmine, ti schianterai come un tuono.
|
|
|
|
Forum Moderator
Italy
Online
Brattain Member
Karma: 219
Posts: 16517
Don't know what I do
|
 |
« Reply #1 on: June 03, 2012, 03:15:51 pm » |
http://elm-chan.org/fsw/ff/00index_p.htmlPetit FAT FS E' limitata nelle funzioni ma ha un ridotto impatto sulle risorse, forse è anche più veloce. Non so. Considera comunque che molta della lentezza ce l'hai perché accedi ad un file system quindi la libreria deve scrivere i dati come file e non semplicemente riversandoli su una memoria. Potresti provare con una memoria Flash usandola proprio come... "memoria": esistono chip I2C di diversi MB.
|
|
|
|
|
Logged
|
|
|
|
|
Monselice PD Italy
Offline
Faraday Member
Karma: 15
Posts: 4919
фон Крыса
|
 |
« Reply #2 on: June 03, 2012, 03:21:27 pm » |
La ricordo la Petit Fs, me l'avevi consigliata con i tiny 84 ma non mi ci son trovato molto bene...  ad ogni modo ho trovato una soluzione.. questo era il codice di prova prima: #include <SD.h>
File file;
void setup() { Serial.begin(9600); SD.begin(10); file = SD.open("WR_TEST1.TXT", FILE_WRITE);
while(millis() < 1000); // delay so mills() is four digits
for (uint8_t i = 0; i < 100; i++) { file.println(millis()); } file.close(); }
void loop() {} sostituendo il FILE_WRITE con O_CREAT | O_WRITE la velocità di salvataggio aumenta esponezialmente !!!
|
|
|
|
|
Logged
|
Se corri veloce come un fulmine, ti schianterai come un tuono.
|
|
|
|
Monselice PD Italy
Offline
Faraday Member
Karma: 15
Posts: 4919
фон Крыса
|
 |
« Reply #3 on: June 03, 2012, 03:29:54 pm » |
Pardon, non salva correttamente, ora ci lavoro e scrivo eventuali novità
|
|
|
|
|
Logged
|
Se corri veloce come un fulmine, ti schianterai come un tuono.
|
|
|
|
Genova
Offline
Edison Member
Karma: 14
Posts: 2451
|
 |
« Reply #4 on: June 03, 2012, 03:50:43 pm » |
A questo tuo treadh "Possibile che SDfat vada ed SD.h no ???" http://arduino.cc/forum/index.php/topic,107093.msg805469.html#msg805469Ve beh, poi provo e ti so dire  Aspetto ancora risposta  Quindi come hai risolto? ciao
|
|
|
|
« Last Edit: June 03, 2012, 05:06:30 pm by pablos »
|
Logged
|
Meglio imparare dalle cose inutili piuttosto che non imparare niente. [Arduino Mega R3 + Ethernet shield W5100 + SD card 8Gb FAT32]
|
|
|
|
Lamezia Terme
Offline
Shannon Member
Karma: 386
Posts: 10285
Le domande di chi vuol imparare rappresentano la sua sete di sapere
|
 |
« Reply #5 on: June 03, 2012, 05:23:39 pm » |
Mi sa che ancora non ha risolto nemmeno lì, ad occhio i problemi mi sembrano sempre gli stessi; il nostro ratto93 deve ancora prendere la giusta dimestichezza con queste lib 
|
|
|
|
|
Logged
|
|
|
|
|
Monselice PD Italy
Offline
Faraday Member
Karma: 15
Posts: 4919
фон Крыса
|
 |
« Reply #6 on: June 04, 2012, 06:46:56 am » |
Ho risposto al vecchio thread  ora sono riuscito a farlo andare, ma non scrive ancora abbastanza velocemente... sono sui 3Hz (inteso come frequenza di salvataggio) e sono ancora troppo pochi.. l'inghippo sta tutto qui ( con questa sintassi apre o crea il file e scrive in coda i nuovi dati) : File dataFile = SD.open("datalog.txt", O_CREAT | O_WRITE | O_APPEND);
|
|
|
|
|
Logged
|
Se corri veloce come un fulmine, ti schianterai come un tuono.
|
|
|
|
0
Online
Tesla Member
Karma: 83
Posts: 8243
:(){:|:&};:
|
 |
« Reply #7 on: June 04, 2012, 08:42:39 am » |
non usare un filesystem ma scrivi i dati raw... certo però non uoi accederci direttamente dal PC, devi fare un paio di rigiri (copiare a basso livello l'immagine e poi aprire l'immagine in formato testo)
|
|
|
|
|
Logged
|
|
|
|
|
Monselice PD Italy
Offline
Faraday Member
Karma: 15
Posts: 4919
фон Крыса
|
 |
« Reply #8 on: June 04, 2012, 09:51:14 am » |
non usare un filesystem ma scrivi i dati raw... certo però non uoi accederci direttamente dal PC, devi fare un paio di rigiri (copiare a basso livello l'immagine e poi aprire l'immagine in formato testo)
potresti spiegarmi come funziona questa cosa ? Io alla fine ho bisogno di un file di testo con dei numeri separati da virgole su colonne.. per poi poterli lavorare con excel e similari..
|
|
|
|
|
Logged
|
Se corri veloce come un fulmine, ti schianterai come un tuono.
|
|
|
|
0
Online
Tesla Member
Karma: 83
Posts: 8243
:(){:|:&};:
|
 |
« Reply #9 on: June 04, 2012, 10:21:39 am » |
si, ma tu fregatene per ora. allora immagina la tua SD come un array di byte. La FAT dice che i primi X byte sono riservati per la tabella partizioni, e poi bisogna fare i blocchi da 521, etc.. etc..., e ogni aggiornamento va ad aggiornare un bel pò di tabelle spase per la SD.
se invece ce ne freghiamo di essere "plug and play", allora NON usiamo un file system, ma usiamo direttamente i byte della SD, esattamente come se fosse una EEPROM.. poi dovrai usare un programma per estrarre i dati "raw" (o l'immagine), ne esistono un bel pò, e linux ha dei comandi "incorporati" (dd per esempio). Estraendo i dati raw avrai un fine .img o senza estensione, ma se tu lo apri come se fosse un TXT, magicamente troverai tutti i tuoi dati. Certo, richiede un passaggio in più lato PC, però non è nè troppo complicato e praticamente istantaneo se ti fai uno script apposta (farsi il programma da soli mi sa che diventa complicato)
edit: cerca "read raw data SD" su gooogle e ti escono un bel pò di discussioni in giro per vari forum
|
|
|
|
|
Logged
|
|
|
|
|
Monselice PD Italy
Offline
Faraday Member
Karma: 15
Posts: 4919
фон Крыса
|
 |
« Reply #10 on: June 04, 2012, 10:35:05 am » |
Il problema lo vedo nel come salvare il dato tramite arduino 
|
|
|
|
|
Logged
|
Se corri veloce come un fulmine, ti schianterai come un tuono.
|
|
|
|
0
Online
Tesla Member
Karma: 83
Posts: 8243
:(){:|:&};:
|
 |
« Reply #11 on: June 04, 2012, 12:12:36 pm » |
che domande... apri SD.h e ci dai un'occhiata 
|
|
|
|
|
Logged
|
|
|
|
|
|
|
Monselice PD Italy
Offline
Faraday Member
Karma: 15
Posts: 4919
фон Крыса
|
 |
« Reply #13 on: June 04, 2012, 01:12:24 pm » |
La stavo giusto guardando per capirci qualcosa 
|
|
|
|
|
Logged
|
Se corri veloce come un fulmine, ti schianterai come un tuono.
|
|
|
|
|