跳到主要内容

七、温湿度实验

7.1 实验简介

本实验通过使用SHT3x系列温湿度传感器,OLED可以实时的将温湿度传感器显示出来。

  • 温湿度传感器在开发板的接口为IIC0(SCL0,SDA0)
  • Oled屏幕在开发板的接口为IIC1(SCL1,SDA1)

7.2 硬件设计

sht30

7.3 软件设计

--定义初始化函数
function Init()
--设置sht3x传感器占用SCL0和SDA0引脚,并启动传感器以每秒出10个数据的频率工作,repeatability="HIGH"时精度最高
LIB_Sht3xConfig("IIC0","10","HIGH")
--设置0.96寸oled模块占用SCL1和SDA1引脚
LIB_0_96_OledConfig("IIC1")
end
--初始化
Init()
--开始大循环
while(GC(1) == true)
do
--延时200毫秒
LIB_DelayMs(200)
--每隔200毫秒查询sht3x传感器是否出数
sht3x_flag,sht3x_temp,sht3x_humi = LIB_Sht3xGetResult()
--如果传感器有新的温湿度数据产生
if sht3x_flag == 1 then
--在oled的第一行和第二行分别显示温度(摄氏度)和湿度(百分比)
LIB_0_96_OledPuts("1","1",string.format("temprature: %.2f", sht3x_temp))
LIB_0_96_OledPuts("2","1",string.format("humidity: %.2f", sht3x_humi))
end
end

7.4 实验现象

温湿度实时显示在OLED屏幕上。

tehu