2025年1月14日 星期二

ESP32 DHT22 (Blynk)

 ESP32 DHT22 (Blynk)










































WOKWI程式


#define BLYNK_PRINT Serial

#define BLYNK_TEMPLATE_ID "TMPL6BrcHyG1i"
#define BLYNK_TEMPLATE_NAME "DHT22"
#define BLYNK_AUTH_TOKEN "ZHp5tlWYKk0Txynw5besSRULNcjT9UmE"

#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
#include "DHTesp.h"
const int DHT_PIN = 15;
#define LED 12

DHTesp dhtSensor;

int temp;
int humi;

// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "Wokwi-GUEST";
char pass[] = "";

BlynkTimer timer;

// This function sends Arduino's up time every second to Virtual Pin (5).
// In the app, Widget's reading frequency should be set to PUSH. This means
// that you define how often to send data to Blynk App.
void myTimerEvent()
{
  // You can send any value at any time.
  // Please don't send more that 10 values per second.
  TempAndHumidity  data = dhtSensor.getTempAndHumidity();
  temp=data.temperature;
  humi=data.humidity;
  Blynk.virtualWrite(V0, temp);
  Blynk.virtualWrite(V1, humi);

  Serial.println("Temp: " + String(data.temperature, 2) + "°C");
  Serial.println("Humidity: " + String(data.humidity, 1) + "%");
  Serial.println("---");
 
}
BLYNK_WRITE(V2)
{
  int pinValue = param.asInt();
  Serial.print("V2 Switch value is: ");
  Serial.println(pinValue);

  if(pinValue == 1){
    digitalWrite(LED,HIGH);
    Serial.println("Led 亮");  
  }
  else{
    digitalWrite(LED,LOW);
    Serial.println("Led 滅");
  }
}
void setup() {
  Serial.begin(115200);

  pinMode(LED, OUTPUT);
  dhtSensor.setup(DHT_PIN, DHTesp::DHT22);

  Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass);
  timer.setInterval(1000L, myTimerEvent);

}

void loop() {
 
  Blynk.run();
  timer.run(); // Initiates BlynkTimer
 
}

沒有留言:

張貼留言

作業2 MQTT (Relay + DHT22) 控制 ------- 利用Node-Red

作業2 MQTT (Relay + DHT22) 控制 ------- 利用Node-Red 1) 安裝Node-Red  https://ithelp.ithome.com.tw/articles/10201795 https://www.youtube.com/watch?v...