Modul SD kartice s ESP8266: 6 koraka
Modul SD kartice s ESP8266: 6 koraka
Anonim
Image
Image
Modul SD kartice sa ESP8266
Modul SD kartice sa ESP8266
Modul SD kartice sa ESP8266
Modul SD kartice sa ESP8266

U ovom sklopu imamo SD karticu povezanu s ESP8266. Stavili smo DHT22, koji mjeri temperaturu i vlažnost i šalje te podatke na SD karticu.

Na kolu pokazuje vlažnost od 43,40 i temperaturu od 26,80. Svaki put kada prikaže poruku "uspješno otvaranje datoteke", to je zato što se jednom pokrenula u petlji. Ono što se događa u ovom scenariju je sljedeće: samo se vrijednosti zapisuju u datoteku dnevnika, pa je poruka "uspješno otvaranje datoteke" samo savjetodavna i ne bilježi se.

Korak 1: WiFi ESP8266 NodeMcu ESP-12E

WiFi ESP8266 NodeMcu ESP-12E
WiFi ESP8266 NodeMcu ESP-12E

Ovdje detaljno opisujemo komponentu koju koristimo, u ovom slučaju NodeMCU ESP12, zajedno s listom podataka tog uređaja.

Korak 2: Senzor vlažnosti

Senzor vlažnosti
Senzor vlažnosti

U nizu prikazujem detalje o ovoj drugoj komponenti, DHT22, s odgovarajućim zakačivanjem.

Korak 3: Modul SD kartice

Modul SD kartice
Modul SD kartice

Ovo je naš modul SD kartice. Kao što vidite iz pinout -a, to je sa SPI vezom.

Korak 4: Montaža

Montaža
Montaža

Dijagram montaže oslanja se na čitač, DHT22, NodeMCU ESP12. Odabrao sam ovo drugo jer mu je potrebna razumna količina IO -a. Stoga bi ESP01 također radio za ovu skupštinu.

Korak 5: Biblioteke

Biblioteke
Biblioteke

Za ovaj sklop potrebna vam je DHT biblioteka samog Arduino IDE -a. Samo idite na "Sketch> Include Library> Manage Libraries" dok preuzimate DHT. Morate učiniti istu stvar za SD biblioteku.

Korak 6: Izvorni kod

Izvorni kôd koji se koristi u sklopu je jednostavan i služi samo za prikaz rada SD kartice. Morate kasnije unijeti svu sofisticiranost, ali možete koristiti i druge bezbrojne mogućnosti. Međutim, ovo se ne odnosi na ovaj primjer.

// biblioteca responvel pela comunicação com o Cartão SD #include // biblioteca responvel pela comunicação com o senzoru DHT22 #include // pino de dados do DHT serig ligado no D6 do esp #define DHTPIN D2 // tipo do sensor #define DHTTYPE DHT22 // konstruktor radi objekta za komunikacijski com senzor DHT dht (DHTPIN, DHTTYPE); // Pino ligado ao CS to módulo SD Card #define CS_PIN D8;

Postaviti

U funkciji postavljanja započet ćemo komunikaciju našeg objekta sa senzorom i također inicijalizirati SD karticu.

void setup () {Serial.begin (9600); Serial.print ("Inicializando o cartão SD …"); // inicializacija o objektu para comunicarmos com o senzoru DHT dht.begin (); // provjerava se da li je SD memorijski uređaj predstavljen i podešen je da se inicializira ako (! SD.begin (CS_PIN)) {Serial.println ("Falha, provjeri se o spremnom está prezentacijskom."); // program encerrrado return; } // se chegou aqui é porque o cartão foi inicializado corretamente Serial.println ("Cartão inicializado."); }

Petlja

U petlji čitamo vlagu, vlažnost i temperaturu. Ovo je vrlo slično standardnom jeziku C.

// faz a leitura da umidade float umidade = dht.readHumidity (); Serial.print ("Umidade:"); Serial.println (umidade); // faz a leitura da temperatura float temperatura = dht.readTemperature (); Serial.print ("Temperatura:"); Serial.println (temperatura); Datoteka 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 sucesso."); // formatação no arquivo: linha a linha >> UMIDADE | TEMPERATURA dataFile.print (umidade); dataFile.print ("|"); dataFile.println (temperatura); // podaci o arkivu koji sadrže podatke dataFile.close (); } // se o arquivo não pôde ser aberto os dados não serão gravados. else {Serial.println ("Falha ao abrir o arquivo LOG.txt"); } // intervalo de espera para uma nova leitura dos dados. kašnjenje (2000); }