您好,欢迎来到客趣旅游网。
搜索
您的当前位置:首页基于单片机的洗衣机控制系统设计

基于单片机的洗衣机控制系统设计

来源:客趣旅游网


题 目:基于单片机的洗衣机控制系统设计(硬件)

英文题目:Design of the Washing Machine Based on Single-chip Microcomputer(Hardware)

声 明

本人以信誉郑重声明:所呈交的学位毕业设计(论文),是本人在指导教师指导下由本人撰写完成的,没有剽窃、抄袭、造假等违反道德、学术规范和其他侵权行为。文中引用他人的文献、数据、图件、资料均已明确标注出,不包含他人成果及为获得东华理工大学或其他教育机构的学位或证书而使用过的材料。对本设计(论文)的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本毕业设计(论文)引起的法律结果完全由本人承担。

本毕业设计(论文)成果归东华理工大学所有。 特此声明。

毕业设计(论文)者(签字): 王威威

签字日期: 2016年5月30日

本人声明:该学位论文是本人指导学生完成的研究成果,已经审阅过论文的全部内容,并能够保证题目、关键词、摘要部分中英文内容的一致性和准确性。

学位论文指导教师签名: 涂绪坚 2016年6月3日

摘 要

在中国洗衣机自1980年代初进去家庭,慢慢的从单缸洗衣机发展到双缸洗衣机再到全自动洗衣机。全自动洗衣机也从最初的普通式全自动洗衣机到有微机控制自动洗衣机,然后到采用模糊控制技术的模糊控制全自动洗衣机。全自动洗衣机是一种洗涤、漂洗、脱水三种功能之间可以相互切换的洗衣机,无需人工干预的情况下完成。随着科学技术的高速发展,人们的生活质量有了质的飞跃,智能化的生活越来越普遍。全自动洗衣机在我们的生活越来越重要,它能更好地人们的双手。缓解人们在家务劳动中的压力。本设计采用ATC51单片机作为洗衣机的控制系统的核心芯片,它以体积小、功能全、价格低、开发方便等优势得到了电子工作者的认可。洗衣机在单片机的控制下具有对洗衣机的智能控制,当设置完毕后,通过自动检测水位,对衣物进行洗涤,洗涤结束进行自动报警提示,系统能根据不同的洗衣方式对电机速度进行控制并显示。

关键词:洗衣机; STCC51单片机; 智能控制

ABSTRACT

Washing machine in China since the early 1980 s in the family, slowly developed from single cylinder washing machine to two cylinder washing machine and fully automatic washing machine. Fully automatic washing machine is also from the initial ordinary type full-automatic washing machine to the microcomputer control automatic washing machine, and then to the fuzzy control technology of fuzzy control is fully automatic washing machine. Fully automatic washing machine is a kind of wash, rinse, dehydration can switch between three functions of washing machines, without human intervention. With the rapid development of science and technology, people's quality of life has a qualitative leap, intelligent life is becoming more common. Fully automatic washing machine is more and more important in our life, it can better liberate people's hands. Alleviate the pressure of the people in the household chores. This design USES STCC51 as the core of the washing machine control system chips, it with small volume, complete functions, low price, development advantages of the convenient won the acceptance of electronic workers. Washing machine under the control of the single chip microcomputer with the intelligent control of the washing machine, when set to end, through the water level automatic detection, to wash clothes, wash over automatically alarm prompt, the system can according to the different way of laundry to control the motor speed and display.

Key words: Washing machine; STCC51 single-chip; Microcomputer intelligent

control

目 录

摘 要 ................................................................ II ABSTRACT ............................................................. III 绪论 ................................................... 错误!未定义书签。

课题的开发背景 ................................... 错误!未定义书签。 全自动洗衣机的发展历史 ........................................... 0 国内外现状与发展趋势 ............................................. 1

洗衣机的分类 ................................................. 1 自动洗衣机在国内外的发展水平与现状 ........................... 1 研究本课题的目的与意义 ........................................... 3 第二章 系统总体设计方案 ............................................... 4

主要设计内容与功能 ............................................... 4 方案论证与选择 ................................................... 5

方案一 ....................................................... 5 方案二 ....................................................... 6 方案论证与选择 ............................................... 6 系统总体方案设计 ................................................. 7 系统原理图 ....................................................... 7 本章小结 ......................................................... 9 第三章 系统控制芯片分析 .............................................. 10

STCC51单片机介绍 .............................................. 10

主要功能、性能参数 .......................................... 10 单片机最小系统 .................................................. 11

时钟电路 .................................................... 11 复位电路 .................................................... 12 ADC0832芯片介绍 ................................................. 12 本章小结 ........................................................ 13 第四章 系统硬件设计 .................................................. 14

总体设计及功能描述 .............................................. 14 各功能模块硬件设计 .............................................. 14

单片机控制模块的设计 ........................................ 14 显示电路设计 ................................................ 16 直流电机驱动电路设计 ........................................ 17 报警电路 .................................................... 18 进/排水电路 ................................................. 18 按键模块设计 ................................................ 18 水位检测系统 ................................................ 19 A/D转换电路 ................................................ 19 本章小结 ........................................................ 20

第五章 软件部分设计 .................................................. 21

主程序流程图 .................................................... 21 工作子程序流程图 ................................................ 21 按键子程序流程图 ................................................ 22 显示子程序工作流程图 ............................................ 22 本章小结 ........................................................ 23 第六章 仿真与调试 .................................................... 24

标准方式仿真图 .................................................. 24 结 论 ................................................................ 25 致 谢 ................................................. 错误!未定义书签。 参考文献 .............................................................. 26 附录1 系统设计原理图 .................................................. 27 附录2 元件清单 ........................................................ 27 附录3 系统源程序 ...................................................... 28

绪论

课题的开发背景

随着科技的发展,人们生活水平也有了明显的提高,洗衣机成了现在社会每个家庭的必需品,人们在使用洗衣机的过程中对洗衣机功能的要求也越来越多,随着人们需求的提高,对洗衣机功能的要求也越来越全面。智能化越来越普遍。现在的洗衣机只要把衣服放进洗衣机里只需简单的几步,就能让洗衣机自动进水、自动洗涤、自动排水、自动脱水,把衣服洗好。在整个的洗衣过程不仅节约了我们的时间。还了我们的双手。使我们有更多的时间去做其他想做的事。提高了我们的工作效率之余更能愉悦我们内心。对于当今社会来说,每当有一项技术突破都能带动洗衣机的该革。 单片机作为洗衣机的主控制器。以它向外延伸必要的控制电路,形成一个洗衣机的控制电路。来控制洗衣机各种功能的实现与配合。达到我们想实现的目的。更好的将我们在课本中学到的知识运用到实际生活中,让我们的动手能力得到提高。不一味的只知道理论不去做实物,通过实践我们的生活才能有质的飞跃。

全自动洗衣机的发展历史

从古至今,从中国到外国,洗衣服都是一种不得不做的家务劳动,然而洗衣机的出现对于很多人来说都是一种。它以简单、易操着、方便实用的方式征服了我们,让我们接受了它,从而在社会生活中得以广泛的运用。经过漫长的手工洗衣的时代,人们终于向机械洗衣迈出了崭新的一步。

1858年,最原始洗衣机‘诞生’了,它是在匹茨堡的一个美国人制成的。该洗衣机的主要有一个圆柱形的圆桶组成,桶内主要有一个浆状的轴承。与它相连的曲柄的转动从而带动轴承的转动,达到洗衣的效果。它是有美国人汉密尔顿·史密斯发明的。然而又过了几年,洗衣机经过后人的改良发展到新型的洗衣机,它是有一个用手柄转动的八角形洗衣缸组成的洗衣机,为了更好的洗衣效果往里面加入热的洗涤剂。等把衣服洗干净以后在用轧液装置把衣服里面的水分轧干。

1874年,木制手摇式洗衣机的出现手工洗衣服受到了空前绝后的挑战,它是有一位美国人比尔·布莱克斯发明的。木制手摇式洗衣机构主要是在木筒里装上几块叶片,由于手柄和齿轮转动让衣服在筒内不断翻转,让衣服与衣服、衣服与筒壁不断的摩擦,从而达到洗衣的目的。这代洗衣机的问世,让为了改进洗衣方式的人得到的很大的启发。从而洗衣机进入了快速的改进的进程中。

1880年,由于蒸汽机的出现和发展,世界上第一台蒸汽洗衣机‘诞生’,通过蒸汽动力的机械工作方式开始取代体力劳动。再经过一个世纪的发展和完善,现代蒸汽洗衣机有了明显改善,几乎同样的原理。现代蒸汽洗衣机使用了智能水循环系统,从而达到节约水的效果,现代蒸汽洗衣机让高浓度的洗涤液和高温蒸汽一起喷在衣服的同时,经过蒸汽洗衣机的洗涤,从而达到洗衣的效果,它的主要功能有蒸汽洗衣和蒸汽干燥。从而人们进入了实现了世界上全新的洗涤方式—“蒸汽洗”。

1910年,世界上第一台电动洗衣机在美国人费舍尔研制下终于成功问世了。电动洗衣机出现象征着人类向自动化洗衣又迈进了重要的一步。

1932年,美国本德航空公司成功实现了洗涤、漂洗、脱水能在同一个桶内完成,这标志着第一台滚动式洗衣机的‘诞生’。这意味着电动洗衣机从模型迈向了一个新的高度,这也是自动化洗衣机的一个巨大的创新!

1937年,出现了第一台“前置”式自动洗衣机,它标志着第一代自动洗衣机的问世,它有一个圆柱形的气缸组成,它可以容纳4 kg的衣服。衣服都在装满水的汽缸里不断的上下翻滚着,这样就可以达到洗衣的效果。

由于科技的不断创新和发展,从而全自动洗衣机也加快了研制的步伐。首先由英国和推出了喷流式洗衣机,它是依赖于运行的波轮产生强大的漩涡,缸内的洗衣服和洗涤剂一起不断地回来摩擦洗衣服,来达到净衣的效果。

国内外现状与发展趋势

洗衣机的分类

普通洗衣机不可以使洗涤、漂洗、脱水连续完成,都要手动切换。

半自动洗衣机可以在洗涤、漂洗、脱水任意两个功能之间能实现相互切换,从而达到半自动的效果。

全自动洗衣机可以在洗涤、漂洗、脱水等三个功能之间实现相互切换,从而达到全自动的效果。

自动洗衣机在国内外的发展水平与现状

当今社会根据结构组成的不同可以把全自动洗衣机分为三大类分别为搅拌式全自动洗衣机滚筒式全自动洗衣机、和波轮式全自动洗衣机。滚筒式、波轮式、搅拌式全自动洗衣机分别在全球洗衣机市场的比重为51%、34%和15%。由于我国市场上的性

质,滚筒式和波轮式的全自动洗衣机都普遍存在,目前我国市场上还没有搅拌式全自动洗衣机的出现,以下是对波轮式和滚筒式全自动洗衣机做出简单的总结。 波轮式全自动洗衣机

由电动机正反转带动波轮转动,波轮的转动带动水的转动,从而达到洗衣的效果,这就是波轮式全自动洗衣机的工作原理。它可以用单桶、套桶、双桶洗涤衣服。它以相对来说比较简单的结构,维修起来比较方便,洗净率相对较高,洗衣率速率比较高,来让人们接受它。它的主要缺点是用水比较多,对衣服磨损比较严重。它的优点是不会让衣服缠绕在一起,洗衣服比较均匀损害衣服的可能性小;洗衣桶一般有不锈钢、铝合金、塑料等几类。它的工作原理是:装在洗衣桶下面的波轮带动洗衣桶正反转,从而让衣服上、下、左、右不断的翻转,让衣服与衣服、桶、桶壁之间,在水中进行温柔的摩擦,在洗涤剂的辅助下实现去污。

优点:洗涤速度比滚筒式的要强很多。技术方面,滚筒式洗衣机运用越来越多的创新技术,从而大大的提高了它的性能。它对衣物的清洁力高,两个桶的更能减少对水、电、洗涤剂的消耗,它比较适合一般衣服的洗涤,价格比较低,方便实用,省时省力。

缺点:相比较来说对衣服的损伤比较大,容易让衣服缠绕在一起,使用时相比较费事。

滚筒式全自动洗衣机

由机械化的控制器、不锈钢的内桶和经过磷化、电泳、喷漆三重保护的外壳,组成了滚动式全自动洗衣机。为了防止在高速的工作环境下做离心运动用两块笨重的水泥板来平衡,再加上洗涤剂的作用来达到净服的。它主要材料由钢铁组成,所以寿命一般在20年左右。

优点:滚筒式全自动洗衣机一般是由微型电脑控制,使衣服洗涤均匀、不会缠绕在一起,所以磨损率要比波轮式的小一点,所以一些贵重的衣服也可以在其中洗涤,性能真正做到全面洗涤。由于它的用水量小,所以可以在水中形成高浓度洗涤剂,充分发挥洗涤剂的作用,使衣服的洗净率更加高。从而在节水的同时达到理想的净衣效果。滚筒式全自动洗衣机除了能洗衣、脱水外,还可以加热水温、消毒除菌、烘干等功能。

缺点:相对来说比较耗费电量,洗涤过程要的时间长;相对其他洗衣机来说洗衣时间比较长,比普通洗衣机的洗衣时间还要长好几倍;噪音很大;洗衣机自身重量很大,移动不方便。

研究本课题的目的与意义

中国目前洗衣机更新换代进入了一个非常快的时期,从而使市场潜力巨大,由于现代科技的不断进步与创新。洗衣机的更新换代也越来越快,这样使人们对洗衣机功能全面性的要求也越来越高。目前市场上所出现的洗衣机主要功能包括有强洗、一键脱水、一键洗衣、弱洗、漂洗功能等功能,虽然市场上洗衣机的功能有这么丰富,但是在很多方面还不能满足人们所想要的功能。这就要求设计师有较高的专业技术水平,提出一个好的建议和新解决问题的方法,把人们所需要变成实际中有的,这就需要设计师能够运用专业知识设计出一个更节能、在功能上更全面、更智能化的全自动洗衣机。目前市场上所出现的洗衣机并不能满足所有洗衣机功能方面的兼容性,目前许多洗衣机工厂为了保持自己洗衣机品牌所具有的竞争能力,许多洗衣机功能创新方面不能实现知识产权的交流,所以许多洗衣机厂商只能突出自己品牌所具有一个或两个洗衣机和其它洗衣机厂商不同的个性化特征。洗衣机的功能是由单片机这个芯片所控制的,单片机主控制芯片的特点是体积小、灵活、方便实用等特点。因此,设计出主要电路是由基于单片机控制的全自动洗衣机控制系统具有很好的实用性、与可靠性。

毕业设计之所以选择使用单片机来完成“基于单片机的洗衣机控制系统设计”,这是因为自己所学专业。我们所学的专业主要的知识就是单片机,这使我们与单片机接触最多。全自动洗衣机是日常生活的一个固定的模式,开始洗涤后按照一个固定的程序,在许多情况下,可能会导致不必要的浪费水和电。但如果你能设计出根据更合理的要求去洗要洗的衣服,从而可以减少很多不必要的浪费水、电、洗涤液与空间。这个设计用设计好的水位传感器来检测水位,确定所需要的水量来减少不必要的浪费,达到最好的洗衣效果,最经济的洗衣解决方案。

第二章 系统总体设计方案 主要设计内容与功能

1 主要设计内容:

洗衣机的控制电路是用STCC51单片机进行设计的。STCC51单片机为主要的控制单元,扩展我们所需要的外部电路,来实现我们所设计的功能,组成一个能实现我们所想要实现的洗衣机的控制器。 2 主要功能:

(1) 洗涤功能:标准洗涤时间为30分钟。洗涤25分钟,漂洗2分钟,脱水3分钟。如有需要可循环。

(2) 启动/暂停按钮控制:按下启动按钮为标准洗涤;在运行状态再按则为暂停,再次按下恢复原来的工作状态。洗涤、漂洗正转10秒,停止5秒,反转10秒,停止5秒。脱水时电机向一个方向高速运转。

(3) 在洗涤时对应的洗涤指示灯亮;漂洗时对应的漂洗指示灯亮;脱水时对应的脱水指示灯亮;洗涤结束时发出报警,三个灯一起闪烁。 (4)水位检测功能。 (5)单独脱水功能。

3 按键功能

全智能洗衣机上有3个按键分别为K1、K2、K3。 K3 为复位键。

K2 是启动/暂停和确认键。

K1 为洗涤时间选择键和单独脱水键。 4 洗衣过程

在接通电源后,按启动电源键。可以选择自己想用的洗衣时间15、20 、30分钟或单独脱水。然后按启动键洗涤工作开始。开始洗涤过程,首先进水阀打开。开始向洗衣机进水,当达到所设定的水位时,进水阀关闭,停止进水;电机M电源接通,开始进入洗涤过程。所设计的电路,能够使电机M能够正反转。产生不同方向的水流,这样更容易把衣服洗干净。

方案论证与选择

方案一

假设我们采取模数电设计的话,这个设计的主要控制电路由由计数器、继电开关、秒脉冲发生器、译码器、控制门、功放电路和执行电机部分组成主体电路。来实现我们所需要的功能。涤时间计数器和数码管共同组成了洗衣机的显示电路,显示电路主要是为了显示洗衣机洗涤时的功能和显示所剩余时间的功能。 框图如下:

洗涤时间显示 秒脉冲发生器 60进制计数器 洗涤时间计数器 控 制 门 功 放 继 电 开 关 执 行 电 机 清零 置数 时间译码

图2-1 方案一

方案二

时钟模块 CPU 控制模块 显示模块 电源模块 电机控制模块 复位模块 按键控制模块

图2-2 方案二

假设我们采用了STCC51单片机设计了一个智能洗衣机的主控制器,这个控制器主要有时钟电路、电源电路、显示电路、复位电路、按键电路和执行电机部分等组成。电机电路部分是由于两个继电器的吸和状态,让电机产生正转和反转。从而带动水流,达到洗衣的效果。把STCC51单片机与两位一体数码管连来一起,然后我们再利用所学到的C语言编程来控制它,最后实现智能洗衣机自动化显示功能。从而达到我们所设计的效果。

方案论证与选择

目前我国洗衣机市场发展状态为高速发展创新期,从而使更新换代比较迅速,所以我国市场现在与未来需求量都非常巨大,在科技飞速发展的年代。人们不在满足与单一的洗衣机模式,对于智能洗衣机所应该有的功能的要求也越来越多。对于实用性考虑也越来越高。从上面我们所介绍的两种方案,通过具体的分析比较,不难看出方案一虽然选用了计数器、译码器、秒脉冲发生器、功放电路等电路,但这类洗衣机的功能比较单一,对于实用性来讲比较低,电路比较复杂,体积相对来说较大,单线性误差存在的可能性大,实现不方便,不能满足人们对智能洗衣机的要求。方案二相对于方案一来说电路简单,功能能满足人们的需要,体积较小,容易存放,使用起来比较灵活;洗衣机主要有洗涤功能、进排水系统、水位检测、暂停等几大功能。因此,设计出基于单片机的全自动洗衣机控制电路系统具有很强的经济、实用性。所以本次设计采用方案二。

系统总体方案设计

洗涤常规模式为: 秒脉冲 序列发生60进制计数器 洗涤时间计数器 预置 T 控制门 Z1 Z2 电机驱动电路 电机 洗涤时间显示 定时到 定时启动→正转10秒→暂停5秒→反转10秒→暂停5秒 定时未到 停机

图2-3 洗衣机控制

系统原理图

用STCC51单片机作为本系统的主要控制单元,它主要控制的对象包括:电机正反转、进水阀、出水阀,洗涤时间,洗涤方式等。这些变量根据不同的工作状态与时间来进行相互切换来实现,水位的变化以及工作状态的变化来控制进水阀和出水阀的打开与关闭,为别用LED灯和数码管来显示出不同工作状态以及运行所剩余的时间。洗涤时间和脱水时间用LED灯显示;洗衣机的运行状态和运行时间主要是由按键完成的,,程序的运行状态提示以及洗衣完成报警主要有蜂鸣器报警来完成。

下面是洗衣机控制电路系统框图:

电源模块 CPU控制模块 电机控制模块 时钟模块 显示模块 复位模块 按键控制模块

图2-4 洗衣机控制电路系统框图

各框图的作用包括: ① STCC51单片机电路:程序控制的主要芯片是所有的单片机电路,这一块STCC51单片机芯片上包含的计算机上的所有功能电路,它主要有处理器CPU、输入/输出接口电路及计时、分频、扫描、程序存储器ROM、数据存储器RAM、分频、扫描、定时、时间设定等电路组成,洗衣机操作程序已存在于程序存储器中、输入的指令和监测到的信号来调出对应的内部相应程序,在经过其他电路路处理后,单片机输出对应的控制信号,这样洗衣机就完成了相应的工作状态。

② 直流电源电路:主要为单片机的其他电路进行供电的功能,它的主要功能是将用户所得到的的220V交流电经过变压、整流、滤波、稳压后,得到稳定的低压直流电。再送给洗衣机使用,最后让可控硅触发电路送给单片机和显示电路等所需要的电路使用。

③ 复位电路:这个电路的作用是使程序复位。单片机存储器进行复位的原因是因为在电源给单片机通电后和电源出现电压过低不足产生的,就会使整个电路处于初始

④ 时钟电路: 单片机的时钟电路是有晶振元件和单片机内部电路组成的,让单⑤ 按键输入电路: 所需按键开关按照一定的规律排列,有按键被按下时,按键所对应的工作状态随对应的信号将输送到单片机。按键被按下的同时单片机做出相应的回应,立即调出单片机对应内部软件的工作程序来进行对应工作,这样就会使洗衣

⑥ 显示电路: LED灯和数码管组成了显示电路,用户主要通过LED的亮和灭和数码管的显示来观察洗衣机的工作状态。用户在对洗衣机使用的过程中,他们可以通过洗衣机的洗衣状态以及指示灯的状态来看出洗衣机是否接收了用户所下达的指令。

状态也就是刚开机的工作状态。来进行消除由于操作失误造成的后果。

片机有定时和计时功能的是振荡频率,它还为单片机提供时钟信号。

机就会进入相应的工作状态,完成人们的指令。 使用户下达按键的请求得以实现。

判断洗衣机工作状态是否属于正常状态可以通过洗衣机的工作状态和指示灯的状态来观察出洗衣机是否纯在安全隐患。

⑦ 负载驱动电路: 该电路多由双向可控硅及触发电路组成。无触点开关控制电机的工作状态等负载电路的开关和正常运行状态。单片机主要根据用户在按键上所输入的指令或接受到的信号,可控硅控制使触发电路来进行的导通,使电机等负载电路在有点的情况下进行运转,来完成用户所输入的相对应的工作状态。

⑧ 报警电路: 所设计的报警电路在洗衣过程中主要是对在程序的运行状态的提示以及洗衣完成状态的自动报警。它主要根据程序的安排与软件的设定来工作的,在用户洗衣过程完成以后,来提示用户洗衣机以完成工作。

本章小结

本章主要内容是智能洗衣机控制系统的总体方案设计,各个功能模块的数据处理包括工作原理和总体设计要求,过程中需要注意的问题以及要达到的性能指标和技术指标。基于控制系统的整体分析提供了基础,为下一步的系统硬件和软件的设计。

第三章 系统控制芯片分析

单片机的型号选择是基于控制系统的功能、目标、可靠性、性价比、速度和精度等来决定的。根据本课题所要实现的功能,所需要的单片机的型号主要从下面几点来考虑:它必须具有较强的抗干扰能力。而且要有较高的性价比。然而ATMEL公司推出的系列单片机中性比价比较高的就是STCC51单片机,它是ATMEL公司中比较典型的一款产品。所以我们就用它做为我们所设计系统的核心芯片,硬件结构非常简单,功能比较强大、性价比较非常高、价格极低是STCC51的主要特点,它的这些特点符合我们所设计系统的需要,能实现我们所想要的功能,所以我选取了它作为改系统的核心芯片。

STCC51单片机介绍

最近美国STC公司向世界公布了,他们推出了一种具有新型51内核的STC系列单片机。这种新型的51内核具有Flash程序存储器、SRAM、UART、SPI、A\\D、PWM等模块。这个具有新型内核的51单片机与以前普通的51单片机的基本功能完全兼容,它就是STCC51单片机。

主要功能、性能参数

1.内置最新推出的标准51内核;

2.它增强型的机器周期为6时钟,标准型为12时钟; 3.工作频率范围为:0~40MHZ; 对应Flash空间为:4KB; 5.内部存储器:512B(RAM);

6.定时器\\计数器:3个16位的定时器\\计数器; 7.通用异步通信口(UART):1个; 8.中断源有8个;

9.有系统可编程和应用可编程,无需专用编程器和仿真器; 10.通用I\\O口:32或36个; 11.它的工作电压是到5V之间;

12.外形封装:40脚PDIP、44脚PLCC和PQFP等他们的引脚如下。

图3-1 引脚图

单片机最小系统

51单片机最小系统一般指的是单片机与晶振电路和复位电路组成的系统,单片机最小系统有时也称为最小应用系统,用最少的元件组成的单片机可以工作的系统称为单片机的最小系统。下面给出一个51单片机的最小系统电路图。

图3-2 最小系统电路图

时钟电路

1.内部时钟电路

内部时钟电路是有C51本身用于构成内部振荡器的高增益反相放大器和外部电路组成,引脚XTAL1是该放大器的输入端,引脚XTAL2分别是该放大器的输出端。放大器与外部谐振器构成自激振荡器,外部谐振器可以是石英晶体、陶瓷谐振器。外接的两个电容与谐振器构成了并联振荡电路。为了保证系统工作的稳定性对两个电容也有很高的要求。石英晶体和陶瓷谐振器对两个电容的要求分别为30pF士10pF和40pF士l0pF,这样的选择最好。

VccSTCC51STCC51外部时钟信号输入R1XTAL1C1晶振XTAL274LS04C2XTAL2XTAL1Vss

图3-3 内部时钟电路 图3-4 外部时钟电路

2.外部时钟电路

采用外部振荡器脉冲信号输入,如图3-4所示,XTAL1接地,XTAL2接外部振荡器,并通过XTAL2端输入到片内时钟发生器中。外接~10k的上拉电阻。

复位电路

通过某种方式,使单片机内部各类寄存器的值变为初始状态的操作叫做复位[11]。复位电平的正脉冲宽度统设计采用上电复位模式。

1.上电复位方式

最简单的复位电路,无需增加硬件。在复位输入引脚和一个电容器连接到VCC,和一个电阻连接到GND,如图3-5所示。

图3-5 上电复位电路

由VCC,10uf有极性电容,10k电阻组成的上电复位电路。实现通过电容器的充电和放电外部复位电路,电容器的第一输入一个临时的高水平,与VCC电容器的充电时间的增加而减小的高水平,当电源接通时,只要VCC 的上升时间不超过1ms,单片机就能够可靠地复位[12]。 2.手动复位电路

图3-6 手动复位电路

当我们按下复位按键时,单片机引脚RST直接与高电压VCC相连,这时出现2个以上的高电平,让电路形成复位重置,复位的同时电解电容被短路,形成放电电路;当我们复位按键松开同时,电容充电,为下次放电做准备,此时电流流过电阻,单片机引脚RST这时为高电平,现在电路仍然是复位状态,充电完成后,电容不存在,形成开路,RST此时为低电平,电路为正常工作状态。

ADC0832芯片介绍

图3-7 ADC0832 引脚图

ADC0832 是美国国家半导体公司生产的一种8 位分辨率、双通道A/D转换芯片。体积比较小,对其他芯片兼容性强、性能好、价格低是ADC0832的主要特点,因为它的这些特点受到的很对人的喜爱与使用,现在用它做设计的人已经非常多了。我们通过学习和了解它的原理,最终能把它熟练掌握,非常有利于我们单片机技术水平的提高。 ADC0832 具有以下特点:

(1)具有8位分辨率; (2)有两个通道A/D转换; (3)输出的电平与很多芯片都兼容; (4)输出的电压能在最小与最大之间输出; (5)250KHZ的工作频率,使其转换时间仅为32μS; (6)一般功耗仅为15mW; (7)它的工作温度环境范围比较大;

本章小结

本章主要内容是分析系统控制芯片的工作原理,电路实现,软件技术等相关设计。通过STCC51最小系统的分析,熟悉时钟电路,复位电路的工作原理,掌握控制模块的功能实现,为系统设计提供设计思路。

第四章 系统硬件设计

整个系统最基础的就是系统硬件设计,设计这个系统要考虑许多方面的因素,除了实现洗衣机基本功能以外,我们还要考虑诸多因素:比如设计所用的器件能不能买到、所做系统的稳定性能不能达到、所设计的功能能不能实现、价格是不是能接受、编程容不容易实现和器件的兼容性等因素。所以我们所设计的硬件系统非常重要。以下是对所设计硬件系统各个模块的具体分析。

总体设计及功能描述

时钟模块 CPU控制模块 显示模块 电源模块 电机控制模块 复位模块

图4-1洗衣机控制系统总图

按键控制模块

CPU控制模块采用了STCC51单片机来控制各个系统的运转。我们的系统采用了模块化的设计,因为选用模块化设计更能直观的反应出我们所设计的具体模块。设计的功能模块包括了一下几个功能:单片机控制系统、电源、时钟、复位、按键控制、直流电机控块和显示等模块。洗衣机的主要功能有强弱洗涤功能、单独脱水功能、进排水功能、水位检测功能、控制电机的正反转以及电机的转速、显示洗涤时间和洗衣机运行状态的功能。

各功能模块硬件设计

单片机控制模块的设计

STCC51单片机作为主控制的原因是:它是一种高效微型控制器,具有能耗低、

性能高等特点。所以我们选用了STCC51单片机作为该系统的主要控制芯片。为了方便设计我们采用40引脚PDIP双列直插封装形式,40引脚PDIP形式的STCC51单片机具有32个外部双向输入/输出(I/O)接口。40引脚的单片机外形及引脚排列如图4-2所示。

图4-2 STCC51单片机的引脚图

STCC51单片机中的电源、时钟信号和复位电路是其工作的基本条件,缺少一个都不能工作。电源电路、时钟电路、复位电路是单片机中最基本的电路。其组成如图4-3所示。

电源电路 时钟电路 CPU 控制 模块 复位电路

图4-3 单片机控制系统基本硬件组成方框图

1.电源电路

单片机系统电源部分的原理图如图4-4所示。我国使用的标准电压为220V,我们所设计电路的电压为5V,我们需要经过一系列的变化的到我们所需要的电压5V。首先将电压220V经过变压器T变压为15V交流电,然后用4个二极管进行全桥整流,在通过电容滤波得到光滑的5V直流电压后,最后在经过通过三端稳压管稳压的稳压效果,最终得到稳定的+5V电压给各个电路模块进行供电。

图4-4 电源电路

2.时钟电路模块的设计

由于我们选用的芯片STCC51自己本身就有时钟振荡电路,所以我们直接用就行了,不需要单独进行设计,只需要在单片机的XTAL1和XTAL2引脚外接石英晶体和微调电容,就能得到设计所需要的自激振荡器,他能在单片机内部产生时钟脉冲信号,从而得到我们想要的。具体电路设计如图4-5所示。

图4-5 时钟振荡电路

工作原理:

内部时钟电路是有C51本身用于构成内部振荡器的高增益反相放大器和外部电路组成,引脚XTAL1是该放大器的输入端,引脚XTAL2分别是该放大器的输出端。放大器与外部谐振器构成自激振荡器,外部谐振器可以是石英晶体、陶瓷谐振器。外接的两个电容与谐振器构成了并联振荡电路。为了保证系统工作的稳定性对两个电容也有很高的要求。石英晶体和陶瓷谐振器对两个电容的要求分别为30pF士10pF和40pF士l0pF,这样的选择最好。。为了加快单片机的运行速率,我们添加了晶体振荡器,它可以简称为晶振,它频率(fosc)可以,范围为~12MHz,在这次设计中我们选取最大值12MHz,选择12MHz的主要原因是晶体振荡频率越高,系统的时钟频率也越高,单片机系统运行速率越快。

3.复位电路模块和设计

复位电路使单片机或系统中的其他部件处于某种确定的状态。当在STCC51系列单片的RST引脚处引入高电平形成2个高电平电位,单片机就会内部自己执行复位操作。总得来说,复位操作分为上电复位和按键复位。在这次设计中我们采用按键复位方式。如图4-6所示。

图4-6 复位电路

工作原理:

当我们按下复位按键时,单片机引脚RST直接与高电压VCC相连,这时出现2个以上的高电平,让电路形成复位重置,复位的同时电解电容被短路,形成放电电路;当我们复位按键松开同时,电容充电,为下次放电做准备,此时电流流过电阻,单片机引脚RST这时为高电平,现在电路仍然是复位状态,充电完成后,电容不存在,形成开路,RST此时为低电平,电路为正常工作状态。

显示电路设计

显示模块由发光二极管和LED显示器组成。 1.发光二极管

发光二极管的英文缩写为LED。我们这次设计选用发光二极管主要用途是用来指示洗衣机的工作状态和进排水的状态。6个发光二极管分别跟单片机的P1口的6个I/O口连接,如图4-5所示。为了使导通发光二极管亮,只要在发光二极管的负极所对应的P1口通入低电平。

图4-7 发光二级管电路

2. LED显示器

我们为了直观了观察出所设计系统的运行时间,就要设计出对应的显示电路。所以我们用了LED显示器来显示,显示电路如图4-8所示。

图4-8 显示电路

LED显示器的结构

每个LED显示器是有8段不同的发光二极管组成的。LED显示器有两种连接方式,分别为共阳和共阴连接。我们这次使用的是四个共阳二极管,共阳LED显示器的特点是,当其中的发光二极管接低电平时,对应的发光二极管被点亮,对应的波段就显示出来。共阴极连接与共阳极连接道理是同样的。LED显示器显示不同的数字,就要使对应打发光二极管点亮,为了使发光二极管点亮,就要编写对应的代码,代码和可以让对应的LED相应的段发光,显示出我们想要的数字,这些数字组成在一起就能显示时间。有时我们也把这些代码称之为段码或称之为字型码。

直流电机驱动电路设计

图4-9 直流电机电路

图4-9所示是一个直流电机控制电路。当JDQ2常闭断开,常开闭合时,JDQ3和JDQ1常闭时,电机实现正转。 当JDQ3常闭断开,常开闭合时,JDQ2和JDQ1常闭时,电机实现反转,从而达到洗衣机洗涤与漂洗的功能。当JDQ3常闭时,JDQ2和JDQ1常闭断开,常开闭合时,电机实现高速转动,从而达到脱水的效果。Q6控制的继电器是调节脱水时间和洗涤时间的继电器,不闭合的时候调节洗涤时间,闭合时调节脱水时间。Q7和Q8控制的继电器调节电机的正反转。

报警电路

报警功能选择用蜂鸣器来实现,蜂鸣器是一个一体化的结构电子式讯响器,采用了直流的电压供电,广泛用于电脑及打印机及复印机及报警及电子玩具及汽车电子设备及电话、定时器及其他电子产品在声音的设备。蜂鸣器可分为压电蜂鸣器和电磁式蜂鸣器等两种类型。本次设计采用了压电蜂鸣器。

压电蜂鸣器主要由许多谐振子、压电蜂鸣器、阻抗匹配、音箱、壳等。一些压电蜂音器壳有一个发光二极管。许多电晶体谐振子或集成电路构成。当开关电源到15伏特直流电压),许多谐振子初始、输出 ~ 音频信号,阻抗匹配器压电蜂鸣器声音促进。当P1 6为低电平时发出报警。

如图4-10所示。

图4-10 报警电路

进/排水电路

设计的进/排水电路基本与电机电路相同,如图4-11所示,进水阀受P33的控制,排水阀受P34的控制。当电控水龙头的控制端P33为低电平时,使三极管Q9导通,线圈得电使得进水阀打开,开始给洗衣机供水。当电控水龙头的控制端P34为低电平时,三极管Q10导通,线圈得电使得排水阀打开,排出此时洗衣机内的水。从而达到了近排水的效果。

图4-11 进/排水电路

按键模块设计

按键模块电路图,如图4-12。

4-12 按键电路

K1接P2 0口,K2接P2 1口,K1和K2的3口接口。K1控制洗衣方式和单独脱水功能的选择。K2是暂停和启动键。

水位检测系统

Water Sensor水位传感器是深圳科易互动公司最新推出的一款产品,它的主要特点是简单易用、小巧轻便、性比价较高的水位检测传感器。其工作原理为通过具有一系列暴露的平行导线线迹其水量的多少。与国外同类产品相比、不但体积小、功能强、而且设计具有以下特点:水量到模拟量的转换;可塑性强、本传感器输出为基础模拟值;低功耗、灵敏度高;可以直接与微处理器或其他逻辑电路相连接,适合各种开发板与控制器。

水位监测电路如图4-13,3口接高电平,2口接ADC0832芯片的CHO口,1口接地。我们设置一个水位,在洗衣机进水阀打开时达到我们所设定的值,指示灯会点亮。在出水阀打开时小于我们所设定的值时,指示灯会点亮,从而达到模拟水位的效果。

4-13水位检测电路

A/D转换电路

ADC0832 为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V之间。芯片转换时间仅为32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。的芯片使能输入,使多器件挂接和处理器控制变的更加方便。通过DI 数据输入端,可以轻易的实现通道功能的选择。

本设计用AD0832芯片作为改设计的A/D转换芯片电路图,如图4-14。此电路的主要作用是把水位的模拟量转换成数字量。电容C4的作用让输入的信号更加稳定,防止ADC0832芯片监测过快导致信号不稳定。

图4-14 A/D转换电路

本章小结

通过对本章主要模块功能设计,对各个模块的工作原理分析,掌握模块功能并把它实现。

第五章 软件部分设计 主程序流程图

图5-1 主程序流程图

工作子程序流程图

图5-2 工作子程序流程图

按键子程序流程图

图5-3 按键子程序流程图

显示子程序工作流程图

图5-4 显示子程序流程图

本章小结

本章主要分析了系统程序的设计分析。通过对流程图的分析可以掌握程序的运行情况以及数据的流向。程序的好坏还需要配合硬件电路的设计与仿真,在软件仿真的基础上形成准确的程序。

第六章 仿真与调试 标准方式仿真图

本次设计硬件调试采用Protues软件进行仿真。图6-1为硬件仿真电路图,进/排水阀由LED灯表示。

图6-1硬件仿真电路图

结 论

主要是以STCC51单片机为核心芯片来完成这次毕业设计。首先,对洗衣机进行了简单的原理分析与设计。这次设计以软硬件相结合与搭档一起完成这次毕业设计。我主要完成硬件部分。 在越来越智能化的社会,智能洗衣机成了每个家里不可缺少的家用电器。所以我选择这样的毕业设计课题,并且能通过此次设计来提高自己硬件电路设计的能力。在我完成这次毕业设计的过程中,当看到自己将专业知识用于解决实际的问题时,那份成就感和喜悦感是难以形容的。但是,在实际制作的过程中,我发现自己应该学的东西太多太多。光靠自己在书本上所学过的这点知识是远远不够的,真正地认识到了工作就是学习的道理。

由于自己以前没有认真学习单片机,感觉十分吃力,觉得毕业设计的任务十分紧迫。通过对本系统的设计,我学习到了硬件开发的基本流程并有了一定的驾御此开发过程的能力。

总之,这次毕业设计对我来说是一次比较全面的、富有创造性和探索性的锻炼,完成了我选题时的心愿。令我深有感触,对于我今后的学习、工作和生活都将是受益非浅。

参考文献

[1] 杨宝清.实用电路手册,北京:机械工业出版社,2002 [2] 江志红.51单片机案例精选,北京:清华大学出版社,2008

[3] 华永平.电子线路课程设计,南京:东南大学出版社,2006 [4] 胡汉才.单片机原理及其接口技术,北京:清华大学出版社,1996 [5] 阎石.数字电子技术,北京:高等教育出版社,2004

[6] 潘新民等编著.微型计算机控制技术,北京:高等教育出版社,2001 [7] 赵伟军.Protel99SE原理图与PCB仿真,北京:机械工业出版社,2005 [8] 辛友顺.单片机引用系统设计与实现,福建:福建科学技术出版社,2006

[9] 李勋.单片机微型计算机大学读本.北京:北京航空航天大学出版社,2002.

[10] 克强.用ATC2051单片机制作洗衣机控制电路[J].北京:电子世界,

[11] 张美金、刘卉、谢国民.80C51单片微机原理及应用教程[M].沈阳:辽宁人民出版社, [12] Meehan Joanne,Muir in Merseyside SMEs:Benefits and barriers [J].TQM [13] Meehan Joanne,Muir Lindsey. SCM in Merseyside SMEs:Benefits and barriers[J]. TQM Journal. 2008:55-59

[14] Yeager Brent. How to troubleshoot your electronic scale[J].Powder and Bulk Engineering. 1995:77-81

附录1 系统设计原理图

附录2 元件清单

1) 9*15万用板 2) STCC51单片机 3) 40脚IC座 4) 12MHz晶振 5) 30pF瓷片电容*2 6) 10uF电解电容*2 7) ADC0832

8) 8脚IC座

9) 四位一体共阳数码管10) 5V有源蜂鸣器 11) 5mm红色LED*4 12) 5mm黄色LED*2 13) 5mm绿色LED*2 14) 9012三极管*10

15) 104独石电容 16) 按键*3

17) 5V继电器(黄)*5 18) 2pin接线端子(蓝)*2 19) 3V直流电机 20) 10k电阻 21) 电阻*9 22) 1k电阻*7

23) 220欧电阻*2 24) 100欧电阻 25) 排针*3 26) 杜邦线*3 27) 水位传感器 28) USB电源线 29) 导线 30) 焊锡

附录3 系统源程序

#define uint unsigned int

#define uchar unsigned char #define DUAN P0

#include <> #include <>

char min=15,sec=0; //定义定时变量

/**端口定义**/ sbit CS = P3^0;

sbit Clk = P3^1; sbit DATI = P3^2; sbit DATO = P3^2;

sbit DIAN = P0^5; //小数点

/**定义全局变量**/

unsigned char dat = 0x00; //AD值 unsigned char CH; //通道变量 uchar MODE=0; uchar NUM=0;

bit flag_START=0; bit flag_finish=0;

/**共阳LED段码表**/

unsigned char tab[]={0x5F,0x44,0x9D,0xD5,0xC6,0xD3,0xDB,0x47,0xDF,0xD7};

void delay(uchar i); //函数声明

/**管脚声明**/

sbit buzz=P1^6; //蜂鸣器

sbit KEY_MODE=P2^0; //模式选择按键 sbit KEY_PAUSE=P2^1; //启动、暂停按键

sbit LED_15min=P1^0; //洗衣模式灯 sbit LED_20min=P1^1; sbit LED_30min=P1^2;

sbit LED_WASH=P1^3; //洗衣过程指示灯 sbit LED_RINSE=P1^4; sbit LED_DRY=P1^5;

sbit MOTOR_R=P3^5; //控制电机转动方式的3个继电器sbit MOTOR_L=P3^6;

sbit MOTOR_WASH_DRY=P3^7;

sbit WATER_IN=P3^3; //进水

code sbit WATER_OUT=P3^4; //排水 sbit LED1=P2^4; sbit LED2=P2^5; sbit LED3=P2^6; sbit LED4=P2^7;

/**水位检测AD转换**/ unsigned char adc0832(CH) {

unsigned char i,test,adval; adval=0x00; test=0x00;

Clk=0; //初始化 DATI=1; _nop_(); CS=0; _nop_(); Clk=1; _nop_();

if(CH==0) {

Clk=0;

DATI=1; _nop_(); Clk=1; _nop_(); Clk=0;

DATI=0; _nop_(); Clk=1; _nop_(); } else {

Clk = 0;

DATI = 1; _nop_(); Clk = 1; _nop_(); Clk = 0;

}

DATI = 1; _nop_(); Clk = 1; _nop_(); }

Clk = 0; DATI = 1;

for( i = 0;i < 8;i++ ) {

_nop_(); adval <<= 1; Clk = 1; _nop_(); Clk = 0; if (DATO)

adval |= 0x01; else

adval |= 0x00; }

for (i = 0; i < 8; i++) {

test >>= 1; if (DATO) test |= 0x80; else

test |= 0x00; _nop_(); Clk = 1; _nop_(); Clk = 0; }

if (adval == test) dat = test; nop_();

CS = 1; DATO = 1; Clk = 1; return dat;

/**显示子程**/ void display() {

DUAN=~tab[min/10]; LED1=0; delay(2); LED1=1;

DUAN=~tab[min%10]; DIAN=0; LED2=0; delay(2); LED2=1;

DUAN=~tab[sec/10]; LED3=0; delay(2); LED3=1;

DUAN=~tab[sec%10]; LED4=0; delay(2); LED4=1; }

void read_0832() {

uint sum;

uchar read_num;

for(read_num=0;read_num<20;read_num++) {

dat=adc0832(CH); sum=sum+dat; display(); }

dat=sum/20; sum=0; }

/**按键子程**/ void KEY() {

// uchar time_start;

if(KEY_MODE==0&&TR0==0)

{

delay(20);

if(KEY_MODE==0) {

buzz=0; delay(20); buzz=1; MODE++; if(MODE==1)

{min=20;sec=0;LED_15min=1;LED_20min=0;} else if(MODE==2)

{min=30;sec=0;LED_20min=1;LED_30min=0;} else if(MODE==3)

{min=3;sec=0;LED_30min=1;} if(MODE>=4) {

MODE=0; min=15; sec=0;

LED_15min=0; }

while(KEY_MODE==0) display(); } }

if(KEY_PAUSE==0) {

delay(20);

if(KEY_PAUSE==0) {

buzz=0; delay(20); buzz=1;

flag_START=~flag_START; if(NUM==1||NUM==4||NUM==6) {

TR0=!TR0; MOTOR_R=1; MOTOR_L=1; }

// NUM=0;

//TR1=flag_START;

while(KEY_PAUSE==0) display(); } } }

//**工作子程**// void work() {

read_0832();

if(flag_START==1)

{ if(min<=3&&dat<100)

{ TR0=1;

LED_WASH=1; LED_RINSE=1; WATER_IN=1; WATER_OUT=1; LED_DRY=0;

MOTOR_WASH_DRY=1; MOTOR_R=0; MOTOR_L=1; }

else if(min<=3&&dat>100) {

TR0=0;

LED_WASH=1; LED_RINSE=1;

WATER_IN=1; WATER_OUT=0; MOTOR_R=1; MOTOR_L=1; }

else if(min==0&&sec==0) {

TR0=0; MOTOR_R=1; MOTOR_L=1; }

else if(NUM==0) {

LED_WASH=0;

}

read_0832();

if(dat<100) {

WATER_IN=0; WATER_OUT=1; }

else if(dat>=100) {

WATER_IN=1; WATER_OUT=1; TR0=1;

NUM=1; }

if(NUM==1) {

if(min>=5) {

MOTOR_WASH_DRY=0; if(sec==0||sec==30) {

MOTOR_R=0; MOTOR_L=1; }

else if(sec==50||sec==35||sec==20||sec==5) {

MOTOR_R=1; MOTOR_L=1; }

else if(sec==45||sec==15) {

MOTOR_R=1; MOTOR_L=0; } }

else if(min<5) {

NUM=2; TR0=0; MOTOR_R=1;

MOTOR_L=1; } }

if(NUM==2) {

read_0832();

if(dat>=100) // {

WATER_IN=1; WATER_OUT=0; }

if(dat<100) {

WATER_IN=0; WATER_OUT=1; NUM=3; LED_WASH=1; } }

if(NUM==3) {

LED_RINSE=0; read_0832(); if(dat>100) {

WATER_IN=1; WATER_OUT=1; TR0=1;

NUM=4; } }

if(NUM==4) {

if(min<5&&min>=3) {

MOTOR_WASH_DRY=0; if(sec==0||sec==30) {

MOTOR_R=0; MOTOR_L=1;

}

else if(sec==50||sec==35||sec==20||sec==5) {

MOTOR_R=1; MOTOR_L=1; }

else if(sec==45||sec==15) {

MOTOR_R=1; MOTOR_L=0; } }

else if(min<3) {

NUM=5; TR0=0; MOTOR_R=1; MOTOR_L=1; } }

if(NUM==5) {

read_0832();

if(dat>=100) {

WATER_IN=1; WATER_OUT=0; }

else if(dat<100) {

WATER_IN=1; WATER_OUT=1; NUM=6; TR0=1;

LED_RINSE=1; } }

if(NUM==6) {

LED_DRY=0;

MOTOR_WASH_DRY=1; MOTOR_R=0;

// MOTOR_L=1; } } }

/**定时器初始化函数**/ void init() {

TMOD=0x11; //工作方式 TH0=0xd8;

TL0=0xf0; //赋初值 TH1=0x3c; TL1=0xb0; ET0=1;

// TR0=1;

ET1=1; //打开中断允许开关 EA=1; //打开中断总开关 // TR1=1; //打开定时器开关 }

/**主函数**/ void main() {

init();

LED_15min=0; buzz=0;

delay(200); buzz=1; while(1) {

KEY(); work(); display(); } }

/**延时函数**/

void delay(uchar i) {

uchar j,k;

for(j=i;j>0;j--)

for(k=121;k>0;k--); }

/**定时器服务函数**/

void time0() interrupt 1 {

uchar m; TH0=0xd8; TL0=0xf0; m++; if(m>=20) {

m=0; sec--; if(sec<0) {

sec=59; min--;

if(min<0) {

min=0; sec=0;

MOTOR_WASH_DRY=0; MOTOR_R=1; MOTOR_L=1; flag_START=0; TR1=1; TR0=0; LED_DRY=1; NUM=0; } } } }

/**定时器中断延时程序**/ void timer1() interrupt 3 {

uchar count;

TH1=0x3c;//定时器1初值定时50ms TL1=0xb0; count++;

if (count %10==0) {

buzz=!buzz;

LED_WASH=!LED_WASH; LED_RINSE=!LED_RINSE; LED_DRY=!LED_DRY; }

if(count>=200) {

count=0; TR1=0;

LED_WASH=0; LED_RINSE=0; LED_DRY=0; } }

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- kqyc.cn 版权所有 赣ICP备2024042808号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务