机械工程学院毕业设计(论文)题目:基于单片机饮水机智能控制系统专业:机电技术教育班级:113姓名:学号:指导教师:日期:2015年6月1目录1前言........................................................................31.1课题来源与背景.........................................................31.1.1课题来源.........................................................31.1.2课题背景.........................................................31.2课题的研究意义.........................................................32系统总体的设计..............................................................42.1硬件总体的设计........................................................42.1.1单片机最小系统设计...............................................42.1.2温度采集电路设计.................................................92.1.3A/D转换电路设计................................................102.1.4LED显示电路设计...............................................122.1.5键盘电路设计....................................................142.1.6报警电路设计....................................................162.1.7继电器控制电路设计..............................................172.2软件总体的设计........................................................172.2.1主程序流程图....................................................182.2.2各个模块的流程图................................................192.2.3键盘扫描处理流程................................................212.2.4报警处理流程....................................................213系统调试...................................................................223.1硬件电路检查..........................................................233.1.1温度采集电路检查................................................233.1.2A/D转换电路检查................................................233.1.3显示电路检查....................................................233.1.4键盘电路检查....................................................233.1.5报警电路检查....................................................233.2软件调试.............................................................243.3软硬联调.............................................................244总结与展望.................................................................25参考文献.....................................................................26附录1系统设计程序(系统源代码).............................................28附录2系统总体电路图.........................................................352基于单片机饮水机智能控制系统摘要:温度控制无论是在工业生产过程中,还是在日常生活中都起着非常重要的作用。单片机在电子产品中的应用已经越来越广泛,在很多电子产品中也用到了温度检测和温度控制。本次设计的主要目的在于,设计出一个全新的智能控制系统,该系统具有温度检测、温度控制、温度报警、液面报警等功能。关键词:单片机AT89S52、DS18B20、LED数码管显示31前言1.1课题来源与背景1.1.1课题来源在日常生活中和工业生产过程,温度控制都起着巨大的作用,温度过高或温度过低都会使水的资源失去它本该有的作用,因而使水资源严重的浪费。尤其在当前全球的水资源相当缺乏的情景下,更要求我们控制水温的技术更加熟练,充分利用好身边的水资源。1.1.2课题背景传统饮水机的局限性一般体现在以下几个方面:第一,功能相对简单,只有简单的温度控制,而使用者不能根据自己的喜好设定温度参数。第二,能耗大,在无人使用的时候饮水机也处于开机状态,这无疑会造成能源的大量浪费,在能源紧缺的今天,这个问题更有待解决。第三,长期饮用饮水机里反复烧的水不利于身体健康,由于大部分使用的饮水机烧水不能完全沸腾,长期饮用这种水会对身体造成极大的伤害。1.2课题的研究意义单片机已经在电子产品中应用越来越广泛,在大多电子产品中也用到了温度检测和温度控制。因此,本次设计的主要目的在于,设计出一个全新的智能控制系统,该系统具有温度检测、温度控制、温度报警、液面报警等功能。本次设计饮水机智能控制系统,要符合人们需求的生活用水,先要把水烧开,然后使水温保持一定的温度,同时要具备饮水机的液位报警,温度报警等功能,方便人们饮用。掌握好对饮水机的控制,就能在一定程度上把我们身边的水充分利用起来,防止了每次加热都使水沸腾,既节能又能更好的满足人们的需求。因此,设计基于单片机的温度控制器,用于控制温度。具体要求如下:1、可以通过数码管显示饮水机水箱水温度数;2、可以通过键盘或开关选择制冷或加热;3、可以人为设置水温度的上下限,如加热,当温度在设定的范围内时正常工作,当低于水温下限时控制加热器加热;如制冷,当温度高于水温上限时,控制压缩机制冷;4、温度检测范围0-95℃,精度±1℃;5、温度超过设定值时具有示警功能。42系统总体的设计2.1硬件总体的设计设计并制作一个基于单片机的热水器温度控制系统的电路,其结构框图如图2.1:图2.1系统机构框图硬件系统子模块:单片机最小系统电路部分键盘扫描电路部分LED显示电路部分及指示灯温度采集电路部分报警部分继电器控制部分2.1.1单片机最小系统设计单片机最小系统如图2.2所示,由主控器AT89S52、时钟电路和复位电路三部分组成。单片机AT89S52作为核心控制器控制着整个系统的工作,而时钟电路负责产生单片机工作所必需的时钟信号,复位电路使得单片机能够正常、有序、稳定地工作。5图2.2单片机最小系统1、单片机选择AT89S52[1]是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52在众多嵌入式控制应用系统中得到广泛应用。其管脚图如图2.3所示。图2.3AT89S52管脚图6(1)P0口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0不具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。(2)P1口:P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平。此外,P1.0和P1.1分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX)。在flash编程和校验时,P1口接收低8位地址字节。引脚号第二功能:P1.0T2(定时器/计数器T2的外部计数输入),时钟输出P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P1.5MOSI(在系统编程用)P1.6MISO(在系统编程用)P1.7SCK(在系统编程用)(3)P2口:P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动AT89S52引脚图PLCC封装4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。(4)P3口:P3口是一个具有内部上拉电阻的8位双向I/O口,p3输出缓冲器能驱动4个TTL逻辑电平。P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。在flash编程和校验时,P3口也接收一些控制信号。7端口引脚第二功能:P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INTO(外中断0)P3.3INT1(外中断1)P3.4TO(定时/计数器0)P3.5T1(定时/计数器1)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器读选通)此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。(5)RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。(6)ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。(7)PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S52