基于单片机控制的消毒柜毕业设计论文(编辑修改稿)内容摘要:
时钟方式。 在AT89C51 芯片内部有一个高增益的反相放大器,其输入端为引脚 X1,输出端为引脚 X2,而在 AT89C51 芯片 X1 和 X2 之间跨接晶体振荡器和微调电容, 从而构成 15 一个稳定的自激振荡器, 在单片机内部产生时钟脉冲信号。 这就是时钟电路 ,电路图见图 : 图 时钟电路 电容 C1 和 C2 一般取 30pF 左右, 作用是稳定频率和快速起振 ,而晶体的振荡频率范围通常是 ,晶体振荡频率高 ,则系统的时钟频率也高 ,单片机运行的速 度也就快 但反过来运行速度快对存储器的速度要求就高,对印刷电路板的工艺要求也高。 这里我们采用晶振频率为 12MHz。 故机器周期为 1 微 秒。 外部时钟方式是把外部已有的时钟信号引入到单片机内。 此方式常用于多片单片机同时工作,以便于各单片机的同步。 一般要求外部信号高电平的持续时间 大于20ns,且为频率低于 12MHz 的方波。 3. 复位电路 单片机复位是使 CPU 和系统中的其他功能部件都处于在一个确定的初始状态,并且从这个状态开始工作。 复位操作有两种基本形式:一种是上电自动复位,另一种是按键手动复位。 上电复位要求接通电源后, 单片机自动实现复位操作。 上电瞬间 RST 引脚获得高电平,随着电容的充电, RST 引脚的高电平将逐渐下降。 RST 引脚的高电平只要能保持足够的时间( 2 个机器周期),单片机就可以进行复位操作。 上电与按键均有效的复位电路不仅在上电时可以自动复位,而且在单片机运行期间,利用按键也可以完成复位操作。 我们采用按键复位电路 ,电路图见图 : 16 图 复位电路 状态显示电路 1. 指示电路 柜内工作状态通过 4 只 LED 指示灯指示,它们分别由单片机的 ~ 口控制。 在选择程序时,指示灯根据按键次数来 显示相应的位(按第一次只有 LED1亮,按第二次只有 LED2 亮,按第三次只有 LED3 亮,按第四次则只有 LED4 亮)。 2. 照明电路 为方便用户在昏暗环境下使用,设置了照明灯,由 口控制。 3.消毒和干燥电路 因为在此设计中主要体现单片机消毒柜中的控制作用,故这两个电路不在此做详细介绍,用两个发光二极管来代替,消毒电路由接在 上的发光二极管代替,二极管亮则代表启动了臭氧发生电路。 干燥电路由接在 上的发光二极管代替,二极管亮则代表启动了干燥电路。 图 状态显示电路 17 时间 显示电路 1. 数码管 简介 数码管由 7 个发光二极管组成 ,行成一个日字形 ,它门可以共阴极 ,也可以共阳极 .通过解码电路得到的数码接通相应的发光二极而形成相应的字 ,这就是它的工作原理 . 基本的半导体数码管是由 7 个条状的发光二极管排列而成的,可实现数字0~ 9及少量字符的显示。 另外为了显示小数点,增加了 1 个点状的发光二极管,因此数码管就由 8 个 LED 组成, 排列顺序如下图 , 我们分别把这些发光二极管命名为 a,b,c,d,e,f,g,dp。 图 数码管 LED 数码显示器的内部结构共有两种 不同形式,一种是共阳极显示器,一种是共阴极显示器。 共阳极接法是把 LED 的阳极连接在一起,使用时公共阳极接+5V,这时阴极接低电平的段发光二极管就导通点亮,而接高电平的则不亮。 共阴极接法是把 LED 的阴极连在一起,使用时公共阴极接地,这时阳极接高电平的段发光二极管就导通点亮,而接低电平的则不点亮。 LED 显示器见图 : 图 数码管共阴共阳接法以及外部引脚图 18 2. 数码管显示 在单片机应用系统中, LED 数码显示器的显示方法有两种:静态显示法和动态扫描显示法。 ( 1) 静态显示 静态驱动也 称直流驱动。 静态驱动是指每个数码管的每一个段码都由一个单片机的 I/O 端口进行驱动,或者使用如 BCD 码二 十进制译码器译码进行驱动。 静态驱动的优点是编程简单,显示亮度高,缺点是占用 I/O 端口多,如驱动 5个数码管静态显示则需要 58 = 40 根 I/O 端口来驱动, 一个 89S51 单片机可用的 I/O 端口才 32 个 ,实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。 ( 2) 动态显示 动态显示是把所有显示器的 8 个笔画段的各同段名端互相并接在一起,并把它们接到字段输出口上。 为了防止各个显示器同时显示相同的数字,各个 显示器的公共端 COM 还要受到另一组信号的控制,即把它们接到位输出口上。 这样,对于一组 LED 数码显示器需要由两组信号来控制:一组是字段输出口输出的字形码,用来控制显示的字形,称为段码;另一组是位输出口输出的控制信号,用来控制第几位显示器工作,称为位码。 在这两组信号的控制下,可以一位一位地轮流点亮各个显示器显示各自的数码,以实现动态扫描显示。 在轮流点亮一遍的过程中,每位显示器点亮的时间则是极为短暂的。 由于 LED 具有余辉特性以及人眼视觉的惰性,尽管各位显示器实际是分时断续地显示,但只要适当选择扫描频率,给人眼的视觉印象就会是在稳定连续地显示,并不察觉有闪烁的现象。 动态扫描显示由于各个数码管的字段线是并联使用的,因而大大简化了硬件线路。 这两种显示方式各有利弊;静态显示虽然数据稳定,占用很少的 CPU 时间,但每个显示单元都需要单独的显示驱动电路,使用的硬件较多;动态显示虽然有闪烁感,占用的 CPU 时间多,但使用的硬件少,能节省线路板空间。 在此选择动态显示方式。 原理图如图 所示 19 图 单片机控制数码管原理图 键盘控制电路 图 键盘控制电路 20 按一下 A1 则 LED1 亮,臭氧发生器开始工作, 45 分钟后, LED1 熄灭, LED2点亮; 45 分钟后, LED2 熄灭, LED3 点亮,臭氧消毒结束,进入加热干燥阶段。 30 分钟后, LED3 熄灭, LED4 点亮,再经过 30 分钟后 LED4 熄灭,整个消毒、加热干燥过程结束。 需要不同种类的消毒、加热干燥时,可以通过按 A1 进行选择,每按一次 A1,点亮的 LED 指示灯就下移一位 按键报鸣器都会发出“嘟”的声音。 如果在消毒或干燥过程中,对于已选定的工作方式不满意,可以通过 A3 键(复位键)重新选择工作方式。 A2 单独控制,按一下 A2,点亮照明灯,再按一下 A2,关闭照明灯。 门吸开关 S1,只有当消毒柜门关闭时臭氧发生器才能工作,防止臭氧的泄漏。 报 警 电路 压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。 多谐振荡器由晶体管或集成电路构成。 当接通电源后( ~15V 直流工作电压) ,多谐振荡器起振 ,输出 ~ 的音频信号,阻抗匹配器推动压电蜂鸣片发声。 蜂鸣器的原理跟发光二极管一样,只要在它的正极加高电平,在它的负极加低电平,就能使蜂鸣器工作,为了提高蜂鸣器的电流,就需要加驱动电路,在这里加 PNP 型三极管做驱动。 在进行键操作时, 每按一次,蜂鸣器响叫一声。 蜂鸣器由 来控制,从 输出不同频率的方波促使蜂鸣器产生不同音调的声音,以区分功能键按键和灯控键的按键操作,该功能的实现由软件来实现。 报鸣电路图见图 图 报鸣电路 21 如果 A1 键按下,则启动蜂鸣器,延时 时间后再将蜂鸣器关闭,构成提示音,如果在没有关好门的情况下启动臭氧发生电路或者在消毒期间将门打开,蜂鸣器将会一直响,直到将门关好为止。 22 第 4 章 系统软件设计 本章 根据硬件电路,进行系统的软件设计,根据硬件的设计,程序可分为主程序、 按键识别 子程序、 A1 键保存子程序、 A2 键保存子程序、键处理子程序、工作流程执行子程序、定时中断子程序、显示子程序、 报警 子程序。 主程序 图 主程序流程图 在主程序中主要完成对于 各 中断的初始化, 以及键值处理程序的调用。 此系统中用到了定时计数器中断 0 以及外部中断 0 外部中断 1. 定时计数器中断 0 用来对消毒和干燥程序执行时间进行控制。 外部中断 0 接 A1 按键,用来选择工作方式。 外部中断 1 接 A2 键,为照明开关的控制。 设置外部中 断 1 为高优先级。 然后循环调用键值处理子程序,对于在外部中断 0 中得到得键值,也就是工作方式进行相应的操作,即再转到各工作方式的处理程序。 如果没有外部中断产生,将循环调用键值处理子程序,直到产生中断 即有键值为止。 各子程序 键值处理子程序 在 系统中将会循环调用键值处理子程序,对于键的处理没有用到独立式或者矩阵式键盘,而是直接将两个按键 A1,A2 接到了外部中断 0 和外部中断 中断中得到键值。 然后转去执行相应子程序,图 为键值处理程序的流程框图。 开始调用键值处理程序各中断的初始化设置 23 图 键值处理子程序流程图 在此程序中, 开始延时两秒钟的时间,等待外部中断,如果没有则没有键值,这时就不能执行相应的工作方式程序。 等待两秒后将直接结束返回主程序。 因为在主程序中将会不断的调用这个键值处理子程序,而返回跟调用的时间几微妙相对于两秒的时间来说可以忽略。 所以可以认为是在此一直等待中断。 有中断后将会得到键值。 在两秒的时间内 如果对于选择的工作方式不满意,可以重新选择。 两秒以后关闭外部中断 0,这时将根据键值执行相应的工作方式。 时间显示子程序 对于时间显示,采用的是动态显示方式。 具体方法如图 开始产生键值了吗键值等于 1 吗 键值为多少消毒 45 分钟子程序消毒 45 分钟子程序干燥 30 分钟子程序干燥 30 分钟子程序结束NYYN423延时两秒等待中断改变键值关闭外部中断 24 图 时间显示子程序流程图 此程序将在各工作方式在循环调用,这样就可以将定时的时间,实时的显示。 消毒处理 子程序 消毒处理程序 属于工作方式一和工作方式二中的一部分。 中间涉及到了报警程序,时间显示程序的调用。 首先程序将点亮 各阶段所对应的发光二极管,然后判断门是否关好,如果门没有关好将启动报警电路,直到门关好为止。 这时程序继续往下,启动臭氧发生电路,启动定时计数器,然后循环的调用时间显示程序,检测门是否被打开,并判断消毒时间到了没有。 如果门被打开,启动报警,直到门关 好消毒程序继续往下。 如果定时时间到了,则关闭定时计数器,并将在定时计数器中断 0 中用到得各存储单元清零。 这个子程序将在各键值处理程序中被调用到。 开始取出秒钟的十位 S 2 , 个位 S 1取出分钟的十位 M 2 个位 M 1将 S 1 的所对应的段码送 P 0 , 位码送 P 2将 S 2 的所对应的段码送 P 0 , 位码送 P 2将 M 1 所对应的段码送 P 0 , 位码送 P 2将 M 2 的所对应的段码送 P 0 , 位码送 P 2结束 25 开 始点 亮 相 应 L E D门 是 否 关 好启 动 报 警启 动 臭 氧 发 生 电 路启 动 定 时 计 数 器消 毒 时 间 显 示门 是 否 打 开消 毒 时 间 是否 已 到结 束YNNYYN 图 消毒处理子程序 干燥 处理子程序 干燥处理程序 相对于消毒程序来说比较容易,因为在干燥过程中可以将门打开。 不用时刻检测门是否被打开。 只需循环调用时间显示以及判断定时时间。 26 图 消毒处理子程序 报警 子程序 图 报警子程序流程 图 开始点亮相应 LED启动干燥电路显示干燥时间30 分钟到了没结束YN开始启动蜂鸣器关闭定时计数器门是否关好关闭蜂鸣器结束数码管全部显示零NY 27 报警程序在消毒处理程序在将被调用到,当程序执行到消毒时,会判断门是否关好,在消毒过程中也会判断门是否被打开。 如果没有关好则调用此程序。 首先将启动蜂鸣器,然后关闭定时计数器。 四个数码管全部显示 0。 直到门关好,关闭蜂鸣器,程序结束。 外部中断 0 子程。基于单片机控制的消毒柜毕业设计论文(编辑修改稿)
相关推荐
品牌助理大法 21 世纪素材资源平台 中国最大素材资料平台 160984104品牌助理大法期望大家在读用过程中帮助我完成这样一件事情:本论中所涉及的过程、方法、项目,请大家都参与进来,分别找出来,给它起一个易记易懂的雅号:如“建一个什么样的品牌” ;所考查的十二个方面,是否可称为“金陵十二钗”什么的。 有什么新的主张、观点、批评、反对等亦应及时给我,谢谢。 李金林本资料共制作 20 份
PP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 芯片擦除 整个 PEROM 阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE 管脚处于低电平 10ms 来完成。 在芯片擦操作中,代码阵列全被写 “1” 且在任何非空存储字节被重复编程以前, 该操作必须被执行。 此外, AT89C51 设有稳态逻辑
,需要设置入口、输出口一个,该方法在微机系统中被广泛使用。 线反转法的基本思想是通过行列颠倒两次扫描来识别闭合键,为此需要提供两个可编程的双向输入 /输出端口。 ( 4)键码产生:为了从键的行列坐标编码得到反映键功能的键码,一般在内存区中建立一个键盘编码表,通过查表获得被按键的键码。 用 AT89S51 的并行口 P1 接 4 4 矩阵键盘,以 - 作输入线,以 - P1.7 作输出线; 图
外检测器是顶置式或路侧式的交通流检测器,一般采用反射式检测技术。 反射式检测探头由一个红外发光管和一个红外接收管组成。 由调制脉冲发生器产生调制脉冲,经红外探头向道路上辐射,当有车辆通过时,红外脉冲从车体反射回来,被接收管接 收后经过解调、放大、整流滤波后输出一个检测信号送入单片机。 显然,方案一有方法繁琐、寿命短的缺点;方案二由于信号衰减,以及马路噪声源较多的缘故稳定性和抗干扰性不好
充当。 智能小车的执行部分,是由直流电机来充当的,主要控制小车的行进方向和速度。 单片机驱动直流电机一般有两种方案:第一,勿需占用单片机资源,直接选择有 PWM功能的单片机,这样可以实现精确调速;第二,可以由软件模拟 PWM输出调制,需要占用单片 机资源,难以精确调速,但单片机型号的选择余地较大。 考虑到实际情况,本文选择第二种方案。 CPU使用 STC89C52单片机,配合软件编程实现。 2
位,需加以识别。 硬件复位与软件复位的识别 此处硬件复位指开机复位与看门狗复位,硬件复位对寄存器有影响,如复位后 PC=0000H, SP= 07H, PSW= 00H 等。 而软件复位则对 SP、 SPW 无影响。 故对于微机测控系统 ,当程序正常运行时,将 SP 设置地址大于 07H,或者将 PSW 的第 5 位用户标志位在系统正常运行时设为 1。 那么系统复位时只需检测 标志位或