#include <zephyr.h>
#include <device.h>
#include <drivers/sensor.h>
#include <sys/printk.h>
const struct device *sensor_dev;
void main(void)
{
struct sensor_value temp, humidity;
sensor_dev = device_get_binding(DT_LABEL(DT_INST(0, ams_dht22)));
if (!sensor_dev) {
printk("Failed to bind DHT22 sensor\n");
return;
}
while (1) {
if (sensor_sample_fetch(sensor_dev) < 0) {
printk("Failed to fetch data\n");
k_sleep(K_SECONDS(5));
continue;
}
sensor_channel_get(sensor_dev, SENSOR_CHAN_AMBIENT_TEMP, &temp);
sensor_channel_get(sensor__dev, SENSOR_CHAN_HUMIDITY, &humidity);
printk("Temperature: %d.%d C\n", temp.val1, temp.val2);
printk("Humidity: %d.%d %%\n", humidity.val1, humidity.val2);
k_sleep(K_SECONDS(10));
}
}
#include <zephyr.h>
#include <device.h>
#include <drivers/sensor.h>
#include <sys/printk.h>
const struct device *sensor_dev;
void main(void)
{
struct sensor_value temp, humidity;
sensor_dev = device_get_binding(DT_LABEL(DT_INST(0, ams_dht22)));
if (!sensor_dev) {
printk("Failed to bind DHT22 sensor\n");
return;
}
while (1) {
if (sensor_sample_fetch(sensor_dev) < 0) {
printk("Failed to fetch data\n");
k_sleep(K_SECONDS(5));
continue;
}
sensor_channel_get(sensor_dev, SENSOR_CHAN_AMBIENT_TEMP, &temp);
sensor_channel_get(sensor__dev, SENSOR_CHAN_HUMIDITY, &humidity);
printk("Temperature: %d.%d C\n", temp.val1, temp.val2);
printk("Humidity: %d.%d %%\n", humidity.val1, humidity.val2);
k_sleep(K_SECONDS(10));
}
}