Table des matières:

Module de carte SD avec ESP8266 : 6 étapes
Module de carte SD avec ESP8266 : 6 étapes

Vidéo: Module de carte SD avec ESP8266 : 6 étapes

Vidéo: Module de carte SD avec ESP8266 : 6 étapes
Vidéo: SD Card Module with Arduino & ESP32, Arduino Data Logger, ESP32 Data Logger, Micro SD Card Adaptor 2024, Juillet
Anonim
Image
Image
Module de carte SD avec ESP8266
Module de carte SD avec ESP8266
Module de carte SD avec ESP8266
Module de carte SD avec ESP8266

Dans cet assemblage, nous avons une carte SD connectée à l'ESP8266. Nous mettons un DHT22, qui mesure la température et l'humidité et envoie ces informations à la carte SD.

Sur le circuit, il affiche une humidité de 43,40 et une température de 26,80. Chaque fois qu'il affiche le message "ouverture du fichier avec succès", c'est parce qu'il s'est exécuté une fois dans la boucle. Ce qui se passe dans ce scénario est le suivant: seules les valeurs sont écrites dans le fichier journal et, par conséquent, le message « ouverture du fichier avec succès » n'est qu'un avis et il n'est pas enregistré.

Étape 1: Wi-Fi ESP8266 NodeMcu ESP-12E

Wi-Fi ESP8266 NodeMcu ESP-12E
Wi-Fi ESP8266 NodeMcu ESP-12E

Nous détaillons ici le composant que nous utilisons, dans ce cas le NodeMCU ESP12, ainsi que la fiche technique de cet appareil.

Étape 2: Capteur d'humidité

Capteur d'humidité
Capteur d'humidité

Dans la séquence, je montre des détails sur cet autre composant, le DHT22, avec l'épinglage respectif.

Étape 3: Module de carte SD

Module de carte SD
Module de carte SD

C'est notre module de carte SD. Comme vous pouvez le voir sur le brochage, il s'agit d'une connexion SPI.

Étape 4: Assemblage

Assemblée
Assemblée

Le schéma de montage s'appuie sur le lecteur, le DHT22, le NodeMCU ESP12. J'ai choisi ce dernier car il nécessite une quantité raisonnable d'E/S. Ainsi, l'ESP01 fonctionnerait également pour ce montage.

Étape 5: Bibliothèques

Bibliothèques
Bibliothèques

Pour cet assemblage, vous avez besoin de la bibliothèque DHT de l'IDE Arduino lui-même. Allez simplement dans "Esquisse> Inclure la bibliothèque> Gérer les bibliothèques" lorsque vous téléchargez le DHT. Vous devez faire la même chose pour la bibliothèque SD.

Étape 6: Code source

Le code source utilisé dans l'assemblage est simple, et c'est juste pour montrer que la carte SD fonctionne. Vous devez insérer toute la sophistication plus tard, mais vous pouvez utiliser d'autres fonctionnalités innombrables. Cependant, cela ne s'applique pas à cet exemple.

//biblioteca responsável pela comunicação com o Cartão SD#include //biblioteca responsável pela comunicação com o sensor DHT22 #include // pino de dados do DHT será ligado no D6 do esp #define DHTPIN D2 // tipo do sensor #define DHTTYPE DHTTYPE // construtor do objeto para comunicar com o sensor DHT dht(DHTPIN, DHTTYPE); //pino ligado ao CS do modulo SD Card #define CS_PIN D8;

Installer

Dans la fonction de configuration, nous allons démarrer la communication de notre objet avec le capteur, et également initialiser la carte SD.

void setup(){ Serial.begin(9600); Serial.print("Inicializando o cartão SD…"); //initializa o objeto para comunicarmos com o sensor DHT dht.begin(); // vérifier si la carte SD est présentée et si elle est lancée si (!SD.begin(CS_PIN)) { Serial.println("Falha, verifique si la carte est présentée."); //programa encerrrado return; } //se chegou aqui é porque o cartão fo inicializado corretamente Serial.println("Cartão inicializado."); }

Boucle

Dans la boucle, nous lisons l'humidité, l'humidité et la température. Cela ressemble beaucoup au langage C standard.

//faz a leitura da umidade float umidade = dht.readHumidity(); Serial.print("Umidade: "); Serial.println(umidade); //faz a leitura da temperature float temperature = dht.readTemperature(); Serial.print("Température: "); Serial.println(température); Fichier dataFile = SD.open("LOG.txt", FILE_WRITE); // se o arquivo foi aberto corretamente, escreve os dados nele if (dataFile) { Serial.println("O arquivo foi aberto com successo."); //formatação no arquivo: linha a linha >> UMIDADE | TEMPERATURA dataFile.print(umidade); dataFile.print(" | "); dataFile.println(température); //fecha ou arquivo após usá-lo dataFile.close(); } // se o arquivo não pôde ser aberto os dados não serão gravados. else { Serial.println("Falha ao ouvrir ou arquivo LOG.txt"); } //Intervalo de espera para uma nova leitura dos dados. retard (2000); }

Conseillé: