widora 添加温湿度传感器 DHT22(DHT11)

前几天给开发板添加了一个温湿度传感器 dht22 具体的步骤如下。

1,添加 dts
路径:target/linux/ramips/dts/Widora32M.dts
在最后面添加如下配置(使用的是GPIO39):
+humidity_sensor {
+compatible = “dht11”;
+gpios = <&gpio1 7 1>;
+};

2,修改配置:
+CONFIG_PACKAGE_kmod-iio-core=y
+CONFIG_PACKAGE_kmod-iio-dht11=y

3,修改内核源码:
linux-3.18.29/drivers/iio/humidity/dht11.c
ret = dht11_decode(dht11,
dht11->num_edges == DHT11_EDGES_PER_READ ?
- DHT11_EDGES_PREAMBLE:
+ DHT11_EDGES_PREAMBLE - 1 :
DHT11_EDGES_PREAMBLE - 2);
注:如果是dht11的话则不需要修改源码。
可以在 /sys/bus/iio/devices/ 读到数据
测试:
cat /sys/bus/iio/devices/iio:device0/in_temp_input
cat /sys/bus/iio/devices/iio:device0/in_humidityrelative_input

@fanxiaodong :cow: