Auparavant j'utilisait les µC Pics que je programmais en C et assembleur.
L'environnement arduino me plait bien :
Facilité et rapidité d'écriture du code
µC Atmel 328 puissant
Utilisation possible d'interruptions externes sans gros soucis
Actuellement, étant aéromodéliste, je termine un projet de logger permettant de mesurer tension et intensité, puis de stocker les mesures sur carte SD. (Je développe avec un arduino Uno bien robuste et finalise le proto avec un arduino nano et µC Atmel 328)
Ma question sera la suivante :
" j'utilise la bibliothèque SD standart, mon logger fonctionne avec des µSD de 4GO mais pas avec celles de capacité > 4GO que je possède"
Or les capacités 2 et 4 GO commencent à se faire rare ....
Merci pour les indications, je me demandais seulement s'il existait une autre bibliothèque que celle standard mais qui accepterais les cartes de capacité supérieure à 4Go.
Effectivement, je viens de regarder les options de formatage, par défaut c'est 32kO sur mon PC.
C'est modifiable, mais l'option mini est de 2048 Octets et comme pour l'Atmel 328 la mémoire dynamique totale est justement de 2048 Octets je n'aurais d'autre solution que de prendre des cartes de 2 ou 4 Go moins "gourmandes".
Bon projet, J'ai en effet travailler sur un projet similaire (mésure de tension et intensité avec l'arduino pour commander des relais). Cependant pourrions nous en discuté pour le partage d'expérience.
Charli:
Bon projet, J'ai en effet travailler sur un projet similaire (mésure de tension et intensité avec l'arduino pour commander des relais). Cependant pourrions nous en discuté pour le partage d'expérience.
pepe:
Par acquis de conscience, j'ai remonté un lecteur SD sur un Arduino Uno (interface SPI), et j'ai pu utiliser avec succès une carte SDHC SanDisk de 16 Go.
...........................
Merci d'avoir vérifié, je pense quand même que cette histoire de 4Go correspond à quelque chose puisque j'ai lu quelque part un sujet qui en parlait.
Maintenant j'ai rencontré ce problème deux fois : sur µSD soit sur une SD "format normal"
Au passage, j'ai constaté que l'exemple "CardInfo" fourni dans l'IDE donnait des résultats incorrects. En effet, la taille du volume retournée est calculée sur 32 bits, alors qu'il en faudrait au minimum 34 pour ne pas faire de dépassement de capacité (16G = 234).
Pas de chance, car justement pour vérifier une carte dans un environnement minima, j'utilisais cela.
Il faudrait donc connaître plus précisément la situation afin de découvrir la raison pour laquelle tes cartes 4Go fonctionnent, mais pas celles de capacité supérieure.
J'en suis bien conscient, pour l'instant j'ai deux proto qui fonctionnent bien avec une "ancienne" 2GO et une µSD récente 4 Go.
Sans doute que l'origine se situe quelque part au niveau du formattage.
Merci de m'avoir permis d'avancer, quand mon projet actuel sera bien finalisé, je tenterai d'éclaircir tout cela.
pepe:
La limitation de la taille du volume se situe plutôt à 2 Go pour la FAT16, correspondant aux clusters de 32 Ko maxi. Dans l'absolu, certains systèmes FAT16 supportent 4 Go avec des clusters de 64 Ko, mais ce n'est pas conseillé par soucis de compatibilité.
Sinon, dans les systèmes FAT, les 4 Go correspondent aussi à la taille maximale d'un fichier.
Bon, c'est résolu.
J'ai téléchargé un formateur de SD, opéré un formatage de ma µSD de 8Go et tout s'est bien passé.
Maintenant mon arduiino nano (Atmel 328) peut lire et écrire sur cette carte.
Grand Merci à pépé qui à su me mettre sur la bonne piste.
S.D
PS : Je voulais vous faire parvenir le schéma de mon proto, maus je ne sais pas (encore?) joindre un fichier au post
L'Arduino Nano disposant déjà d'un régulateur 5V intégré (µA78M05), y a-t-il une raison particulière pour que tu utilises un régulateur 78L05 extérieur ?
Très bonne question. je vais tenter des réponses :
Je n'en suis qu'au stade essai sur boite de connexion, on verra pour le proto, mais quand même ....
----- 1 Pour des mesures analogiques un peu précises, on a intérêt à ce que la tension +5V soit la plus stable possible car elle est utilisée par défaut comme référence pour le CAN interne au µC
Donc il ne faut pas trop solliciter le régulateur interne à la carte nano
----- 2 Pour des tensions destinées à l'alimentation 5V, comme le régulateur interne est "petit" il faut éviter des tensions trop élevées au delà de 9V à cause d'une dissipation thermique très limitée pour la carte nano.
----- 3 Justement, le proto définitif sera utilisé en " nomade" sur un terrain d'aéromodélisme ou les batteries lithium sont disponibles facilement pour l'alimentation, mais avec des tensions éventuellement élevées (12V, 18V ...)
----- 4 l'ajout d'un régulateur externe 7805 en boitier T0220 laisse deux éventualités ouvertes :
mettre un petit refroidisseur en alu si la conso doit être élevée
mettre un électrochimique "Low esr" de capacité plus élevée si nécessaire pour un filtrage efficace. (Actuellement par défaut j'ai mis un 100 µF)
Bon le proto n'est pas définitif, il faudrait aussi déplacer l'inter de validation d'écriture (Inter) vers une E/S digitale avec résistance de rappel et ainsi gagner un composant (retirer R2); il y a une Led permettant de visualiser le mode "écriture ou lecture"; cette led ne figure pas encore sur le schéma .... etc ... etc
On s'écarte du sujet .... j'y revient doucement :
il y a plusieurs fichiers nommés 0.Watt; 1.Watt .... etc et les données sont archivées successivement dans ces fichiers *.Watt.
Au moment de l'écriture, le n° du fichier actif est bipé.
(Comme je ne possède pas d'horloge temps réel, je ne peux pas mettre à jour l'heure du fichier)
Y aurait-il une ruse possible pour contourner cela?