基于89C51的温度控制排风系统设计与实现

需积分: 0 8 下载量 98 浏览量 更新于2024-06-27 2 收藏 25.55MB DOC 举报
"哈尔滨理工大学的一份单片机大作业,涉及基于温度控制的排风系统设计,包括89C51单片机、DS18B20温度传感器、LCD1206显示器、风扇驱动及按键模块。学生需要完成电路原理图设计,使用Proteus进行仿真,并编写控制程序。系统能根据温度自动调节风扇转速,并允许用户通过按键设置温度阈值。" 本设计项目是哈尔滨理工大学电子设计实践课程的一部分,主要任务是构建一个基于温度控制的排风系统。该系统由多个关键组件构成,包括89C51单片机作为主控制器,负责管理整个系统的运行。89C51是一款常见的微控制器,常用于嵌入式系统设计,它配备有内置的Flash存储器,可以存储执行程序。 系统的核心功能之一是温度检测,这由DS18B20温度传感器实现。DS18B20是一种数字温度传感器,它能直接输出数字信号,无需额外的ADC转换。其数据线与89C51的P3.4端口相连,能精确测量环境温度。 LCD1206液晶显示器用于显示实时温度、设置的温度阈值以及风扇的工作状态。它采用RS、RW、E三线接口与89C51的P2.7、P2.6、P2.5口连接,D0-D7口连接到P1.0-P1.7口,同时A、K脚用于背光调节。 风扇的驱动电路由三极管8550和8050组成,它们作为开关元件,控制风扇的转速。8050的基极连接到单片机的P3.3口,可以根据控制信号改变其导通程度,从而调整风扇的转速。此外,系统还包括按键电路,三个按键共阴极,连接到P3.5、P3.6、P3.7口,用户可以通过按键设置温度阈值。 设计要求中,系统需要能够读取DS18B20传感器的数据,根据温度变化自动调整风扇的转速,共设置三个档位。用户通过按键K1进入设置模式,K2和K3用于增减温度值。1602显示屏会显示当前温度、设置的上下限和风扇工作状态。 在设计过程中,学生需要使用Proteus软件绘制电路原理图和PCB板图,然后利用Keil开发环境编写C语言或汇编语言程序,编译生成HEX文件,在Proteus中进行硬件仿真验证设计的功能。 这个项目旨在锻炼学生的实际动手能力和对单片机系统设计的理解,涵盖了硬件电路设计、嵌入式软件编程以及系统集成等多个方面,是学习单片机控制技术的重要实践。通过这样的课程设计,学生可以深入理解温度控制系统的工作原理,掌握单片机控制风扇转速、读取温度数据以及与人机交互的方法。