Go Down

Topic: probleme ecriture sd (Read 142 times) previous topic - next topic

windaube21

bonjour a tous


mon but est sauvegarder des valeurs sur une sd mais l'Arduino arrête de fonctionner du moment que je tente d'écrire beaucoup sur une carte sd

quant je dit arrête de fonctionner elle se met a m'envoyer des "carrer" dans le serial avec le voyant tx allumer sur la carte

j'utilise la libraire sd pour ce fair


exemple de code qui fonctionne :

Code: [Select]

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

if (myFile)
{


myFile.print("valeur1 = ");
myFile.println(valeur1);

myFile.print("valeur2 = ");
myFile.println(valeur2);

myFile.close();


}








alor ce petit exemple fonctionne mais jusque a environ 20 -25 valeurs, si j'éssai de lui donner plus l'arduino ce met a beuger




j'ai essayer cree plusieur fichier pour répartir les information mais sans suces


au debut je pensai a une limitation a 30 ligne dans un fichier mais quant je fait ce code il m'ecri bien mes 32000 lignes


Code: [Select]


valeur = 0;

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

if (myFile)
{

for (int i=0;i<32000;i++){

myFile.print("valeur = ");
myFile.println(valeur);


valeur++;
}



myFile.close();


}







pour la petite hsitoire je déclare 140 "int" et j'aimerai exporter la valeur de ces 140 int sur une carte sd ( un export de conf en gros )

merci a vous

Alain46

Les exemples que tu fournis fonctionnent.

Faut-il que l'on devine le code que tu as écrit, et qui est censé ne pas fonctionner ?
Un programme qui se compile sans erreur n'est pas forcément un programme qui fonctionne.

windaube21

bonjour

effectivement cest deux codes fonctionnes mais pour le premier code je vais inscrire que deux valeur

si je met plusieur valeurs la la carte uno se met ma faire n'inpote quoi, j'ai un ecran hd44780 il freeze aussi


je sais pas si cest la ram de la carte arduino qui est a genoux ou si cest un buffer qui se vide pas mais dans tout les cas le probleme doit etre sans doute simple


pour le code il depasse les 9000 caractère donc je ne peut pas le publier ici


Code: [Select]

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

if (myFile)
{


myFile.print("valeur1 = ");
myFile.println(valeur1);

myFile.print("valeur2 = ");
myFile.println(valeur2);

myFile.print("valeu3 = ");
myFile.println(valeur3);

myFile.print("valeur4 = ");
myFile.println(valeur4);

// si je continue jusqu'a 40 environ la carte plantera

myFile.close();


}





Go Up