1、课程设计任务书 编号:5河北工业大学计算机硬件技术基础(Mcs-51)课 程 设 计 任 务 书学院 班级 设计人 学号_ 一、题目: 全自动洗衣机(5)二、目的与要求:1目的:1进一步加深对 MCS-51 单片机内部结构和程序设计方法的理解。2提高综合运用 MCS-51 单片机的软硬件进行程序设计的能力。2基本要求:(1)要求使用面向对象和结构化程序设计的编程思路。(2)学校的刷卡式全自动洗衣机给同学们的生活带来了很大便利,现利用MCS51 单片机,通过延时、定时、中断等操作实现全自动洗衣机工作过程的模拟控制。3设计说明: 运用了中断,延时等来模拟全自动洗衣机工作的全过程,用指示的点亮,熄灭
2、来表示洗衣机的正转反转及开盖,刷卡,注水,脱水等全部过程。三、设计方法和基本原理:1问题描述:分析全自动洗衣机的工作过程:接通电源后,打开洗衣机盖子放入衣物和洗衣粉,盖上盖子。通过刷卡启动注水,利用外部中断 0 模拟注水达标志位,停止注水并开始洗衣。洗衣过程为:正转 10 秒(利用延时实现) ,间歇 4 秒,然后反转 10 秒,间歇 4 秒,再正转(这里认为已洗静) ,然后开始排水,同样利用延时模拟排水达标志位,排水结束,如此循环往复 3 次(注水洗涤排水 过程) ,认为洗衣过程结束。然后开始脱水操作, 利用定时器,定时时间到,打开洗衣机盖子取出衣物,等待下一次刷卡,即下一次洗衣任务。试验中用
3、各指示灯的亮灭来表示洗衣过各环节的相应状态。2涉及到的硬件:LED 指示灯课程设计任务书 编号:53流程图开始开电源 INT0 引脚置高电平 等待中断正转 调用子程序延时 调用子程序反转 调用子程序延时 调用子程序关盖 开始注水 中断-注水结束课程设计任务书 编号:5正转 调用子程序排水结束 调用子程序脱水 调用子程序开盖 返回主程序 结束四、程序清单:ORG 8000HLJMP MAINORG 8003HLJMP INT0SMAIN : CLR P1.0 ;开盖灯亮CLR P1.7 ; 电源指示灯亮MOV R1,#03H STEB EA SETB EX0 SETB IT0JB P3.3 ,Y
4、Y0AJMP MAIN YYY0: SETB P1.0MOV 20H.0 ,#01HCLR P1.6 CLR P1.1 ;注水灯亮LP: JB 20H.0 , LP AJMP YYY1 INT0S: CLR P1.2 ;中断灯亮 CLR 20H.0 RETI R1=0课程设计任务书 编号:5YYY1: SETB P1.1 SETB P1.2CLR P1.3 ;正转灯亮 MOV 40H, #10H ;正转 10 秒YY0: LCALL DELAY DJNZ 40H, Y0 SETB P1.3 ;间歇 4 秒MOV 41H, #04HYY1: LCALL DELAY DJNZ 41H, YY1 C
5、LR P1.4 ;反转 10 秒 MOV 42H, #10H YY2: LCALL DELAY DJNZ 42H, YY2 SETB P1.4 MOV 43H, #04H YY3: LCALL DELAY DJNZ 43H, YY3 CLR P1.3 MOV 44H, #10H YY4: LCALL DELAY DJNZ 44H, YY4 SETB P1.3 YYY2: SETB P1.6 ;排水 灯灭 阀开 MOV 45H, #05H YY5: LCALL DELAY DJNZ 45H,YY5 DJNZ R1 ,YY0 ;循环洗涤 3 次 YYY3: CLR P1.5 ;脱水MOV 46H,
6、 #10H YY6: LCALL DELAY DJNZ 46H,Y6 SETB P1.5 ;脱水结束JB P3.3 , YY7 ;等待下次刷卡 YY7: AJMP MAIN DELAY: MOV R5, #100 ;延时子程序DELY: MOV R7, #40 DEL1: MOV R6, #123DEL2: DJNZ R6, DEL2 DJNZ R7, DEL1 DJNZ R5, DELYEND 课程设计任务书 编号:5五.程序调试:(1)将所编写的程序在 WIN51 文件下进行编译,看是否有错误出现,根据编译提示进行修改,进行编译,如果还不能达到要求的结果,继续进行修改,直到所编写的程序 0
7、 个错误 0 个警告。(2)运行实验,看是否遵循设计的要求,指示灯的亮灭表示洗衣过程各环节的相应状态。如果不符,则仍然继续修改直到符合设计要求为止。六.最终功能:外部中断 0 模拟注水达标志位,停止注水并开始洗衣。洗衣过程为:正转 10秒(利用延时实现) ,间歇 4 秒,然后反转 10 秒,间歇 4 秒,再正转(这里认为已洗静) ,然后开始排水,同样利用延时模拟排水达标志位,排水结束,如此循环往复 3 次(注水洗涤排水 过程) ,认为洗衣过程结束。然后开始脱水操作,利用定时器,定时时间到,打开洗衣机盖子取出衣物,等待下一次刷卡,即下一次洗衣任务。七遇到的困难及解决办法1 设计刷卡模拟器的时候,
8、不知所措,最后用一个开关来控制2 利用中断模拟注水大标志位是我陷入困境,在同学的帮助以及自己努力下,最终将问题解决八、创新部分由于自己的知识和能力有限,经过很多次实验,一些创新没有能够实现,不过我有自己的创新思路,如下:1 当洗衣机开盖之后放入衣服关盖,让后开始注水,程序向下进行 ;如果没有放入衣服,则程序结束,不会进行注水等过程。2 设计一个刷卡模拟器,当刷卡之后,程序进行,若不刷卡,程序不会启动3 只要通上电源 ,电源指示灯就一直亮九 所设计问题的不足和改进方案:由于条件限制实验模拟并不能解决实际中遇到的情况,如突然断电事故及其他一些实际情况等等。十、收获体会:经过两个星期课程设计,我从中
9、收获了很多。我选择的题目是 全自动洗衣机,刚开始觉得这道题目还是比较容易的,但是在设计过程中发现真的有好多的问题,不过还好,通过自己的努力和同学的热心的帮助,最终完成了这次设计。自己对中断,延时等有了更深一步的掌握。通过实验,我对单片机产生了浓厚的兴趣,它在我们日常生活中越来越重要,有很多的自动化系统要通过单片机来实现,更加使我明白学好单片机的重要性,对自己也是一种挑战。我觉得自己还有很多的不足,但是我会通过自己不懈的努力,和一种拼搏的精神,来迎接新的挑战。非常感谢老师这一学期对我们认真的教导,您的严厉是对我们最大的帮助。今后我会再接再厉,我相信:有志者,事课程设计任务书 编号:5竟成!2007 年 12 月 28 日