基于 STC89C52 单片机的温湿度采集与显示系统设计报告

 

摘要

本文围绕基于STC89C52单片机的温湿度采集与显示系统展开设计,详细阐述了系统从总体方案规划、硬件电路设计、软件程序开发,到仿真验证实物制作功能测试的完整流程。系统以STC89C52单片机为核心控制器,搭配DHT11温湿度传感器与LCD1602液晶显示模块,借助Proteus、Keil C51等工具完成电路仿真与程序编译,最终实现温湿度数据的实时采集、处理与可视化展示。

主要功能包括三方面:一是通过DHT11传感器精准采集环境温湿度数据,单次通讯传输40bit数据并通过校验和确保数据有效性;二是利用LCD1602模块实现多界面显示,涵盖欢迎初始化界面主显示界面(温湿度格式为“T: XX℃ H: XX%”)及时间显示界面(格式为“HH:MM:SS”);三是通过定时器中断实现1秒定时更新,保障温湿度数据与时间信息的同步实时刷新,且系统支持上电自动初始化与手动复位操作。

系统亮点突出:其一,软件设计优化创新,将DHT11数据读取的主动延时机制改为被动电平检测,解决硬件差异导致的时序偏差问题,显著提升数据读取准确性;其二,系统稳定性强,通过模块化硬件设计与分层软件架构实现功能复用,经30分钟连续仿真验证,无数据跳变、显示乱码等异常;其三,实用性高,硬件元器件易获取且成本可控,实物制作流程规范,具备完整功能验证方案,可直接应用于日常环境温湿度监测场景。

 

 

关键字:STC89C52单片机、DHT11温湿度传感器、LCD1602液晶显示模块、温湿度采集、实时显示、时间同步、被动电平检测、模块化设计

 

目录

一、 系统总体方案设计

1.2 关键器件与工具选型方案

1.2.1 核心元器件选型

1.2.2 开发工具选型

二、 系统硬件电路设计与原理图

2.1 主控模块STC89C52

2.2 温湿度采集模块电路设计

2.2.1 DHT11传感器

2.2.2 DHT11传感器模块电路设计

2.2.3 LCD1602 液晶显示模块电路设计

2.2.4 液晶显示模块电路原理图

2.3 系统整体硬件原理图

2.3.1 核心硬件型号

2.3.2 硬件连接方案

三、 系统软件程序设计

3.1 各功能模块程序设计

3.1.2 DHT11 驱动程序:被动电平检测,突破硬件时序瓶颈

3.1.3 LCD1602 显示程序

3.1.4 时钟显示程序

3.2 程序调试

3.2.2 第一步:隔离验证,排除LCD1602模块及显示逻辑故障

3.2.3 第二步:硬件观测,验证DHT11硬件通信状态

3.2.4 第三步:深度定位,破解时序偏差核心问题

四、 系统仿真设计与验证

4.1 程序仿真与验证

4.1.1 开始欢迎画面验证

4.1.2 数据读取后显示画面验证

五、 实物制作与功能展示

5.1 实物制作前期准备

5.2 实物展示

 

 

 

  1. 系统总体方案设计

系统总体功能框图如图1-1所示。硬件系统以STC89C52单片机为核心控制器,通过LCD1602液晶模块实时显示DHT11传感器采集的温湿度数据。

系统总体功能框图

 

关键器件与工具选型方案

核心元器件选型 

 

元器件选型

器件类型

型号

选型理由

主控单片机

STC89C52RC

8KB Flash/256B RAM,支持 ISP 编程,兼容 51 指令

温湿度传感器

DHT11

单总线接口,0-50℃测量范围,响应<1 秒

显示模块

LCD1602

字符显示清晰,8 位并行接口,功耗<100mW

开发工具选型 

开发工具列表

工具名称

用途描述

Proteus 8.0
(电路仿真)

用于设计温湿度传感器模块的电路原理图,搭建包含 C51 单片机、温湿度传感器(如 DHT11)及外围电路的仿真环境,通过仿真验证电路连接的合理性、信号传输的正确性,避免实际硬件搭建时的接线错误。

Keil C51 V9.6
(程序编译)

作为 C51 系列单片机的集成开发环境,用于编写温湿度传感器数据采集、处理、显示等功能的 C 语言程序,支持代码编辑、语法检查、编译生成可执行的二进制文件(.hex),并提供调试功能以排查程序逻辑错误。

STC-ISP-v6.95C
(下载程序)

用于将 Keil C51 编译生成的二进制文件(.hex)通过串口等接口下载到 STC 系列 C51 单片机中,实现程序烧录,使单片机能够按照编写的逻辑驱动温湿度传感器工作,完成数据采集与处理等功能。

 

 

  • 系统硬件电路设计与原理图

  • 主控模块STC89C52

STC89C52单片机内部集成有4组8位并行I/O端口(P0、P1、P2、P3)。每个端口均包含锁存器、输出驱动器及输入缓冲器,映射至专用寄存器空间,支持字节寻址与位寻址操作。在片外扩展存储器访问场景中,P0口分时复用传输低8位地址与数据,P2口传输高8位地址;无片外扩展时,所有I/O口均可配置为双向端口。  

STC89C51单片机的时钟信号通常有两种方式产生:一是内部时钟方式,二是外部时钟方式。在单片机内部有一振荡电路,只要在单片机的XTAL1和XTAL2引脚外接石英晶体(简称晶振),就构成了自激振荡器并在单片机内部产生时钟脉冲信号。图中电容C1和C2的作用是稳定频率和快速起振,电容值在5-30pF,典型值为30pF。晶振CYS的振荡频率范围在1.2-12MHz间选择,典型值为12MHz和11.0592MHz。

在STC89C51单片机的RST引脚引入高电平并保持2个机器周期时,单片机内部就执行复位操作(若该引脚持续保持高电平,单片机就处于循环复位状态)。

复位电路通常采用上电自动复位和按钮复位两种方式。最简单的上电自动复位电路中上电自动复位是通过外部复位电路的电容充电来实现的。只要Vcc的上升时间不超过1ms,就可以实现自动上电复位。时钟频率用6MHZ时C取10uF,R取10KΩ。除了上电复位外,有时还需要按键手动复位。本设计就是用的按键手动复位。按键手动复位有电平方式和脉冲方式两种。其中电平复位是通过RST端经过电阻与电源Vcc接通而实现的。

    1. 温湿度采集模块电路设计

      1. DHT11传感器

DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。产品为 4 针单排引脚封装。连接方便,特殊封装形式可根据用户需求而提供。DHT11传感器实物图如下图2-2所示:

DHT11传感器实物图

  1. 引脚介绍:

Pin1:(VDD),电源引脚,供电电压为3~5.5V。

Pin2:(DATA),串行数据,单总线。

Pin3:(NC),空脚,请悬浮。

Pin4(VDD),接地端,电源负极。

  1. 接口说明:

建议连接线长度短于20米时用5K上拉电阻,大于20米时根据实际情况使用合适的上拉电阻。如下图2-4所示:

    1. <
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值