תוכן עניינים:

מודול כרטיס SD עם ESP8266: 6 שלבים
מודול כרטיס SD עם ESP8266: 6 שלבים

וִידֵאוֹ: מודול כרטיס SD עם ESP8266: 6 שלבים

וִידֵאוֹ: מודול כרטיס SD עם ESP8266: 6 שלבים
וִידֵאוֹ: Making flash memory from SD Card 2024, יולי
Anonim
Image
Image
מודול כרטיס SD עם ESP8266
מודול כרטיס SD עם ESP8266
מודול כרטיס SD עם ESP8266
מודול כרטיס SD עם ESP8266

במכלול זה יש לנו כרטיס SD המחובר ל- ESP8266. שמנו DHT22, המודד טמפרטורה ולחות ושולח מידע זה לכרטיס ה- SD.

במעגל, הוא מראה לחות של 43.40 וטמפרטורה של 26.80. בכל פעם שהוא מציג את ההודעה "פתיחת הקובץ בהצלחה", זה בגלל שהוא רץ פעם אחת בלולאה. מה שקורה בתרחיש זה הוא כדלקמן: רק הערכים נכתבים לקובץ היומן, ולכן ההודעה "פתיחת הקובץ בהצלחה" היא רק המלצה, והיא אינה מוקלטת.

שלב 1: WiFi ESP8266 NodeMcu ESP-12E

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

כאן נפרט את הרכיב בו אנו משתמשים, במקרה זה את NodeMCU ESP12, יחד עם גליון הנתונים של המכשיר.

שלב 2: חיישן לחות

חיישן לחות
חיישן לחות

ברצף, אני מציג פרטים על רכיב אחר זה, DHT22, עם הצמדת ההתאמה.

שלב 3: מודול כרטיס SD

מודול כרטיס SD
מודול כרטיס SD

זהו מודול כרטיס ה- SD שלנו. כפי שאתה יכול לראות מה- pinout, זה עם חיבור SPI.

שלב 4: הרכבה

הַרכָּבָה
הַרכָּבָה

תרשים ההרכבה מסתמך על הקורא, ה- DHT22, ה- NodeMCU ESP12. בחרתי באחרון מכיוון שהוא צריך כמות סבירה של IOs. לפיכך, ה- ESP01 יפעל גם עבור הרכבה זו.

שלב 5: ספריות

ספריות
ספריות

להרכבה זו, אתה צריך את ספריית ה- DHT של ה- Arduino IDE עצמה. פשוט עבור אל "סקיצה> כלול ספרייה> נהל ספריות" תוך הורדת ה- DHT. אתה צריך לעשות את אותו הדבר עבור ספריית SD.

שלב 6: קוד המקור

קוד המקור המשמש בהרכבה הוא פשוט, וזה רק כדי להראות שכרטיס ה- SD פועל. עליך להכניס את כל התחכום מאוחר יותר, אך תוכל להשתמש בתכונות רבות אחרות. עם זאת, הדבר אינו חל על דוגמה זו.

// 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 DHT22 // מבצע לעשות objeto עבור comunicar com או חיישן DHT dht (DHTPIN, DHTTYPE); // pino ligado ao CS do módulo Card SD #define CS_PIN D8;

להכין

בפונקציית ההתקנה, נתחיל בתקשורת של האובייקט שלנו עם החיישן, וגם נתחיל את כרטיס ה- SD.

הגדרת void () {Serial.begin (9600); Serial.print ("Inicializando o cartão SD …"); // inicializa o objeto para comunicarmos com o sensor DHT dht.begin (); // verifica se o cartão SD está presente e se pode ser inicializado if (! SD.begin (CS_PIN)) {Serial.println ("Falha, verifique se o cartão está presente."); // programa encerrrado return; } // se chegou aqui é porque o cartão foi inicializado corretamente Serial.println ("Cartão inicializado."); }

לוּלָאָה

בלולאה אנו קוראים לחות, לחות וטמפרטורה. זה מאוד דומה לשפת 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 ("טמפרטורה:"); Serial.println (טמפרטורה); קובץ 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 (טמפרטורה); // fecha o arquivo após usá-lo dataFile.close (); } // se o arquivo não pôde ser aberto os dados não serão gravados. אחרת {Serial.println ("Falha ao abrir o arquivo LOG.txt"); } // intervalo de espera para uma nova leitura dos dados. עיכוב (2000); }

מוּמלָץ: