nodemcu esp8266

Furkan123

Yeni Üye
Katılım
20 Mart 2024
Mesajlar
1
merhaba,
arduino ide de kodu derlediğimde herhangi bir hata vermemektedir fakat esp8266ya kodu attığımda seri port ekranında semboller çıkmakta ve çalışmamaktadır. farklı bir kod attığımda esp8266 çalışıyor sorun yok fakat aşağıdaki kodu attığımda bu şekilde seri port ekranında gözüküyor
Kod:
#include<Wire.h>
#include <ESP8266WiFi.h>
#include<FirebaseESP8266.h>
#include <DHT.h>
#include <NTPClient.h>
#include <WiFiUdp.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
FirebaseData fbdo;
// Set these to run example.
#define FIREBASE_HOST "esp8266dht11-e314e-default-rtdb.asia-southeast1.firebasedatabase.app"
#define FIREBASE_AUTH "eAqiJmuJDp8Uz1lDaQjg88EVmDb8Qj1qAHdOJtBh"
#define WIFI_SSID "TurkTelekom1"
#define WIFI_PASSWORD "fenerbahce34"
#define DHTPIN 2                                           // Digital pin connected to DHT11
#define DHTTYPE DHT11                                        // Initialize dht type as DHT 11
DHT dht(DHTPIN, DHTTYPE);

const long utcOffsetInSeconds = 5 * 3600 + 30 * 60;
char daysOfTheWeek[7][12] = {"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"};

// Define NTP Client to get time
WiFiUDP ntpUDP;
NTPClient timeClient(ntpUDP, "asia.pool.ntp.org", utcOffsetInSeconds);

void setup() {
  Serial.begin(115200);
  lcd.begin(16,2);
  lcd.backlight();
  lcd.clear();
  dht.begin();
  timeClient.begin();
  lcd.setCursor(1, 0);
  lcd.print("Connecting..");
  // connect to wifi.
  WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
  }
  lcd.clear();
  lcd.setCursor(1, 0);
  lcd.print("Connected: ");
  lcd.setCursor(1, 1);
  lcd.print(WiFi.localIP());
  delay(5000);
  Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
  lcd.clear();
}


void loop() {
  {
    int h = dht.readHumidity();                                 // Read Humidity
    int t = dht.readTemperature();                              // Read temperature

    if (isnan(h) || isnan(t))                                     // Checking sensor working
    {
      Serial.println(F("Failed to read from DHT sensor!"));
      return;
    }
    timeClient.update();

    String day = daysOfTheWeek[timeClient.getDay()];
    String formattedTime = timeClient.getFormattedTime();
    String formattedDayTime = String(day) + String(",") + String(formattedTime);
    String fireHumid = formattedDayTime   + String(": ") + String(h) + String("%");           //Humidity integer to string conversion
    String fireTemp =  formattedDayTime   + String(": ") + String(t) + String("°C");           //Temperature integer to string conversion
    lcd.setCursor(1, 0);
    lcd.print(day);
    lcd.print(", ");
    lcd.setCursor(5, 0);
    lcd.print(formattedTime);
    lcd.setCursor(1, 1);
    lcd.print("H:");
    lcd.print(h);
    lcd.setCursor(5, 1);
    lcd.print("%");

    lcd.setCursor(8, 1);
    lcd.print("T:");
    lcd.print(t);
    lcd.setCursor(12, 1);
    lcd.print("*C");

    Firebase.pushString(fbdo, "/DHT11/Humidity", fireHumid);           //setup path to send Humidity readings
    Firebase.pushString(fbdo, "/DHT11/Temperature", fireTemp);     //setup path to send Temperature readings
    delay(5000);
  }
}
Ekran Görüntüsü (811).png
 
Baudrate hızına bir bak.
 
"Serial.println()" satırından sonra "delay(250);" gibi bir bekleme koyup dener misiniz?
 

Forum istatistikleri

Konular
8,888
Mesajlar
144,493
Üyeler
3,573
Son üye
f20_74

Son kaynaklar

Back
Top