具体实现功能
手机端APP控制
需求分析
引言
编写目的:主要目的是通过这次项目使我们对51单片机所学知识进一步强化理解和应用。
项目背景:委托单位:成都东软学院
开发单位和主管部门:计算机20206班2组
该软件系统与其他系统的关系:无
名词解释:AT89C52:设计所需要的内核单片机
IIC总线:是同步通信的一种特殊形式,具有双向、两线、串行、多主控、具有总线仲裁机制的特点,适合在器件间进行近距离、非经常性的数据通信。
UIN2003A:直流电机驱动芯片
蜂鸣器:发声器件、
LCD1602:是广泛使用的一种字符型液晶显示模块。它是由字符型液晶显示屏(LCD)、控制驱动主电路HD44780及其扩展驱动电路HD44100,以及少量电阻、电容元件和结构件等装配在PCB板上而组成。
DS18B20:是常用的数字温度传感器,其输出的是数字信号,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。
任务概述
目标:
随着社会的快速发展,科技的加速进步,测温仪器在各个领域应用越来越厂泛,自动化和智能化已经成为现代的温度控制系统的主流发展方向。因为各行各业对于温度控制有着越来越高的要求,所以对温度的控制和测量就显得较为重要。温度控制器的使用范围越来越广泛,各种能够应用于不同领域的智能自动温度控制器随着产生。该自动温度控制系统主要完成温度的显示,温度控制,温度报警,以及温控风扇等功能.
假定与约束:只适合特定场景,列如养殖场等厂区,不适合个人使用。
数据描述
数据分为静态数据和动态数据。所谓静态数据,指在运行过程中主要作为参考的数据,它们在很长一段时间内不会变化,一般也不会随着运行而改变,所谓动态数据,包括所有在运行中要发生变化的数据,以及在运行中要输入、输出的数据。
静态数据:DQ=P3^7; //定义DS18B20的管脚
Motor=P1^0; //直流电机
Buzzer=P1^5; //蜂鸣器端口定义
P3^0; //温度上限+
P3^1; //温度上限-
P3^2; //温度上限+
P3^3; //温度上限-
SPEED 600 //播放音乐速度
动态数据:Temp //当前温度值ds18b20数据转换成摄氏度公式(t=t*0.625+0.5)
H_Temp //温度上限
L_Temp //温度下限
Grade //风扇当前等级(0~2)
功能需求
总体流程图
蜂鸣器
温度显示
风扇
功能描述:
功能名称 | 功能标识符 | 功能详细描述 |
温度显示 | Temp | 显示当前环境的温度,可以通过按键调整上下限 |
温度报警 | Warning | 当温度低于下限或高于上限会有相应的提示如蜂鸣器鸣叫或led闪烁 |
温控风扇 | Fan | 可以根据当前温度值来控制风扇的转速 |
数据与功能的对应关系
功能标识符 | 输入 | 输出 |
温度上下限更改 | P3^0=0 P3^1=0 P3^2=0 P3^3=0 | 温度上限+1 温度上限-1 温度下限+1 温度下限-1 |
性能需求
时间要求:
在时间需求方面,温度报警系统要做到3个方面,快准稳,因为单片机最擅长的就是测控,所以无论是在响应时间、更新处理时间还是数据转换和传送时间上,都要做到尽可能的用时短,提升的反应速度,减小温度的误差,提高数据的准确性。
适应性(兼容性):
操作方式简单上电就运行,只有4个按键控制温度上下限,小白也会操作,其他无需人为操作,运行环境51单片机,理论上只要是51单片机且有对应的模块都可以运行。
运行环境描述
硬件设备:STC89C51
控制:K1,K2,K3,K4
用户界面:
运行效果:
温度控制系统
源码打包可以私我