Olá.. infelizmente comprei um modelo diferente.. é possível utilizá-lo?
Obrigado!
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Olá.. infelizmente comprei um modelo diferente.. é possível utilizá-lo?
Obrigado!
Caso alguém tenha a mesma dificuldade, o meu utiliza o protocolo "spi", e acabou dando certo com a lógica abaixo:
#include <DHT.h>
#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels
// Declaration for SSD1306 display connected using software SPI (default case):
#define OLED_MOSI D7
#define OLED_CLK D5
#define OLED_DC D2
#define OLED_CS D8
#define OLED_RESET D1
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT,
OLED_MOSI, OLED_CLK, OLED_DC, OLED_RESET, OLED_CS);
#define DHTPIN D3
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
int umidade;
int temperatura;
void setup() {
dht.begin();
Serial.begin(9600);
// SSD1306_SWITCHCAPVCC = generate display voltage from 3.3V internally
if(!display.begin(SSD1306_SWITCHCAPVCC)) {
Serial.println(F("SSD1306 allocation failed"));
for(;;); // Don't proceed, loop forever
}
}
void loop() {
medirTemperaturaUmidade();
mostrarMensagemNoDisplay();
//delay(2000);
}
void medirTemperaturaUmidade() {
umidade = dht.readHumidity();
temperatura = dht.readTemperature(false);
delay(2000);
}
void mostrarMensagemNoDisplay() {
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(SSD1306_WHITE);
display.setCursor(0, 0);
display.print("Temperatura");
display.setTextSize(5);
display.setCursor(20, 20);
display.print(temperatura);
display.setTextSize(2);
display.print("C");
display.display();
delay(5000);
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(SSD1306_WHITE);
display.setCursor(0, 0);
display.print("Umidade");
display.setTextSize(5);
display.setCursor(20, 20);
display.print(umidade);
display.setTextSize(2);
display.print("%");
display.display();
delay(3000);
}
Boa tarde Eric, tudo certo?
Muito obrigado por compartilhar no fórum o que você aprendeu e desenvolveu! Pode parecer desconfortável, mas quebrar a cabeça procurando por uma solução, utilizar componentes com algumas variações e compartilhar o que você descobriu são ótimas formas de fixar o conhecimento.
Continue assim e bons estudos!