单片机课程设计豆浆机

上传人:文*** 文档编号:68863109 上传时间:2022-04-05 格式:DOC 页数:16 大小:437KB
返回 下载 相关 举报
单片机课程设计豆浆机_第1页
第1页 / 共16页
单片机课程设计豆浆机_第2页
第2页 / 共16页
单片机课程设计豆浆机_第3页
第3页 / 共16页
点击查看更多>>
资源描述
文档供参考,可复制、编制,期待您的好评与关注! 电气与电子信息工程学院单片机课程设计报告 题 目: 智能豆浆机 专业班级:电气工程及其自动化2012级(3)班 学号: 201240220326 姓 名: 李 越 同 组 人: 陈 俊 亚 指导教师: 胡 蔷 黄 磊 设计时间:2014年12月15日2014年12月19日 设计地点:K2-407单片机、微机原理实验室16 / 16课程设计任务书2014 2015 学年第1学期一、课程设计题目: ( 智能豆浆机 ) 二、课程设计要求 1. 根据具体设计课题的技术指标和给定条件,以单片机为核心器件,能独立而正确地进行方案论证和电路设计,完成仿真操作。要求概念清楚、方案合理、方法正确、步骤完整; 2. 熟悉、掌握各种外围接口电路芯片的工作原理和控制方法; 3. 熟练使用单片机汇编语言或C51进行软件设计; 4. 熟练使用Proteus、Keil软件进行仿真电路测试; 5. 熟练使用Protel软件设计印刷电路板; 6. 学会查阅有关参考资料和手册,并能正确选择有关元器件和参数; 7. 编写设计报告,参考毕业设计论文格式。(1)根据课题要求确定系统设计方案;(2)绘制系统框图、系统仿真原理图(印刷电路板图),列出元器件明细表;(3)计算电路参数和选择元器件,画出软件流程图(列出程序清单);(4)打印仿真结果,根据测试结果进行误差分析与修改调整;(5)对设计进行全面总结。3、 课程设计内容(含技术指标) 本次设计采用单片机AT89S52来实现全智能豆浆机各个功能的控制,只要功能内容如下:1. 针对食品原料的物理特性不同,在加工处理时采用三种不同的工作模式,其主要区别在于粉碎和加热时间长短不同,用蓝色、黄色LED灯分别来表示加热、粉碎过程。2. 不同的工作模式、温度、加热与粉碎设定时间,以及其剩余时间都用数码管显示出来。3. 当液位溢出或干烧状态时,实现立即停止工作,蜂鸣器发出声音产生报警(以中断方式采用拨码开关来模拟)。4. 每个模式工作完成后自动报警。1.总体方案1.1 引言随着我们生活水平的提高,五谷杂粮成为了当今人们的健康理念。豆浆越来越受到大家的喜爱,豆浆不仅营养价值高,更是许多爱美、养生人士的必备补品。今天就来介绍由单片机AT89C52来控制的全智能豆浆机。豆浆机的工作过程主要是加热和粉碎,通过键盘来选择三种工作模式,区别仅仅是加热、粉碎时间不同。豆浆机出现干烧、溢出时采用外部中断INT0(P32)和INT1(P33)来实现,设为高优先级中断,豆浆机立即停止工作,产生报警。加热与粉碎分别用不同颜色的LED灯来显示,同时工作模式、粉碎加热时间以及温度显示都用数码管一一显示。每个工作模式完成后,蜂鸣器便会发出声音来提醒用户豆浆做好了。1.2 设计思路 本次设计的智能豆浆机主要由温度传感器、防溢防干烧电路、复位电路、按键电路、加热粉碎电路、报警电路以及六位数码管组成。其中防溢防干烧电路以中断方式采用拨码开关来模拟,采用蜂鸣器与红色LED灯进行声光报警。加热粉碎电路中,分别采用两个不同颜色的LED灯来显示,在工作状态时,LED灯点亮。设定工作模式有三种,模式1:上电后按键按下1(工作模式1),豆浆机自动检测有无溢出、干烧状况,确保无误后开始正常工作,否则产生报警。工作过程是加热-粉碎-加热-粉碎-加热。加热3分钟,粉碎3分钟,一共是45分钟。在程序中用1s代替1分钟,也就是45s,每个工作模式完成后豆浆机以报警来提醒用户,三种工作模式区别仅在于加热粉碎时间长短不同。键盘上设置了14按键,按键13是用来选择工作模式,按键4是用来显示温度。设计中采用DS18B20是一线式数字温度传感器,通过键盘扫描,当四键按下时测量液体温度,并将温度显示五秒,显示之后为初始值。六位LED动态显示数码管,第一位来显示工作模式,第二三位显示加热粉碎设置时间,后三位则是正计时。 1.3 原理框图 本智能豆浆机控制系统设计原理如下图所示:AT89C52蜂鸣报警防干烧电路复位电路按键加热电路防溢电路温度传感器计时模块图1-1 智能豆浆机控制系统框图 系统主要有:显示模块、时钟模块、复位模块、定时控制模块、按键模块 。 说明:AT89C52的P0口接74LS245的A0A7口,用来驱动数码管显示,完成数据传输;单片机P1.0P1.2口接74LS138的A,B,C端口,P1.3口接温度传感器通过数码管来显示温度,P2.1P2.3接键盘的1、2、3来控制豆浆机模式的选择,P2.5P2.7接键盘的A、B、C端来控制温度显示、粉碎溢出的功能;P3.2与P3.3两个外部中断来处理溢出、干烧的状况;P3.6P3.7接两个LED灯分别表示加热和粉碎。2. 系统硬件设计2.1单片机AT89C52 AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,AT89C52单片机在电子行业中有着广泛的应用。 RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。 EA/VPP:外部访问允许。欲使CPU 仅访问外部程序存储器(地址为0000HFFFFH),EA 端必须保持低电平(接地)。需注意的是:如果加密位LB1 被编程,复位时内部会锁存EA端状态。如EA端为高电平(接VCC端),CPU 则执行内部程序存储器中的指令。Flash存储器编程时,该引脚加上+12V 的编程允许电源VPP,当然这必须是该器件是使用12V编程电压VPP。 P0口(P0.0P0.7)是一个8位漏极开路双向输入输出端口,当访问外部数据时,它是地址总线(低8位)和数据总线复用。外部不扩展而单片应用时,则作一般双向IO口用。P0口每一个引脚可以推动8个LSTTL负载。 P2口(P2.0P2.7)口是具有内部提升电路的双向I/0端口(准双向并行I/O口),当访问外部程序存储器时,它是高8位地址。外部不扩展而单片应用时,则作一般双向IO口用。每一个引脚可以推动4个LSTL负载。 P1口(P1.0P1.7)口是具有内部提升电路的双向I/0端口(准双向并行I/O口),其输出可以推动4个LSTTL负载。仅供用户作为输入输出用的端口。 P3口(P3.0P3.7)口是具有内部提升电路的双向I/0端口(准双向并行I/O口),它还提供特殊功能,包括串行通信、外部中断控制、计时计数控制及外部随机存储器内容的读取或写入控制等功能。功能部件及特性:1、兼容MCS51指令系统2、8kB可反复擦写(大于1000次)Flash ROM;3、32个双向I/O口;4、256x8bit内部RAM;5、3个16位可编程定时/计数器中断;6、时钟频率0-24MHz;7、2个串行中断,可编程UART串行通道;8、2个外部中断源,共8个中断源;9、2个读写中断口线,3级加密位;10、低功耗空闲和掉电模式,软件设置睡眠和唤醒功能;11、有PDIP、PQFP、TQFP及PLCC等几种封装形式,以适应不同产品的需求。 本次设计使用到的功能有: 1)复位信号输入端RST,本设计中我们使用的是上电自动复位,其是通过外部复位电路的电容充电来实现的,只要电源VCC的上升时间不超过1ms,就可以实现自动上电复位,即接通电源即可完成系统复位初始化。2) P1口作为单功能的I/O口,P1.0P1.2接到138译码器的输入端,输出端又接245总线收发器,通过245总线收发器连接数码管的位选端。P1.3接到温度传感器的输入端DQ,来驱动温度显示。3) P0口在本次设计中作为低八位数据输出,由于P0口驱动负载能力有限,所以通过连接芯片245来驱动数码管。4) P2口作为高八位地址输出线,它与P0口输出的低八位地址一起构成16位地址,可以寻址64KB的地址空间。在设计中用来控制键盘输入。5)两个外部中断请求INT0和INT1,低电平有效。位于P3口的P3.2和P3.3.INT0:外部中断请求0,中断请求信号由INT0引脚输入,中断请求标志为IE0。INT1:外部中断请求1,中断请求信号由INT1引脚输入,中断请求标志为IE1。P3.6、P3.7分别用来控制加热、粉碎电路。2.2温度检测电路设计 图2-1 温度检测电路 DS18B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚T0-92小体积封装形式,温度测量范围为-55度到+125度,可编程为9位-12位A/D转换精度,测温分辨率可达0.0625度,被测温度用符号扩展的16位数字量方式串行输出。DS18B20的技术特性:1、 独特的单线接口方式,DS18B20在与单片机相连时仅需一条线即可实现单片机与DS18B20的双向通讯,为读写以及温度转换可以从数据线本身获取能量,所以不需要外接电源。2、 测量温度范围为-55125摄氏度;3、 工作电源为3.05.5V;4、 在使用中不需要任何外围元件;5、 测量结果以912位数字量方式串行传送;6、 每一个DS18B20包含一个特殊的序号,多个DS18B20可以同时存在于同条总线,可以对室温进行监测和控制,引脚DQ接单片机P1.3口。 由于独特的一线接口,只需要一条口线通信,DS18B20可以使用外部电源VDD,也可以使用内部的寄生电源。当VDD端口接3.0V5.5V的电压时是使用外部电源;当VDD端口接地时使用了内部的寄生电源。无论是内部寄生电源还是外部供电,电路图图所示。2.3 复位电路的设计 图2-2 复位电路整个复位电路包括芯片内、外两部分。外部电路产生的复位信号(RST)送斯密特触发器,再有片内复位电路在每个机器周期的S5P2时刻对斯密特触发器的输出进行采样,然后才得到内部复位操作所需的信号。本设计中我们使用的是上电自动复位,其是通过外部复位电路的电容充电来实现的,只要电源VCC的上升时间不超过1ms,就可以实现自动上电复位,即接通电源即可完成系统复位初始化。如图所示2.4 报警电路的设计 图2-3 报警电路在豆浆机控制系统的设计中,我们设计了当豆浆机干烧和豆浆制作完成两种情况的蜂鸣报警,声音信号电流从单片机的P3.2脚输入到蜂鸣器发出声音,通过事先编写的程序,在单片机的控制下,系统开始工作,当上述两种情况中的一种发生时,单片机P3.2脚自动输出一个高平,使蜂鸣器通电导通,于是蜂鸣器发出报警,提醒用户。2.5按键电路 图2-4 按键电路 单片机的P2.1P2.3接键盘的3、2、1来控制豆浆机模式的选择,按下键1时选择模式一,按下键2时选择模式二,按下键3时选择模式三; P2.5P2.7接键盘的A、B、C端来控制温度显示、粉碎溢出的功能。如图所示2.6芯片74LS245 图2-5 74LS245引脚图在这里用来驱动数码管,它是8路同相三态双向总线收发器,可双向传输数据。74LS245还具有双向三态功能,既可以输出,也可以输入数据。当AT89C52单片机的P0口输出到数码管,那就要考虑到数码管的亮度以及P0口带负载的能力,选用74LS245提高驱动能力。P0口的输出经过74LS245提高驱动后,输出到数码管显示电路,AB/BA端接高电平时表示数据传输从A到B,若接低电平是则表示数据传输从B到A。2.7芯片74LS138 图2-6 74LS138引脚图 当一个选通端(E1)为高电平,另两个选通端((/E2)和(/E3))为低电平时,可将地址端(A0、A1、A2)的二进制编码在Y0至Y7对应的输出端以低电平译出。A0A对应Y0Y7;A0,A1,A2以二进制形式输入,然后转换成十进制,对应相应Y的序号输出低电平。2.8共阴极数码管 图2-7 数码管驱动电路 采用动态扫描法显示LED数码管。AT89C52的P1.0,P1.1,P1.2与74LS138的A,B,C连接74LS138通过74LS245与LED数码管的阴极相连来选择数码管,用P0口通过一片74LS245与数码管的阳极相连,P2口与键盘连接,传感器18B20与P1.3口相连构成温度控制。2.9防溢、防干烧电路使用单片机P3.2和P3.3两个外部中断来处理水位溢出、干烧状况。(以中断方式采用拨码开关来模拟)加热和粉碎采用不同颜色的LED灯来显示工作状态。 图2-8 防溢防干烧电路3. 系统软件设计3.1系统程序流程图 图3-1 系统程序流程图 4. 仿真结果及其分析4.1仿真原理图 图4-1 仿真原理图4.2仿真工作模式1 图4-2 模式1的仿真 按下按键1,则表示工作在模式1状态下,数码管第一位表示工作模式,第2、3位分别表示加热、粉碎的时间,后三位是正计时。工作1模式完成后,豆浆机将自动报警提醒用户。图中可见,在工作第2秒时,加热状态LED灯点亮,豆浆机在加热状态,在随后的时间里会看到粉碎状态也会点亮。4.3仿真工作模式2 图4-3 模式2的仿真 按下按键2,表示工作在模式2状态下,加热4分钟,粉碎四分钟,也就是数码管前三位244.后三位是正计时。加热LED灯与粉碎LED灯在工作状态时就会点亮。4.4仿真工作模式3 图4-4 模式3的仿真按下按键3,表示工作在模式3状态下,加热5分钟,粉碎5分钟,也就是数码管前三位355.后三位是正计时。加热LED灯与粉碎LED灯在工作状态时就会点亮。4.5温度显示 图4-5 温度显示仿真按下按键4,将显示此时工作温度。4.6报警仿真 图4-6 报警仿真任一个开关溢出或干烧合上,或是工作模式完成,则蜂鸣报警,如图可见,报警指示灯红灯点亮。5. 总结 本设计主要由单片机系统、数码管显示、键盘、报警系统组成。系统主要实现模式选择,在规定时间内完成加热、粉碎,温度显示,在豆浆机干烧、溢出和豆浆制作完成两种情况的蜂鸣报警等功能。 由于豆浆机是在单片机的控制下运行,所以在设计中,加热、粉碎电路是用两个LED灯来模拟显示的,灯亮就表示在工作状态。以及防止溢出、干烧电路以中断方式采用拨码开关来模拟。与实物设计存在一定差别。 第一次完成单片机设计,发现问题重重,自己在单片机学习上有待提高,以至于在体现豆浆机的智能性上不全面,比如,在豆浆机加热时,温度到达某一值时,系统将自动停止加热,而是保温。这样既省电又环保。另外,中断产生后系统不能回复原来的程序,只能重新工作。最后,关于每个工作模式完成后自动报警时,如果设置成报警蜂鸣器响3下,然后自动断电,这样在用户不能及时关掉电源时,蜂鸣器就不会一直响,噪音太大。 通过这次豆浆机的设计,受益匪浅,让我提高了对单片机的学习,keil和proteus是非常好用的工具用于单片机的编程和仿真。对软件prteus和keil的操作更进一步的熟悉,学习单片机的种种控制原理,对芯片功能,以及单片机是如何控制有了进一步的认识。这次的课程设计联系生活且非常有趣味,把理论知识应用到实践大大提高了动手能力,在老师和同学的帮助下,各种问题一一解决,豆浆机的设计完成比较早,做出了仿真的心情很激动。 单片机课程设计成绩评定表设计题目:智能豆浆机答辩记录:1、 报警的声音信号从哪儿来? 答:在豆浆机控制系统的设计中,我们设计了当豆浆机干烧和豆浆制作完成两种情况的蜂鸣报警,声音信号电流从单片机的P3.2脚输入到蜂鸣器发出声音,通过事先编写的程序,在单片机的控制下,系统开始工作,当上述两种情况中的一种发生时,单片机P3.2脚自动输出一个高平,使蜂鸣器通电导通,于是蜂鸣器发出报警,提醒用户2、按键电路是如何控制数码管显示的? 答:按下按键1,则表示工作在模式1状态下,数码管第一位表示工作模式,第2、3位分别表示加热、粉碎的时间,后三位是正计时。按下按键2,表示工作在模式2状态下,加热4分钟,粉碎四分钟,也就是数码管前三位244.后三位是正计时。按下按键3,表示工作在模式3状态下,加热5分钟,粉碎5分钟,也就是数码管前三位355.后三位是正计时。按下按键4,将显示此时工作温度。成绩评定考勤(10)答辩 (20)仿真或实物测试 (20)设计报告(50)总分(百分制)成绩评语: 指导教师签字: 2014 年 12 月 日
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 各类标准


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!