İçindekiler:

ESP8266 ile SD Kart Modülü: 6 Adım
ESP8266 ile SD Kart Modülü: 6 Adım

Video: ESP8266 ile SD Kart Modülü: 6 Adım

Video: ESP8266 ile SD Kart Modülü: 6 Adım
Video: sd модуль работа с файлами esp8266 Ардуино проекты. 2024, Temmuz
Anonim
Image
Image
ESP8266 ile SD Kart Modülü
ESP8266 ile SD Kart Modülü
ESP8266 ile SD Kart Modülü
ESP8266 ile SD Kart Modülü

Bu derlemede, ESP8266'ya bağlı bir SD Kartımız var. Sıcaklık ve nemi ölçen ve bu bilgiyi SD karta gönderen bir DHT22 koyduk.

Devrede 43.40 nem ve 26.80 sıcaklık gösteriyor. "Dosya başarıyla açılıyor" mesajını her gösterdiğinde, bunun nedeni döngüde bir kez koşmasıdır. Bu senaryoda gerçekleşen şudur: günlük dosyasına yalnızca değerler yazılmaktadır ve bu nedenle "dosya başarıyla açılıyor" mesajı yalnızca bir tavsiye niteliğindedir ve kaydedilmez.

1. Adım: WiFi ESP8266 NodeMcu ESP-12E

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

Burada kullandığımız bileşeni, bu durumda NodeMCU ESP12'yi, o cihazın veri sayfasıyla birlikte detaylandırıyoruz.

Adım 2: Nem Sensörü

Nem sensörü
Nem sensörü

Sırada, ilgili sabitleme ile bu diğer bileşen olan DHT22 ile ilgili ayrıntıları gösteriyorum.

Adım 3: SD Kart Modülü

SD Kart Modülü
SD Kart Modülü

Bu bizim SD Kart modülümüzdür. Pinout'tan da görebileceğiniz gibi, SPI bağlantılı.

Adım 4: Montaj

toplantı
toplantı

Montaj şeması, okuyucuya, DHT22'ye, NodeMCU ESP12'ye dayanır. İkincisini seçtim çünkü makul miktarda IO'ya ihtiyacı var. Böylece, ESP01 bu montaj için de çalışacaktı.

Adım 5: Kitaplıklar

Kütüphaneler
Kütüphaneler

Bu derleme için Arduino IDE'nin kendisinin DHT kitaplığına ihtiyacınız var. DHT'yi indirirken "Çizim> Kitaplığı Dahil Et> Kitaplıkları Yönet" seçeneğine gidin. Aynı şeyi SD Kitaplığı için de yapmanız gerekir.

Adım 6: Kaynak Kodu

Montajda kullanılan kaynak kodu basittir ve sadece SD Kartın çalıştığını göstermek içindir. Tüm gelişmişliği daha sonra eklemeniz gerekir, ancak diğer sayısız özelliği kullanabilirsiniz. Ancak bu, bu örnek için geçerli değildir.

//Kartvizit iletişim bilgileri için iletişim bilgileri SD#içerir // iletişim bilgileri iletişim sensörleri DHT22 #içerir // DHT ile ilgili bilgiler DHT ile ilgili bilgiler D6 iletişim bilgileri için #define DHTPIN D2 // sensör için sensörler #define #define DHTTYPE DHT // kurucu ortak iletişim için nesne yapmak sensör DHT dht(DHTPIN, DHTTYPE); //pino ligado ao CS modlu SD Kart #define CS_PIN D8;

Kurmak

Setup işlevinde, nesnemizin sensörle iletişimini başlatacağız ve ayrıca SD Kartı başlatacağız.

geçersiz kurulum(){ Serial.begin(9600); Serial.print("Incializando veya cartão SD…"); //comunicarmos com o nesnesi için nesnelleştirme DHT dht.begin(); // SD'yi doğrulamak için mevcut e se pode ser inicializado if (!SD.begin(CS_PIN)) { Serial.println("Falha, doğrulama se o cartão está sunum."); //programa encerrrado dönüşü; } // en uygun fiyata bakın Serial.println("Cartão incializado."); }

Döngü

Döngüde nem, nem ve sıcaklık okuruz. Bu, standart C diline çok benzer.

// bir leitura da umidade şamandıra umidade = dht.readHumidity(); Serial.print("Umidade: "); Serial.println(umidade); // bir boş zaman ve sıcaklık kayan nokta sıcaklığı = dht.readTemperature(); Serial.print("Sıcaklık: "); Seri.println(sıcaklık); Dosya dataFile = SD.open("LOG.txt", FILE_WRITE); // arquivo foi aberto corretamente, escreve os dados nele if (dataFile) { Serial.println("O arquivo foi aberto com sucesso."); //arquivo yok: linha ve linha >> UMIDADE | TEMPERATURA dataFile.print(umidade); dataFile.print(" | "); dataFile.println(sıcaklık); //bundan sonra bize veriFile.close(); } // arquivo não pôde ser aberto os dados não serão gravados. else { Serial.println("Falha ao abrir veya arquivo LOG.txt"); } //arada kalan zaman aralığı. gecikme(2000); }

Önerilen: