《毕业设计-基于单片机的智能消毒设备.docx》由会员分享,可在线阅读,更多相关《毕业设计-基于单片机的智能消毒设备.docx(17页珍藏版)》请在课桌文档上搜索。
1、毕业论文论文题目:基于单片机的智能消毒设备智能消毒设备【摘要】本系统采用AT89C52单片机为核心,利用它的内部存放器、定时/计数器、中研等资源配合外国设备完成智能消毒的功能。通过捺下不同的按健选择不同消毒时间和模式后电路即开始运行。消毒方法有高温消毒和臭氧消毒两种。电路运行开始后,通过温控开关以及定时自动控制消毒柜内继电器的通电和断电,造时完成对柜内物品的消毒工作,并且通过液晶显示屏和LED灯对消毒柜的状态一目了然。系统在原件实物图焊接好以后,经过调试,所有功能都实现了。即接下开关开始消毒,液晶显示屏上准璃的显示了时钟和剩余时间。时间到后或者温度过揖,维电器警时断开,结束加热,同时蜂鸣器响起
2、,代表消毒结束的LED灯亮。本设计的挣点在于可以对消毒柜进行预妁,让它在预订时间到达时自动进行消毒。因为要顺利完成预的功能,所以该消毒柜还有时钟功能。【关健询】STC89C52;覆为定时:报警提醒;液晶显示目录1 .概述11.1 课题背景11.2 本设计的主要思想22 .智能消毒总体方案设计23 .各模块方案的设计与选择33.1 智能消毒设备的电源模块33.2智能消毒设备的液晶显示模块33.3智能消毒设备的臭氧消毒模块33.4智能消毒设备的单片机控制模块33.5软件编程34.各模块硬件的设计44.1智能消毒设备的电源模块44.2智能消毒设备的电热管加热模块44.3智能消毒设备的臭氧消毒模块54
3、.4智能消毒设备的报警模块54.5智能消毒设备的LED模块54.6智能消毒设备的按键选择模块54.7智能消毒设备的单片机控制模块64. 7.1STC89C52主控局部核心电路6单片机外围晶振电路64. 8智能消毒设备的液晶显示模块74. 8.1LCD1602主要管脚介绍7读写控制时序如表4-2所示84.8.3LCD1602与单片机连接图及实物图85.系统软件设计85.1主程序流程设计85. 2按键扫描及按键处理流程设计85. 3液晶程序流程设计96 .系统调试91 .1仿真测试96 .2单元模块的测试97 .设计展望108 .总结10参考文献10附录一:PCB11附录二:硬件实物图11附录三:
4、程序清单W1.概述1.1 课题背景社会进步经济开展,人们生活条件提高了,讲究的已经不再是温饱,更关键的是如何改变生活质量。人们对消毒的要求已经从干净上升到了方便、省时和智能了。从功能上说,消毒柜通常有高温消毒、臭氧消毒和紫外线消毒3种消毒方式,以及它们之间的组合消毒方式。电热型消毒柜是利用高温发挥杀菌作用。高温对细菌有明显的致死作用。细菌中的蛋白质因受热而发生变性凝固,活性消失,代谢发生障碍,导致死亡。电热型消毒柜的消毒温度应2100C,消毒时间应215分钟。而臭氧的强氧化作用使微生物细胞中多种成份产生不可逆转的变化而死亡,到达消毒、杀菌的成效。这种破坏细胞作用的强弱和臭氧浓度、环境湿度、持续
5、时间有很大的关系。设备随着时间的推移,计算机革命的完成,信息高速公路的飞速开展,我们的工业已经和自动化控制密不可分了。据统计,我国的单片机年容量以达1-3亿片,且每年以大约16%的速度增长,但相对于世界市场我国的占有率还不到1%。这说明单片机应用在我国才刚刚起步,有着广阔的前景。培养单片机应用人才,特别是在工程技术人员普及单片机只是有着重要的现实意义。单片机是二十一世纪七十年代中期开展起来的一种大规模集成电路器件,它在一块芯片内集成了计算机的各个功能,构成一种单片式的微型计算机。二十世纪八十年代以来,国际上单片机的开展迅速,单片机应用不断深入,新技术层出不穷。单片机的应用技术是一项新兴的工程技
6、术,其内涵随着单片机的开展而开展。而单片机的学习不仅让我们明白了计算机硬件的一些知识,更让我们懂得了许多关于现在个人计算机中许多原始的命令的完成原理。随着技术的不断开展,消毒柜新品的高技术含量主要表达在模糊逻辑化的控制、触摸屏式面板、数码、微电脑液晶显示和纳米等新材料的使用上。可以说,家电产品的新技术已全面使用在消毒柜上了。本次设计的完成实现了单片机控制消毒电路,从另一个角度上,我们可以看到这种功能的开展前景。当前,时髦的储存器比比皆是,我们这个小小的设计也许并算不了什么,但是如果我们能在这个领域开展到微型芯片的程度,我们也许可以领导一代存储器的新潮流。1.2 本设计的主要思想要设计一个具有预
7、约功能的消毒设备,就要求它要有时钟功能,否那么就不能及时有效的完成该功能。因此可以通过按键电路来完成对时钟的设置和时间的预定,同时按键电路还可以完成对消毒模式和消毒时间的选择以及紧急情况下停止消毒。而消毒设备的工作情况那么是通过液晶显示屏和LED灯来了解的。这些功能根本上是通过软件来完成的,因此本设计在硬件设计上是相比照拟简单的。2 .智能消毒总体方案设计图2T智能消毒设备总体方框图智能消毒设备总体方框如图2T所示,主要包括供电电源电路、电热管电路、臭氧电路、报警电路、按键选择电路、液晶显示电路、LED灯电路和单片机控制电路。电源模块是用来对整个系统供电;报警提醒模块用来提示消毒结束;按键电路
8、用于设置时间、预约时间、选择模式、选择时间以及取消消毒;液晶显示模块用来显示时钟以及剩余消毒的时间;LED灯电路用来观察消毒情况,单片机控制电路是电路的中心,其工作过程为接入电源,单片机控制液晶显示屏显示WaittilileOO:00以及当前的时间,按下选择消毒方式和时间的按键,关上门后消毒就开始了。单片机接收到消毒的信号就相应发出对应的信号,这时液晶显示屏上的00:00变成选定的时间。如果选择的是高温消毒,继电器接通加热的电路,LED灯1亮,高温杀毒就开始了。相同假设选择的是臭氧消毒,继电器就接通臭氧消毒电路,LED灯2亮。臭氧发生器就开始工作,产生臭氧开始消毒。随着时间的过去,显示屏上的剩
9、余时间也逐渐减少了,最终变叵100:00。这时可以隐约听到“咔”一声,那是继电器的声音。然后蜂鸣器响起,LED灯1灭了,LED灯3亮。如果消毒时间还没到,但你又不想继续了,这时可以按下复位键,就可以将消毒进行的状态变为初始等待状态。该电路具有电路简单、制作容易、使用灵活等优点,非常适合在部队、厂矿、机关、学校、医院等集体食堂和家庭及各类餐馆、饭店的消毒柜中安装使用。通过该电路,可以进一步了解到单片机电路的应用扩展功能和指令应用技巧。3 .各模块方案的设计与选择3.1 智能消毒设备的电源模块本系统需要使用12V和5V两种电压给电路各个模块供电,所以采用经典的三端稳压芯片LM7812和LM7805
10、制作电源。利用该方法方便简单,工作稳定可靠。3. 2智能消毒设备的液晶显示模块方案一:采用LCD1602液晶来充当显示模块。该液晶显示器以其微功耗、显示内容丰富、体积小、超薄轻巧等诸多优点在电子设计中被广泛应用。方案二:采用8段数码管显示。虽然数码管的价格较液晶低廉。但其耗电量大,显示不美观大方。而且动态显示易乱码。基于上述考虑,应选择方案一。1.1 3智能消毒设备的臭瓶消毒模块由于臭氧只能就地生产,目前最经济也是技术最成熟的产生臭氧的方式为电晕放电,而用于空气消毒的臭氧发生器多是使用陶瓷片高频放电的模式,它具有结构简单、性能可靠、运行费用低及调节灵活等优点。3.4 智能消毒设备的单片机控制模
11、块方案一:采用ATMEL公司的STC89C52作为系统控制器的CPU方案。该单片机算术运算功能强,软件编程较灵活、自由度大,可以用软件编程实现各种算法和逻辑控制,并且由于其功耗低、体积小、技术成熟和本钱低等优点。方案二:采用ATmega16单片机。此单片机具有一整套的编程与系统开发工具,支持片内调试与编程。该单片机为单调指令,执行速度快,而且IO口驱动能力强,应用灵活,价格低廉。由于本次设计采用资源较少,控制器主要用于各模块控制对显示、报警、计时等。STC89C52根本可完成设计需要,所以选择方案一。3.5 软件编程汇编语言作为传统的编程语言,具有执行效率高的优点,但其本身是低级语言,编程效率
12、较低,可移植性和可读性差,维护极不方便。而C语言以其结构化,容易维护,容易移植的优势满足开发的需要。且控制能力增强,有易于上手的特点,使我们能顺利的用C语言到达我们要的效果。因此该设计的软件我们使用C语言进行编程。4.各模块硬件的设计本系统主要包括供电电源电路、电热管电路、臭氧消毒电路、报警电路、按键选择电路、液晶显示电路、LED电路和单片机控制电路。图4总原理图4.1 智能消毒设备的电源模块图4-2电源电路电源是各种用电设备的动力装置,是电子工业的根底产品。由于我们需要的并不是220V的交流电,因此需要将220V变成我们需要的12V和5V。由图4-2可以看出本设计是利用了三端稳压芯片LM78
13、12和LM7805来制作电源。接口P2的两个端口接的就是220V交流电通过变压器的输出。将其接入整流电桥即可得到约为7.5V的直流电,其中电容104起到了滤波的作用,减少杂波的干扰,通过7812稳压块获得稳定的+12直流电源,。同理将12V电压的一个分支再通过7805即可得到相应的+5V直流电压。电源电路应注意以下事项的:(1)由于直流稳定电源一般是由交流电源经整流稳压等环节而形成的,这就不可防止地在直流稳定量中多少带有一些交流成份。(2)直流稳压电交流电经过整流和滤波可以变成直流电,但是它的电压是不稳定的:供电电压的变化或用电电流的变化,都能引起电源电压的波动。要获得稳定不变的直流电源,还必
14、须再增加稳压电路。(3)7812和7805稳压块在降压电路中应注意输入输出压差不能太大,太大那么转换效率急速降低,而且容易击穿损坏。输出电流不能太大,+1.5A是其极限值,大电流的输出,散热片的尺寸要足够大,否那么会导致高温保护或热击穿。输入输出压差也不能太小,大小效率很差。4.2智能消毒设备的电热管加热模块图4-3电热管加热局部电路图4-3中P2的两个接口就是代表着220V交流电对电热管加热,而继电器由电源电路引出的+5V电源供电。刚开始接入电源没有按按键的时候,开关Kl是向上打,即1、2是导通的,此时电热管电路是没有接入的。当我们按下按键的时候,P20输出低电平,三极管Q2导通,继电器开关
15、Kl就向下打,即此时1、3导通。这时220V的电源就开始对电热管加热,使其对物品进行高温消毒。同时LED灯1也亮起。当按下停止键或者消毒时间到时,单片时机发送一个信号到该模块,P20输出高电平,Q2截止,继电器开关会适时的往上打,这时电热管电路就恢复了断开状态,LED灯1也会灭掉。通过看LED灯1的亮和灭就可以知道高温消毒是否在进行。4.3智能消毒设备的臭氧消毒模块图4-4臭氧消毒电路臭氧消毒电路原理和高温消毒是类似的,一样是通过继电器来控制臭氧发生器的开关。刚开始接入电源没有按按键的时候,开关KI是向上打,即1、2是导通的,此时臭氧电路是没有接入的。当我们按下按键的时候,P21输出低电平,三
16、极管Q3导通,继电器开关KI就向下打,即此时1、3导通。这时12V电源提供臭氧发生器开始工作,使其对物品进行臭氧消毒。同时LED灯2也亮起。当按下停止键或者消毒时间到时,单片时机发送一个信号到该模块,P21输出高电平,Q3截止,继电器开关会适时的往上打,这时臭氧消毒电路就恢复了断开状态,LED灯2也会灭掉。同样通过看LED灯2的亮和灭就可以知道臭氧消毒是否在进行。在继电器吸和到断开瞬间,由于线圈中的电流不能突变,将在线圈产生下正上负的感应电压,是晶体管集电极承受很高电压,有可能损坏驱动管Q2,为此在继电器线圈两端并接一个续流二极管Db使线圈两端的感应电压被定位在0.7V左右。正常工作是,线圈上
17、的电压上正下负,二极管DI截止,对电路没有影响。4.4智能消毒设备的报警模块图4-5报警电路如上图4-5所示,报警电路是由P3.3口控制,当P3.3输出为低电平时,Ql导通,蜂鸣器鸣响,LED灯3亮;当P3.3输出高电平时,Ql截止,蜂鸣器不响,LED灯3灭。报警电路作用就是在消毒时间到后提醒我们时间到了,要将物体拿出,以节约用电。还有一个作用就是我们不需要在旁边等待或者时不时过来看结束没,可以安心的离开做其他事情。但是报警声只能持续大约五秒,人假设没听到就可能错过。这时LED灯3就派上用场了。消毒结束后,LED灯3就亮起来提醒大家消毒结束了。4.5智能消毒设备的LED模块图4-6LED电路本
18、模块共有LED灯三个,LED灯1亮表示高温消毒进行中,LED灯2亮表示臭氧消毒进行中,LED灯3亮表示消毒结束。通过看这三个LED灯也就可以了解消毒柜的当期状态了,简单又明了。4.6 智能消毒设备的按键选择模块图4-7按键电路如上图是Sl是门控开关,S2、S3和S4依次是代表消毒时间为1分钟、2分钟和3分钟。其中1分钟即代表快速消毒模式,2分钟代表正常模式,3分钟那么代表高强度消毒模式。S5那么是复位键,即当我们想中途结束消毒的时候就可以按下S5,消毒就会立即停止。S6、S7和S8是用来设置时钟的。S9、SlO和Sll是在预约消毒时设定时间的。S12和S13分别为选择高温消毒和臭氧消毒的按键。
19、按键的功能是通过软件来实现的,因此会在后面软件局部具体介绍。4.7 智能消毒设备的单片机控制模块STC89C52主控局部核心电路图4-8单片机电路本设计采用PDIP封装的STC89C52芯片为主控制器,STC89C52是一个低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和FIaSh存储单元。如图4-8所示。该芯片正常工作电压为5V,支持的最高时钟频率为80MHz,Flash程序存储器为8KB,
20、RAM数据存储器为512B,内置看门狗电路,支持ISP/IAP。控制局部是系统整机协调工作和智能化管理的核心局部,采用STC89C52单片机实现控制功能是其关键,采用单片机不但方便监控,并且大大减少硬件设计。STC89C52主要功能特性1、兼容MCS51指令系统2、8k可反复擦写(大于100O次)FlashROM;3、32个双向I/O口;4、256x8bit内部RAM;5、3个16位可编程定时/计数器中断;6、时钟频率0-24MHz;7、2个串行中断,可编程IJART串行通道;8、2个外部中断源,共8个中断源;9、2个读写中断口线,3级加密位;10、低功耗空闲和掉电模式,软件设置睡眠和唤醒功能
21、;11、有PDIP、PQFPTQFP及PLCC等几种封装形式,以适应不同产品的需求。单片机外围晶振电路图4-9晶振电路C1、C3为负载电容,起并联谐振作用,可以让脉冲更平稳与协调,它们的取值相同,这里取30PE,振荡器频率取12MHZ,也就时说单片机的时钟周期为1/12MS,指令周期为1位。单片机外围复位电路图4-10上电更位电路上电复位电路是在电源上电时延时输出以及在正常工作时电压异常或干扰时给芯片输出一复位信号。上电复位电路主要是:上电延时输出;正常工作时监视电源电压。这些都是消除电源的一些不稳定因素而给芯片带来的不利影响。芯片复位之后,执行一段复位程序对芯片各个端口进行初始化,之后,准备
22、接受输入信号。在电压到达操作电压之后,需要一个平安的复位时间,所以需要一个复位电路。图中电容CI和电阻R3对电源+5V来说构成微分电路,上电后,保持RST一段高电平时间,当单片机己在运行当中时,按下复位键S2后松开,也能使RST为一段时间的高电平,从而实现上电或开关复位的操作叫.8智能消毒设备的液晶显示模块1.CD1602主要管脚介绍),工作电流(2.OmA),模块最正确工作电压(5.0V)oLCDI602共有16个引脚,各管脚的功能表4T所示叫表4-1LCDl602管脚功能介绍表引脚图符号状态功能1VSS电源地2VDD电源+5V3VO比照度控制端4RS输入存放器选择5R/W输入读、写操作6E
23、输入使能信号7DBO三态数据总线(LSB)8DBl三态数据总线9DB2三态数据总线10DB3三态数据总线11DB4三态数据总线12DB5三态数据总线13DB6三态数据总线14DB7三态数据总线(MSB)15LEDA输入背光+5V16LEDK输入背光地说明:V0:液晶显示器比照度调整端,接正电源的比照度最弱,接地电源是比照度最高,比照度过高时会产生“鬼影”使用时可以通过一个IOk的电位器调整比照度。RS:存放器选择,高电平时选择数据存储器;低电平时选择指令存放器。R/W:读写信号线,高电平时进行读操作,低电平进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址;当RS为高电平,R/W
24、为低电平时可以写入数据。E:使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。读写控制时序如表4-2所示表4-2读写控制时序表RSR/WE功能OO下降沿写指令代码O1高电平读忙标志和AC码1O下降沿写数据11高电平读数据1.CD1602与单片机连接图及实物图单片机与液晶显示模块之间的连接如图4-11所示。图4-11液晶显示电路4 .系统软件设计本系统软件程序主要包括主程序、按键扫描及处理程序及液晶显示程序。4.1 主程序流程设计图5”主流程图主要是实现各模块程序的链接,其流程图如图5-1所示。主程序首先进行的是上电初始化,其中包括LED灯初始化、液晶显示器信号初始化以及继电器控制信号初始
25、化,全部初始为关闭状态。初始化完成后,单片机不断循环,根据不同的输入执行相应的按键扫描、按键处理、状态显示和继电器工作。5.2按键扫描及按键处理流程设计图5-2按键扫描流程图按键扫描是按键处理的前提准备,其流程图如图5-2所示。首先检查是否有按键按下,假设有先经过IOmS得延时消抖,防止干扰和误动作。然后进行重新扫描,如果前后两次扫描结果相同,那么置有按键按下,向按键处理程序发送相应键值。图5-3按键处理流程图图5-3是按键处理程序流程图,是实现按下不同的按键执行相应的功能。首先按键分三种类型,分别为消毒功能键、时钟设置键和预约功能键。先判断是否为消毒功能键,是就有两种可能,假设按下的是代表臭
26、氧消毒的键单片机就分别给P2.O和Pl.O各一个低电平,臭氧消毒电路就导通,LED灯1亮。同理高温消毒是单片机分别给P2.1和Pl.1各一个低电平,高温消毒电路就导通,LED灯2亮。如果不是消毒功能键就判断是否为时钟设置键。时钟设置键共有三个,分别是小时键、分钟键和秒钟键。按一下小时键,单片机给P2.5个低电平,显示屏上的。变为1,再按下就变为2,以此类推,到第24个低电平就回到0。分钟键和秒钟键也一样的道理,只是它们是到第60个低电平再变为0。假设不是时钟设置键那就判断为预约功能键,原理和时钟设置键是类似的。5 .3液晶程序流程设计图5-4液晶显示流程图液晶显示是受单片机控制的,需要不停的刷
27、新动态扫描,根据按键处理程序的处理结果送相应的字符给LCDI602,让它显示出来。液晶显示延时IOnlS后就返回开始,不停循环。6 .系统调试6.1 仿真测试在仿真软件上将完整电路画好之后就可以进行仿真了。将电路连接好之后,就可以进行编译,如果出现错误,根据提示进行改正。如果无误,就可以进行仿真,由输出的结果,例如用时序图来判断实验设计的正确性。将之前编好的程序导入仿真图,在进行编译和仿真时,逐步、逐模块进行仿真,每做好一个电路模块就进行一次电路编译仿真,在原电路的根底上增加一个局部电路,就进行一次模拟仿真。仿真完成后下载到硬件电路上,实际进行测量。图6-1仿真图选芯片图62仿真图6 .2单元
28、模块的测试本作品实物分为三个模块,分别为电源模块、单片机模块和液晶显示屏模块,最后通过杜邦线将其连接。(1)电源电路测试:设计并搭好电源电路,并用万用表进行检测电路的连接情况,在确定电路没问题后,通上电源。用万用表测出最后的输出电压,发现是我们所需的+5V和+12V,因此确定电源电路没有问题。(2)单片机电路和液晶显示屏电路的测试:单片机电路和液晶显示屏电路的测试:在电源电路的根底上再接入单片机电路和液晶显示屏电路进行调试。接通电源后,发现液晶显示屏有亮,但是显示的字符有些混乱,并不是预先设置的字符。同时发现LED灯也有亮着,这就表示单片机是有在工作的,因为LED灯的亮和灭就是通过单片机控制的
29、。仔细观察电路板后疑心可能是液晶显示屏的接线问题,于是将几个可能是虚焊的点加强了一下。重新接入电源,发现情况有所改善,但是还是没有到达预期的效果。将电液晶显示所在的那块板上的元件逐一检查,发现单片机其中的一个角并没有接入电路。将单片机拔出来,把角弄好,重新插入电路,再次将电源接入,液晶显示屏上显示正常。按下按键选择消毒一分钟,单片机控制液晶显示屏显示WaittinleO:00,按下第一个按键,即选择消毒时间为一分钟。单片机接收到消毒一分钟的信号就相应发出对应的信号,这时液晶显示屏上的0:0变成0:59,同时LED灯亮起一分钟到了,显示屏上时间变回0:00。这时可以隐约听到“咔”一声,那是继电器
30、的声音。然后蜂鸣器响起,LED灯1亮了。假设按下复位键,将消毒进行的状态变为初始等待状态。测试结果和仿真一样,到达了实验要求,测试完成。7 .设计展望近来市场上的消毒柜新品层出不穷,如具有VFD动态显示、数码控制、热风内循环功能的康宝系列消毒碗柜;具有欧式豪华外形,采用微电脑控制,定时开关、自动除臭的老板牌消毒柜;采用高新纳米磁性门封材料、排气孔特设防虫网,有效杜绝二次污染的美的消毒柜等。8 .总结课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。随着科学技术开展的日新月异,单片机已经成为当今计算机应用中空前活
31、泼的领域,在生活中可以说得是无处不在。因此作为二十一世纪的大学生来说掌握单片机的开发技术是十分重要的。回忆起此次单片机课程设计,我仍感慨颇多。确实,从选题到定稿,从理论到实践的这一段时间里,可以说是苦多于甜,但是可以学到很多很多的东西,同时不仅可以稳固了以前所学过的知识。指导老师的帮助也使我少走了很多方路。通过这次的设计使我懂得r理论和实践相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,同时在设计过程中发现了自己的缺乏之处,对与之前所学过的知识理解得不够深刻,掌握得不够牢固,
32、比方说不懂一些元器件的使用方法,对单片机编程掌握得不好等等。通过本次课程设计我掌握了用单片机进行实际产品开发的根本过程,加强了模块化设计思想的培养,进一步熟悉了单片机编程,同时也增加了对本专业的兴趣,培养了实际操作和编程技能,为今后专业课程的学习和走向工作岗位打下良好的根底。弁考文献1吴建生,李培根,陈甦.PIC16C5X系列单片机软件中断的实现J.电子技术应用,1995(3):48.2李建忠.单片机原理及应用M.西安:电子科技大学出版社,2008.3张凡等.Protel电路设计指南J.机电元件,2005,10(3):74-77.4何立民.单片机应用技术选编Z.北京:电子工业出版社,2006.
33、5陈良光,孔令海.用8031自身接口实现数码管动态显示和键盘扫描J.电子技术,1994(7):21-23.6郝立军.直流稳压电源的设计方法J.农业机械化与电气化,2007,20(4):184-187.7王浩等.集成电路速查大全Z.西安:电子科技大学出版社,2003.8王晓君,安国臣.MSC-51及兼容单片机原理与选型M.北京:电子工业出版社,2003.9孙涵芳,徐爱卿.单片机的原理与应用M,北京:北京航空航天大学出版社,1998.10陈奥初.单片机应用系统设计与实践IXI.北京:北京航空航天大学出版社,199LSmartdisinfectionequipmentEiectronkandInfo
34、rmationEngineering,ElectronicandInformationEngineeringQiuhongZhanginstructorJianmingYuAbstract:ThissystemusestheAT89C52microcontrollerasthecore,theuseofitsinternalregisters,timer/counter,interrupt,andotherresourcestocompleteintelligentperipheraldeviceswiththefunctionofsterilization.Bypressingdiffere
35、ntbuttonstoselectadifferentcircuitbeginsafterdisinfectionoperation.Afterrunningthecircuitthroughthethermostatswitchandregulardisinfectionofautomaticcontrolofpowerinsidetheheatingpipesandpoweroutages,timelycompletionofthedisinfectionofthelockersandcabinetsthroughtheLCDscreenonthestatusofdisinfectiona
36、taglance.Weldingsystemingdphysicalmapofhardwareandaftertesting,analogfunctionsareimplemented,thatis,presstheswitchstartheating.LCDscreenshowsexacttimeremaining.Time,therelayautomaticallydisconnected,theendoftheheatingandthebuzzersounded.Keywords:AT89C52;Countdown:alarmtoremind;LCD附录一:PCBAlPCB图附录二:硬件
37、实物图A2硬件实物图正面附录三:程序清单*#include#include#defineucharunsignedchar#defineuintunsignedint#definedelayNOP();_nop_();_nop_();_nop_();_nop_(););sbits=P25;sbitw=P26;sbiten=P27;sbitrelay=P20;sbitswl=P2l;sbitsw2=P22;sbitsw3=P23;sbitsw4=P24;sbitbuzl=P33;bitplayflag=;*木木*延时(2ms)*#*%*voiddelay(ucharms)while(ms-)un
38、signedchari;for(i=0;i250;i+)_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();*木*;则LCD,忙)*木*bitlcd_busy()bitresult;rs=O;rw=l;en=l;_nop_();_nop_();-0P-();_nop_();result=(bit)(PO&Ox8O);/LCD的Do-D7中,D7=l为忙碌,D7=0为空闲en=0;returnresult;voidWrite_com(ucharcmd)while(lcd_busy();rs=O;rw=0;
39、en=0;_nop_();_nop_();P0=cmd;delayNOP();en=l;delayNOP();en=0;)*求*求水写显示娄攵抹?到LCD*木*木*求*voidWrite_dat(uchardat)WhiIe(RXLbUSy();rs=l;rw=O;en=O;PO=dat;delayNOP();en=l;delayNOP();en=0;*#*%*lcd上设定*voidlcd_init()delay(15);Write_com(0x38);delay(5);Write_com(0x38);delay(5);Write_com(0x38);delay(5);Write_com(0x
40、0c);delay(5);Write_com(0x06);delay(5);Write_com(OxO1);delay(5);1*求*木*|定显彳立木水*木*木*木voidlcd_pos(ucharpos)Write_com(POSIOX80);/数据指针=80+地址变量*显彳立木*味*voidset_xy(ucharx,uchary)ucharaddress;if(y=Daddress=0x80+x;elseaddress=xc+x;Write_com(address);求*求*求*求*函数木*求*求*求*求*voidsenddata(uchardat)SBUF=dat;WhiIe(JTI)
41、;TI=O;木*求*定个显与内容*木*voiddisplayonechar(ucharx,uchary,ucharDATA)if(0=y)x=0x80;当显示第行是地址码+0x80elseXI=OXC0;在第二行显示是地址码+OxcOWrite_com(x);发送地址码Write_dat(DATA);发送要显示的字符编码*%*木*木*木*设定守串显司三彳立置与内容*%*木*木*voiddisplaylistchar(ucharx,uchary,uchar*s)SejXy(X,y);while(*s)Write_dat(*s);s+;1/译*木*木*W木J字*木*求*木*voidmain(voi
42、d)uchari,j,k,l;lcd_init();displaylistchar(,1,WaitTime:00:00);dispIaylistchar(0,2,WeIecomeToUse);repeat:while(l)relay=1;buzl=l;displaylistchar(0,1,WaitTime:00:00);if(sw1=0)(relay=O;for(k=l;0k;k)(for(j=6;0j;j-)(for(i=10;0i;i)(displayonechar(12,O,x3O+k-l);displayonechar(l4,0,0x30+j-l);displayonechar(15
43、,0,0x30+i-1);delay(491);if(sw4=0)gotorepeat;)relay=1;if(relay=l)buz1=0;delay(491);delay(491);delay(491);1)if(sw2=0)(relay=0;for(k=2;0k;k)(for(j=6;0jj-)(for(i=10;0i;i)(displayonechar(12,0,0x30+k-1);displayonechar(14,0,0x30+j-l);displayonechar(15,O,Ox3O+i-1);delay(491);if(sw4=0)gotorepeat;relay=1;if(relay=l)buz1=0;delay(491);delay(491);delay(491);1)if(sw3=0)(relay=O;for(k=3;0k;k)(for(j=6;0j;j-)(for(i=10;0i;i)(displayonechar(12,0,0x30+k-1);displayonechar(14,0,0x30+j-1);displayonechar(15,0,0x30+i-l);delay(491);if(sw4=0)(gotorepeat;)relay=1;if(relay=1)buz1=0;delay(491);delay(491);delay(491);
链接地址:https://www.desk33.com/p-1262436.html