毕业设计(论文)-基于AT89S52单片机的自动消毒柜控制器设计.doc_第1页
毕业设计(论文)-基于AT89S52单片机的自动消毒柜控制器设计.doc_第2页
毕业设计(论文)-基于AT89S52单片机的自动消毒柜控制器设计.doc_第3页
毕业设计(论文)-基于AT89S52单片机的自动消毒柜控制器设计.doc_第4页
毕业设计(论文)-基于AT89S52单片机的自动消毒柜控制器设计.doc_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

i 自动消毒柜控制器设计 摘 要 随着现代科学技术的不断发展,微电脑控制技术开始逐步渗透到各个领域中,包括工 业、农业以及家庭生活。温度的变化对人们的生产和生活有一定的影响,通过对环境的 检测、分析掌握其变化规律并合理利用,以改善人类的生活。消毒柜就是为了人们日常 生活中的餐具消毒而设计的,采用微电脑控制技术,精确地控制消毒柜内的温度和加热 时间,很大程度上改善了人们的饮食卫生,提高了人们的生活水平。本次设计以单片机 at89s52 为核心的控制系统,它不仅能够能够实现消毒时间的循环选择,而且拥有两个 七段数码管指示、继电器的开关作用,并能够人工实现“开始”及“停止”继电器来控 制实现消毒柜的功能。 此定时控制系统的特点具有:操作简单,功能实用;低成本制作;应用范围广;精 确的电子式定时。 关键字:单片机 at89s52; 定时控制; 继电器; 七段数码管显示; ii the controller design of automatic sterilizing cabinet abstract with the continuous development of modern science and technology, microcomputer control technology began gradually penetration in various fields, including industry, agriculture and family life. the change of the temperature on peoples production and lives have certain influence to environment, through the test, analysis to master its change rule and reasonable use to improve peoples lives. alexipharmic ark is to peoples daily life of tableware sterilization and design, microcomputer control technology, accurate control of the disinfection cabinet temperature and heating time, largely improved peoples food hygiene and improve the peoples living standards. this design with monolithic integrated circuit at89s52 as the core of the control system, it can not only can realize sterilization time cycle options, and has two seven segment digital tube instructions, relays, switches, and able to artificially realize role “start“ and “stop“ relay to control achieve alexipharmic ark function. the characteristics of the timing control system with: the operation is simple, functional practical; low-cost production; wide application range; accurate electronic timing. keywords: monolithic integrated circuit at89s52; timing control; relays; seven segment digital tube display iii 目 录 1、 绪论1 1.1.课题的背景和意义1 1.2. 项目的主要任务1 1.3 本文主要研究内容.2 2、 简介1 2.1.1.硬件设计19 2.1.2.软件设计19 2.1.2.1.标题四19 致 谢22 参考文献22 附 录23 1 1、绪论 1.1.课题的背景和意义 随着社会的发展,科技的进步,测温控温仪器的广泛应用,智能控温已经是当今控 制系统的主流方向,特别近年来温度控制系统已经应用的人们生活的各个方面但温度控 制却是一个一直未开发的领域,却是与人们息息相关的问题。 而该课题是设计一个消毒柜其实就是设计一个智能的温度控制系统,消毒柜主要通 过加热到一个指定温度,对餐具等卫生洁具进行高温消毒,消毒柜将高温控制在一个指 定的范围内,并维持一定时间,杀灭细菌,极大地增强了人们的饮食卫生,大大降低了 疾病的交叉传染,为提高人们的身体健康起了重要的作用。 1.2.国内外研究概况及发展方向 基于国内外对消毒柜的研究大体分为三个方向:首先是基于温度控制,通过对温度 的控制来达到消毒的目的分为高温型电子消毒柜杀和低温型消毒柜,其次是市场上的一 些通过臭氧消毒,最后就是通过紫外线消毒的消毒柜。 这三类消毒柜其中高温消毒柜高温型电子消毒柜杀灭细菌和病毒的效果好,升温速 度快,时间短,一次消毒的时间一般不超过 25 分钟,同时,在消毒过程中不产生气体, 因此容易被用户接受。高温型电子消毒柜适用于不锈钢、铝、陶瓷、玻璃制成的餐具、 茶具,但不适于消毒不耐热的塑料、漆 、木、竹制品,选购时要考虑这一点。一般家中 电子消毒柜耗电功率多在 600-700 瓦左右, 每次消毒耗电相对低温型要多一些。 低温型消毒柜杀菌消毒的时间较长,一次消毒时间需要 60 分钟才能完成,若柜门门 封密封不好,会有少量臭氧的难闻气味逸出。但适用任何材料,包括塑料制成的奶瓶奶 嘴、茶具和餐具都可以进行消毒。低温型电子消毒柜耗电量一般都较小,家中使用的多 在 200 瓦以下,价格较便宜。 根据中国预防医学科学院消毒研究中心测试的数据表明:消毒柜内部的温度必须达 到 125,而且持续保持 10 分钟,才能把对人身体有害的牙孢菌及肝炎病菌杀死。出于 这个原因,只有单一远红外线消毒功能的消毒柜中不宜存放塑料器皿,因为要想在柜内 达到 125,不论是采用石英管还是电热丝发热,发热元件附近的温度肯定会大大高于 125,塑料容器在长时间的烘烤之下,很容易变形。 2 纵观国内外市场中的消毒柜产品,其发展方向是系统采用微电脑控制,vfd 动态显 示当前系统工作情况及其他参数,同时采用数码控制定时开关、自动除臭,采用 高新纳米磁性门封材料、排气孔特设防虫网。 1.3 本文主要研究内容 本次毕业设计的题目自动消毒柜控制器。在硬件电路的设计上采用了 atmel 公 司生产的 at89s52 单片机作为整个系统的控制核心,对继电器进行控制从而达到控制消 毒功能。此控制器不仅体积小,制作经费低,且采用 c 语言进行编程,易于修改移植, 安全耐用,显示功能直观,性能可靠,而且便于进行功能扩展。同时,at89s52 单片机 的硬件结构具有功能部件种类全,功能强等特点,尤其是该单片机 cpu 中的位处理器, 它实际上是一个完整的 1 位微计算机,这个一位微计算机有自己的 cpu、位寄存器、i/o 口和指令集,1 位机在开关决策、逻辑电路仿真、过程控制方面非常有效。 此外,采用继电器控制消毒功能给整个电路系统大大提高了操作的安全性。继电器 作为一种电子控制器件,因为它具有控制系统和被控制系统的功能,而且在电路中常起 着自动调节、安全保护和转换电路等作用,因此,自动控制电路中它的应用相当之广泛, 简单的来说,它就是用较小的电流去控制较大电流的一种“自动开动” 。故非常适合在 学校、部队、厂矿、机关、医院等集体食堂和家庭及各类餐馆、饭店的消毒柜中安装使 用。 而在软件程序的设计方面,采用了 c 语言,c 语言是(combined language)的中英 混合简称。是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的 特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语 言,编写不依赖计算机硬件的应用程序。因此,它的应用范围广泛,不仅仅是在软件开 发上,而且各类科研都需要用到 c 语言,具体应用比如单片机以及嵌入式系统开发。特 别在本次关于自动消毒柜定时控制器定时程序上的应用,我采用了单片机中的定时器 0 进行精确地软件程序定时,使其精确度几乎是分秒不差,而且定时长度易于修改,给传 统单一的消毒模式提供多方面的选择。 综上所述,只有良好的消毒设备才能保证人们摄入身体的食物是健康卫生的。消 毒柜作为现代厨房中重要的电器之一,在未来几年,将持续平稳增长的态势,消毒柜 行业也日趋发展成熟。消毒柜,中国人自己研究出来的产品,只有不断地优化其系 统设备才能当今飞速发展的现代生活。 3 2 自动消毒柜方案设计与论证 根据题目的要求,本次设计需要能够实现四种不同消毒模式的循环选择,而且拥有 led 指示、继电器的开关作用,以及能够人工实现“开始”及“停止”继电器来控制来 实现消毒功能。以下设计有不同的方案,通过对比器件的实用性及市场采购情况,我们 选择如下合适本次设计的方案。 2.1 控制芯片方案的比较 无论是进行任何项目设计,控制芯片往往是主要也是最核心的部分,选择什么样的 控制芯片决定了整个电路的设计方案。本次关于自动消毒柜控制器的设计因为需要有端 口的输入输出控制,因此在功能要求方面比较灵活,下面就本次自动消毒柜控制器的控 制芯片选择做如下的方案比较: (1)采用三极管的开关性质组成控制器控制继电器的通断。电路结构简单,纯模拟技术, 机械化,三极管易损坏7。不具有智能化同时也不符合设计要求。 (2)采用摩托罗拉公司生产的 mc68hc 系列单片机作为控制芯片。该芯片提供了 2kb 的用户 rom 和 128b 的 ram,具有 a/d 转化功能。同时还具有 16 位定时器技术 寄存器,在技术寄存器基础上,利用了两个字节的输出比较寄存器中值时,自动输 出一个信号,同时产生时钟中断。易实现智能控制器中的模糊控制。但是,这种模 糊控制技术太复杂而且电子市场上已经很少有这一类的单片机供货。此外,采用 mc68hc 系列单片机作为控制芯片需要用汇编语言进行程序的编程下载,这与现如 今最为主流的编程语言(c 语言)相比其应用性、可移植性与灵活性都将大大降低, 增加了编程与调试方面的难度。 (3)采用 atmel 公司生产的 at89s52 单片机作为系统的控制器。at89s52 是一种带有 8k 字节闪烁可编程可擦除只读存储器(fperomflash programmable and erasable read only memory) 。是一款低电压,高性能 cmos8 位微处理器。单片机的可擦除 只读存储器可以反复擦除 100 次。该器件采用 atmel 高密度非易失存储器制造技术 制造,与工业标准的 mcs-51 指令集和输出管脚相兼容,兼容性相当之大。由于将 多功能 8 位 cpu 和闪烁存储器组合在单个芯片中,atmel 的 at89s52 可以说是 一种非常高效微控制器,在众多领域,at89sxx 系列单片机为很多嵌入式控制系 统提供了一种灵活性高且设计效率高方案,而且,在现如今的电子市场上,atmel 系列的单片机十分廉价,非常适用于大批量的生产,从而大大节省了制作经费9。 综上所述,本设计采用第三种方案。 4 2.2 定时器方案的选择与比较 由于本次设计的主要功能在于对消毒进行不通时间模式的定时,因此在定时方面的 设计不但要求要有精确无误的定时,而且还需要能够配合主控芯片进行定时控制。下面 就本次自动消毒柜控制器的定时方案的选择做如下的方案比较: (1)采用 ds1302 时钟芯片进行时间的定时。ds1302 是 dallas 公司推出的一款时钟 芯片,具有采用串行通行方式与单片机通信,体积为普通时钟芯片的 1/4,而且片 内均含有 31 字节的 ram、时钟校准比较容易。但此时钟芯片并不适合用于本次设 计,因为此种芯片需要用到专用的晶体振荡器,这种振荡器在市场上的价格比较昂 贵,而且硬件电路的连接容易出错,并且其定时方面容易出现误差4。 (2)采用延时函数 delay 进行软件延时。delay 函数是一种编程语言常用的延时函数, 它可以通过内部的软件计算来达到延时的目的,进而显示出定时的效果。虽然此种 方法简单可行,但定时误差值相当之大,定时数值一旦大于 10 秒以上就会出现非 常明显的误差,这远远不能满足本次设计要求精确定时的目的2。 (3)采用单片机内部定时器 0 中断进行定时。定时器是单片机系统一个重要的部件,可 以用来实现定时控制、频率测量、脉宽测量、和信号发生等,它是 mcs 系列单片 机内部设置的两个 16 位可编程的定时/计数器(t0/t1)中的一个,他们具有计数 方式和定时方式两种工作方式,以及 4 种不同的工作模式。对于定时器 0,其最大 的功能就是可以对单片机内部的机器周期进行精确的计数,且计数时间可达到分秒 不差!定时器的定时不同于 delay 函数的内部软件定时,它可以随着程序的开始便 执行中断计数工作,而不像 delay 函数那样执执行多次延时指令后就会占据掉相当 大的存储空间8。 综上所述,本次设计的定时方案采用方案三进行消毒柜的定时。 2.3 继电器在消毒中的作用 在现代自动控制设备中,都存在一个电子电路(弱电)与电气电路(强电)的互相 连接问题,一方面要使电子电路的控制信号能够控制电气电路的执行元件(如电动机、 电磁铁的电灯等) ,另一方面又要为电子线路的电气提供良好的电隔离,以保护电子电路 和人身安全。继电器便能起到这一桥梁的作用6。如图 3-2 是一种常用的继电器。 继电器作为一种电子控制器件,因为它具有控制系统和被控制系统的功能,而且在 5 电路中常起着自动调节、安全保护和转换电路等作用,因此,自动控制电路中它的应用 相当之广泛,简单的来说,它就是用较小的电流去控制较大电流的一种“自动开动” 。 故在本次设计中选用了继电器来作为消毒开关。 图 2-3 图 2-4 2.4 系统供电方案 由于消毒柜电路板上主要的供电对象是 at89s52 单片机、发光二极管、继电器等元 件,对于这些元件,我们只需要提供一个 5v 的电源就能使它们正常工作,因此,不采用 复杂的开关电源电路作为本次设计的供电方案。我们提供了一个能够装载四节 1.5v 电池 的电池盒作为供电源,并通过跳线将其连接到电路板上给器件提供电源,在电路板上的 电源入口处还接上了一个 1n4001 型的二极管对它进行限流,不仅能将电源限制在 5v 左 右,而且能防止电源正负极接反导致器件烧坏。 2.5 电路板设计方案 在电路系统中,电路板就相当于一个载体,其设计的重要性当然不言而喻,采用不 同的方法设计电路板都对整个电路系统造成不一样的影响。下面就本次自动消毒柜控制 器的电路板设计的选择做如下的方案比较: (1)手工刻线,这种方法步骤简单,制作速度快,设计自由大,适合简单电路板。如果 电路板的连线很细且布线复杂,手工刻线难以达到其要求,不美观且耗时长。 (2)运用绘图软件 protel99se 设计并制作 pcb。该软件功能强大,由系统自动布线或者 手工绘制,其布线精度高,排版灵活有序美观,速度快。但电路板的制作流程复杂, 工艺要求比较高。 (3)采用万能板比较方便,可直接连线焊接,但由于覆铜区多,散热面积大,只适应用 于元器件较少的简单电路。另外,连线时容易造成管脚之间短路,而且又出错不易 检查,复杂系统很难实现。 6 综上所述,由于本次电路设计并不复杂采用第三种方案来设计电路板。 2.6 显示模块 方案一: 用不同颜色的 led 发光二极管显示。能发便快捷的指示消毒所选择的时间和消毒的开始 与停止。但是发光二极管不能显示消毒的进程。 方案二: 用七段数码管显示。通过 at89s52 单片机控制七段数码管,不仅能够游戏哦啊的控制消 毒柜的开始与停止,而且可以有效地看到消毒的进程。 本次采用的七段数码管的型号是 eld-512gwb(图 2-5)是一种共阳极七段数码管,用 at89s52 的 p0 口,p1 口来控制七段数码管。 图 2-5 7 3 消毒柜控制硬件设计 本次设计的核心之处,是在于对单片机芯片的控制,一个单片机应用系统的硬件电 路设计包含有两部分内容:一是系统扩展,即单片机内部的功能单元,如 romrami/o 口定时/记数器中断系统等,当这些条件不能满足应用系统的要求 时,必须在片外进行扩展,选择适当的芯片,设计相应的电路。二是系统配置,既按照 系统功能要求配置外围设备,如键盘显示器打印机a/dd/a 转换器等,要设计合适 的接口电路。本次有关消毒柜的电路设计,在系统功能的要求下,需要用到发光二极管、 按键、继电器等这些外围设备来实现系统的功能8。 3.1 at89s52 单片机结构介绍 at89s52 单片机是美国 atmel 公司生产的低电压,低功耗、高性能 cmos8 位微控 制器,具有 8k 在系统可编程 flash 存储器。使用了 atmel 公司高密度非易失性存储器技 术制造,与工业 80c51 产品指令和引脚完全兼容。片上 flash 允许程序存储器在系统可编 程,亦适于常规编程器。在单芯片上,它拥有灵巧的 8 位 cpu 和在系统可编程 flash, 使得 at89s52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案9。 图 3-1 at89s52 单片机 如图 3-1 所示,便是一个 at89s52 单片机。众所周知,单片机是把那些作为控制应 用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上。如果按功能划分,它由 如下功能部件组成,即微处理器、数据存储器、程序存储器、并行 i/o 口、串行口、定时 器/计数器、中断系统及特殊功能寄存器。它们都是通过片内单一总线连接而成,其基本 结构依旧是 cpu 加上外围芯片的传统结构模式。但对各种功能部件的控制是采用特殊功 能寄存器的集中控制方式,下面就 at89s52 单片机做简要的介绍: 3.1.1 at89s52 功能特性描述 8 at89s52 提供以下标准功能:4k 字节 flash 闪速存储器,128 字节内部 ram,32 个 i/o 口线,两个 16 位定时/计数器,一个 5 向量中断结构,一个全双工串行通信口,片内 震荡器及时钟电路,如图 3-2 所示。同时,at89s52 可降至 0hz 的静态逻辑操作,并支 持两种软件的可选的节电工作模式。空闲方式停止 cpu 的工作,但允许 ram,定时/计 数器,窜行通信口及中断系统继续工作。掉电方式保存 ram 中的内容,但震荡器停止工 作并禁止所有部件工作直到下一个硬件复位。 下面对 at89s52 一些重要的引脚及功能应用做简要的说明8: 图 3-2 at89s52 引脚图 (1)vcc :40 引脚电源电压 ; (2)gnd :20 引脚地信号 ; (3)p0 口 :39 引脚-32 引脚,po 口是一组 8 位漏极开路行双向 i/o 口,也既地址/数 据总线复用口。可作为输出口使用时,每位可吸收电流的方式驱动 8 个 ttl 逻辑电路,对端口写“1”可作为高阻抗输入输入端用。在访问外部数 据存储器时,这组口线分时转换地址(低 8 位)和数据总线复用,在访问 期间激活内部上拉电阻。在 flash 编程时,p0 口接收指令字节,而在程序校 验时,输出指令字节,校验时,要求接上拉电阻。 (4)p1 口:1 引脚-8 引脚,p1 口是一个内部上拉电阻的 8 位双向 i/o 口,p1 的输入缓 冲级可驱动(吸收或输出电流)4 个 ttl 逻辑门电路。对端口写“1” ,通 过内部的上拉电阻把端口拉到高电平,此时可作输出口。作输入口时,因 为内部存在上拉电阻,某个引脚被外部信号拉低时输出一个电流(i) 。 flash 编程和程序校验期间,p1 口接收 8 位地址。 9 (5)p2 口:10 引脚-17 引脚,p2 口是一个带有内部上拉电阻的 8 位双向 i/o 口,p2 的 输入缓冲极可以驱动(输入或输出电流)4 个 ttl 逻辑门电路。对端口 “1” ,通过内部的上拉电阻把端口拉到高电平,此时和作为输出口,作输 出口时,因为存在内部上拉电阻,某个引脚被外部信号拉低时会输出一个 电流。在访问外部存储器或 1 位地址的外部数据存储器(例如执行 movxdptr 指令)时,p2 口送出高 8 位地址数据。在访问 8 位地址的 外部数据存储器(如执行 movxri 指令)时,p2 口线的内容(也既特殊 功能寄存器(sfr)区中 r2 寄存器的内容) ,在整个访问期间不改变。 flash 编程或校验时,p2 亦接收高地址和其他控制信号。 (6)p3 口:21 引脚-32 引脚,p3 口是一组带有内部上拉电阻的 8 位双向 i/o 口, ,p1 的 输入缓冲级可驱动(吸收或输出电流)4 个 ttl 逻辑门电路。对 p3 口写入 “1”时,它们被内部上拉电阻拉高并可作为输出端口。作输出端口时,被外 部拉低的 p3 口将用上拉电阻输出电流。p3 口除可作为一般的 i/o 口线外, 更重要的用途是它的第二功能,如表 3-1 所示: 表 3-1 at89s52 p3 口扩展功能 端口引脚第二功能 p3.0rxd (串行输入口) p3.1txd (串行输出口) p3.2int0 (外部中断 0、低电平有效) p3.3int1 (外部中断 1、低电平有效) p3.4t0 (定时器 0 中断) p3.5t1 (定时器 1 中断) p3.6wr (外部存储器写信号、低电平有效) p3.7rd (外部存储器读信号、低电平有效) (7)ea :31 引脚,为外部访问信号允许。欲使 cpu 仅访问外部程序存储器(地址为 10 0000h-ffffh) ,ea 端必须保持低电平(接地) 。 (8)ale :30 引脚,当访问外部程序存储器或数据存储器时,ale(地址锁存允许) 输出脉冲用于锁存地址的低 8 位字节,即使不访问外部字节,ale 仍时钟 震荡频率的 1/6 输出固定的正脉冲信号,因此它可对外输出时钟脉冲或用于 定时目的。此外,此引脚会被微弱拉高,单片机执行外部程序时,应该置 ale 无效。 (9)psen: 29 引脚,为外部程序存储器的读选通信号,当单片机由外部程序取指令 (或数据)时,每个机器周期两次 psen 有效,既输出两个脉冲。在此期间, 当访问外部数据存储器,这两次有效的 psen 信号不出现。 (10)rst、xtal1、xtal2 : 这三个引脚分别为 9 号引脚复位信号,19 号引脚时钟信号 1 与 18 号引脚时钟信号 2,它们将在下面的最小系统设计中作详细的讲解。 (11)flash 闪速存储器的编程: at89s52 单片机内部有 4k 字节的 flash perom,这个 flash 存储存储阵列出厂时已 处于擦除状态(既所有存储单元的内容均为 ffh) ,用户随时可对其进行编程。程序接收 高电压(+12v)或低电压(vcc)的允许编程信号。低电压编程模式,适用与用户在线 编程系统。而高电平模式可与通用 eprom 编程程序兼容。 (12)编程方法: 编程前需设置好地址、数据及控制信号,编程单元的地址就、加在 p1 口和 p2 口的 p2.0p2.3(11 位地址范围为 0000h0fffh) ,数据从 p0 口输入,引脚 p2.6、p2.7 和 p3.6、p3.7 的电平设置见表。psen 为低电平,rst 保持高电平,ea 引脚是编程电源的 输入端,按要求加上编程电压,ale/prog 引脚输入编程脉冲(负脉冲)编程时可采用 420mhz 的时钟震荡器 at89s52 的编程方法如下:1.0 在地址线上加上要编程单元的地 址信号。 (1).在数据线上加上要写入的数据字节。 (2).激活相应的控制信号。 (3).在高电压编程时,将 ea/vpp 端加上+1v 编程电压。 (4).每对 flash 存储阵列写入一个字节,加上一个 ale/prog 编程脉冲。 3.1.2 at89s52 系统方框图 11 图 3-3 at89s52 方框图 由上可见,at89s52 单片机的硬件结构具有功能部件种类全,功能强等特点。从其 系统方框图可以清楚地看出该单片机 cpu 中的位处理器,它实际上是一个完整的 1 位微 计算机,这个一位微计算机有自己的 cpu、位寄存器、i/o 口和指令集。它在开关决策、 逻辑电路仿真、过程控制方面非常有效;与此同时,在数据采集方面,它的运算处理方 面也有明显的长处。单片机中同时拥有这两种硬件资源复合在一起,二者相辅相承,它 是单片机技术上的一个突破,这也是 at89s52 单片机设计的精美之处8。 3.2 单片机最小应用系统设计 12 at89s52 是片内有 rom/eprom 的单片机,因此,这种芯片构成的最小系统简单 可靠。用这类单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可, 如(图 3-3) at89s52 单片机最小系统所示。由于集成度的限制,最小应用系统只能用 作一些小型的控制单元。其应用特点1: 1 . 有可供用户使用的大量 i/o 口线 ; 2 . 内部存储器容量有限 ; 3 . 应用系统开发具有特殊性 。 图 3-4 单片机最小系统 (1)时钟电路 at89s52 虽然有内部振荡电路,但要形成时钟,必须外部附加电路。单片机的时钟 产生方法有两种。内部时钟方式和外部时钟方式。 图 3-5 内部时钟 图 3-6 外部时钟 本设计采用内部时钟方式,利用芯片内部的振荡电路,在 xtal1、xtal2 引脚上 外接定时元件,内部的振荡电路便产生自激振荡。本设计采用最常用的内部时钟方式, 13 即用外接晶体和电容组成的并联谐振回路。振荡晶体可在 1.2mhz 到 12mhz 之间选择。 电容值无严格要求,但电容取值对振荡频率输出的稳定性、大小、振荡电路起振速度有 少许影响,cx1、cx2 可在 20pf 到 100pf 之间取值,但在较低的电容值时振荡器有较高 的频率稳定性。所以本设计中,振荡晶体选择 11.0592mhz,电容选择 30pf。 在设计印刷电路板时,晶体和电容应尽可能靠近单片机芯片安装,以减少寄生电容, 更好的保证振荡器稳定和可靠地工作。 (2)复位电路 单片机的复位是由外部的复位电路来实现的。复位引脚 rst 一般可通过一个斯密特 触发器用来抑制噪声,在每个机器周期 s5p2,斯密特触发器的输出电平由复位电路采样一 次,然后才能得到内部复位操作所需要的信号。 复位电路通常采用上电自动复位和按钮复位两种方式。 最简单的上电自动复位电路中上电自动复位是通过外部复位电路的电容充电来实现 的。只要 vcc 的上升时间不超过 1ms,就可以实现自动上电复位。 除了上电复位外,有时还需要按键手动复位,如图 3-7 所示。按键手动复位有电平 方式和脉冲方式两种。其中电平复位是通过 rst 端经电阻与电源 vcc 接通而实现的。本 次设计由于电路板面积有限,因此选择了上电复位做复位电路。 图 3-7 3.3 自动消毒柜控制器原理图 图 3-6 为本次设计硬件电路的原理图,本图形绘制是基于 protel99se 软件完成的,如 14 下图所示,单片机组成了最主要的芯片控制系统,上电复位电路与晶振电路组成了最基 本的最小操作系统,p1.0 口至 p1.4 口连接了 5 个 led 灯,分别为四个指示定时方式的 led 灯(绿色)与一个指示消毒开关的 led 灯(红色) ,同时有限流电阻对其进行限流。 p3.0 与 p3.1 分别控制按键 s1(定时方式的选择)与 s2(消毒停止) ,p3.5 口通过一个 pnp 三极管控制着继电器的开关,在这里我们采用了 9012 型的 pnp 三极管与 huike 5v 类型的继电器。在电源入口采用了 sip2 型的插座作为 vcc 与 gnd 的入口,并在 vcc 的入口处正接了一个 1n4001 型的二极管,与此同时,在继电器的下方也反接一个同类型 的二极管来保护相关器件6。 下面将针对本次硬件设计的整个电路系统其操作要点与功能特点做详细的解析5: 3.4 自动消毒柜控制器的主要功能与特点 由于本电路的时钟是对晶振分频后获得的,具有极高的频率稳定性,且定时方式采 用单片机内部的定时器 0 进行精确的定时,因而对时间的控制精度较高,可有效地避免 普通 rc 延时电路控制时间不准确、不可靠的问题出现。 3.4.1 电路设计的主要功能 电路上电后,通过按键 s1 来选择不同的消毒模式,各种不一样的消毒模式将会对应 不同的消毒时间,本次设计提供了 4 种四种消毒时间,分别为 20min、40min、60min、80min,同时有五个 led 灯进行指示,第一个 led 灯到第四个 15 led 灯分别对应着四种不同的消毒模式,第五个 led 灯用来指示消毒柜进行消毒或停止 消毒,并通过继电器的开或关来指示消毒是否进行。 3.4.2 电路设计的特点 单片机芯片 at89s52 作为本电路的核心,通过最小系统的搭配使设计功能得到更好 的发挥。从硬件电路图可以看出,注重电路系统的保护功能是本次设计的最大特点,比 如,电源端入口的二极管不但可以对电源进行限流,将电压限制在 5v 左右,而且能防止 电源正负极接反导致器件烧坏。另外在继电器下方反接的二极管,它可以对继电器断电 后产生的大电流进行“吸收”从而保护后面的三极管不被过大的电流击穿。而在实际应用中, 继电器适时驱动紫外线消毒灯管实现周期性地加电与断电,完成断续自动消毒功能也同 样起着断电保护的作用。另一方面,通过两个按键来控制整个系统也是这次设计的一个 特点,既简单又实用。同时,at89s52 单片机这一高效的微控制器,它的灵活性与功能 的强大也为电路的设计提供了良好的保障,此外,本次设计制作经费低,有一定的市场 价值,适用于大规模批量生产6。 3.4.3 9012 三极管开关作用 16 如图 3-9 为一个 9012 型 pnp 三极管,它是一种常用的晶体管。它的工作原理和 npn 晶体管相似,只是在基区运动并放大信号的多数载流子是空穴而不是电子。 pnp 晶体管的发射结要正偏,基区的电压要比发射区的电压要高,而集电极要是多数 载流子空穴通过,集电区的电压要比基区的要低。 因此,我们经常利用它 这一特点 用来作为许多电子电路的开关器件,当我们给基极输出一个高电平,则be 极导通, 从而使我们要控制的器件处于断开状态,而当我们给基极输入一个低电平时,此时恰 好让 ce 极以及器件形成一个通路,从而使器件导通 3。 图 3-9 9012 三极管 4 消毒柜控制器软件程序设计 p0i q1 9012 vcc gnd output 17 在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个 生产对象的实际需要设计应用程序。因此,软件设计在微机控制系统设计中占重要地位。 对于本系统,软件程序更为重要。 在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。数据处理 包括:数据的采集、数字滤波、标度变换等。过程控制程序主要是使单片机按一定的方 法进行计算,然后再输出,以便控制生产。 为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一部 分叫做一个模块。所谓“模块”,实质上就是所完成一定功能,相对独立的程序段,这种程 序设计方法叫模块程序设计法。本系统软件设计同样采用模块化结构,由主程序定时 子程序、延时子程序中断子程序构成2。 模块程序设计法的主要优点是: (1)单个模块比起一个完整的程序易编写及调试; (2)模块可以共存,一个模块可以被多个任务在不同条件下调用; (3)模块程序允许设计者分割任务和利用已有程序,为设计者提供方便。 在程序的编写上采用了 c 语言,c 语言是(combined language)的中英混合简称。 是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它可 以为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依 赖计算机硬件的应用程序。同时,c 语言程序易于修改、移植,同一个程序可以下载进不 同的控制芯片,通过简单的 c 语言题头修改就可以将一个程序应用在 51 与 52 单片机芯 片,而且程序出错易于检查通过 keil 软件进行程序然后利用 stc-isp 软件进行在线编译 就能将 c 程序下载进单片机。因此,它的应用范围广泛,不仅仅是在软件开发上,而且 各类科研都需要用到 c 语言,具体应用比如单片机以及嵌入式系统开发1。 由于本次设计是通过一个按键来选择不同的消毒模式,这从软件程序上的设计需要 给程序设定一个变量,这里我们称这个变量值为 id,当 id0 时,系统处于关闭模式; 当 id1 时,则进入第一种消毒模式;当 id2 时,进入第二种消毒模式;当 id3 时, 进入第三种消毒模式;当 id4 时,进入第四种消毒模式;很显然,id 值的多少取决于 按键 s1 在一次操作中被按下的次数,当按下开关 s1 时,分别给出不同的 id 值从而执行 相应的模块。下面将给出有关程序设计的框图。 4.1 程序流程图 id 清零并关闭继电器 18 否 是 是 否 程序流程图分析: 当系统上电后,第一步先处理的就是将 id 的值清零并同时使继电器与 led 等处于 关闭状态,即 id0 时,系统处于关闭模式;接着,便开始根据按下按键的次数来给 id 赋值,赋值后同时打开定时器并开始扫描 s2 按键是否被按下,若没有按下 s2 键,则系 统根据 id 的值选择相应的消毒模式,当 id1 时,则进入第一种消毒模式,以此类推。 若扫描到 s2 按键被按下,则立即停止消毒,熄灭 led 灯,同时关闭继电器。 根据按下次数让 id 加 1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论