华为开发者创新中心第9讲温湿度传感器应用实验华为开发者创新中心温湿度传感器humitureSensor9-2.py温湿度传感器(humitureSensor)是基于数字温湿度传感器DH11的一款传感器,它是一种集温度、湿度一体的复合传感器,它能把温度和湿度物理量通过温、湿度敏感元件和相应电路转化成方便计算机、PLC、智能仪表等数据采集设备直接读取的数字量。DHT11由电阻式感湿器件和NTC系数感温器件构成,具有校准数字信号输出功能,采用单总线串行接口,输出数据一共5个字节,分别表示:湿度整数位、湿度小数位,温度整数位、温度小数位及校验和,其中检验和为湿度与温度之和的最低八位数据。华为开发者创新中心温湿度传感器humitureSensor9-2.py参数值/描述工作电压DC5V通信方式WM单总线协议接口类型RJ11温度测量测量范围0~60℃℃,测量精度0.1℃,误差±1℃(0~60℃)湿度测量测量范围0%~99%RH,测量精度1%RH,误差±5%RH(0~50℃)信号采样周期1秒模块尺寸55mm*24mm*18.5mm(长*宽*高)华为开发者创新中心设备库,硬件API使用设备库使名为ob_pro的模块,并调用uart_init()以及humitureSensor_read函数能够简化访问传感器的步骤,提高代码的可读性和易用性。这种方式通常是为了更方便地与硬件交互,封装了底层的通信协议和配置,让开发者更专注于传感器提供的功能而非底层通信细节。不再需要用户自己配置GPIO,配置I2C协议相关底层函数。9-2.pyfromob_proimport*uart_init()print(humitureSensor_read(PORT_A,1))print(humitureSensor_read(PORT_A,0))华为开发者创新中心Theshortestanswerisdoing.编程实验温湿度传感器实验华为开发者创新中心实际应用fromob_proimport*uart_init()importtimewhileTrue:print(humitureSensor_read(PORT_D,0))print(humitureSensor_read(PORT_D,1))ifhumitureSensor_read(PORT_D,0)>30:print("温度过高注意避暑")ifhumitureSensor_read(PORT_D,1)<25:print("空气干燥,需开启加湿器")time.sleep(1)9-2.py例如温度过高,进行预警例如湿度过低,进行预警使用循环语句让串口不断打印相关数据时,需要加上适当的延时,避免数据发送过快,串口打印忙不过来,导致系统崩溃华为开发者创新中心实际应用fromob_proimport*uart_init()fromdeviceimportBUTTONimporttimebtn0=BUTTON(0)whileTrue:ifbtn0.value()==0:print(humitureSensor_read(PORT_D,1))time.sleep(1)9-2.py按键查询温湿度传感器值导入相关库函数添加串口协议导入大师兄板载按键提供与时间相关的功能创建一个按键对象重复执行如果按键按下串口打印温湿度传感器的值等待一秒华为开发者创新中心THANKYOU