几个月之前搞了个这玩意儿,可以实时显示当前的气温(来自雅虎天气)和室内的气温与湿度。
代码: https://github.com/mingl0280/WpiWeather
代码写得有点乱……
需要的库有:
wiringPi, tft_st7735, curl, xml2, ssl, png, pthread
接线:
ST7735/ST7735S
LCD, VCC 3.3v
SCK(SCL) GPIO 19 串行时钟信号
SDA GPIO 13 数据
AO(RS) GPIO 17 数据或命令切换
RESET(RST) GPIO 27 复位
CS GPIO 23 片选
GND 任意接地口 接地
DHT11
VCC 任意 5v 口
DATA 任意 GPIO 口(可在代码中修改)
备注:需用 4.7K (官方手册 5.1K ,实际上大于 3K 都够……注意线路长度不要太长)上拉电阻连接到 VCC
GND 任意接地口
参考了 Mango Love Carrot 的树莓派各种教程( http://blog.mangolovecarrot.net/categories/%E6%A0%91%E8%8E%93%E6%B4%BE/)
1
xmoiduts 2017-01-02 17:06:52 +08:00 via Android
dht11 精度太低了,或许需要对数据进行(滤波?)
|
2
emric 2017-01-02 17:40:08 +08:00
推荐 BMP280 , 0.5° 误差、 0.01° 精度, 7 块钱(没有气压)。
|
3
springmarker 2017-01-02 20:23:28 +08:00 via Android
dht11 错误率高, dht22 应该好点😭我的 dht22 还没正式用就烧了
|
4
deyu260 2017-01-02 20:30:37 +08:00
mark
|
5
mingl0280 OP @xmoiduts 我这里倒是有个代码是自适应数据过滤的但是效果并不好(阈值效果比较好,大概一百次里面出错 5 次?没检查过),不过反正出错就重读……这玩意儿也不要求特别精确的时间对吧……
|
7
xmoiduts 2017-01-03 08:17:54 +08:00 via Android
@mingl0280 不是出错问题。如果你绘制过图表就会发现,温度曲线仿佛 pwm 信号一样上下跳动。实际使用其实没什么。
|