单片机智能豆浆机课程设计.docx
《单片机智能豆浆机课程设计.docx》由会员分享,可在线阅读,更多相关《单片机智能豆浆机课程设计.docx(17页珍藏版)》请在冰豆网上搜索。
单片机智能豆浆机课程设计
电气与电子信息工程学院
《单片机》课程设计报告
题目:
智能豆浆机
专业班级:
电气工程及其自动化2012级(3)班
学 号:
201240220329
姓名:
陈俊亚
同组人:
李越
指导教师:
胡蔷黄磊
设计时间:
2014年12月15日-2014年12月19日
设计地点:
K2-407单片机、微机原理实验室
2014年10月
课程设计任务书
2014~2015学年第1学期
一、课程设计题目:
(智能豆浆机)
二、课程设计要求
1.根据具体设计课题的技术指标和给定条件,以单片机为核心器件,能独立而正确地进行方案论证和电路设计,完成仿真操作。
要求概念清楚、方案合理、方法正确、步骤完整;
2.熟悉、掌握各种外围接口电路芯片的工作原理和控制方法;
3.熟练使用单片机汇编语言或C51进行软件设计;
4.熟练使用Proteus、Keil软件进行仿真电路测试;
5.熟练使用Protel软件设计印刷电路板;
6.学会查阅有关参考资料和手册,并能正确选择有关元器件和参数;
7.编写设计报告,参考毕业设计论文格式。
(1)根据课题要求确定系统设计方案;
(2)绘制系统框图、系统仿真原理图(印刷电路板图),列出元器件明细表;
(3)计算电路参数和选择元器件,画出软件流程图(列出程序清单);
(4)打印仿真结果,根据测试结果进行误差分析与修改调整;
(5)对设计进行全面总结。
三、课程设计内容(含技术指标)
1.它能实现三种模式选择,同时模式、加热总时间、粉碎总时间依次在前三个数码管显示器上显示。
选择模式完成后,按照规定的时间完成加热、粉碎、加热、粉碎、加热、显示温度到完成报警整个加工过程,加热和粉碎状态分别用P3^6和P3^7口接发光二级管模拟。
2.它能实现烧干、液体溢出容器的优先级断电报警和加热时水泡超过液位时的停止加热,延时等待水位下降后继续加热的液体控制功能。
3.扩展部分:
它扩展实现了计时功能,用数码管的后三位动态显示,计时的目的是看在已选的模式下,看距离全过程完成还有多长时间;还可以通过现实的时间判断,报警是中途烧干,液体溢出容器的报警还是工作全过程结束的报警,有一定的智能性。
4.它能在上电、复位之后显示666666六位数字,可以通过改变初始值,实现显示任意六位数字或者其他字母。
5.温度显示模块,采用DS18B20芯片来显示,测量的温度为-55~125度。
目录
一绪论1
1.1引言 1
1.2原理框图1
二系统硬件电路设计2
2.1单片机的选择 2
2.2 温度检测电路设计 3
2.2.1DS-18B20数字温度传感器介绍3
2.2.2 电路设计4
2.3复位电路的设计4
2.4报警电路的设计5
2.5按键电路的设计5
2.6关于芯片的介绍6
2.6.1芯片DIR82866
2.6.2芯片74LS2456
2.6.3芯片74LS1387
2.6.4共阴极数码管7
三系统软件设计8
3.1加热粉碎完成报警及液位控制模块的流程图8
3.2计时模块框图8
3.3定时程序框图9
3.4总框图10
四仿真结果及分析11
4.1上电和复位时的仿真11
4.2模式一的仿真结果11
4.3模式二的仿真结果12
4.4模式三的仿真结果12
4.5模式一报警时的仿真结果13
4.6按下四键的温度仿真13
五.课程设计小结14
一绪论
1.1引言
通过键盘来选择豆浆机的工作模式,加热粉碎有一定的延时时间,液位控制模块可用外部中断来实现,烧干、外部溢出可用中断INT0、P3^2来实现,设为高优先级的中断,加热液体控制模块也可用外部中断INT1、P3^3来实现,同时还具备显示温度模块及定时功能。
1.2原理框图
本智能豆浆机控制系统设计原理如图1.1所示:
图1.1智能豆浆机控制系统框图
系统主要有:
显示模块、时钟模块、复位模块、定时控制模块、按键模块。
说明:
AT89S52的P0口接74LS245的A0~A7口,用来驱动数码管显示,完成数据传输;单片机的P2.1~P2.3接键盘的1、2、3来控制豆浆机模式的选择,P2.5~P2.7接键盘的A、B、C端来控制温度显示、粉碎溢出的功能;单片机的P1.3口接温度传感器通过数码管来显示温度;P3.2与P3.3两个外部中断来实现加热烧干的功能;P3.6~P3.7接两个LED灯分别表示加热和粉碎。
二系统硬件电路设计
2.1单片机的选择
AT89S52是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,AT89S52在众多嵌入式控制应用系统中得到广泛应用。
RST :
AT89S52的复位信号输入引脚,高电位工作,当要对芯片又时,只要将此引脚电位提升到高电位,并持续两个机器周期以上的时间,AT89S51便能完成系统复位的各项工作,使得内部特殊功能寄存器的内容均被设成已知状态。
P0口(P0.0~P0.7)是一个8位漏极开路双向输入输出端口,当访问外部数据时,它是地址总线(低8位)和数据总线复用。
外部不扩展而单片应用时,则作一般双向I/O口用。
P0口每一个引脚可以推动8个LSTTL负载。
P2口(P2.0~P2.7)口是具有内部提升电路的双向I/0端口(准双向并行I/O口),当访问外部程序存储器时,它是高8位地址。
外部不扩展而单片应用时,则作一般双向I/O口用。
每一个引脚可以推动4个LSTL负载。
P1口(P1.0~P1.7)口是具有内部提升电路的双向I/0端口(准双向并行I/O口),其输出可以推动4个LSTTL负载。
仅供用户作为输入输出用的端口。
P3口(P3.0~P3.7)口是具有内部提升电路的双向I/0端口(准双向并行I/O口),它还提供特殊功能,包括串行通信、外部中断控制、计时计数控制及外部随机存储器内容的读取或写入控制等功能。
主要性能特点:
1、4k Bytes Flash片内程序存储器;
2、128 bytes的随机存取数据存储器(RAM);
3、32个外部双向输入/输出(I/O)口;
4、5个中断优先级、2层中断嵌套中断,6个中断源;
5、2个16位可编程定时器/计数器;
6、2个全双工串行通信口;
7、看门狗(WDT)电路;
8、片内振荡器和时钟电路,与MCS-51兼容;
9、全静态工作:
0Hz-33MHz;
10、三级程序存储器保密锁定;
11、可编程串行通道,低功耗的闲置和掉电模式;
12、26个SFR它们在RAM的80H-FFH中;
13、3个程序加密锁定位。
AT89S51共有40个引脚,如果按照它们的功能来分类,它们可分为4大类。
其中包括:
(1)VCC、VSS属于电源引脚;
(2)XTAL1和XTAL2属于时钟引脚;
(3)RST、EA/VPP、PSEN和ALE/PROG属于控制引脚;
(4)P0.0~0.7、P1.0~1.7、P2.0~2.7及P3.0~3.7这些引脚属于I/O口引脚。
在本系统单片机使用的功能有:
1、中断控制用于实时监测和控制:
(1)INT0:
外部中断请求0,中断请求信号由INT0引脚输入,中断请求标志为IE0,在豆浆机系统中表示液位过高而报警;
(2)INT1:
外部中断请求1,中断请求信号由INT1引脚输入,中断请求标志为IE1,在豆浆机系统中表示液位过低而报警;
2、实现豆浆机定时计数的功能:
TMOD为工作方式控制寄存器,用于选择定时器/计数器的工作模式和工作方式,不能位寻址,在此电路中,豆浆机工作在方式1,M1=0,M2=1,此时为16位的定时器/计数器,TLx的低8位与THx的高8位,TLx低8位溢出则向THx的高8位进位,THx计数溢出则把TCON中的溢出标志位TFx置1
3、读写控制位分别接两个LED灯来表示加热、粉碎,通过计数器的设置,加热粉碎轮流工作,
4、P0口作为地址/数据复用口,用作与外部存储器的连接,输出低8位地址和输出/输入8位数据,接两片74LS244,进而接数码管的阳极;P1口接译码器的三个通道,通过74LS245来进行数据传输,接数码管的阴极;P2口作为地址输出线使用,P2口可以输出外部存储器的高8位地址,与P0口输出的低8位地址一起构成16位地址,可以寻址64KB的地址空间,进而来控制键盘工作模式的选择,P3口可做外部中断和串行通信(P3.0~P3.1)
2.2 温度检测电路设计
当豆浆机正常工作时,需要先加热到90℃左右的温度,然后停止加热继续下一步的工作,所以这就需要一个温度传感器来检测水温,这里我选用的是DS-18B20数字温度传感器来模拟。
其具有耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。
2.2.1DS-18B20数字温度传感器介绍
DS18B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚T0-92小体积封装形式,温度测量范围为-55度到+125度,可编程为9位-12位A/D转换精度,测温分辨率可达0.0625度,被测温度用符号扩展的16位数字量方式串行输出。
DS18B20的技术特性:
1、独特的单线接口方式,DS18B20在与单片机相连时仅需一条线即可实现单片机与DS18B20的双向通讯,为读写以及温度转换可以从数据线本身获取能量,所以不需要外接电源。
2、测量温度范围为-55~125摄氏度;
3、工作电源为3.0~5.5V;
4、在使用中不需要任何外围元件;
5、测量结果以9~12位数字量方式串行传送;
6、每一个DS18B20包含一个特殊的序号,多个DS18B20可以同时存在于同一条总线,可以对室温进行监测和控制。
2.2.2 电路设计
由于独特的一线接口,只需要一条口线通信,DS18B20可以使用外部电源VDD,也可以使用内部的寄生电源。
当VDD端口接3.0V—5.5V的电压时是使用外部电源;当VDD端口接地时使用了内部的寄生电源。
无论是内部寄生电源还是外部供电,电路图如图所示:
图2.1DS18B20接口电路
2.3复位电路的设计
整个复位电路包括芯片内、外两部分。
外部电路产生的复位信号(RST)送斯密特触发器,再有片内复位电路在每个机器周期的S5P2时刻对斯密特触发器的输出进行采样,然后才得到内部复位操作所需的信号。
本设计中我们使用的是上电自动复位,其是通过外部复位电路的电容充电来实现的,只要电源Vcc的上升时间不超过1ms,就可以实现自动上电复位,即接通电源即可完成系统复位初始化。
如图所示:
图2.2豆浆机复位电路
2.4报警电路的设计
在豆浆机控制系统的设计中,我们设计了当豆浆机干烧和豆浆制作完成两种情况的蜂鸣报警,声音信号电流从单片机的P3.2脚输入到蜂鸣器发出声音,通过事先编写的程序,在单片机的控制下,系统开始工作,当上述两种情况中的一种发生时,单片机P3.2脚自动输出一个高平,使蜂鸣器通电导通,于是蜂鸣器发出报警,提醒用户。
图2.3豆浆机报警电路
2.5按键电路的设计
单片机的P2.1~P2.3接键盘的3、2、1来控制豆浆机模式的选择,按下键1时选择模式一,按下键2时选择模式二,按下键3时选择模式三;P