Pages: [1] 2   Go Down
Author Topic: >> Résolu << : MEGA + lecteur de carte SD "LC studio" ne fonctionnent pas...  (Read 5533 times)
0 Members and 1 Guest are viewing this topic.
Lormaison
Offline Offline
Newbie
*
Karma: 0
Posts: 48
Omnes vulnerant, ultima necat !
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


The same post in English at http://arduino.cc/forum/index.php/topic,125973.new.html#new

Bonjour à tous,

Lorsque j'ai commencé à travailler sur ce lecteur de carte SD, je pensais en avoir pour une quinzaine de minute à lancer le tout et quelque heures pour maitriser l'ensemble des fonctionnalités offertes par la libraire SD.h.
Sans doute y a t-il une info qui m'échappe car j'y suis depuis des heures et rien ne fonctionne. Pour le simple test de carte, j'obtiens invariablement le message suivant sur le mini terminal :


Initialisation de la carte SD... Echec de l'initialisation. Penser à vérifier les points suivants :
* Une carte SD est-elle insérée ?
* Votre câblage est-il correct ?
* Avez-vous modifié le shipSelct pour correspondre à votre micro-contrôleur ?


Le programme dans l'ATMEGA 2560 de la MEGA est celui fournis en exemple, accessible par Fichier/Exemples/SD/cardinfo de la version 1.0.1 d' ARDUINO.

Le code modifié pour le MEGA devient :

Code:
#include <SD.h>

Sd2Card card;
SdVolume volume;
SdFile root;

const int chipSelect = 6;    
//const int chipSelect = 53;    

void setup()
{
  Serial.begin(9600);
   while (!Serial) {     ; // wait for serial port to connect. Needed for Leonardo only  }

  Serial.print("\nInitializing SD card...");
  // On the Ethernet Shield, CS is pin 4. It's set as an output by default.
  // Note that even if it's not used as the CS pin, the hardware SS pin
  // (10 on most Arduino boards, 53 on the Mega) must be left as an output
  // or the SD library functions will not work.
  pinMode(53, OUTPUT);     // 10 change this to 53 on a mega
  pinMode(chipSelect, OUTPUT);     // ICI : Tentative avec une autre pin (6) au hasard

  if (!card.init(SPI_HALF_SPEED, chipSelect)) {    Serial.println("initialization failed. Things to check:");
...
etc

J'ai fais un échange de carte MEGA,... un échange de carte SD (64Mo au départ et 32Go en second choix),... un echange de pin pour le Chip select CS (Pin 53 à la base pour le MEGA puis Pin 6 au hasard ensuite), puis fini vu le signal scope par mettre CS à la masse en hard,... J'alimente les cartes avec l'USB et comme on peut le voir sur les scopes, les tensions restent à peu près stable et nominales,... j'ai alimenté en 5 ou en 3,3V.

Je n'ai pas mis de résistance et de transistor d'adaptation 5V/3,3V et 3,3V/5V  comme on le voit parfois sur le net. Je ne suis pas sans savoir que 70% à 90% de ce que l'on trouve sur la toile est à jeter mais je m'attend à beaucoup mieux de la part d'électroniciens, même amateurs.

La connectique est la suivante :
MEGA pin 50 --> miso   (Master In) du lecteur de carte "LC studio"
MEGA pin 51 --> mosi   (Master Out)
MEGA pîn 52 --> sck     (Serial Clock)
MEGA pin 53 NC au final
MEGA pin 6 --> CS (Chip Select) puis à rien au final (CS lecteur à la masse)

Au Final,... le sempiternel message d'échec ci-dessus rappelé.

J'ai entrepris de cerner le problème avec un oscilloscope dont je livre quelques captures ci-dessous.

Ce qui m'étonne dans un premier temps est la différence de timing entre la pin 6 que j'ai sélectionne pour CS en programme et la réponse de la pin 53. (1ier scope)
En second, l'aspect du signal pin 6 en charge sur CS de la carte SD (quelle qu'elle soit).(2ième scope)
On voit sur le 4ième scope que l'horloge série est envoyée. Sur le 5ième et 6iémé que l'alim 3,3V ou bien 5V est à peut près correcte.
On voit sur le 7ièmé scope que l'Atmega entame une transaction avec la SD card (MOSI en pin 51).
On voit sur les 8ième et 9ième scopes que la SD répond sur MISO et le détail des mots échangés en scopes 10 & 11.

On peut trouver une expérience quasi similaire (avec un DueMilaNove) ici : http://electroniqueamateur.blogspot.fr/2012_06_01_archive.html mais en ce qui me concerne, bien que la carte SD puisse être indifféremment mise d'une face ou de l'autre, j'ai préféré mettre les bornes de la SD en contact avec les... contacts.

L'ordi que j'utilise est sous Windows 7. Il m'a servi a formater mes cartes SD en FAT,... FAT 16 par défaut d'indication j'imagine.

Je suis preneur de toute info nouvelle, de résultat d'expérience ou d'idée constructive et vous en remercie par avance.

Cordialement.


NB :bon descriptif du lecteur : http://babelduck.com/index.php/en/reference/user-manuals/1422-sd-card-module-user-manual


* SD reader LC Studio.JPG (25.47 KB, 730x439 - viewed 61 times.)

* Scope 00@11.JPG (415 KB, 730x6000 - viewed 64 times.)
« Last Edit: October 13, 2012, 10:56:26 pm by LibertyCareche » Logged

Quidquid agis, prudenter agas, et respice finem !

Forum Moderator
Geneva
Offline Offline
Faraday Member
*****
Karma: 30
Posts: 3231
Yoplait... le pt'it suisse
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

La carte Sd, n'est peut être pas formatée au bon format.
Il y a une possibilité de la formater avec la librairie SDfat.
Logged

MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

0
Offline Offline
Newbie
*
Karma: 0
Posts: 22
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

http://electroniqueamateur.blogspot.fr/2012/06/carte-sd-et-arduino.html

Tien essaye ça, je vais essayer cette aprem moi.
Je te tien au courant si je le fait avant toi.
Cordialement

EDIT: Sa marche chez moi sachant que j'avais le meme soucis que toi hier lol.
« Last Edit: October 05, 2012, 06:34:39 am by Snyp » Logged

Forum Moderator
Geneva
Offline Offline
Faraday Member
*****
Karma: 30
Posts: 3231
Yoplait... le pt'it suisse
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Est ce que tu peux enlever le lien Ebay (cf la charte), merci.
Logged

MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Lormaison
Offline Offline
Newbie
*
Karma: 0
Posts: 48
Omnes vulnerant, ultima necat !
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Merci pour votre réactivité.

_ Jean-François,
    mes cartes sont formatées en FAT sous Windows 7.  Quand W7 indique FAT je pense qu'il s'agit de FAT16 !?
    Je viens d'ajouter cet oubli dans la description du problème.
    Le lien déconseillé a été suprimé... désolé. J'ai pourtant lu la charte mais bon... smiley

_ Snyp,
    merci de me renvoyer une URL déja dans le descriptif du problème.
    Du coup je ne suis pas sure que tu as vu les éléments du problème.

Logged

Quidquid agis, prudenter agas, et respice finem !

Forum Moderator
Geneva
Offline Offline
Faraday Member
*****
Karma: 30
Posts: 3231
Yoplait... le pt'it suisse
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Essaye avec cette  librairie :

http://code.google.com/p/sdfatlib/downloads/list

Apparemment c'est du fat32 qu'il faut (sans certitude)

Pour le lien, tu peux mettre une photo et un descriptif à la place  smiley-wink
« Last Edit: October 05, 2012, 10:30:45 am by Jean-François » Logged

MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

0
Offline Offline
Newbie
*
Karma: 0
Posts: 22
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Désolé, autant pour moi smiley-confuse
Je viens d'essayer sur ma mega et sa ne marche pas alors que sur ma duemilanove cela marche  smiley-evil.
Je te tien au courant si je trouve quelques choses
Logged

Forum Moderator
Geneva
Offline Offline
Faraday Member
*****
Karma: 30
Posts: 3231
Yoplait... le pt'it suisse
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset


La connectique est la suivante :
MEGA pin 50 --> miso   (Master In) du lecteur de carte "LC studio"
MEGA pin 51 --> mosi   (Master Out)
MEGA pîn 52 --> sck     (Serial Clock)
MEGA pin 53 NC au final
MEGA pin 6 --> CS (Chip Select) puis à rien au final (CS lecteur à la masse)


Sur ma Mega ce sont les pin de 50 à 53 (incluses) qui sont utilisée et pas la 6.

Ici un code de tom Igoe avec les mêmes pin que chez moi :

http://www.bajdi.com/arduino-mega-2560-and-sd-card-modul/
« Last Edit: October 05, 2012, 11:40:49 am by Jean-François » Logged

MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Lormaison
Offline Offline
Newbie
*
Karma: 0
Posts: 48
Omnes vulnerant, ultima necat !
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Le pin 53 doit être en out pour que l'ATMEGA soit en mode Maitre. mais rien n'oblige de l'utiliser. On peut par exemple sélectionner plusieurs carte en parallèle sur miso mosi. Les oscillogrammes le montrent par ailleurs, le pin 53 réagit et le 6 aussi juste par instruction de la bibliothèque SD. Troisième élément, je n'oublie pas que je vois le Maitre "coser" et l'esclave lui répondre. Alors... la transaction ne se déroule pas comme il faut... ou-bien (j'y crois moins) il y a un bug dans la biblio...
« Last Edit: October 06, 2012, 09:24:55 pm by LibertyCareche » Logged

Quidquid agis, prudenter agas, et respice finem !

Lormaison
Offline Offline
Newbie
*
Karma: 0
Posts: 48
Omnes vulnerant, ultima necat !
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

J'ai commencé à mettre en doute la véracité du descriptif du lecteur de Carte SD. L'examen du circuit imprimé révèle qu'il y a quatre résistance de 10Ko de tirage (pull up) (http://fr.wikipedia.org/wiki/R%C3%A9sistance_de_tirage) au Vcc de 3,3V. Le 3,3 V peut être alimenté directement ou en 5V car il y a un régulateur AMS1117 (http://bbs.ednchina.com/images/attachments/201208/20120831094241621.pdf) implanté sur la carte (avec les condensateurs "qui vont bien").

L'oscillogramme n°2 (cf. photo orange très haute) indique qu'une tension ... "bizarre" se produit quand le pin 53 ... ou 6 essaye de commander le CS de la SD card.

Il me semble que de tels signaux n'indiquent rien de bon quand au comportement de l'ensemble. Je cherche là-dessus...
« Last Edit: October 06, 2012, 09:26:04 pm by LibertyCareche » Logged

Quidquid agis, prudenter agas, et respice finem !

Ile-de-France (92 sud), France
Offline Offline
Edison Member
*
Karma: 24
Posts: 2055
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

comment est faite l'adaptation 5V/3V3 des signaux SPI sur cette carte ?
Logged

Barbuduino: Arduino sur Breadboard & VinciDuino: Clone Leonardo // WR703: Mini-routeur hacké // LauchPad MSP430 et Stellaris // Panda II Arduino-like .NetMF sous VisualC#
RTFC: Read That F.....g Code / RTFD: Read That F.....g Doc / RTFDS: Read That F.....g DataSheet / RTFS: Read That F.....g Schematic / Wot da ya wanna D.I.Y. today ?

Lormaison
Offline Offline
Newbie
*
Karma: 0
Posts: 48
Omnes vulnerant, ultima necat !
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Il n'y a pas d'adaptation (cf. 7ième ligne du problème)

Il semble que beaucoup de description de la toile s'en passe aussi aberrant que cela paraisse (cf. schéma trouvé sur la toile parmi d'autres). Si le problème persiste, Trois pont diviseur et un ampli transistor en base commune devraient suffire...



* 2059aeef.jpg (26.18 KB, 436x326 - viewed 55 times.)
« Last Edit: October 05, 2012, 03:19:47 pm by LibertyCareche » Logged

Quidquid agis, prudenter agas, et respice finem !

0
Offline Offline
Newbie
*
Karma: 0
Posts: 22
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Alors pourquoi cela marcherais bien sur une duemilanove?
Logged

Lormaison
Offline Offline
Newbie
*
Karma: 0
Posts: 48
Omnes vulnerant, ultima necat !
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

C'est là le point crucial de la question smiley
Tolérance des SD et DueMilaNove... !?
« Last Edit: October 06, 2012, 09:26:37 pm by LibertyCareche » Logged

Quidquid agis, prudenter agas, et respice finem !

Forum Moderator
Geneva
Offline Offline
Faraday Member
*****
Karma: 30
Posts: 3231
Yoplait... le pt'it suisse
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Est ce que tu as lu ce topic ?

http://arduino.cc/forum/index.php/topic,75761.0.html
Logged

MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Pages: [1] 2   Go Up
Jump to: