1、 摘要随着数字技术的快速发展,数字技术被广泛应用于智能控制的领域中。单片机以体积小、功能全、价格低廉、开发方便的优势得到了许多电子系统设计者的青睐。它适合于实时控制,可构成工业控制器、智能仪表、智能接口、智能武器装置以及通用测控单元等。洗衣机是现代人必备的日常生活家电,它的发明和应用使人们的洗衣工作变得省时省力,很好地缓解了人们在家务劳动方面的压力。本设计采用AT89C51单片机作为洗衣机控制系统的主控芯片,洗衣机的各种洗涤程序运行都在单片机的控制下,使得洗涤、漂洗、脱水等各种功能的操作都不需手动。本系统的电路并不复杂,给AT89S51单片机载入软件程序后,能够实现全自动洗衣机的基本功能。虽然
2、不能与电器市场上的洗衣机控制系统媲美,但也具有一定的实用性。关键词:洗衣机;单片机;智能控制;数码管IABSTRACTWith the rapid development of digital technology, digital technology is widely used in the field of intelligent control. Single chip with small volume, full-featured, low cost, the development of convenience advantages is in favor of many el
3、ectronic systems designers. It is suitable for real-time control, can constitute industrial controllers, smart instrumentation, smart interface, smart weapons devices and universal control unit.Washing machine is an essential appliance in modern peoples daily life. Its invention and applications mak
4、e peoples laundry becomes time-saving and easy to alleviate the pressure of housework. This design uses AT89C51 as the master chip of the washing machines control system, washing machines various washing program is running under the control of the single chip, it makes the operation of washing, rins
5、ing, dehydration and other various functions without manual control. The circuit of this system is not complicated. After loading a software program to the AT89S51, we can get the basic functions of the automatic washing machine. It cant compare with the washing machine control system on the market
6、of electrical appliances, but also has a certain practicality.Keywords: washing machine; single chip; intelligent control; Digital tube目录0 前言11 绪论21.1 课题开发背景21.1.1 全自动洗衣机的发展史21.1.2 国内外现状及发展趋势31.2 研究目的及意义51.3 设计的主要内容52 设计方案72.1设计任务72.1.1 内容与功能72.1.2 按键72.1.3 洗衣过程72.2 系统过程部件82.3 控制系统功能93 硬件部分的设计103.1
7、控制系统的组成103.2 主控芯片单片机103.2.1 单片机概述103.2.2 单片机分类113.2.3 AT89S51113.3 辅助电路设计163.3.1 复位电路163.3.2 时钟电路183.3.3 报警电路193.3.4 显示电路193.3.5 电动机电路213.3.6 进/排水电路223.4 电源电路233.5 水位检测电路233.5.1 水位检测系统设计原理233.5.2 水位检测电路243.6 按键部分254 软件部分的设计264.1 主程序设计264.2 洗衣模式和水位选择设计274.3 洗涤程序设计314.3.1 标准、快速洗衣程序324.3.2 漂洗程序354.3.3
8、脱水程序385 调试405.1 硬件调试405.1.1 Protues405.1.2 硬件仿真405.2 软件调试415.2.1 Keil C51415.2.2 软件编程416 结论43致谢44参考文献45附录A 中文翻译46附录B 英文文献53附录C 电路图62附录D 源程序63辽宁工程技术大学毕业设计(论文)0 前言从古到今,洗衣服都是一项难于逃避的家务劳动,而在洗衣机出现以前,对于许多人而言,它并不像田园诗描绘的那样充满乐趣,手搓、棒击、冲刷、甩打,这些不断重复的简单的体力劳动,留给人的感受常常是:辛苦劳累。近年来随着计算机在社会领域的渗透,单片机技术正日新月异的发展,它以集成度高、运算
9、速度快、体积小、运行可靠、价格低廉等特点在过程控制、机电一体化、智能化仪表、家用电器等方面得到了广泛应用。以单片机为核心设计的全自动洗衣机控制电路的组成相对简单,而且实用性很强。全自动洗衣机由于具有对衣物的磨损小、洗涤量大、节水等特点,越来越得到广大家庭的青睐。随着社会的进步和生活水平的提高,人们对全自动洗衣机的功能多样化、操作简单化也提出了更高的要求。为适应这种变化,全自动洗衣机的控制器已由机械式、混合式逐步过渡到全电子控制。如今,洗衣机已经是一种在家庭中不可缺少的家用电器,发展非常快,全自动式洗衣机因使用方便得到大家的青睐,全自动即进水、洗涤、漂洗、摔干等一系列过程自动完成,控制器通常设有
10、几种洗涤程序,对不同的衣物可供用户选择。随着未来发的展,洗衣机的性能将会不断完善。设计一个用单片机控制的洗衣机控制器的主要部分是以单片机为主的控制器,再扩展必要的外部电路,设计制作一个洗衣机控制器,最后实现对洗衣机整个洗衣过程的控制。基于单片机洗衣机通过控制系统设定洗衣程序在洗涤脱水桶内能自动完成注水、洗涤、漂洗、排水和脱水全过程。771 绪论1.1 课题开发背景随着人民生活水平的提高,越来越多的人需要使用洗衣机。现在洗衣机越来越高度自动化,只要衣服放入洗衣机,简单的按两个键,就会自动注水,一些先进的电脑控制洗衣机,还能自动的感觉衣物的重量,自动的添加适合的水量和洗涤剂,自动的设置洗涤的时间和
11、洗涤的力度,洗涤完以后自动的漂洗甩干,更有些滚筒洗衣机还会将衣物烘干,整个洗衣的过程完成以后还会用动听的音乐声提醒用户,用户可以在洗衣的过程做其它的事,节省了不少的时间。总之,每一项技术的进步极大地推动了洗衣过程自动化程度的提高。1.1.1 全自动洗衣机的发展史1858年,一个叫汉密尔顿史密斯的美国人在匹茨堡制成了世界上第一台洗衣机。该洗衣机的主件是一只圆桶,桶内装有一根带有桨状叶子的直轴。轴是通过摇动和它相连的曲柄转动的。1874年,“手洗时代”受到了前所未有的挑战,美国人比尔布莱克斯发明了木制手摇洗衣机。布莱克斯的洗衣机构造极为简单,是在木筒里装上6块叶片,用手柄和齿轮传动,使衣服在筒内翻
12、转,从而达到“净衣”的目的。1880年,美国又出现了蒸气洗衣机,蒸气动力开始取代人力。现代蒸汽洗衣机的功能包括蒸汽洗涤和蒸汽烘干,采用了智能水循环系统,可将高浓度洗涤液与高温蒸气同时对衣物进行双重喷淋,贯穿全部洗涤过程,实现了全球独创性的“蒸汽洗”全新洗涤方式。1910年,美国的费希尔在芝加哥试制成功世界上第一台电动洗衣机。电动洗衣机的问世,标志着人类家务劳动自动化的开端。1922年,美国玛塔依格公司改造了洗衣机的洗涤结构,把拖动式改为搅拌式,使洗衣机的结构固定下来,这也就是第一台搅拌式洗衣机的诞生。这种洗衣机是在筒中心装上一个立轴,在立轴下端装有搅拌翼,电动机带动立轴,进行周期性的正反摆动,
13、使衣物和水流不断翻滚,相互摩擦,以此涤荡污垢。搅拌式洗衣机结构科学合理,受到人们的普遍欢迎。1932年,美国本德克斯航空公司宣布,他们研制成功第一台前装式滚筒洗衣机,洗涤、漂洗、脱水在同一个滚筒内完成。这意味着电动洗衣机的型式跃上一个新台阶,朝自动化又前进了一大步!第一台自动洗衣机于1937年问世。这是一种“前置”式自动洗衣机。靠一根水平的轴带动的缸可容纳4000克衣服。衣服在注满水的缸内不停地上下翻滚,使之去污除垢。到了40年代便出现了现代的“上置”式自动洗衣机。随着工业化的加速,世界各国也加快了洗衣机研制的步伐。首先由英国研制并推出了一种喷流式洗衣机,它是靠筒体一侧的运转波轮产生的强烈涡流
14、,使衣物和洗涤液一起在筒内不断翻滚,洗净衣物。1955年,在引进英国喷流式洗衣机的基础之上,日本研制出独具风格、并流行至今的波轮式洗衣机。至此,波轮式、滚筒式、搅拌式在洗衣机生产领域三分天下的局面初步形成。60年代的日本出现了带干桶的双桶洗衣机,人们称之为“半自动型洗衣机”。70年代,生产出波轮式套桶全自动洗衣机。70年代后期,以电脑(实际上微处理器)控制的全自动洗衣机在日本问世,开创了洗衣机发展史的新阶段。80年代,“模糊控制”的应用使得洗衣机操作更简便,功能更完备,洗衣程序更随人意,外观造型更为时尚。诞生了许多新水流洗衣机。此后,随着电机驱动技术的发展与提高,日本生产出了电机直接驱动式洗衣
15、机,省去了齿轮传动和变速机构,引发了洗衣机驱动方式的巨大革命。之后,随着科技的进一步发展,滚筒90年代,由于电机调速技术的提高,洗衣机实现了宽范围的转速变换与调节,洗衣机已经成了大家耳濡目染的产品。1.1.2 国内外现状及发展趋势1 洗衣机的分类普通洗衣机。其洗涤、漂洗、脱水等功能均须手工转换。半自动洗衣机。它能在洗涤、漂洗、脱水等功能之间,实现某两个功能的自动转换。全自动洗衣机。它能自动实现洗涤、漂洗、脱水等所有功能。2 全自动洗衣机在国内外的现状及水平全自动洗衣机根据结构不同可分为波轮式全自动洗衣机(也叫套桶式全自动洗衣机)、滚筒式全自动洗衣机和搅拌式全自动洗衣机三大类。波轮式、滚筒式、搅
16、拌式全自动洗衣机分别占全球洗衣机市场份额的33、52和15。搅拌式洗衣机目前还没有进入我国市场,以下对波轮式和滚筒式两种洗衣机进行简单说明。1)滚筒式洗衣机滚筒洗衣机是由不锈钢内桶,机械程序控制器,经过磷化、电泳、喷涂三重保护的外壳,和两块笨重的水泥块用于平衡滚筒旋转时产生的巨大离心力做重复运动,加上洗衣粉和水的共同作用使衣物洗涤干净。由于用料主要以钢铁等做成,所以寿命一般在1520年左右。滚筒洗衣机发源于欧洲,洗衣方法是模仿棒锤击打衣物原理设计,利用电动机的机械做功使滚筒旋转,衣物在滚筒中不断地被提升摔下,再提升再摔下,做重复运动,加上洗衣粉和水的共同作用使衣物洗涤干净。优点:滚筒洗衣机由微
17、电脑控制所有功能,衣物无缠绕、洗涤均匀、磨损率要比波轮洗衣机小10%,所以就连羊绒、羊毛、真丝衣物也能在机内洗涤,做到真正的全面洗涤性能。也可以利用加热激活洗衣粉中的活性酶,充分发挥出洗衣粉的去污效能。由于用水量较小,可以在桶内形成高浓度洗衣液,在节水的情况下带来理想的洗衣效果。滚筒洗衣机较波轮洗衣机来说,除了洗衣、脱水外,还具有消毒除菌、烘干、水温加热的功能。缺点:耗时长,时间是普通洗衣机的几倍;耗电量大,洗涤时间长;噪音大;机身过重。2)波轮式洗衣机波轮式洗衣机是由电动机带动波轮转动,衣物随水不断上下翻滚。洗涤衣物有单桶、套桶、双桶几种。它的结构比较简单,维修方便,洗净率高,但对衣物磨损率
18、大,用水多。目前随着科技发展,出现了电脑控制的新水流洗衣机,采用大波轮、凹型波轮等。优点是对衣物缠绕小,洗涤均匀损衣率低;洗涤缸缸体有全塑、搪瓷、铝合金、不锈钢四大类。波轮式洗衣机工作原理:依靠装在洗衣桶底部的波轮正、反旋转,带动衣物上、下、左、右不停地翻转,使衣物之间、衣物与桶壁之间,在水中进行柔和地摩擦,在洗涤剂的作用下实现去污清洗。优点:洗涤速度要比滚筒洗衣机快得多。在技术上,越来越多的新技术被运用在波轮洗衣机上,都大大提高了波轮洗衣机的性能。洗净度高,双缸的更能节省水、电、洗涤剂的消耗,更适合一般衣物的洗涤,价格便宜,移动方便,省时。缺点:相对来讲洗涤时对衣物损伤大,易产生衣物的缠绕,
19、使用相对费事。1.2 研究目的及意义洗衣机是现代人必备的日常生活家电,它的发明和应用使人们的洗衣工作变得省时又省力,很好地缓解了人们在家务劳动方面的压力。而随着人们对生活质量的不断追求,普通的洗衣机已经不能满足部分人的需求,所以研究多功能的全自动洗衣机具有重大的意义。本设计课题主要是以单片机作为核心控制器件来设计洗衣机的智能控制系统,实现对洗衣机洗衣过程的全自动控制。所谓全自动洗衣机,是指洗衣机能在洗涤、漂洗和脱水三种功能之间自动转换,无需人工介入。这种洗衣机一般采用套桶式结构,它具有体积小、容量大、磨损小、省时又省力的优点。这种洗衣机装有控制器,自动完成进水、洗涤、排水、漂洗、脱水和报警等程
20、序。这样做不但减少人们洗衣的步骤,也能缩短人们的洗衣时间,让人们生活变得更加方便。基于单片机的自动洗衣机控制系统具有精度高、功能强、经济性好的特点。无论在提高产品质量还是产品数量,节约能源还是改善劳动条件等方面都显示出无比的优越性。对基于单片机的全自动洗衣机控制系统设计进行深入研究,可以使我们掌握全自动洗衣机这种重要家电的工作原理和控制系统,进一步了解单片机在不同领域的应用方法,学会单片机控制全自动洗衣机的电控板设计,同时也为将来从事电子行业打下一定基础,所以本次设计具有重大意义。1.3 设计的主要内容本设计设计一个用单片机控制的洗衣机控制器。以单片机为主,并扩展必要的外部电路。设计制作的洗衣
21、机控制器能实现对洗衣机整个洗衣过程的控制,包括用户参数输入、洗衣、漂洗、排水和脱水等阶段。控制系统主要由电源电路、单片机控制系统和外部硬件电路构成。电源电路为单片机主控系统提供5v的直流电压,单片机控制系统负责控制洗衣机的工作过程,主要由51单片机、2位共阳数码管、按键、蜂鸣器、LED指示灯组成;外部硬件电路有继电器、三极管、电动机、进水电磁阀、排水电磁阀等。图1-1为设计方框图。图1-1 设计方框图Fig.1-1 Block diagram of the design2 设计方案2.1设计任务2.1.1 内容与功能1 主要内容:设计一个用单片机控制的洗衣机控制器。以单片机为主的控制器,扩展必
22、要的外部电路,设计制作一个洗衣机控制器。2 主要功能:1)标准洗涤:洗涤12分钟;漂洗6分钟,二次;脱水3分钟。快速洗涤:洗涤7分钟;漂洗3分钟,二次;脱水2分钟。2)启动暂停按钮控制:第一次启动,标准洗涤;工作时按此按钮暂停,再按则恢复工作。洗涤、漂洗正转4秒,停2秒,反转4秒,停2秒。3)有脱水功能,并且在脱水时,如果打开盖板,脱水暂停。4)洗涤时洗涤指示灯闪烁;漂洗时漂洗指示灯闪烁;脱水时脱水指示灯闪烁。2.1.2 按键洗衣机面板上有4个按钮K1、K2、K3、K4。K1为启动停止和确定键。K2用于模拟洗衣机的盖板打开。K3用于选则洗衣方式。K4用于选择水位。2.1.3 洗衣过程通电后,若
23、不选择洗衣周期,则洗衣机从洗涤过程开始。进入洗涤过程,首先进水阀接通,开始向洗衣机供水,当到达要求水位时,进水阀断电关闭,停止进水;电机M接通,带动水桶旋转,形成洗衣水流。电机M是一个正反转电机,可以形成往返水流,有利于洗涤衣物。完成一次洗涤过程需要的动作:1 进水动作进行洗涤时,桶内的水量必须达到水位设定要求。洗衣机的进水和水位判断,是由水位开关和进水阀的开合来进行控制的,当桶内没有水或水量达不到设定水位时,单片机程序奖可在进水阀闭合,开始注水,当桶内的水位达到设定水位时,水位开关受压闭合,程序就可进行下一步处理。2 排水动作进入脱水动作前应先排水。为了避免空排水及排水不完造成对电机的损害。
24、洗衣机能够根据实际水量对排水时间进行动态控制。3 洗涤动作洗涤动作指的是点击周期性的“正转停止反转停止”。不同的洗衣过程,控制电机执行“正转停止反转停止”的时间是不同的。4 脱水动作排水结束后进入脱水动作,脱水是通过电机的正转来实现的,同时要求排水阀一直打开。脱水结束后,发出报警,并自动关闭排水阀。5 其他动作洗衣机控制面板上还配有启动停止、电源、脱水、复位等按钮。2.2 系统过程部件1 单片机电路单片机电路是程序控制的中心。它把计算机的各种功能电路都集成在一块芯片上。单片机根据输入指令和检测信号,调出内部的相应程序,通过电路处理后输出各种控制信号,是洗衣机自动完成操作过程。如果单片机自己出现
25、故障或控制电路传送给单片机的信号不正确,洗衣机就不能正常工作。2 直流电源电路这是为单片机及其外围控制电路提供晓以电压直流电源的电路,它将输入的220V交流电经过变压、整流、滤波-稳压后,变为稳定的低压直流电,送给单片机、显示电路等。3 复位电路此电路的作用是复位。在单片机接上电源以后,或手动复位时,将单片机存储器复位,使其各项参数处于初始位置,即处于开机时的标准程序状态,以消除某种原因的程序紊乱。4 时钟电路由晶振元件与单片机内部电路组成,产生的振荡频率为单片机提供时钟信号,供单片机计时和定时。5 按键输入电路当按键被按动时,其接通的信号将输送到单片机。单片机将对应的调出内部软件进行工作,使
26、洗衣机进入相应的洗涤程序。6 显示电路它是程序控制系统向用户直接观察到洗衣机的工作状态的窗口。预设工作程序时,可根据指示灯的闪亮来判断洗衣机是否接受了指令;还可以通过指示灯的显示来判断洗衣机工作是否正常。7 报警电路此电路在洗衣机中起提示和报警作用。根据程序安排和软件设置,当洗衣完成后,洗衣机将发出声音以提示用户洗衣完成。2.3 控制系统功能基于单片机洗衣机通过控制系统设定洗衣程序在洗涤脱水桶内自动完成注水、洗涤、漂洗、排水和脱水全过程。洗衣机控制系统打开进水电磁阀开始注水;当洗涤脱水桶内的水位达到系统设定值时单片机发送一个低电平通知控制系统关闭进水电磁阀,同时启动电机洗衣。电机在系统的控制下
27、进行正转、停、反转通过传动带动水桶执行洗涤程序;当洗涤时间终了,控制系统切断电机电路打开排水电磁阀开始排水;然后再次注水,洗衣机进入漂洗状态,完成漂洗程序(通常为2次漂洗)后,开始排水,同时排水电磁阀的动作为脱水程序作好准备;排水结束后系统控制电机单方向高速运转完成脱水程序;当脱水程序终了系统控制排水电磁阀和电机断电,排水阀复位,同时蜂鸣器奏响,通知用户整个洗衣程序结束。3 硬件部分的设计3.1 控制系统的组成该电路主要组成部件是由AT89S51单片机、指示灯、电动机、蜂鸣器、电控水龙头、LED显示灯以及按键组成。图3-1位控制系统组成图。电动机有两个控制端,一端控制电动机正转且该端与P2.0
28、相连,另一端控制电动机的反转且该端与P2.1相连。电控水龙头共两个,一个为进水水龙头且受P1.6的控制,另一个为排水水龙头而受P1.7的控制,当电控水龙头的控制端为“0”时水龙头打开,当电控水龙头的控制端为“1”时水龙头关闭。显示器共有两只,P0控制高位显示器,P2控制低位显示器。蜂鸣器P3.5控制,当P3.5输出为“1”时蜂鸣器发声。本系统采用12MHz的晶体振荡器定时器0和定时器1的设置为每隔100us产生一次中断。图3-1 控制系统组成框图Fig.3-1 Block diagram of the control system3.2 主控芯片单片机3.2.1 单片机概述单片机又称微控制器或
29、嵌入式控制器。现在的智能家电没有一个不是采用微控制器来实现的,所以家用电器是单片机应用最多的领域之一。它是家用电器实现智能化的心脏和大脑。单片机主要应用在计算机外设、实时控制、仪器仪表、通信和家用电器等各个地方,是计算机技术和电子技术的综合性应用,在不同的应用场合其技术要求各不相同,因此设计方案和研发的步骤也完全不一样。单片机应用系统由硬件和软件组成。硬件是指MCU、存贮器、I/O接口和外设等物理器件的组合。软件是指系统监控程序的总称。在开发过程中它们的设计是不能完全分开的,应该互相配合、不断调整才能组成高性能的应用系统。单片机应用系统的开发包括系统总体设计、硬件设计、软件设计、系统调试等,而
30、且它们有时交叉进行。单片机是现代电子设计中使用最广泛的电子元件。它价廉,但是功能强大、体积小、性能稳定。目前在各类产品中都能看到单片机的身影如门铃、电梯、玩具以及各种数据采用系统中等。3.2.2 单片机分类1 通用型/专用型这是按单片机适用范围来区分的。例如,80C51是通用型单片机,它不是为某种专用途设计的;专用型单片机是针对一类产品甚至某一个产品设计生产的,例如为了满足电子体温计的要求,在片内集成ADC接口等功能的温度测量控制电路。2 总线型/非总线型这是按单片机是否提供并行总线来区分的。总线型单片机普遍设置有并行地址总线、数据总线、控制总线,这些引脚用以扩展并行外围器件都可通过串行口与单
31、片机连接,另外,许多单片机已把所需要的外围器件及外设接口集成一片内,因此在许多情况下可以不要并行扩展总线,大大减省封装成本和芯片体积,这类单片机称为非总线型单片机。3 控制型/家电型这是按照单片机大致应用的领域进行区分的。一般而言,工控型寻址范围大,运算能力强;用于家电的单片机多为专用型,通常是小封装、低价格,外围器件和外设接口集成度高。显然,上述分类并不是惟一的和严格的。例如,80C51类单片机既是通用型又是总线型,还可以作工控用。3.2.3 AT89S51AT89S51是一个低功耗,高性能CMOS8位单片机,片内含4Kbytes ISP(In-system programmable)的可反
32、复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,AT89S51在众多嵌入式控制应用系统中得到广泛应用。1 主要的性能参数:与MCS-51产品指令系统完全兼容4k字节在系统编程(ISP)flash闪速存贮器1000次擦写周期全静态工作模式0Hz-33MHz128*8字节内部RAM32个可编程I/O线2个16位定时/计数器6个中断源低功耗空闲和掉电模式中断可从空闲模式唤醒系统掉电标示和快速编程特性此外AT89S51设计和配置了振荡频率为11
33、.0529MHz的振荡电路并可通过软件设置省电模式。空闲模式下CPU暂停工作而RAM定时计数器、串行口、外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其他功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC三种封装形式以适应不同产品的需要。硬件复位电路主要是实现复位功能,当单片机运行出现死循环时复位电路就可以起保护功能而实现复位作用。2 AT89S51单片机作为控制部件,该型号单片机共有40个引脚采用双列直插式的,图3-2是它的引脚图。图3-2 AT89S51的引脚图Fig.3-2 The pin figure of AT89S513 管脚说明:VC
34、C:电源电压输入端。GND:电源地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一
35、个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平
36、,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口除了作为普通I/O口,还有第二功能:P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(T0定时器的外部计数输入)P3.5 T1(T1定时器的外部计数输入)P3.6 /WR(外部数据存储器的写选通)P3.7 /RD(外部数据存储器的读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。I/O口作为输入口时有两种工作方式,即所谓的读端口与读引脚。读端口时实际上并不从外部读入数据,而是把端口锁存器的内容读入到
37、内部总线,经过某种运算或变换后再写回到端口锁存器。只有读端口时才真正地把外部的数据读入到内部总线。89C51的P0、P1、P2、P3口作为输入时都是准双向口。除了P1口外P0、P2、P3口都还有其他的功能。RST:复位输入端,高电平有效。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:地址锁存允许/编程脉冲信号端。当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用
38、作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。PSEN:外部程序存储器的选通信号,低电平有效。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。EA/VPP:外部程序存储器访问允许。当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平
39、时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:片内振荡器反相放大器和时钟发生器的输入端。XTAL2:片内振荡器反相放大器的输出端。4存储器的分配AT89S51的内部共有256个数据存储单元,通常把这256个单元按其功能划分为两部分:低128单元和高128单元,其中低128个单元供用户暂存中间数据,可读可写,掉电后数据会丢失;高128个单元被专用寄存器占用。其中内部数据存储器的分配情况如图3-3所示。图3-3数据存储器的分配情况图Fig.3-3 Distribution of the data memory3.3 辅助电路设计3.3.1 复位
40、电路为确保微机系统中电路稳定可靠工作,复位电路是必不可少的一部分,复位电路的第一功能是上电复位。一般微机电路正常工作需要供电电源为5V5%,即4.755.25V。由于微机电路是时序数字电路,它需要稳定的时钟信号,因此在电源上电时,只有当VCC超过4.75V低于5.25V以及晶体振荡器稳定工作时,复位信号才被撤除,微机电路开始正常工作。1 单片机复位电路的类型:目前为止,单片机复位电路主要有四种类型:1)微分型复位电路;2)积分型复位电路;3)比较器型复位电路;4)看门狗型复位电路。2 基本的复位方式单片机在启动时都需要复位,以使CPU及系统各部件处于确定的初始状态,并从初态开始工作。89系列单
41、片机的复位信号是从RST引脚输入到芯片内的施密特触发器中的。当系统处于正常工作状态时,且振荡器稳定后,如果RST引脚上有一个高电平并维持2个机器周期(24个振荡周期)以上,则CPU就可以响应并将系统复位。单片机系统的基本复位方式有:上电复位和按键电平复位。1)上电复位图3-4(a)是常用的上电复位电路,这种上电复位利用电容器充电来实现。当加电时,电容C充电,电路有电流流过,构成回路,在电阻R上产生压降,RESET引脚为高电平;当电容C充满电后,电路相当于断开,RESET的电位与地相同,复位结束。可见复位的时间与充电时间有关,充电时间越长复位时间越长,增大电容或增大电阻都可以增加复位时间。2)按
42、键电平复位图3-4(b)是按键式复位电路。它的上电复位功能与图3-4(a)相同,但它还可以通过按键实现复位,按下键后,通过R1和R2形成回路,使RESET端产生高电平。按键的时间决定了复位时间。 (a) (b)图3-4 复位电路图Fig.3-4 Reset circuit在本次设计中采用按键复位,如图3-5。图3-5 按键复位图Fig.3-5 Reset of using button3.3.2 时钟电路时钟电路由晶振元件与单片机内部电路组成,产生的振荡频率为单片机提供时钟信号,供单片机信号定时和计时。在AT89S51单片机内部有一个高增益反相放大器,其输入端引脚为XTAL1,其输出端为XTA
43、L2。只要在两引脚之间跨接晶体振荡器和微调电容C2、C3,就可以构成一个稳定的自激振荡器。本设计采用图3-6所示电路。一般地,电容C2和C3取33pf左右。晶体振荡器,简称晶振,频率范围是1.212MHz。晶振频率越高,系统的时钟频率也就越高,单片机的运行速度也就越快。在通常情况下,使用振荡频率为6MHz或12MHz的晶振。如果系统中使用了单片机的串行口通信,则一般使用频率为11.0592MHz的晶振。而在本次设计中采用的是频率为11.0592MHz的晶振。图3-6 时钟电路Fig.3-6 Clock circuit3.3.3 报警电路本设计采用无源蜂鸣器,单片机必须输出固定频率的方波信号,其
44、工作电压范围宽,4-12V,需要外围元件少,电压增益可调范围为20-200。通过单片机的P3.0输出高电平来控制蜂鸣器报警。如图3-7所示。图3-7 报警电路Fig.3-7 Alarm circuit3.3.4 显示电路显示模块由发光二极管和LED显示器组成。1 LED(Light Emiting Diode)是发光二极管英文名称的缩写。本设计采用发光二极管主要是用来指示洗衣机的工作状态。6个发光二极管分别跟单片机的P1口的6个I/O口连接,如图3-8所示。当发光二极管的负极所对应的P1口为低电平时,发光二极管导通。图3-8 发光二级管电路Fig.3-8 LEDs circuit2 LED显示
45、器是由发光二极管构成的,所以在显示器前面冠以“LED”。本设计只是需要显示时间,所以采用LED显示器就可以达到目的了。如图3-9所示。图3-9 显示器电路Fig.3-9 Display circuit1)LED显示器的结构常用的LED为8段或7段。每一个段对应一个发光二极管。这种显示器有共阳极和共阴极2种。共阴极LED显示器的发光二极管的阴极连在一起,通常此公共阴极接地。当某个发光二极管的阳极为高电平时,发光二极管点亮,相应的段被显示。同样,共阳极LED显示器的发光二极管的阳极连接在一起,通常此公共阳极接正电压,当某个发光二极管接低电平时,发光二极管被点亮,相应的段被显示。为了使LED显示器显
46、示不同的符号或数字,就要把不同段的发光二极管点亮,这样就要为LED显示器提供代码,因为这些代码可使LED相应的段发光,从而显示不同字型,因此该代码称之为段码(或称为字型码)。2)LED显示器工作原理LED显示器有静态显示和动态显示2种方式。LED显示器工作于静态显示方式时,各位的共阴极(共阳极)连接在一起并接地(或+5V);每位的段码线(a-dp)分别与一个8位的锁存器输出相连。之所以称之为静态显示,是因为各个LED的显示字符一经确定,相应锁存器锁存的段码输出将维持不变,直到送入另一个的段码为止。正因为如此,静态显示器的亮度都较高,但静态现实的缺点是占用口线太多,如果显示器的位数太多,则需要加
47、锁存器,因此一般情况下采用动态显示。在多位LED显示时,为简化硬件电路,通常将所有位的段码线相应段并联在一起,由1个8位I/O口控制,形成段码线的多路复用,而各位的共阴极或共阳极分别由相应的I/O线控制,形成各位的分时选通。本设计采用的是2位共阳极数码管,其中段码线占用1个8位I/O口,即为P0口,而位选占用2个I/O口,在P2口。由于各位的段码线并联,8位I/O口输出的段码对各个显示位来说都是相同的。因此,在同一时刻,如果各位位选都处于选通状态的话,2位LED将显示相同的字符。若要各位LED能够显示出与本位相应的显示字符,就必须采用动态显示,即在某一时刻,只让一位的位选线处于选通状态,而其他各位的位选处于关闭状态,同时,段码线上输出相应位要显示的字符段码。这样,在同一时刻,2位LED中只有选通的那位显示字符,而其他1位则是熄灭的。同样,在下一时刻,只让下一位的位选处于选通状态,而其他各位的位选线处于关闭状态,在段码线上输出将要显示字符的段码,则同一时刻,只有选通位显示出相应的字符,而其他各位都是熄灭的。如此循环下去,就可以使各位显示出将要显示的字符。虽然这些字符是在不同时刻出现的,而在同一时刻,只有一位显示,其他各位熄灭,但由于LED显