J'essaye de faire fonctionner ma carte ESP8266 Node MCU avec une carte micro sd 32 GO mais ça ne marche pas.
J'ai essayé avec ce simple code: Exemples -> SD(esp8266) -> Files
/*
SD card basic file example
This example shows how to create and destroy an SD card file
The circuit:
SD card attached to SPI bus as follows:
** MOSI - pin 11
** MISO - pin 12
** CLK - pin 13
** CS - pin 4
created Nov 2010
by David A. Mellis
modified 9 Apr 2012
by Tom Igoe
This example code is in the public domain.
*/
#include <SPI.h>
#include <SD.h>
File myFile;
void setup() {
// Open serial communications and wait for port to open:
Serial.begin(115200);
Serial.print("Initializing SD card...");
if (!SD.begin(4)) {
Serial.println("initialization failed!");
return;
}
Serial.println("initialization done.");
if (SD.exists("example.txt")) {
Serial.println("example.txt exists.");
} else {
Serial.println("example.txt doesn't exist.");
}
Le moniteur série affiche: [caractères illisibles]Initializing SD card...initialization failed!
la carte µSD peut ne pas apprécier le 5V ,....sauf si son embase est sur un sur un petit circuit imprimé possédant un régulateur de tension pour produire du 3,3V
Peux tu montrer (lien) le module intermédiaire utilisé entre carte NodeMCU et carte µSD ?
pour moi carte µSD c'est ça et il est rare qu'on relie ça directement à un ESP8266
Dans mon cas je n'ai jamais eu de problème avec ce genre de petit 'shield' monté sur des WEMOS D1 Mini : https://shop.mchobby.be/fr/wemos-lolin-esp/1201-microsd-shield-for-wemos-d1-3232100012011.html
par défaut CS y est sur D8. Avec ce shield la carte µSD est alimentée par le régulateur 3,3V de la carte D1 Mini et les signaux entre ESP8266 et carte µSD s'échangent directement en niveau 3,3V :
Avec le schéma de cet adaptateur on aurait sans doute une explication
As-tu autre chose de branché sur le bus SPI ?
certains adaptateurs pour carte µSD ne savent pas cohabiter sur ce bus
Sur une photo de client on voit CATALEX écrit au dos de la carte, les problèmes de cohabitation sur le BUS SPI étaient avec certains modèles de cette marque
Ton adaptateur possède son propre régulateur 3,3V et doit être alimenté en 5V (VCC)
Un circuit d'adaptation d e niveaux logiques y semble présent, il devrait donc à priori accepter de communiquer avec les signaux 3,3V de l'ESP826
Tout dépend de l'utilisation (il serait bien d'en parler), mais souvent, avec un ESP8266, il est bien plus intéressant de stocker les fichiers dans SPIFFS, ou LittleFS.
Si j'ai essayé avec D8 mais le résultat est le même que dans mon premier message.
Le module a été aussi testé en alimentation 5v.
Pour l'utilisation, c'était pour stocker un site web local avec des images. SPIFFS marche très bien avec mon ESP8266 mais c'est limité à 4mo de mémoire flash ce qui n'est pas suffisant pour mon utilisation.
Je teste maintenant avec un code plus simple pour être sur que l'erreur ne viendrait pas d'ailleurs que la carte SD.
Si 'on veut rester à l'ESP8266 avec un 'gros ' besoin de mémoire Flash , prendre une carte telle que la WEMOS/ LOLIN D1 Mini PRO (16MB, dont 15MB allouables à une système de fichiers , SPIFFS ou son successeur) https://www.wemos.cc/en/latest/d1/d1_mini_pro.html
(Sur certains sites il faut bien spécifier Mini D1 PRO 16M, cars ils vendent aussi ce qu'ils appellent 'D1MIni PRO 4M')