智能红外遥控电风扇的软件设计说明书文档格式.docx
《智能红外遥控电风扇的软件设计说明书文档格式.docx》由会员分享,可在线阅读,更多相关《智能红外遥控电风扇的软件设计说明书文档格式.docx(47页珍藏版)》请在冰点文库上搜索。
指导教师评价:
一、撰写(设计)过程
1、学生在论文(设计)过程中的治学态度、工作精神
□优□良□中□及格□不及格
2、学生掌握专业知识、技能的扎实程度
3、学生综合运用所学知识和专业技能分析和解决问题的能力
4、研究方法的科学性;
技术线路的可行性;
设计方案的合理性
5、完成毕业论文(设计)期间的出勤情况
二、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规?
2、是否完成指定的论文(设计)任务(包括装订及附件)?
三、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
2、论文的观念是否有新意?
设计是否有创意?
3、论文(设计说明书)所体现的整体水平
建议成绩:
(在所选等级前的□画“√”)
指导教师:
(签名)单位:
(盖章)
年月日
评阅教师评阅书
评阅教师评价:
一、论文(设计)质量
二、论文(设计)水平
评阅教师:
教研室(或答辩小组)及教学系意见
教研室(或答辩小组)评价:
一、答辩过程
1、毕业论文(设计)的基本要点和见解的叙述情况
2、对答辩问题的反应、理解、表达情况
3、学生答辩过程中的精神状态
评定成绩:
教研室主任(或答辩小组组长):
(签名)
教学系意见:
系主任:
摘要
本设计是智能红外遥控电风扇的软件系统设计,要求在KEILC环境里编写代码、生成HEX文件,在PROTEUS环境里画出硬件电路图,并且将KEILC生成的HEX文件烧录到单片机里进行仿真。
尽管智能红外遥控电风扇硬件电路比较复杂,但是因为本设计是软件设计,因此在PROTEUS环境里仿真时,用一些简单器件来模拟红外遥控电风扇系统各个模块。
在PROTEUS环境里仿真时,以AT89C51型单片机为数据处理核心、以数字式温度传感器DS18B20为温度数据采集单元、以液晶显示屏LCD1602为温度数据显示单元;
以两个开关分别模拟红外信息采集模块和光照度信息采集模块、以直流电动机模拟风扇模块、以电灯模拟照明模块。
关键字:
软件设计模拟代替KEILCPROTEUS仿真
Abstract
Thisdesignissoftwaresystemdesignofthesmartinfraredremotecontrolelectricfan.ThecodeandtheHEXfileisgeneratedintheKEILCsoftware.ThehardwarecircuitisdrawninthePROTEUSsoftware.Thehardwarecircuitiscomplex.Mydesignisthesoftwaresystemdesign.SoIusesomesimpledevicestoreplacemodulesofthesmartinfraredremotecontrolelectricfansystem.Forexample,IuseAT89C51fordataprocessingcoreandDS18B20fortemperaturedataacquisitionunitandLCD1602fortemperaturedatadisplayelementwhenIsimulatesoftwaresystemintheProteussoftware.IusetwoswitchesandelectromotorandelectricbulbinsteadofinfraredsignalacquisitionmoduleandlightinformationacquisitionmoduleandfanmoduleandlightingmoduletosimulatesoftwaresysteminthePROTEUSsoftware.
Keywords:
softwaredesigninsteadofKEILCPROTEUSsimulation
引言5
第一章本设计所用芯片的概述6
1.1数字式温度传感器DS18B20的概述6
1.1.1数字式温度传感器DS18B20的介绍6
1.1.2数字式温度传感器DS18B20操作指令、工作过程及时序6
1.2ULN2003A的概述8
1.2.1ULN2003A的介绍8
1.2.2ULN2003A的工作过程9
1.3液晶显示器的概述9
1.3.1LCD1602管脚介绍9
1.3.2LCD1602相关指令介绍9
1.3.3LCD1602时序介绍10
1.4AT89C51单片机的简述11
1.4.1AT89C51管脚介绍11
第二章硬件系统模拟12
2.1智能红外遥控电风扇系统模块框图12
2.2硬件模块的模拟12
2.2.1数字式温度传感器模拟温度采集模块12
2.2.2液晶显示屏模拟显示模块13
2.2.3直流电动机模拟风扇模块13
2.2.4电灯模拟照明模块14
2.2.5开关模拟红外信号采集模块14
2.2.6开关模拟光照度信息采集模块14
2.3在PROTEUS仿真时硬件系统电路图16
第三章软件流程图15
3.1软件总流程图15
3.2系统在光照度充足状态下工作流程图16
3.3系统在光照度不充足状态下工作流程图17
第四章智能红外遥控电风扇系统仿真20
4.1仿真软件简介20
4.1.1KEILC简介20
4.1.2PROTEUS简介20
4.2各个模块仿真21
4.2.1液晶显示模块仿真21
4.2.2温度采集和温度显示模块仿真21
4.2.3风扇模块和照明模块仿真21
4.3智能红外遥控电风扇系统仿真21
4.3.1仿真条件:
温度大于50摄氏度且有红外且光不足22
4.3.2仿真条件:
温度大于36摄氏度且小于50摄氏度且有红外且光不足22
4.3.3仿真条件:
温度大于26摄氏度且小于36摄氏度且有红外且光不足22
4.3.4仿真条件:
温度小于26摄氏度且有红外且光不足23
4.3.5仿真条件:
温度大于50摄氏度且有红外且光充足23
4.3.6仿真条件:
温度大于36摄氏度且小于50摄氏度且有红外且光充足24
4.3.7仿真条件:
温度大于26摄氏度且小于36摄氏度且有红外且光充足24
4.3.8仿真条件:
温度小于26摄氏度且有红外且光充足25
4.3.9仿真条件:
没有红外25
4.4仿真过程中遇到的问题26
4.4.1问题:
对温度采集和温度显示模块仿真时,始终无法达到预期效果26
4.4.2问题:
LCD显示温度非常快,看不清温度值26
4.4.3问题:
电灯发亮时一闪一闪的26
4.4.4问题:
温度为零下27摄氏度时,风扇转动26
4.3.5问题:
风扇不转动27
总结28
致29
参考文献30
附录系统的主程序31
引言
当今社会,不管是国还是海外,物联网越来越发达。
在这种大背景下,家用电器的智能化程度不断加深。
为适应企业的发展,为满足客户的需求,“如何使电风扇智能化”成了众多相关企业领导阶层关注的焦点,以便提高企业效益,提高用户满意度。
在此背景下,在海外智能电风扇蓬勃发展。
智能电风扇之所以具备智能,是因为智能电风扇应用了数据处理器、传感器。
数据处理器分类很多,不同种类的处理器应用领域也不尽相同。
传感器的种类很多,智能电风扇多使用一种传感器,那么智能电风扇就多具备一种智能。
智能电风扇最起码使用的传感器是温度传感器,温度传感器能使电风扇具备根据温度实时地、自动地调节风扇风速档位的智能。
在国外,基于其他高级处理器的智能电风扇普及程度比较高。
比如美国,基于DSP和基于FPGA/CPLD处理器的智能电风扇应用很广泛。
DSP处理器处理数据的速度很快,使得智能电风扇“反应”很快。
在国,单片机技术已经很成熟了,我国在传感器应用领域也取得不少进展。
因此在国,智能电风扇发展和应用也很快。
智能电风扇在未来的发展是向更加人性化发展。
未来智能电风扇的功能将至少具备智能开关功能、智能调节风速功能、智能照明功能、智能显示功能。
所谓智能开关功能,就是指在电风扇初始化之后,能够根据周围环境里有无人来决定打开或者关闭电风扇系统;
所谓智能调节风速功能,就是指电风扇能够根据周围环境温度实时地、自动地调节风扇风速档位;
所谓智能照明功能,就是指电风扇能够根据周围环境的明暗情况来实时地、自动地打开或者关闭照明设备;
所谓智能显示功能,就是指液晶显示屏能够自动地更新显示容。
我国科技力量正在迅猛蓬勃发展,我想在未来我国在不仅仅智能电风扇领域取得很大进展,并且我国将在智能家电领域取得较大发展。
第1章本设计所用芯片的概述
1.1数字式温度传感器DS18B20的概述
1.1.1数字式温度传感器DS18B20的介绍
数字式温度传感器DSl820,显著的优点是:
(1)接线简洁,DS18B20只有三个管脚,可以与单片机直接连接;
(2)测量围广、测量精度高,测量区间从-55℃一直到+125℃,测量精度是0.5℃;
(3)响应时间短,从初始化到响应可在短时间完成。
表1-1数字式温度传感器DS18B20管脚说明表
数字式温度传感器DS18B20管脚
GND
接地
DQ
输入/输出
VCC
接+5V电源
图1-1数字式温度传感器DS18B20框图
1.1.2数字式温度传感器DS18B20操作指令、工作过程及时序
数字式温度传感器DS18B20遵循单总线协议。
单总线协议流程是:
主机发送指令初始化DS18B20→主机发送DS18B20的ROM操作指令→主机发送DS18B20的存储器操作指令→DS18B20发出数据、主机接收数据。
初始化:
对数字式温度传感器DS18B20的所有处理均从初始化开始。
表1-2DS18B20操作指令说明表
ROM操作指令
存储器操作指令
READROM(读ROM)
33H
WRITESCRATCHPAD(写暂存器)
4EH
MATCHROM(匹配ROM)
55H
READSCRATCHPAD(读暂存器)
BEH
SKIPROM(跳过ROM)
CCH
COPYSCRATCHPAD(复制暂存器)
48H
SEARCHROM(搜索ROM)
F0H
CONVERTTEMPERSTURE(温度变换)
44H
ALARSEARCH(告警搜索)
ECH
REACLLEPROM(重新调出)
B8H
READPOWERSUPPLY(读电源)
B4H
数字式温度传感器DS18B20各个时序简述:
初始化时序:
单片机将总线从高电平拉低到低电平并且持续480—960us;
紧接着单片机将总线从低电平拉高到高电平;
单片机等待15—60us,如果单片机检测到18B20发出的低电平,那么初始化成功。
DS18B20发出低电平状态持续60—240us,然后发出高电平。
图1-2数字式温度传感器初始化时序示意图
写时序:
当单片机机将总线从高电平拉低到低电平时,DS18B20就产生写时间时序。
单片机必须在15us之将所需要写入DS18B20的“位”送到总线上,并且持续15us等待DS18B20进行采样。
如果单片机是发出低电平,那么意味着给DS18B20写入的是“0”;
如果单片机是发出高电平,那么意味着给DS18B20写入的是“1”。
另外要注意,给DS18B20多次写入“位”时,两次写入间隔大于等于1us。
读时序:
DS18B20把总线从高电平拉低到低电平,并且持续发出低电平15us,紧接着将总线从低电平拉高到高电平,这就告诉单片机DS18B20将要输出数据。
DS18B20发出的数据在之后的45us有效,60—120usDS18B20释放总线。
图1-3数字式温度传感器DS18B20写时序与读时序示意图
1.2ULN2003A的概述
1.2.1ULN2003A的介绍
ULN2003A可以接高电压、可以通过大电流。
ULN2003A显著特点是:
(1)工作状态下所接电压可以很高;
(2)工作状态下所通电流可以很大。
图1-4ULN2003A框图
表1-3ULN2003A管脚说明表
ULN2003芯片引脚介绍
引脚1到引脚7
脉冲信号输入端
引脚10到引脚16
脉冲信号输出端
引脚9
公共端
1.2.2ULN2003A的工作过程
图1-5ULN2003A部结构图
如图所示,以管脚1和管脚16为例,管脚1输入高电平,管脚16输出低电平;
管脚1输入低电平,管脚16输出高电平。
因为单片机不可以接高电压和大电流,因此单片机与负载之间接上ULN2003A就解决了电压和电流不匹配的难题。
简而言之,ULN2003A可以作为继电器使用。
1.3液晶显示器的概述
图1-6液晶显示器LCD1602框图
液晶显示屏幕LCD具有功耗低、体积小、显示容丰富、超薄轻巧袖珍等等很多优点,在很多仪表显示或者低功耗显示系统中应用广泛。
本设计所使用的LCD1602可以显示两行字符,每行最多可以16个字符。
1.3.1LCD1602管脚介绍
表1-4LCD1602管脚说明表
LCD1602主要管脚
VSS
VDD
接5V正电源,接正电源时对比度最弱,接地电源时对比度最高
V0
液晶显示器对比度调整端
RS
寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器
R/W
读写信号线,高电平时进行读操作,低电平时进行写操作
E
使能端,当E端由高电平跳变成低电平时,可以对其操作
D0~D7
数据线
1.3.2LCD1602相关指令介绍
表1-5LCD1602操作指令说明表
LCD1602相关指令
指令
D7
D6
D5
D4
D3
D2
D1
D0
清显示
1
光标返回
*
置输入模式
I/D
S
显示开/关控制
D
C
B
1.3.31LCD1602时序介绍
表1-6LCD1602基本时序说明表
LCD1602基本操作时序
操作
输入
输出
D0-D7
读状态
低电平
高电平
无
“D0-D7”状态字
写指令
高脉冲
指令码
读数据
“D0-D7”数据
写数据
数据
图1-7液晶显示器LCD1602读时序图
图1-8液晶显示器LCD1602写时序图
1.4AT89C51单片机的简述
AT89C51是一款耗能低、性能优良的微处理器。
需要注意的是P0口,使用时必须接上拉电阻,否则输不出高电平。
P3口除了作为I/O口之外,还有其他特殊功能:
包括串行通信功能;
外部中断控制功能;
计时计数控制功能;
外部数据存储器数据读取或者写入控制功能。
1.4.1AT89C51管脚介绍
表1-7AT89C51管脚说明表
AT89C51引脚
电源正端输入,接+5V
电源地端
XTAL1
振荡器输入端
XTAL2
振荡器输出端
RST
复位输入端口
P0-P3
可编程通用I/O脚
图1-9AT89C51单片机框图
第二章硬件系统模拟
2.1智能红外遥控电风扇系统模块框图
智能红外遥控电风扇系统模块分为输入模块和输出模块。
输入模块分为:
温度信息采集模块,红外信息采集模块,光照度信息采集模块;
输出模块分为:
温度显示模块,风扇模块,照明模块。
图2-1智能红外遥控电风扇系统模块框图
2.2硬件模块的模拟
表2-1硬件各模块替代器件说明表
硬件模块的模拟
在PROTEU仿真环境里用
DS18B20
模拟
温度采集模块
LCD1602
温度显示模块
直流电动机
风扇模块
电灯
照明模块
开关
红外信息采集模块
光照度信息采集模块
2.2.1数字式温度传感器模拟温度采集模块
图2-2DS18B20与AT89C51连接示意图
2.2.2液晶显示屏模拟显示模块
图2-3LCD1602与AT89C51连接示意图
2.2.3直流电动机模拟风扇模块
图2-4直流电动机和ULN2003A与AT89C51连接示意图
2.2.4电灯模拟照明模块
图2-5电灯和ULN2003A与AT89C51连接示意图
2.2.5开关模拟红外信号采集模块
如果红外信息采集模块采集到红外信号,那么红外信息采集模块就向单片机发出低电平,反之就发出高电平。
红外信息采集模块与单片机之间是单向通信,红外信息采集模块只向单片机发数据,而单片机不向红外信息采集模块发送数据或者指令。
因此,可以用开关来模拟红外信息采集模块。
因此在设计软件系统时,只需定时检测红外信息采集模块所发送的电平是高电平还是低电平。
有红外,那么发送低电平
单
片
机
无红外,那么发送高电平
图2-6红外信号采集模块与AT89C51通信示意图
表2-2开关模拟红外信息采集模块说明表
开关模拟红外信号采集模块
有无红外
电平高低
等价于
开关状态
有
闭合
打开
2.2.6开关模拟光照度信息采集模块
如果周围环境光照度低于预先设定的门限值,那么光照度信息采集模块就向单片机发出低电平,反之发出高电平。
光照度信息采集模块与单片机之间是单向通信,光照度信息采集模块只向单片机发数据,而单片机不光照度信息采集模块发送数据或者指令。
因此,可以用开关来模拟光照度信息采集模块。
因此在设计软件系统时,只需定时检测光照度信息采集模块所发送的电平是高电平还是低电平。
光照度充足,发送低电平
光照度不充足,发送高电平
图2-7光照度信息采集模块与AT89C51通信示意图
表2-3开关模拟光照度信息采集采集模块说明表
开关模拟光照度信息采集模块
光是否充足
充足
不足
低电平电平
图2-8开关模拟红外信号采集模块和光照度信息采集模