版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、高等教育自学考试本科毕业论文 基于单片机全自动洗衣机毕业设计基于单片机全自动洗衣机毕业设计 考生姓名: 准考证号: 专业层次: 本科 院 (系): 机械与动力工程学 院 指导教师: 职 称: 讲师 重庆科技学院 二 o 一 o 年 月 日 重庆科技学院高等教育自学考试本科毕业论文 摘要 i 高等教育自学考试本科毕业论文 基于单片机全自动洗衣机毕业设计基于单片机全自动洗衣机毕业设计 考生姓名: 准考证号: 专业层次: 本科 指导教师: 院 (系): 机械与动力工程学院 重庆科技学院 二 o 一 o 年 月 日 重庆科技学院高等教育自学考试本科毕业论文 摘要 i 摘 要 基于模糊控制的全自动洗衣机
2、自动控制系统, 所有的电路都是在单片机的控制下 工作的,目前通常采用的是 motorola 公司的 mc6805 系列的单片机,而本设计中采用 了 intel 公司的 289c51 作为控制核心,以单片机 289c51 为核心结合接口芯片及外围 电路以实现洗衣机的智能控制。其中模糊控制器的设计是关键环节,采用传感器检测 洗衣过程必需的物理量,进入模糊控制器,通过模糊推理,实现对洗衣机自动识别衣 质、衣量,自动识别肮脏程度,自动决定水量,自动投入恰当的洗涤剂等功能的控制。 本设计在洗涤过程中采用了实时模糊控制,提高洗衣质量,节约能源。硬件结构框图及 软件流程图是该系统的重要组成部分,在整个控制过
3、程中,模糊控制软件起了决定性的 作用。 关键词: 模糊控制;单片机;全自动洗衣 重庆科技学院高等教育自学考试本科毕业论文 abstarc ii abstract automatic washing machines based on fuzzy control automatic control system, all the circuits are under the control of the microcontroller, the current commonly used is motorolas mc6805 series of microcontrollers, and th
4、e design of intel corporation 89c51 used as a control center to 89c51 microcontroller core with the interface chip and the external circuit in order to achieve intelligent control of washing machines. design of fuzzy controller which is the key point, the use of sensors to detect physical quantities
5、 necessary for laundry into the fuzzy controller by fuzzy reasoning, the quality of the clothes washing machine automatic identification, clothing and the amount of automatic identification soiled, water is determined automatically, automatic detergents and other functions into the appropriate contr
6、ol. the design used in the washing process real-time fuzzy control and improve the quality of laundry to save energy. the block diagram of the hardware and software flow chart is an important part of the system in the whole control process, the fuzzy control software has played a decisive role. keyw
7、ords: fuzzy control; scm; automatic laundry 重庆科技学院高等教育自学考试本科毕业论文 目录 iii 目录目录 摘摘 要要.i i abstractabstract.iiii 1 1 绪绪 论论.1 1 1.11.1 全自动洗衣机的介绍全自动洗衣机的介绍 .1 1 1.1.1 全自动洗衣机的发展背景 .1 1.1.2 全自动洗衣机的发展前景 .1 1.1.3 全自动洗衣机的设计目的 .2 1.1.4 模糊控制理论简介 .2 1.21.2 全自动洗衣机的设计方案全自动洗衣机的设计方案 .2 2 1.2.1 按键 .3 1.2.2 洗衣机自检 .3 1.2
8、.3 洗衣程序 .3 1.2.4 显示 .3 1.2.5 参数处理 .3 2 2 硬件电路介绍硬件电路介绍.4 4 2.1cpu2.1cpu 选型选型 .4 4 2.22.2 89c5189c51 的存储器与寄存器的存储器与寄存器 .5 5 2.3a/d2.3a/d 转换器转换器 .5 5 2.42.4 传感器传感器 .5 5 2.52.5 显示器显示器 .6 6 3 3 软件设计软件设计.7 7 3.13.1 全自动洗衣机中的模糊控制全自动洗衣机中的模糊控制 .7 7 3.1.1 模糊控制器 .7 3.1.2 模糊控制实现方法 .7 3.23.2 软件流程图及代码软件流程图及代码 .8 8
9、3.2.1 寄存器 .8 3.2.2 流程图及其代码 .9 结结 论论 .4545 致致 谢谢 .4646 参考文献参考文献 .4747 重庆科技学院高等教育自学考试本科毕业论文 1 绪论 1 1 绪 论 1.1 全自动洗衣机的介绍 方便更加得到大家的青睐,全自动即进水、洗涤、漂洗、甩干等一系列过程自动完 成,控制器通洗衣机是一种在家庭中不可缺少的家用电器,发展非常快,而全自动式洗衣机 因使用常设有几种洗涤程序,对不同的衣物可选择不同的洗涤方式。 1.1.1 全自动洗衣机的发展背景 从古到今,洗衣服都是一项难于逃避的家务劳动,而在洗衣机出现以前,对于许 多人而言,它并不像田园诗描绘的那样充满乐
10、趣,手搓、棒击、冲刷、甩打这些 不断重复的简单的体力劳动,留给人的感受常常是:辛苦劳累。 1858 年,汉密尔顿史密斯制成了世界上第一台洗衣机。1874 年,“手洗时代”受 到了前所未有的挑战,美国人比尔布莱克斯发明了世界上第一台人工搅动洗衣机。 1911 年美国人又研制了世界上第一台电动洗衣机。1920 年美国的玛依塔格公司又把洗 衣机的木制桶改为铝制桶体,第二年又把铝制桶体改为外层铸铝、内层为铜板的双层 结构。1936 年,他们又将搪瓷用于洗衣机桶体。与此同时,世界各地也相继出现了洗 衣机。欧洲国家研究成功了喷流式洗衣机和滚筒式洗衣机。 1932 年后,美国一家公司研制成功了第一台前装式滚
11、筒全自动洗衣机,洗涤、漂 洗和脱水都在同一个滚筒内自动完成,使洗衣机的发展跃上了一个新台阶。这种滚筒 洗衣机,目前在欧洲、美洲等地得到了广泛的应用。 第二次世界大战结束后,洗衣机得到了迅速的发展,研制出具有独特风格的波轮 式洗衣机。这种洗衣机由于其波轮安装在洗衣桶底,又称涡卷式洗衣机。 近几十年,在工业发达国家,全自动洗衣机制造技术又得到迅速发展,其年总产 量及社会普及率均以达到相当高得水平。 1.1.2 全自动洗衣机的发展前景 全自动洗衣机的发展首先表现在洗涤方式发生巨大变化。原先大多侧重于水流的 改变、动力的加大。现在,超音波、电解水、臭氧和蒸汽洗涤的运用,使洗衣机的去 污能力从单纯依靠洗
12、衣粉、洗涤剂的化学作用和强弱变化的水流机械作用,向更高层 次的健康、环保洗涤方式转变,特别是电解水、超音波技术在洗衣机行业的运用几乎 改变了洗衣机的历史洗衣不用或少用洗衣粉、洗涤剂,减少化学品对皮肤的损害 和对环境的污染。电解水、臭氧、蒸汽的杀菌除味及消毒功能倍受青睐,引发了洗衣 机消费健康潮。 另一变化就是高度自动化、智能化、人性化。从半自动、全自动到现在流行的人 工智能、模糊控制,只需按一下按钮一切搞定!同时,用户可以按照自己的洗衣习惯, 重庆科技学院高等教育自学考试本科毕业论文 1 绪论 2 自主选择时间和方式,自编和记忆程序让用户真正做到随心所欲。人性化还表现在使 用的方便和舒适,如子
13、母分洗洗衣机可以做到不同衣物分开洗;斜桶和顶开滚筒可以 做到取放衣物方便不需深弯腰;蒸汽烘干功能使得晾晒更加方便,dd 直驱电机在节能 降噪方面效果更加突出,等等。 另外,大容量成为不变的消费趋势。前几年,洗衣机容量多为 4-5 公斤,6 公斤 的大容量尚很少见。现在,7 公斤的容量已经很普遍,8 公斤也正常。现代人居空间不 断扩大,对宽敞、舒适、方便要求更多,大能容小,大容量洗衣机一台可顶一套。 业内人士表示,尖端洗涤技术的革新,所表现出的洗衣方式更加注重健康和个性 化,已在市场发展中倍受欢迎。 1.1.3 全自动洗衣机的设计目的 目前中国洗衣机市场正进入更新换代期,市场潜力巨大,人们对于洗
14、衣机的要求 也越来越高,目前的洗衣机主要有强弱洗涤功能、进排水系统故障自动诊断功能、暂 停等七大功能,在许多方面还不能达到人们的需求。这就要求设计者们有更高的专业 和技术水平,能够提出更多好的建议和新的课题,将人们的需要变成现实,设计出更 节能、功能更全面、更人性化的全自动洗衣机。目前的洗衣机都没有实现全方面的兼 容,大多洗衣的厂家都注重各自品牌的洗衣机的特长,突出一两个与别的洗衣机不同 的个性化的功能,洗衣机的各项功能是由单片机控制实现的,单片机的体积小,控制 功能灵活,因此,设计出基于单片机的全自动洗衣机控制电路系统具有很强的实用性。 1.1.4 模糊控制理论简介 模糊控制是近代控制理论中
15、建立在模糊集合轮上基础上的一种基于语言规则与模 糊推理的控制理论,它是智能控制的一个重要分支。 与传统控制理论相比,模糊控制有两大不可比拟的优点:第一,模糊控制在许多 应用中可以有效且便捷的实现人的控制策略和经验,这一优点自从模糊控制诞生以来 就一直受到人们密切的关注;第二,模糊控制不需要被控对象的数学模型即可实现较 好的控制,这是因为被控对象的动态特性已隐含在模糊控制器输入、输出模糊集及模 糊规则中。所以模糊控制被越来越多的应用于各个领域,尤其是被广泛应用于家电系 列中,基于模糊控制的洗衣机就是其中的一个典型实例。 1.2 全自动洗衣机的设计方案 本系统实现了对洗衣机整个洗衣过程的控制,包括
16、用户参数输入、洗衣、漂洗、 排水和脱水等阶段。控制系统主要由电源电路、数字控制电路和机械控制电路三大模 块构成。电源采用三端集成固定稳压器 7805 提供+5v 电源,数字控制电路负责控制洗 衣机的工作过程,主要由 at89s51 单片机、三位共阴数码管、按键、蜂鸣器、led 指 示灯组成;机械控制电路实现传感器检测、电机驱动、进水、排水等功能,主要由水 重庆科技学院高等教育自学考试本科毕业论文 1 绪论 3 位检测器、电动机、传动系统部件、进水排水电磁阀组成。 1.2.1 按键 洗衣机面板上有 6 个按钮 k1、k2、k3、k4、k5 和 k6 k1 为启动暂停键:按奇数次视为启动,偶数次视
17、为暂停。 k2 用于洗衣程序选择:按一下选择洗涤,按两下选择漂洗,按三下选择脱水。 k3 用于洗衣方式选择:按一下选择标准洗方式,按两下选择快速洗方式,按三下 选择轻柔洗方式。 k4 用于水位选择:按一下进水至低水位,按两下进水至中水位,按三下进水至高 水位。 k5 用于时间选择:按一下洗衣时间短,按两下洗衣时间适中,按三下洗衣时间长。 1.2.2 洗衣机自检 洗衣机上电后,先进行自检,包括检查安全开关,排水阀状态,进水阀工作过程, 电机的运转等,若发现异常现象则蜂鸣器响,报警灯亮。 1.2.3 洗衣程序 (1)洗涤过程 通电后,若不选择洗衣周期,则洗衣机从洗涤过程开始。进入洗涤过程,首先进
18、水阀接通,开始向洗衣机供水,当到达要求水位时,进水阀断电关闭,停止进水;电 机 m 接通,带动波轮旋转,形成洗衣水流。电机 m 是一个正反转电机,可以形成往返 水流,有利于洗涤衣物。 (2)漂洗过程 与洗涤过程操作相同,只是时间短一些。 (3)脱水过程 洗涤或漂洗过程结束后,电机 m 停止转动,排水阀 m 接通,开始排水。排水阀动 作的同时,电机 m 也接通,使电机可以带动内桶转动。当水位低到一定值,再经过一 段时间后,电机开始正转,带动内桶高速旋转,甩干衣物。 1.2.4 显示 洗涤、漂洗及脱水时间都通过倒计时的方式显示在 3 个 led 上,依次为分位,秒 十位和秒个位,此外,还有发现异常
19、现象时错误信息的显示。 1.2.5 参数处理 要对洗衣机进行控制,首先要用各种传感器不断地检测相关的状态,以作为控制 的依据。其中,污浊度传感器,温度传感器和负载传感器是模拟信号,需要经过 a/d 转换变成数字信号,而水位传感器本身就是数字信号,单片机接受到这些传感器的信 号以后,经过一系列处理作出反应,从而控制洗衣机的工作。 重庆科技学院高等教育自学考试本科毕业论文 2 硬件电路介绍 4 2 硬件电路介绍 针对其功能,硬件电路应包括七个部分:微处理器控制电路、显示电路、采样电 路、电机控制电路、进水阀控制电路、排水阀控制电路和按键报警电路。通过这几个 部分电路的协调工作,洗衣机能模拟人脑进行
20、操作。 2.1cpu 选型 (1)pic 系列 pic 单片机系列是美国微芯公司(microchip)的产品,它的 cpu 分别有 33、35、58 条指令,属精简指令集。运行速度快,它能使程序存储器的访问和数据存 储器的访问并行处理,这种指令流水线结构,在一个周期内完成两部分工作,一是执 行指令,二是从程序存储器取出下一条指令,这样总的看来每条指令只需一个周期, 这也是高效率运行的原因之一。此外,它还具有低工作电压、低功耗、驱动能力强等 特点。pic 系列单片机共分三个级别,即基本级、中级、高级。 pic 系列单片机的 i/o 口是双向的,其输出电路为 cmos 互补推挽输出电路。i/o 脚
21、增加了用于设置输入或输出状态的方向寄存器,当置位 1 时为输入状态,且不管该 脚呈高电平或低电平,对外均呈高阻状态;置位 0 时为输出状态,不管该脚为何种电 平,均呈低阻状态,有相当的驱动能力,低电平吸入电流达 25ma,高电平输出电流可 达 20ma。 该系列单片机的专用寄存器,而是分散在四个地址区间内。只有 5 个专用寄存器, 得反复地选择对应的存储体,这多少给编程带来了一些麻烦。 (2)avr 系列 avr 单片机是 atmel 公司推出的较为新颖的单片机,其显著的特点为高性能、高 速度、低功耗。它取消机器周期,以时钟周期为指令周期,实行流水作业。avr 单片 机指令以字为单位,且大部分
22、指令都为单周期指令。而单周期既可执行本指令功能, 同时完成下一条指令的读取。通常时钟频率用 48mhz,故最短指令执行时间为 250125ns。该系列的型号较多。 通用寄存器一共 32 个(r0r31) ,前 16 个寄存器(r0r15)都不能直接 与立即数打交道,因而通用性有所下降。 avr 系列没有类似累加器 a 的结构,它主要是通过 r16r31 寄存器来实现 a 的 功能。 (3)51 系列 51 系列优点之一是它从内部的硬件到软件有一套完整的按位操作系统,称作位处 理器,或布尔处理器。它的处理对象不是字或字节而是位。它不仅能对片内某些特殊 重庆科技学院高等教育自学考试本科毕业论文 2
23、 硬件电路介绍 5 功能寄存器的某位进行处理,如传送、置位、清零、测试等,还能进行位的逻辑运算, 其功能十分完备,使用起来得心应手。虽然其他种类的单片机也具有位处理功能,但 能进行位逻辑运算的实属少见。 有的单片机并不能直接对 ram 单元中的位进行操作,如 avr 系列单片机中,若 想对 ram 中的某位置位时,必须通过状态寄存器 sreg 的 t 位进行中转。 51 系列的另一个优点是乘法和除法指令,这给编程也带来了便利。八位除以八位 的除法指令,商为八位,精度嫌不够,用得不多。而八位乘八位的乘法指令,其积为 十六位,精度还是能满足要求的,用的较多。作乘法时,只需一条指令就行了。很多 的八
24、位单片机都不具备乘法功能,作乘法时还得编上一段子程序调用,十分不便。 51 系列的 i/o 脚的设置和使用非常简单,当该脚作输入脚使用时,只须将该脚设 置为高电平(复位时,各 i/o 口均置高电平) 。当该脚作输出脚使用时,则为高电平或 低电平均可。 综上所述,我们本次设计采用 51 系列,它含有 4kb 可反复烧录及擦除内存和 128 字节的 ram,有 32 条可编程控制的 i/o 线,5 个中断发源,指令与 mcs-51 系列完全 兼容。选用它作为核心控制新片,可使电路极大地简化,而且程序的编写及固化也相 当方便、灵活。选用它设计制作全自动洗衣机控制电路,该电路的组成相对简单,工 作原理
25、清晰,易于理解。 2.2 89c51 的存储器与寄存器 89c51 单片机存储器才用的是哈佛(harvard)即程序存储器空间和数据存储器空 间是各自独立的,两种存储器各自有自己的寻址方式和寻址空间。 这种结构对于单片机“面向控制”的实际应用极为方便、有利。89c51 单片机程 序存储器和数据存储器的扩展能力分别可达 64kb,寻址和操作简单方便。 89c51 的存储器空间可划分为 5 类:程序存储器、内部数据存储器、特殊功能寄 存器、为地址空间和外部数据寄存器。 2.3a/d 转换器 a/d 转换器种类很多,按及人口方案来分,可分为并行接口和串行接口两类。串 行接口又分为三线式接口和两线式接
26、口两种。由于 289c51 串行口有限,而本此设计也 用到了很多串口,而且我们需要一个多通道的转换器。 2.4 传感器 本次设计中用到 4 个传感器,分别为:ts 污浊度传感器、温度传感器、负载传感 器和水位传感器。其中污浊度、温度和负载传感器输出的都是模拟信号,需要通过 a/d 转换才能作为单片机的控制信号,而水位传感器本身输出的就是数字信号,所以 不需要通过 a/d 转换,直接可用做单片机的控制信号。 (1)ts 污浊度传感器内部原理 重庆科技学院高等教育自学考试本科毕业论文 2 硬件电路介绍 6 浑浊度检测传感器的主要原理是光电耦合器,而普通的光电耦合器不能有效的检 测洗衣机水的浑浊度。
27、光电耦合器的光源必须是红外光才能准确的检测浑浊度。ts 浊 度传感器是 ge 公司开发的一种专门用于家电产品的低成本传感器,主要用于洗衣机、 洗 碗机等产品的水污浊程度的测量。 (2)温度传感器 温度传感器有四种主要类型:热电偶、热敏电阻、电阻温度检测器(rtd)和 ic 温 度传感器下)。ic 温度传感器又包括模拟输出和数字输出两种类型。 热电偶应用很广泛,因为它们非常坚固而且不太贵。热电偶有多种类型,它们覆 盖非常宽的温度范围,从-200到 2000。它们的特点是:低灵敏度、低稳定性、中 等精度、响应速度慢、高温下容易老化和有漂移,以及非线性。另外,热电偶需要外 部参考端。 (3)负载传感
28、器 根据模糊控制要求,负载检测时通过检测电动机的反电动势来实现的,而电动机 的反电动势比单片机所用电压大的多,不能直接采样,必须经过隔离。采用线性光电 耦合器既能隔离高电压和干扰,又能得到满意的检测信号。 (4)水位传感器原理。 谐振式水位传感器,采用了新型的传感原理 ,把水位的高低 ,通过水位传感器直接变 成水位与频率的对应关系。衣物的洗净度、水流强度、洗涤时间等参数的检测 ,对模糊 控制洗衣机在节水、节能、减少洗涤时间方面起决定性的作用。 2.5 显示器 显示器有 led 和 lcd 两种。 lcd(liquid crystal display)是液晶显示器英文名称的缩写,液晶显示器是一种
29、被动 式的显示器,即液晶本身并不发光,而是利用液晶经过处理后能改变光线通过方向的 特征,达到白底黑字或黑底白字显示的目的。 led(light emiting diode)是发光二极管英文名称的缩写。led 显示器是由发光 二极管构成的,所以在显示器前面冠以“led” 。本次设计只是显示时间,所以采用 led 就可以达到目的了。3 软件设计 本次设计是基于模糊控制理论上的全自动洗衣机,用户只需要将衣物放进洗衣机, 按下启动键,洗衣机就能自动完成洗涤-漂洗-脱水等一系列操作,当然本次设计中还 考虑到半自动时的情况,用户可以根据自己的需求自由选择洗衣机将要进行什么工作, 这一点是通过按键来实现的。
30、 重庆科技学院高等教育自学考试本科毕业论文 2 硬件电路介绍 7 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 8 3 软件设计 3.1 全自动洗衣机中的模糊控制 3.1.1 模糊控制器 洗衣机控制器是洗衣机的大脑,洗衣机的洗涤、漂洗、脱水等动作均由控制器加 以控制,目前的全自动洗衣机采用控制器有模糊控制器和普通控制器两种,二者之间 既有共同之处,又存在着差别。 洗衣机模糊控制器与普通控制器的相同点就在于二者均采用微电脑技术,各自根 据洗衣机的控制原理编制出程序,对洗衣机实施控制。 洗衣机模糊控制器与普通控制器的主要区别在于二者控制思想不同。普通程序控 制器虽然使洗衣机在功能较普通洗
31、衣机增强许多,但就其控制思想而言,仍谈不上 “先进” 它只是根据时间原则去设定洗衣机的洗涤、漂洗和脱水的运行时间,然后连续运行, 完全不考虑其他因素。例如:洗衣服的多少、面料的软硬、衣服的肮脏程度等,均未 加以考虑。而模糊控制器则是根据衣量的多少确定洗涤水量;根据面料软硬和肮脏程 度确定洗涤时间等,这些都是控制规则,这些规则是人工经验的积累。一般的说,模 糊控制器是利用人工智能方式,建立一组控制规则,编织成程序由微电脑执行。这样, 就形成了人工智能控制模式。因此,在控制思想上大大优于普通程序控制器的控制思 想。 3.1.2 模糊控制实现方法 (一)基本结构和控制过程 模糊控制是利用负载、衣质、
32、浊度、水温等检测所得到信息,进行分段评估计算 使其模糊化,再根据模糊规则进行推理,最后根据所激活的规则进行解模糊判决,以 决定最适当和明确的水位、洗涤时间、洗涤方式以及脱水时间等。模糊控制洗衣机控 制结构如图 3-所示。 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 9 图 3-1 模糊控制洗衣机控制结构 (二)模糊规则 (1)洗涤量和水量的确定: 如果检测到衣物量很多,则洗涤量多,水位高; 如果检测到衣物量较多,则洗涤量较多,水位适中; 如果检测到衣物量很少,则洗涤量少,水位低。 (2)脱水时间的确定: 如果检测到衣物很多,则脱水时间长; 如果检测到衣物较多,则脱水时间适中; 如果
33、检测到衣物很少,则脱水时间短。 (三)洗涤时间的确定: 如果检测到衣物很多,布质以棉布偏多且水温低,则洗衣时间长; 如果检测到衣物较多,布质以化纤偏多且水温偏高,则洗衣时间适中; 如果检测到衣物较少,布质以棉布偏多且水温偏高,则洗衣时间适中; 如果检测到衣物很少,布质以化纤偏多且水温高,则洗衣时间短。 (四)漂洗时间的确定: 如果检测到洗涤水很脏,则漂洗时间长; 如果检测到洗涤水较脏,则漂洗时间适中; 如果检测到洗涤水不脏,则漂洗时间短。 3.2 软件流程图及代码 3.2.1 寄存器 本次编程中用到的寄存器如表 3-1 所示。 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 10 表
34、3-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洗涤量投放时间 40h显示分缓存器 41h显示秒十缓存器 42h显示秒个缓存器 44h零水位 45h低水位 46h中水位 47h高水位 48h水位检测值 50h启动/暂停键
35、按键次数 51h程序键按键次数 52h选择键按键次数 53h水量键按键次数 54h时间键按键次数 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 11 3.2.2 流程图及其代码 本次设计是分模块进行编写的,以下就是各模块的流程图及其代码。 1.主程序流程图如图 3-2 所示。 设置堆栈指针 调洗衣机初始化程序 允许定时器中断 自检 调显示子程序 调键盘扫描子程 序 开始 图 3-2 主程序流程图 程序代码: main: mov sp,#60 lcall chishi ;调初始化程序 setb ea ;cpu 允许中断 mov tmod,#10h ;设置定时器 1 方式 mov 28h
36、,#0ah ;装入定时中断次数 loop: lcall xianshi ;调显示子程序 lcall janpan ;调键盘扫描子程序 sjmp loop 2.显示子程序流程图如图 3-3 所示 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 12 显示内容送缓冲区 设显示缓冲区指针 40h-r0 扫描模式置初值-r2 r2-8155c口 取显示数据段码 送8155a口 延时1ms 显示缓冲器r0加1 r3左移1位 y n 显示到最后 一位吗? 入口 返回 图 3-3 显示子程序流程图 程序代码: xianshi: mov r0,40h ;置缓冲器指 针初值 mov r2,#01h ;置
37、位选初值 mov a,r2 ld0: mov dptr,#7f03h ;位选送 8155c 口 mov dptr,a dec dptr dec dptr mov a,r0 add a,#0dh ;加偏移量 movc a,a+pc dir1: movx dptr,a ;段码送 8155a 口 acall dl1ms ;调 1ms 延时 inc r0 mov a,r2 jb acc.2,ld1 ;三位都显示 完了吗 rl a ;没完,显示 位右移 mov a,r2 ajmp ld0 ld0: ret dseg: db 3fh,06h,5bh,4fh,66h,6dh db 7dh,07h,7fh,6
38、fh,77h,7ch db 39h,5eh,79h,71h,73h,3eh db 31h,6eh,1ch,23h,40h,03h db 18h,00 dl1ms: mov r7,02h dl: mov r6,#0ffh dl6: djnz r6,dl6 djnz r7,dl ld1: ret 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 13 3.键盘扫描子程序流程图如图 3-4 所示 入口 有键按下吗? 次数加1,转水量设置 返回 暂停 次数加1,转时间设置 是干扰吗? 是启动/暂停键吗? 是程序键吗? 次数加1,转方式设置 次数加1,转程序设置 是选择键吗? 是时间键吗? 是水量
39、键吗? 次数加1, 是奇数次按下吗? 转运行程序 y n n y n y y n y n y n y n n y 图 3-4 键盘扫描子程序流程图 程序代码: jianpan: jb p1.0,k2 ;判断是 k1 键按下吗,不是则转 k2 lcall dl10ms ;调 10ms 延时消抖 jb p1.0,k2 ;再次读 p1.0 状态,若仍为 0,则 k1 键确实按下 lcall pk1 ;调 pk1 处理 k2: jb p1.1,k3 ;判断是 k2 键按下吗,不是则转 k3 lcall dl10ms ;调 10ms 延时消抖 jb p1.1,k3 ;再次读 p1.0 状态,若仍为 0,
40、则 k2 键确实按下 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 14 lacll pk2 ;调 pk2 处理 k3: jb p1.2,k4 ;判断是 k3 键按下吗,不是则转 k4 lcall dl10ms ;调 10ms 延时消抖 jb p1.2,k4 ;再次读 p1.2 状态,若仍为 0,则 k3 键确实按下 lcall,pk3 ;调 pk3 处理 k4: jb p1.3,k5 ;判断是 k4 键按下吗,不是则转 k5 lcall dl10ms ;调 10ms 延时消抖 jb p1.3,k5 ;再次读 p1.3 状态,若仍为 0,则 k4 键确实按下 lcall pk4 ;调
41、 pk4 处理 k5: jb p1.4,return ;判断是 k5 键按下吗,不是则转 k6 lcall dl10ms ;调 10ms 延时消抖 jb p1.4,return ;在此读 p1.4 状态,若仍为 0,则 k4 键确实按下 lcall pk5 ;调 pk5 处理 return: ret pk1: inc 50h ;按键次数加 1 mov a,50h ;判断是奇数次按下吗 mov b,#2 div ab mov a,b jz a,zaiting ;若为偶数次按下,则转暂停状态 lcall yunzhuan ;若为奇数次按下,则进入运转程序 zanting: inc 50h ;按键次
42、数加 1 mov a,50h ;判断是奇数次按下吗 mov b,#2 div ab mov a,b jz a,zanting ;若为偶数次按下,则暂停 lcall yunzhuan ;若为奇数次按下,则进入运转程序 return: ret 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 15 4.程序设置子程序流程图如图 3-5 所示。 入口 是第一次按 下吗? 是第三次按 下吗? 是第二次按 下吗? 返回 调洗涤子程序 调脱水子程序 调漂洗子程序 y n y n y n 图 3-5 程序设置子程序流程图 程序代码: pk2: inc 51h ;按键次数加 1 mov a,51h cj
43、nz a,#1,l2 ;是第一次按下吗,不是转 l2 lcall xidi ;是第一次按下,则调用洗涤子程序 l2: cjnz a,#2,l3 ;是第二次按下吗,不是转 l3 lcall piaoxi ;是第二次按下,则调用漂洗子程序 l3: cjnz a,#3,return ;是第三次按下吗,不是则返回 lxall tuoshui ;是第三次按下,则调用脱水子程序 return: ret 5.洗衣方式选择子程序流程图如图 3-6 所示。 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 16 入口 是第一次按 下吗? 是第三次按 下吗? 是第二次按 下吗? 返回 选择标准洗涤 选择轻柔
44、洗涤 选择快速洗涤 y n y n y n 图 3-6 洗衣方式选择子程序流程图 程序代码: pk3: inc 52h ;按键次数加 1 mov a,52h ; mov dptr,#7f02h cjne a,#1,l4 ;是第一次按下吗, ,不是转 l4 mov a,#0efh ;是第一次按下,则标准洗涤指示灯亮 movx dptr,a mov a,52h l4: cjne a,#2,l5 ;是第二次按下吗,不是转 l5 mov a,#0dfh ;是第二次按下,则快速洗涤指示灯亮 movx dptr,a mov a,52h l5: cjne a,#3,return ;是第三次按下吗,不是则返回
45、 mov a,#0bfh ;是第三次按下,则轻柔洗涤指示灯亮 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 17 movx dptr,a return: ret 6.水量设置子程序流程图如图 3-7 所示 入口 是第一次按 下吗? 是第三次按 下吗? 是第二次按 下吗? 返回 注水至低水位 注水至高水位 注水至中水位 y n y n y n 图 3-7 水量设置子程序流程图 程序代码: pk4: inc 53h ;按键次数加 1 mov a,53h cjne a,#1,l6 ;是第一次按下吗,不是转 l6 mov 45h, #08h ;是第一次按下,则进水至低水位 l6: cjne
46、a,#2,l7 ;是第二次按下吗,不是转 l7 mov a,46h,#09h ;是第二次按下,则进水至中水位 l7: cjne a,#3,returen ;是第三次按下吗,不是则返回 mov a,47h,#10h ;是第三次按下,则进水至高水位 return: ret 7.时间设置子程序流程图如图 3-8 所示 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 18 入口 是第一次按 下吗? 是第三次按 下吗? 是第二次按 下吗? 返回 选择短时间5min 选择长时间15min 选择适中时间 10min y n y n y n 图 3-8 时间设置子程序流程图 程序代码: pk5: in
47、c 54h ;按键次数加 1 mov a,54h cjne a,#1,l8 ;是第一次按下吗,不是转 l8 mov 48h,#01h ;是第一次按下,则时间选择 5min mov 49h,#2ch l8: cjne a,#2,l9 ;是第二次按下吗,不是转 l9 mov 48h,#02h ;是第二次按下,则时间选择 10min mov 49h,#58h l9: cjne a,#3,return ;是第三次按下吗,不是则返回 mov 48h,#38h ;是第三次按下,则时间选择 15min mov 49h,#40h return: ret 8.a/d 转换流程图如图 3-9 所示。 重庆科技学院
48、高等教育自学考试本科毕业论文 3 软件设计 19 入口 通道选择 读取结果 调平均值计算 转换结束了吗? 都转换完 了吗? 返回 启动转换 y n n y 图 3-9a/d 转换流程图 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 20 9.自检子程序流程图如图 3-10 所示。 图 3-10 自检子程序流程图 程序代码: zijian: mov dptr,#7f02h ;自检指示灯亮 mov a,#0fbh 入口 读安全开关 状态为低电平吗? 开排水阀 开进水阀 返回 指示灯亮 启动电机 读排水阀状态 为低电平吗? 到低水位了吗? 到高水位了吗? 停止电机 报警 报警 水位复位了吗
49、? 关排水阀 n n y y n y n y y n 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 21 movx dptr,a jb p1.6,baojing1 ;读安全开关状态,异常则报警 jb p2.3,baojing2 ;读排水阀状态,异常则报警 mov 45h,#08h ;置低水位值 mov 47h,#09h ;置高水位值 mov 44h, #00h ;置零水位值 clr p2.4 ;开进水阀 lcall shuijian ;调水位检测 mov a,45h l10: cjne a,48h,l10 ;到底水位了吗,到了启动电机 clr p2.0 lacll shuijian
50、mov a,47h l11: cjne a,48h,l11 ;到高水位了吗,到了开排水阀 clr p2.3 lcall shuijian mov a,44h l12: cjne a,48h,l12 ;是零水位吗,是则检测完毕 setb p2.4 setb p2.0 setb p2.3 mov a,#offh movx dptr,a baoojing1: mov 40h,#0eh ;显示异常代码 mov 41h,#0 mov 42h,#1 clr p1.7 ;蜂鸣器响,报警灯亮 jb p1.5,baojing1 ;判断是否有人为干扰 setb p1.7 baojing2: mov 40h,#0e
51、h ;显示异常代码 mov 41h,#0 mov 42h,#2 clr p1.7 ;蜂鸣器响,报警灯亮 jb p1.5,baojing2 ;判断是否有人为干扰 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 22 setb p1.7 ret 9.运转程序流程图如图 3-11 所示。 入口 判断是否 为全自动 进入半自动洗涤 调漂洗子程序 返回 调检测子程序 调洗涤子程序 n y 图 3-11 运转程序流程图 程序代码: yunzhuan: lcall panduan ;调判断子程序 jz ld1 ;为 1 为全自动 lcall jianpan ld1: lcall jiance lca
52、ll xidi lcall paishui ret panduan: orl a,51h ;各按键次数相与,为 1 为全自动 orl a,52h orl a,53h orl a,54h ret 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 23 10.检测子程序流程图如图 3-12 所示。 电机运转3s 调洗涤量(水量检 测) 进水至检测水位 读水位值-4ah 电机运转30s 调衣量检测 调水位检测读水位值 -4bh 进水至检测水位 电机运转15s 调衣质检测 调温度检测 确定洗衣时间 入口 返回 图 3-12 检测子程序流程图 程序代码: jiance: mov 39h,#3 ;电
53、机运转时间 3s lcall dianji1 lcall shuiliang lcall jinshui mov 39h,#30 ;电机运转时间 30s lcall dianji1 lcall yiliang lcall shuijian lcall jinshui mov 39h,#15 ;电机运转时间 15s lcall dianji1 lcall zhiyi lcall wendu lcall shijian ret dianji1: clr p2.0 ;开电机 setb tr1 ;开定时器 loop1: jnb 27h,loop1 clr 27h dec 39h cjne 39h,#o
54、,loop1 clr tr0 setb p2.0 ret 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 24 11.洗涤量、水量检测子程序流程图如图 3-13 所示。 调a/d转换 入口 转换结果 与标准最大值比较大于 最大值吗? 转换结果 与标准最小值比较小于 最小值吗? 进水至高水位,洗涤 量投放时间长 n n y y 返回 进水至低水位,洗涤 量投放时间短 进水至中水位,洗涤 量投放时间适中 图 3-13 洗涤量、水量检测子程序流程图 程序代码: shuiliang: lcall zhuanhuan0 mov r4,#00h ;标准最大值 mov r5,#0a0h mov a,
55、r6 ;与标准最大值比较 cjne a,#00h,ld2 mov a,r7 clr c subb a,r5 jnc ld2 mov r4,#00h ;标准最小值 mov r5,#05h mov a,r6 ;与标准最小值比较 cjne a,#00h,ld3 mov a,r7 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 25 clr c subb a,r5 jc ld3 mov 46h, ;进水至中水位 mov 3ch,#10 ;洗涤量投放时间适中 ajmp return ld2: mov 47h, ;进水至高水位 mov 3ch,#15 ;洗涤量投放时间长 ajmp return l
56、d3: mov 45h, ;进水至低水位 mov 3ch,#5 ;洗涤量投放时间短 return: ret 12.衣量检测子程序流程图如图 3-14 所示 调a/d转换 入口 转换结果 与标准最大值比较大于 最大值吗? 转换结果 与标准最小值比较小于 最小值吗? 脱水时间长,将20h位 置1 n n y y 返回 脱水时间短,将21h位 置1 脱水时间适中,将22h 位置1 图 3-14 衣量检测子程序流程图 程序代码: 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 26 yiliang: lcall zhuanhuan0 mov r4,#00h ;标准最大值 mov r5,#0a0
57、h mov a,r6 ;与标准最大值比较 cjne a,#00h,ld4 mov a,r7 clr c subb a,r5 jnc ld4 mov r4,#0h ;标准最小值 mov r5,#05h mov a,r6 ;与标准最小值比较 cjne a,#00h,ld5 mov a,r7 clr c subb a,r5 jc ld5 setb 22h mov 34h,#01h ;脱水时间适中 mov 35h,#2ch mov 80h,#4 ;脱水倒计时暂存 mov 81h,#5 mov 82h,#9 ajmp: return ld4: setb 20h mov 34h,#02h ;脱水时间长 m
58、ov 35h,#58h mov 80h,#9 mov 81h,#5 mov 82h,#9 ajmp: return ld5: setb 21h mov 34h,#00h ;脱水时间短 mov 35h,#0b4h 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 27 mov 80h,#2 mov 81h,#5 mov 82h,#9 return: ret 13.衣质检测子程序流程图如图 3-15 所示 两次水位值相减 入口 结果 与标准最大值比较大于 最大值吗? n n y 返回 将23h位置1 将24h位置1 图 3-15 衣质检测子程序流程图 程序代码: yizhi: mov a,4
59、ah ;读第一次水位值 clr c subb a,4bh ;读第二次水位值 mov r5,#o5h clr c subb a,r5 ;两次值相减比较 jnc ld6 setb 23h ajmp return ld6: setb 24h return: ret 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 28 14.温度检测子程序流程图如图 3-16 所示 调a/d转换 入口 转换结果 与标准最大值比较大于 最大值吗? 转换结果 与标准最小值比较小于 最小值吗? 将25h位置 1 将26h位置 1 将27h位置 1 n n y y 返回 图 3-16 温度检测子程序流程图 程序代码:
60、 weudu: lcall zhuanhuan1 mov r4,#00h ;标准最大值 mov r5,#f0h mov a,r6 ;与标准最大值比较 cjne a,#00h,ld7 mov a,r7 clr c subb a,r5 jnc ld7 mov r4,#00h ;标准最小值 mov r5,#0eh mov a,r6 ;与标准最小值比较 cjne a,#00h,ld8 mov a,r7 重庆科技学院高等教育自学考试本科毕业论文 3 软件设计 29 clr c subb a,r5 jc ld8 setb 27h ;温度适中位置 1 ajmp return ld7: setb 25h ;温
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 智能出行解决方案:2025年城市公共自行车租赁系统可行性研究及市场分析
- 2026广东韶关市始兴县青年就业见习基地招募见习人员备考题库附答案详解【培优a卷】
- 2026陕西西安市西北工业大学材料学院高温功能材料团队招聘1人备考题库附答案详解(典型题)
- 2026四川遂宁射洪平安街道招聘1人备考题库及参考答案详解(满分必刷)
- 2026幼儿园名师工作室工作计划及实施方案
- 2026四川乐山市沐川县人力资源服务中心招募见习人员1人备考题库附答案详解【研优卷】
- 2026广东河源市消防救援支队第一批政府专职消防员招聘127人备考题库及参考答案详解(突破训练)
- 2026浙江事业单位统考丽水市松阳县招聘39人备考题库【夺冠系列】附答案详解
- 2026上半年山东临沂市沂蒙干部学院招聘1人备考题库(满分必刷)附答案详解
- 高校实习安全隐患排查及整改措施
- 胃穿孔患者的护理
- 2025统编版道德与法治小学六年级下册每课教学反思(附教材目录)
- 护理疑难病例胰腺癌讨论
- 《经络与腧穴》课件-手厥阴心包经
- 零红蝶全地图超详细攻略
- 2024届高考语文复习:诗歌专题训练虚实结合(含答案)
- 智能交通监控系统运维服务方案(纯方案-)
- 2024年广东中山市港口镇下南村招聘合同制综合工作人员2人历年(高频重点复习提升训练)共500题附带答案详解
- 高一化学学习探究诊断(必修1)(西城学探诊)
- 材料成形工艺基础智慧树知到期末考试答案章节答案2024年华东交通大学
- 高中数学学业水平考试(合格考)知识点总结
评论
0/150
提交评论