#include "DHT.h" // en este caso sí tengo que añadir la dependencia adafruit/Adafruit Unified Sensor @ ^1.1.4
// #include <DHT_U.h> // en este caso no tengo que añadir la dependencia adafruit/Adafruit Unified Sensor @ ^1.1.4
#include <BH1750.h>
#include <Wire.h>
#include "SSD1306Wire.h"
#include "images.h"
#include <PZEM004Tv30.h>
#define SCREEN_ADDRESS 0x3C
#define DHTPIN 17
#define SDA 4
#define SCL 15
#define OLED_RST 16
#define DHTTYPE DHT22 // DHT 11
#define PIN_RELE 25
#define PZEM_RX_PIN 36
#define PZEM_TX_PIN 13
#define PZEM_SERIAL Serial2
DHT dht(DHTPIN, DHTTYPE);
BH1750 lightMeter;
// create an OLED display object connected to I2C
SSD1306Wire display(SCREEN_ADDRESS, SDA, SCL); // o SSD1306Wire display(0x3c,4, 15, GEOMETRY_128_64);
PZEM004Tv30 pzem(PZEM_SERIAL, PZEM_RX_PIN, PZEM_TX_PIN);
void setup()
{
Serial.begin(115200);
dht.begin();
// initialize OLED display with I2C address 0x3C
pinMode(OLED_RST, OUTPUT);
digitalWrite(OLED_RST, LOW);
delay(50);
digitalWrite(OLED_RST, HIGH);
display.init(); // hay que hace el reset antes
// Wire.begin(SDA, SCL); //no es necesario si antes display.init();
lightMeter.begin();
// lightMeter.begin(BH1750::ONE_TIME_HIGH_RES_MODE); //bajo consumo
// initialize RELE
pinMode(PIN_RELE, OUTPUT);
digitalWrite(PIN_RELE, LOW);
Serial.println(F("Test sensores"));
display.flipScreenVertically();
display.setFont(ArialMT_Plain_10);
display.setTextAlignment(TEXT_ALIGN_CENTER);
display.drawString(64, 0, "SENSORES");
display.display();
delay(1000);
}
void loop()
{
}