#include <stdio.h>
#include "pico/stdlib.h"
#include "hardware/gpio.h"
#include "dht22-pico.h"
#include "pico/cyw43_arch.h"
const uint DHT_PIN = 15;
const uint RED_PIN = 28;
const uint GREEN_PIN = 19;
int main() {
stdio_init_all();
if (cyw43_arch_init()) {
printf("Wi-Fi init failed");
return -1;
}
dht_reading dht = dht_init(DHT_PIN);
gpio_init(RED_PIN);
gpio_set_dir(RED_PIN, GPIO_OUT);
gpio_init(GREEN_PIN);
gpio_set_dir(GREEN_PIN, GPIO_OUT);
while (true) {
sleep_ms(2000);
uint8_t status = dht_read(&dht);
if (status == DHT_OK) {
printf("RH: %.1f%%\tTemp: %.1fC\n", dht.humidity, dht.temp_celsius);
} else if (status == DHT_ERR_CHECKSUM) {
printf("Bad data (checksum)\n");
} else {
printf("Bad data (NaN)\n");
}
if(dht.humidity>50)
{
printf("Lembabnya \n");
gpio_put(RED_PIN, 0);
}
else
{
printf("Keringnya \n");
gpio_put(RED_PIN, 1);
}
if(dht.temp_celsius>50)
{
printf("Panas \n");
gpio_put(GREEN_PIN, 1);
}
else
{
printf("Sejuk \n");
gpio_put(GREEN_PIN, 0);
}
}
return 0;
}