毕业论文基于AT89S51单片机的全自动洗衣机系统设计与实现09997.doc

上传人:文库蛋蛋多 文档编号:3973042 上传时间:2023-03-30 格式:DOC 页数:33 大小:2.12MB
返回 下载 相关 举报
毕业论文基于AT89S51单片机的全自动洗衣机系统设计与实现09997.doc_第1页
第1页 / 共33页
毕业论文基于AT89S51单片机的全自动洗衣机系统设计与实现09997.doc_第2页
第2页 / 共33页
毕业论文基于AT89S51单片机的全自动洗衣机系统设计与实现09997.doc_第3页
第3页 / 共33页
毕业论文基于AT89S51单片机的全自动洗衣机系统设计与实现09997.doc_第4页
第4页 / 共33页
毕业论文基于AT89S51单片机的全自动洗衣机系统设计与实现09997.doc_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《毕业论文基于AT89S51单片机的全自动洗衣机系统设计与实现09997.doc》由会员分享,可在线阅读,更多相关《毕业论文基于AT89S51单片机的全自动洗衣机系统设计与实现09997.doc(33页珍藏版)》请在三一办公上搜索。

1、目 录前言11 全自动洗衣机的介绍21.1 全自动洗衣机的发展前景21.2 全自动洗衣机的设计目的21.3 模糊控制理论简介31.4 全自动洗衣机的设计方案31.4.1 按键31.4.2 洗衣机自检31.4.3 洗衣程序41.4.4 显示42 硬件电路介绍42.1 CPU选型42.2 89C51的存储器与寄存器62.3 A/D转换器62.4 传感器92.5 显示器102.6 全自动洗衣机中的模糊控制112.6.1 模糊控制器112.6.2 模糊控制实现方法123 软件流程图及代码133.1 寄存器133.2 流程图及其代码143.2.1 主程序流程图143.3 键盘扫描子程序流程图153.3.

2、1 程序设置子程序流程图173.3.2 洗衣方式选择子程序流程图184 结束语29参考文献:30基于单片机的全自动洗衣机系统设计前言洗衣机是一种在家庭中不可缺少的家用电器,发展非常快,而全自动式洗衣机因使用方便更加得到大家的青睐,全自动即进水、洗涤、漂洗、甩干等一系列过程自动完成,控制器通常设有几种洗涤程序,对不同的衣物可选择不同的洗涤方式。从古到今,洗衣服都是一项难于逃避的家务劳动,而在洗衣机出现以前,对于许多人而言,它并不像田园诗描绘的那样充满乐趣,手搓、棒击、冲刷、甩打这些不断重复的简单的体力劳动,留给人的感受常常是:辛苦劳累。全自动洗衣机的发展首先表现在洗涤方式发生巨大变化。原先大多侧

3、重于水流的改变、动力的加大。现在,超音波、电解水、臭氧和蒸汽洗涤的运用,使洗衣机的去污能力从单纯依靠洗衣粉、洗涤剂的化学作用和强弱变化的水流机械作用,向更高层次的健康、环保洗涤方式转变,特别是电解水、超音波技术在洗衣机行业的运用几乎改变了洗衣机的历史洗衣不用或少用洗衣粉、洗涤剂,减少化学品对皮肤的损害和对环境的污染。电解水、臭氧、蒸汽的杀菌除味及消毒功能倍受青睐,引发了洗衣机消费健康潮。另一变化就是高度自动化、智能化、人性化。从半自动、全自动到现在流行的人工智能、模糊控制,只需按一下按钮一切搞定!同时,用户可以按照自己的洗衣习惯,自主选择时间和方式,自编和记忆程序让用户真正做到随心所欲。人性化

4、还表现在使用的方便和舒适,如子母分洗洗衣机可以做到不同衣物分开洗;斜桶和顶开滚筒可以做到取放衣物方便不需深弯腰;蒸汽烘干功能使得晾晒更加方便,DD直驱电机在节能降噪方面效果更加突出,等等。1 全自动洗衣机的介绍1.1 全自动洗衣机的发展前景全自动洗衣机的发展首先表现在洗涤方式发生巨大变化。原先大多侧重于水流的改变、动力的加大。现在,超音波、电解水、臭氧和蒸汽洗涤的运用,使洗衣机的去污能力从单纯依靠洗衣粉、洗涤剂的化学作用和强弱变化的水流机械作用,向更高层次的健康、环保洗涤方式转变,特别是电解水、超音波技术在洗衣机行业的运用几乎改变了洗衣机的历史洗衣不用或少用洗衣粉、洗涤剂,减少化学品对皮肤的损

5、害和对环境的污染。电解水、臭氧、蒸汽的杀菌除味及消毒功能倍受青睐,引发了洗衣机消费健康潮。另一变化就是高度自动化、智能化、人性化。从半自动、全自动到现在流行的人工智能、模糊控制,只需按一下按钮一切搞定!同时,用户可以按照自己的洗衣习惯,自主选择时间和方式,自编和记忆程序让用户真正做到随心所欲。人性化还表现在使用的方便和舒适,如子母分洗洗衣机可以做到不同衣物分开洗;斜桶和顶开滚筒可以做到取放衣物方便不需深弯腰;蒸汽烘干功能使得晾晒更加方便,DD直驱电机在节能降噪方面效果更加突出,等等。1.2 全自动洗衣机的设计目的目前中国洗衣机市场正进入更新换代期,市场潜力巨大,人们对于洗衣机的要求也越来越高,

6、目前的洗衣机主要有强弱洗涤功能、进排水系统故障自动诊断功能、暂停等七大功能,在许多方面还不能达到人们的需求。这就要求设计者们有更高的专业和技术水平,能够提出更多好的建议和新的课题,将人们的需要变成现实,设计出更节能、功能更全面、更人性化的全自动洗衣机。1.3 模糊控制理论简介模糊控制是近代控制理论中建立在模糊集合轮上基础上的一种基于语言规则与模糊推理的控制理论,它是智能控制的一个重要分支。与传统控制理论相比,模糊控制有两大不可比拟的优点:第一,模糊控制在许多应用中可以有效且便捷的实现人的控制策略和经验,这一优点自从模糊控制诞生以来就一直受到人们密切的关注;第二,模糊控制不需要被控对象的数学模型

7、即可实现较好的控制,这是因为被控对象的动态特性已隐含在模糊控制器输入、输出模糊集及模糊规则中。所以模糊控制被越来越多的应用于各个领域,尤其是被广泛应用于家电系列中,基于模糊控制的洗衣机就是其中的一个典型实例。1.4 全自动洗衣机的设计方案本系统实现了对洗衣机整个洗衣过程的控制,包括用户参数输入、洗衣、漂洗、排水和脱水等阶段。控制系统主要由电源电路、数字控制电路和机械控制电路三大模块构成。电源采用三端集成固定稳压器7805提供+5V电源,数字控制电路负责控制洗衣机的工作过程,主要由AT89S51单片机、三位共阴数码管、按键、蜂鸣器、LED指示灯组成;机械控制电路实现传感器检测、电机驱动、进水、排

8、水等功能,主要由水位检测器、电动机、传动系统部件、进水排水电磁阀组成。1.4.1 按键洗衣机面板上有6个按钮K1、K2、K3、K4、K5和K6K1为启动暂停键:按奇数次视为启动,偶数次视为暂停。K2用于洗衣程序选择:按一下选择洗涤,按两下选择漂洗,按三下选择脱水。K3用于洗衣方式选择:按一下选择标准洗方式,按两下选择快速洗方式,按三下选择轻柔洗方式。K4用于水位选择:按一下进水至低水位,按两下进水至中水位,按三下进水至高水位。K5用于时间选择:按一下洗衣时间短,按两下洗衣时间适中,按三下洗衣时间长。1.4.2 洗衣机自检洗衣机上电后,先进行自检,包括检查安全开关,排水阀状态,进水阀工作过程,电

9、机的运转等,若发现异常现象则蜂鸣器响,报警灯亮。1.4.3 洗衣程序a 洗涤过程通电后,若不选择洗衣周期,则洗衣机从洗涤过程开始。进入洗涤过程,首先进水阀接通,开始向洗衣机供水,当到达要求水位时,进水阀断电关闭,停止进水;电机M接通,带动波轮旋转,形成洗衣水流。电机M是一个正反转电机,可以形成往返水流,有利于洗涤衣物。b 漂洗过程与洗涤过程操作相同,只是时间短一些。c 脱水过程洗涤或漂洗过程结束后,电机M停止转动,排水阀M接通,开始排水。排水阀动作的同时,电机M也接通,使电机可以带动内桶转动。当水位低到一定值,再经过一段时间后,电机开始正转,带动内桶高速旋转,甩干衣物。1.4.4 显示洗涤、漂

10、洗及脱水时间都通过倒计时的方式显示在3个LED上,依次为分位,秒十位和秒个位,此外,还有发现异常现象时错误信息的显示。2 硬件电路介绍针对上文的功能,硬件电路应包括七个部分:微处理器控制电路、显示电路、采样电路、电机控制电路、进水阀控制电路、排水阀控制电路和按键报警电路。通过这几个部分电路的协调工作,洗衣机能模拟人脑进行操作。2.1 CPU选型a PIC系列PIC单片机系列是美国微芯公司(Microchip)的产品,它的CPU采用RISC结构,分别有33、35、58条指令,属精简指令集。采用Harvard双总线结构,运行速度快,它能使程序存储器的访问和数据存储器的访问并行处理,这种指令流水线结

11、构,在一个周期内完成两部分工作,一是执行指令,二是从程序存储器取出下一条指令,这样总的看来每条指令只需一个周期,这也是高效率运行的原因之一。此外,它还具有低工作电压、低功耗、驱动能力强等特点。PIC系列单片机共分三个级别,即基本级、中级、高级。b AVR系列AVR单片机是Atmel公司推出的较为新颖的单片机,其显著的特点为高性能、高速度、低功耗。它取消机器周期,以时钟周期为指令周期,实行流水作业。AVR单片机指令以字为单位,且大部分指令都为单周期指令。而单周期既可执行本指令功能,同时完成下一条指令的读取。通常时钟频率用48MHz,故最短指令执行时间为250125ns。该系列的型号较多,但可用下

12、面三种为代表:AT90S2313(简装型)、AT90S8515、AT90S8535(带A/D转换)。通用寄存器一共32个(R0R31),前16个寄存器(R0R15)都不能直接与立即数打交道,因而通用性有所下降。c 51系列51系列优点之一是它从内部的硬件到软件有一套完整的按位操作系统,称作位处理器,或布尔处理器。它的处理对象不是字或字节而是位。它不仅能对片内某些特殊功能寄存器的某位进行处理,如传送、置位、清零、测试等,还能进行位的逻辑运算,其功能十分完备,使用起来得心应手。虽然其他种类的单片机也具有位处理功能,但能进行位逻辑运算的实属少见。51系列的I/O脚的设置和使用非常简单,当该脚作输入脚

13、使用时,只须将该脚设置为高电平(复位时,各I/O口均置高电平)。当该脚作输出脚使用时,则为高电平或低电平均可。作输出脚使用,欲进行高电平驱动时,得利用外电路来实现,I/O脚不通,电流经R驱动LED发光;低电平时,I/O脚导通,电流由该脚入地,LED灭(I/O脚导通时对地的电压降小于1V,LED的域值1.51.8V)1。89C51引脚图如图2.1-1所示。图2.1-1 89C51引脚图2.2 89C51的存储器与寄存器89C51单片机存储器才用的是哈佛(Harvard)即程序存储器空间和数据存储器空间是各自独立的,两种存储器各自有自己的寻址方式和寻址空间。89C51的存储器空间可划分为5类:程序

14、存储器、内部数据存储器、特殊功能寄存器、为地址空间和外部数据寄存器5。2.3 A/D转换器A/D转换器种类很多,按及人口方案来分,可分为并行接口和串行接口两类。串行接口又分为三线式接口和两线式接口两种。由于89C51串行口有限,而本此设计也用到了很多串口,而且我们需要一个多通道的转换器,而MAX192正是满足这种要求,其转换精度也高,所以本次设计我们采用MAX192。MAX192是一种低功耗、单电源、8通道、串行的10位A/D转换器。由于该芯片在片外已有采样跟踪保持电路,内部时钟电路和内部参考电压源,所以在应用时,所需外围原件极少,与单片机连接也只占用4-5条口线,因此,用MAX192构成的数

15、据采集系统具有硬件结构简单、体积小和功耗低的优点。MAX192是美国美信公司设计的一个10位A/D转换器,它的信号输入有两种方式:8通道单端输入或4通道差分输入,具有极高转换速度。其4线串行接口与SPI、QSPI、MicroWire等串行总线兼容,具有内部时钟方式和外部时钟方式,内带4.096V的基准电压,也可用外部基准电压8。A MAX192的引脚图如图2.3-1所示。图2.3-1 MAX192的引脚图B MAX192的控制字a MAX192控制字占一个字节,其格式见表2.3-1。表2.3-1 控制字节的定义Bit7(MSB)Bit6Bit5Bit4Bit3Bit2Bit1Bit0START

16、SEL2SEL1SEL0UIN/BIPSGL/DIFPD1PD0.START:转换开始位。逻辑“1”有效。.SEL0-2:通道选择位。选择所需转换信号所连接的通道(见表2.3-2和表2.3-3)。.UNI/BIP:单/双极性信号转换模式选择位。1=单极性信号;0=双极性信号。对于单极性信号,模拟输入中0VVREF的电压被转换;对于双极性信号,-VREF/2+VREF/2的新号被转换。.SGL/DIF:输入信号形式选择位。“1”为单端信号输入,“0”为差分信号输入。. PD0PD1:时钟模式及省电模式选择位(见表2.3-4)3。b MAX192的工作原理MAX192器件采用逐次逼近转换技术及输入

17、采样/保持电路把模拟信号转换成10位的数字信号输出,模拟信号有单端输入和差分输入两种输入方式,输入电压范围分单极性(0-40.96V)和双极性(-4.096/2-4.096/2V)两种,每做完一次A/D转换,需从串行数据输入端输入以“1”开始的8位控制字对器件初始化,内部控制逻辑控制A/D转换6。表2.3-2 单端方式(SGL/DIF=1)通道选择SEL2SEL1SEL0CH0CH1CH2CH3CH4CH5CH6CH7AGND000+-100+-001+-101+-010+-110+-011+-111+-表2.3-3 查分方式(SGL/DIF=0)通道选择SEL2SEL1SEL0CH0CH1C

18、H2CH3CH4CH5CH6CH7000+-001+-010+-011+-100-+101-+110-+111-+表2.3-4 时钟和掉电选择PD0PD1器件模式11外部时钟方式10内部时钟方式01速掉电模式(Fast Power-Down Mode)00全掉点模式 ( Full Power-Down Mode)2.4 传感器本次设计中用到4个传感器,分别为:TS污浊度传感器、温度传感器、负载传感器和水位传感器。其中污浊度、温度和负载传感器输出的都是模拟信号,需要通过A/D转换才能作为单片机的控制信号,而水位传感器本身输出的就是数字信号,所以不需要通过A/D转换,直接可用做单片机的控制信号。a

19、 TS污浊度传感器内部原理图如图2.4-1所示。浑浊度检测传感器的主要原理是光电耦合器,而普通的光电耦合器不能有效的检测洗衣机水的浑浊度。光电耦合器的光源必须是红外光才能准确的检测浑浊度。TS浊度传感器是GE公司开发的一种专门用于家电产品的低成本传感器,主要用于洗衣机、洗碗机等产品的水污浊程度的测量。图2.4-1 浊度传感器内部原理图b 温度传感器温度传感器有四种主要类型:热电偶、热敏电阻、电阻温度检测器(RTD)和IC温度传感器下)。IC温度传感器又包括模拟输出和数字输出两种类型。热电偶应用很广泛,因为它们非常坚固而且不太贵。热电偶有多种类型,它们覆盖非常宽的温度范围,从-200到2000。

20、它们的特点是:低灵敏度、低稳定性、中等精度、响应速度慢、高温下容易老化和有漂移,以及非线性。另外,热电偶需要外部参考端。 本设计我们选用AD590作为温度传感器。AD590比DS18B20精度更高、线性度误差小,且不需要温度报警和复杂的程序编程,非常适合用于洗衣机的温度检测传感器c 负载传感器根据模糊控制要求,负载检测时通过检测电动机的反电动势来实现的,而电动机的反电动势比单片机所用电压大的多,不能直接采样,必须经过隔离。采用线性光电耦合器既能隔离高电压和干扰,又能得到满意的检测信号。d 水位传感器原理图如图2.4-2所示。谐振式水位传感器,采用了新型的传感原理 ,把水位的高低 ,通过水位传感

21、器直接变成水位与频率的对应关系。衣物的洗净度、水流强度、洗涤时间等参数的检测 ,对模糊控制洗衣机在节水、节能、减少洗涤时间方面起决定性的作用7。图2.4-2 水位传感器原理图2.5 显示器显示器有LED和LCD两种。LCD(Liquid crystal Display)是液晶显示器英文名称的缩写,液晶显示器是一种被动式的显示器,即液晶本身并不发光,而是利用液晶经过处理后能改变光线通过方向的特征,达到白底黑字或黑底白字显示的目的。LED(Light Emiting Diode)是发光二极管英文名称的缩写。LED显示器是由发光二极管构成的,所以在显示器前面冠以“LED”。本次设计只是显示时间,所以

22、采用LED就可以达到目的了。a LED显示器的结构LED常用的LED为8段或7段。每一个段对应一个发光二极管。这种显示器有共阳极和共阴极2种。共阴极LED显示器的发光二极管的阴极连在一起,通常此公共阴极接地。当某个发光二极管的阳极为高电平时,发光二极管点亮,相应的段被显示。同样,共阳极LED显示器的发光二极管的阳极连接在一起,通常此公共阳极接正电压,当某个发光二极管接低电平时,发光二极管被点亮,相应的段被显示。b LED显示器工作原理LED显示器有静态显示和动态显示2种方式。本次设计中我们采用的是3位共阴极数码管,其中段码线占用1个8位I/O口,而位选占用3位I/O口。由于各位的段码线并联,8

23、位I/O口输出的段码对各个显示位来说都是相同的。这样,在同一时刻,3位LED中只有选通的那位显示字符,而其他2位则是熄灭的。同样,在下一时刻,只让下一位的位选处于选通状态,而其他各位的位选线处于关闭状态,在段码线上输出将要显示字符的段码,则同一时刻,只有选通位显示出相应的字符,而其他各位都是熄灭的。LED不同位显示的时间间隔应根据实际情况而定。发光二极管从导通到发光有一定的延时,导通时间太短,则发光太弱,人眼无法看清,但也不能太长,因为要受限于临界闪烁频率,而且时间越长,占用CPU时间也越多,本次设计我们采用1ms延时。本次设计是基于模糊控制理论上的全自动洗衣机,用户只需要将衣物放进洗衣机,按

24、下启动键,洗衣机就能自动完成洗涤-漂洗-脱水等一系列操作,当然本次设计中还考虑到半自动时的情况,用户可以根据自己的需求自由选择洗衣机将要进行什么工作,这一点是通过按键来实现的4。2.6 全自动洗衣机中的模糊控制2.6.1 模糊控制器洗衣机控制器是洗衣机的大脑,洗衣机的洗涤、漂洗、脱水等动作均由控制器加以控制,目前的全自动洗衣机采用控制器有模糊控制器和普通控制器两种,二者之间既有共同之处,又存在着差别。洗衣机模糊控制器与普通控制器的主要区别在于二者控制思想不同。普通程序控制器虽然使洗衣机在功能较普通洗衣机增强许多,但就其控制思想而言,仍谈不上“先进”它只是根据时间原则去设定洗衣机的洗涤、漂洗和脱

25、水的运行时间,然后连续运行,完全不考虑其他因素。例如:洗衣服的多少、面料的软硬、衣服的肮脏程度等,均未加以考虑。而模糊控制器则是根据衣量的多少确定洗涤水量;根据面料软硬和肮脏程度确定洗涤时间等,这些都是控制规则,这些规则是人工经验的积累。因此,在控制思想上大大优于普通程序控制器的控制思想。2.6.2 模糊控制实现方法A 基本结构和控制过程然这些模糊控制是利用负载、衣质、浊度、水温等检测所得到信息,进行分段评估计算使其模糊化,再根据模糊规则进行推理,最后根据所激活的规则进行解模糊判决,以决定最适当和明确的水位、洗涤时间、洗涤方式以及脱水时间等。模糊控制洗衣机控制结构如图2.6.2-1所示。待添加

26、的隐藏文字内容2图2.6.2-1 模糊控制洗衣机控制结构B 模糊规则 a 洗涤量和水量的确定:如果检测到衣物量很多,则洗涤量多,水位高;如果检测到衣物量较多,则洗涤量较多,水位适中;如果检测到衣物量很少,则洗涤量少,水位低。 b 脱水时间的确定:如果检测到衣物很多,则脱水时间长;如果检测到衣物较多,则脱水时间适中;如果检测到衣物很少,则脱水时间短。c 洗涤时间的确定:如果检测到衣物很多,布质以棉布偏多且水温低,则洗衣时间长;如果检测到衣物较多,布质以化纤偏多且水温偏高,则洗衣时间适中;如果检测到衣物较少,布质以棉布偏多且水温偏高,则洗衣时间适中;如果检测到衣物很少,布质以化纤偏多且水温高,则洗

27、衣时间短。 d 漂洗时间的确定:如果检测到洗涤水很脏,则漂洗时间长;如果检测到洗涤水较脏,则漂洗时间适中;如果检测到洗涤水不脏,则漂洗时间短。3 软件流程图及代码3.1 寄存器本次编程中用到的寄存器如表3.1-1所示。表3.1-1 寄存器寄存器注释R4,R5比较标准值R4高位,R5低位R6,R7A/D转换结果R6高位,R7低位20H衣量多位21H衣量少位22H衣量适中位23H化纤多位24H棉多位27H1s中断标志位2AH1s中断次数30H,31H洗涤时间32H,33H漂洗时间34H,35H脱水时间36H,37H排水时间38H漂洗次数3AH电机正转时间3BH电机反转时间3CH电机转速3D洗涤量投

28、放时间40H显示分缓存器41H显示秒十缓存器42H显示秒个缓存器44H零水位45H低水位46H中水位47H高水位48H水位检测值50H启动/暂停键按键次数51H程序键按键次数52H选择键按键次数53H水量键按键次数54H时间键按键次数3.2 流程图及其代码本次设计是分模块进行编写的,以下就是各模块的流程图及其代码。3.2.1 主程序流程图主程序流程图如图3.2.1-1所示。图3.2.1-1 主程序流程图程序代码:MAIN:MOV SP #60LCALL ChiShi ;调初始化程序SETB EA ;CPU允许中断 MOV TMOD,#10H ;设置定时器1方式MOV 28H,#0AH ;装入定

29、时中断次数LOOP:LCALL XianShi ;调显示子程序LCALL JanPan ;调键盘扫描子程序SJMP LOOP3.3 键盘扫描子程序流程图键盘扫描子程序流程图如图3.3-1所示。图3.3-1 键盘扫描子程序流程图程序代码:Jianpan: JB P1.0,K2 ;判断是K1键按下吗,不是则转K2LCALL DL10ms ;调10ms延时消抖 JB P1.0,K2 ;再次读P1.0状态,若仍为0,则K1键确实按下LCALL PK1 ;调 PK1处理K2:JB P1.1,K3 ;判断是K2键按下吗,不是则转K3LCALL DL10ms ;调10ms延时消抖JB P1.1,K3 ;再次

30、读P1.0状态,若仍为0,则K2键确实按下LACLL PK2 ;调 PK2处理K3:JB P1.2,K4 ;判断是K3键按下吗,不是则转K4LCALL DL10ms ;调10ms延时消抖 JB P1.2,K4 ;再次读P1.2状态,若仍为0,则K3键确实按下LCALL,PK3 ;调PK3处理K4:JB P1.3,K5 ;判断是K4键按下吗,不是则转K5LCALL DL10ms ;调10ms延时消抖 JB P1.3,K5 ;再次读P1.3状态,若仍为0,则K4键确实按下LCALL PK4 ;调PK4处理K5:JB P1.4,RETURN ;判断是K5键按下吗,不是则转K6LCALL DL10ms

31、 ;调10ms延时消抖 JB P1.4,RETURN ;在此读P1.4状态,若仍为0,则K4键确实按下LCALL PK5 ;调PK5处理RETURN: RETPK1:INC 50H ;按键次数加1MOV A,50H ;判断是奇数次按下吗MOV B,#2DIV ABMOV A,BJZ A,zaiting ;若为偶数次按下,则转暂停状态LCALL YunZhuan ;若为奇数次按下,则进入运转程序Zanting:INC 50H ;按键次数加1MOV A,50H ;判断是奇数次按下吗MOV B,#2DIV ABMOV A,BJZ A,ZanTing ;若为偶数次按下,则暂停LCALL YunZhua

32、n ;若为奇数次按下,则进入运转程序RETURN:RET3.3.1 程序设置子程序流程图程序设置子程序流程图如图3.3.1-1所示。图3.3.1-1 程序设置子程序流程图程序代码:PK2: INC 51H ;按键次数加1 MOV A,51H CJNZ A,#1,L2 ;是第一次按下吗,不是转L2 LCALL XiDi ;是第一次按下,则调用洗涤子程序L2: CJNZ A,#2,L3 ;是第二次按下吗,不是转L3 LCALL PiaoXi ;是第二次按下,则调用漂洗子程序L3: CJNZ A,#3,RETURN ;是第三次按下吗,不是则返回 LXALL TuoShui ;是第三次按下,则调用脱水

33、3.3.2 洗衣方式选择子程序流程图洗衣方式选择子程序流程图如图3.3.2-1所示。图3.3.2-1 洗衣方式选择子程序流程图程序代码:PK3: INC 52H ;按键次数加1MOV A,52H ;MOV DPTR,#7F02H CJNE A,#1,L4 ;是第一次按下吗,不是转L4MOV A,#0EFH ;是第一次按下,则标准洗涤指示灯亮MOVX DPTR,AMOV A,52HL4: CJNE A,#2,L5 ;是第二次按下吗,不是转L5MOV A,#0DFH ;是第二次按下,则快速洗涤指示灯亮MOVX DPTR,AMOV A,52HL5: CJNE A,#3,RETURN ;是第三次按下吗

34、,不是则返回 MOV A,#0BFH ;是第三次按下,则轻柔洗涤指示灯亮 MOVX DPTR,ARETURN: RET3.3.3 水量设置子程序流程图水量设置子程序流程图如图3.3.3-1所示图3.3.3-1 水量设置子程序流程图程序代码:PK4: INC 53H ;按键次数加1 MOV A,53H CJNE A,#1,L6 ;是第一次按下吗,不是转L6 MOV 45H, #08H ;是第一次按下,则进水至低水位L6: CJNE A,#2,L7 ;是第二次按下吗,不是转L7 MOV A,46H,#09H ;是第二次按下,则进水至中水位L7: CJNE A,#3,RETUREN ;是第三次按下吗

35、,不是则返回 MOV A,47H,#10H ;是第三次按下,则进水至高水位RETURN: RET3.3.4 时间设置子程序流程图时间设置子程序流程图如图3.3.4-1所示图3.3.4-1 时间设置子程序流程图程序代码:PK5: INC 54H ;按键次数加1 MOV A,54H CJNE A,#1,L8 ;是第一次按下吗,不是转L8 MOV 48H,#01H ;是第一次按下,则时间选择5min MOV 49H,#2CHL8: CJNE A,#2,L9 ;是第二次按下吗,不是转L9 MOV 48H,#02H ;是第二次按下,则时间选择10min MOV 49H,#58HL9: CJNE A,#3

36、,RETURN ;是第三次按下吗,不是则返回 MOV 48H,#38H ;是第三次按下,则时间选择15min MOV 49H,#40HRETURN: RETA/D转换流程图如图3.3.5-1所示。图3.3.5-1 A/D转换流程图程序代码:ZiJian: MOV DPTR,#7F02H ;自检指示灯亮 MOV A,#0FBH MOVX DPTR,A JB P1.6,BaoJing1 ;读安全开关状态,异常则报警 JB P2.3,BaoJing2 ;读排水阀状态,异常则报警 MOV 45H,#08H ;置低水位值 MOV 47H,#09H ;置高水位值 MOV 44H, #00H ;置零水位值

37、CLR P2.4 ;开进水阀 LCALL ShuiJian ;调水位检测 MOV A,45HL10: CJNE A,48H,L10 ;到底水位了吗,到了启动电机 CLR P2.0 LACLL ShuiJian MOV A,47HL11: CJNE A,48H,L11 ;到高水位了吗,到了开排水阀 CLR P2.3 LCALL ShuiJian MOV A,44HL12: CJNE A,48H,L12 ;是零水位吗,是则检测完毕 SETB P2.4 SETB P2.0 SETB P2.3 MOV A,#OFFH MOVX DPTR,ABaooJing1: MOV 40H,#0eH ;显示异常代码

38、 MOV 41H,#0 MOV 42H,#1 CLR P1.7 ;蜂鸣器响,报警灯亮 JB P1.5,BaoJing1 ;判断是否有人为干扰 SETB P1.7BaoJing2: MOV 40H,#0eH ;显示异常代码 MOV 41H,#0 MOV 42H,#2 CLR P1.7 ;蜂鸣器响,报警灯亮 JB P1.5,BaoJing2 ;判断是否有人为干扰 SETB P1.7 RET3.4.1 运转程序流程图运转程序流程图如图3.4.1-1所示。图3.4.1-1 运转程序流程图程序代码:YunZhuan: LCALL PanDuan ;调判断子程序 JZ LD1 ;为1为全自动 LCALL

39、JianPanLD1: LCALL JianCe LCALL XiDi LCALL PaiShui RETPanDuan: ORL A,51H ;各按键次数相与,为1为全自动 ORL A,52H ORL A,53H ORL A,54H3.4.2 脱水子程序流程图脱水子程序流程图如图3.4.2-1所示。RET图3.4.2-1 脱水子程序流程图程序代码TuoShui: MOV DPTR,#7F02H ;脱水灯亮MOV A,#0F7HMOVX DPTR,ALCALL PuanDuan ;判断是全自动吗JZ LD15 ;是全自动转LCALL JianPanLD15: MOV 3CH,#0B0H ;置脱水转速CLR P2.3 ;开排水阀CLR P2.0 ;启动电机SETB TR1 ;开定时器MOV 40H,80H ;显示脱水倒计时时间MOV 41H,81HMOV 42H,82HLOOP9: JNB 27H,LOOP9CLR 27HDEC 34HCJNE 34H,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号