nodeMCU 采集Si7021温度湿度

先上代码

--初始化设备
local SDA_PIN ,SCL_PIN = 6 ,7 --指定相互连接的脚
     i2c.setup(0,SDA_PIN,SCL_PIN,i2c.SLOW)
     si7021.setup()
     --Si7021传感器的内部固件版本,返回1.0或2.0
     fwrev = si7021.firmware()
     print(string.format("FW: %X\r\n", fwrev))
--定时循环输出
tmr.alarm(2, 5000, tmr.ALARM_AUTO, function() 
--读取模块的湿度,温度,前4位参数名字可以改,整个格式不能变,此为浮点固件读取命令
hum, temp, hum_dec, temp_dec = si7021.read()
--获取浮点两位温度
sd=string.format("%0.2f",hum)
wd1=string.format("%0.2f",temp)
print("7021shiduwei : ".. sd .."\n".."7021wenduwei : ".. wd1)
--设置传感器组态寄存器以调整测量分辨率、片上加热器和读取电源电压状态。
--同样,前面参数名字可以改,整个格式不能变,具体:https://nodemcu.readthedocs.io/en/master/en/modules/si7021/
--res, vdds, heater, heater_set = si7021.setting(si7021.RH12_TEMP14, si7021.HEATER_ENABLE, 0x01)
res, vdds, heater, heater_set = si7021.setting(si7021.RH12_TEMP14)
print("dianya : ".. vdds .."jiareqi : ".. heater .. "dianliu:  " .. heater_set)
end)

这样,最简单的读取就实现了,都是官方的例子。
唉,这些个都挺简单的,起码照着例子能跑啊,那个i2c OLED屏我都弄了2天了,一点进展都没有…nodeMCU,Arduino都不行,Arduino上的示例代码都跑不起来,nodeMCU没官方的示例代码,网上找的全都跑不动,愁…

猜你喜欢

转载自blog.csdn.net/oXingChenWuJi/article/details/84404017