文档详情

基于STM32的温湿度监控系统设计 .pdf

发布:2024-12-17约2.77千字共3页下载文档
文本预览下载声明

基于STM32的温湿度监控系统设计

温湿度的监测对于当前控制室内环境,改善室内环境起着重要的作用,为了

提高室内用户的舒适度,一般都会对室内的温湿度进行监控,通过监测温湿度的

变化情况来确定下一步的动作,例如在温室中严格监控室内温度,使得温室内的

植物能到最合适的生存环境。文章就基于STM32的温湿度监控系统设计问题进

行了全面分析,通过其有效提高温度的时效性管理意义重大。

标签:STM32;温湿度;ucosII系统;监控系统设计

此次的基于STM32的温湿度监控系统设计主要是32位的单片机为主控芯

片,DHT11为温湿度监测装置,搭载的是ucosII操作系统,显示设备为主控

ITL9438的彩屏,通过DHT11采集的信息对经过单片机的内部程序的处理,将

其以数字的形式显示在彩屏上,并且同时根据单片机内部的温度设定值进行相应

的动作,实现的室内温湿度的智能控制。

1温湿度监控系统设计

1.1温湿度监控系统硬件设计

系统主控芯片为STM32F103ZET6,除了必须的STM32单片机正常的驱动

的电路之外,彩屏为使用的是已经做成模块的ITL9438彩屏,而采集模块则是使

用的DHT11,如图所示为使用的DHT11的引脚图,可得知只要通过采集Dout

引脚的输出的电平变化,查看数据手册,根据DHT11的时序图写出相应的驱动

程序,驱动DHT11温湿度传感器。彩屏的程序可以直接使用的屏幕厂家写好的

程序,移植到STM32上既可,而通过将Dout引脚上的高低电平变化,进行相应

的数据处理可以将温湿度数据已数字的形式显现在彩屏上,通过内部的程序根据

比较当前的温湿度值与设定的参数值进行比较,使得进行下一步的温湿度调节动

作,通过向外部电路发送信号,例如温度高了,打开排风机降低室内的温度等措

施优先对温度的控制,这与空调的原理类似,但是系统比空调电路简捷的多。

DHT11数字湿温度传感器采用单总线数据格式,单个数据引脚端口完成输

入输出双向传输。其数据包由5Byte(40Bit)组成。数据分小数部分和整数部分,

一次完整的数据传输为40bit,高位先出。DHT11的数据格式为:8bit湿度整数

数据+8bit湿度小数数据+8bit温度整数数据+8bit温度小数数据+8bit校验和。其

中校验和数据为前四个字节相加,传感器数据输出的是未编码的二进制数据。数

据(湿度、温度、整数、小数)之间应该分开处理。

1.2温湿度监控系统软件设计

此次的温湿度监控系统软件设计主要实在keil4中完成,操作系统为

UCOSII,将UCOSII系统移植到当前单片机上,并且建立相应的任务堆栈,通

过调用任务堆栈的形式实现系统运行,将DHT11的Dout引脚与PG11连接,PG11

引脚设置的为输入模式,用于采集Dout引脚的电平变化。开机的时候先检测是

否有DHT11存在,如果没有,则提示错误。只有在检测到DHT11之后才开始读

取温湿度值,并显示在LCD上,如果发现了DHT11,则程序每隔100ms左右读

取一次数据,并把温湿度显示在LCD上。同时会使用一个LED来指示程序运行

状况。

温湿度监控系统的软件设计主要分为的LED驱动程序、LCD驱动程序、

DHT11驱动程序以及STM32单片机的启动文件等几个部分,其中LCD驱动程

序主要是有屏幕生产厂家提供,并不需要自己編写,直接移植厂家提供的LCD

驱动程序即可,而设计者主要是编写的LED驱动和DHT11的驱动。DHT11并

不需要使用IIC接口或者是SPI接口,所以直接配置两个I/O引脚,通过DHT11

的读写时序编写相应的驱动程序即可,如图1中的’1时序和’’0时序’图。

通过图1中时序图,我们可以编写出DHT11相应的读函数与写函数,再通

过数据发送流程时序便可以写出DHT11的驱动程序。将上述几个主要的驱动程

序编写好之后,编写相应的DHT11数据处理函数,通过函数参数返回值将实际

的数据显示在LCD屏幕上。屏幕上显示的参数在主函数中的出现编

显示全部
相似文档