全自动洗衣机单片机课程计划.doc
《全自动洗衣机单片机课程计划.doc》由会员分享,可在线阅读,更多相关《全自动洗衣机单片机课程计划.doc(19页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、一、设计目标1、全自动洗衣机 用 51 系列单片机 89C51 控制全自动洗衣机的运行,使其能自动地完成进水、洗 涤、漂洗、脱水等功能。不同的衣物,洗涤、漂洗、脱水和洗衣电机正反转所 用的时间不同,要求设计能够实现过程选择,并在 LED 显示屏上显示过程代码。 在运行的时候能显示完成整个过程的剩余时间。 2、洗衣机主要功能:进水、洗涤、脱水、排水具体功能有浸泡、强力洗、轻柔洗、标准洗、快速洗、单独洗、单独脱水、 漂洗脱水二、设计过程洗衣机要实现衣服的洗涤、漂洗和脱水,离不开进水、电机正转、电机反转和 排水这四个动作。上述四个动作,是通过单片机的 P0 端口,做输出端口,去控 制双向可控硅通断来
2、实现的,如下图所示。同时加上输入开关的按钮、数码管 显示器、蜂鸣按警器和欠压检测保护电路等,就可以形成完整的单片机控制系 统。通过软件编程达到对整个洗衣过程进行控制、检测以及与用户交互。水位开关安全开关程序选择/启动/暂停 可控硅 X 4 个220V洗衣机单片机控制系统方框图三、设计结果(1)硬件部分1、电路图单片机 89C51进水电磁阀排水电磁阀电机正转电机反转显示屏蜂鸣器2、PCB 版图(2)、汇编语言洗衣机的一次洗衣过程控制过程主要为顺序控制,如先进水、洗涤(电机 正转反转)、再排水脱水。将把脱水、洗涤、进水单独编为一个子程序,由主程 序根据过程选择,不断调用,可以减少源程序的长度,不同
3、的洗衣过程,三大 动作的时间不同,这可以通过建立数据表格,通过查表的方式获得每个洗衣过 程所需时间。此外,还需编出显示子程序,延时子程序供主程序不断调用。1、流程图 (1) 、洗衣机控制系统主程序流程图开始用户选择洗衣过程是否洗涤结束进水洗涤排水 2D7 秒进水是否漂洗是否脱水置注水漂洗标志置最后脱水标志间歇脱水最后长脱水是否为最后 脱水结束鸣响中间长脱水洗涤是否为注水 漂洗置注水漂洗 标志(2)洗涤动作子程序流程图是否否是否是否是是否开始根据过程代码获取电机正转- 停止-反转-停止的时间周期电机动作进水处理是否进水快速洗标志?时间到否?是否暂停重启否设定快速 洗时间和 电机正转 停止反转 停
4、止周期 清标志暂停处理结束(3)脱水子程序流程图是否 否是是否否是是否否是是延时 5 秒电机动作暂停处 理安全开关 是否断开脱水时间 到否安全开关断开 暂停不平衡修正 报警重置修正次 数是否暂 停是否暂 停开 始安全开 关 是否断 开延时 30 秒,关闭排 水阀是否 瞬间 断开不平衡修 正3 次脱水不平衡 修正安全开 关是否 闭合显示鸣叫 报警结束结束束束2、程序ORG 0000HLJMP MAINORG 0030H;延迟 10ms 程序;使用 R0, R1DELAY10MS:MOV R0, #100D;DELAY10MS02:MOV R1, #23DDELAY10MS01:DJNZ R1,
5、DELAY10MS01DJNZ R0, DELAY10MS02RET;显示子程序;20H.0 闪烁标志位:=0 不闪烁,=1在 1s 内亮灭一次;20H.1 程序开始标志:=1 开始, =0 选择;显示缓冲:50H;经过的时间:53H,52H,51H=分钟,秒,20ms 的次数;总时间:TOTALTIME=40HTOTALTIME EQU 40HDISPLAY:PUSH ACCPUSH PSWSETB RS0JNB 20H.1, DISPLAY01MOV A, 50H ;高位是否为零CJNE A, #0AH, DISPLAY05DISPLAY05:JNC DISPLAY06XRL A, #0F
6、0H;高位为零不显示MOV 50H, ADISPLAY06:JNB 20H.0, DISPLAY01 ;是否需闪烁MOV A, 51HCJNE A, #25D, DISPLAY02;DISPLAY02:JC DISPLAY01MOV 50H, #0FFH;暗显示(不亮)DISPLAY01:MOV A, 50H;显示低位ANL A, #0FH;MOV DPTR, #DISPLAYTAB;MOVC A, A+DPTR;MOV P2, A;SETB P0.6CLR P0.7LCALL DELAY10MSMOV A, 50H;显示高位SWAP AANL A, #0FH;MOV DPTR, #DISPL
7、AYTAB;MOVC A, A+DPTR;MOV P2, A;CLR P0.6SETB P0.7LCALL DELAY10MSINC 51H;累计时间MOV A, #50D;XRL A, 51H;JNZ DISPLAY03;50 次的20ms 未到MOV 51H, A;INC 52H;1sMOV A, #60D;XRL A, 52H;JNZ DISPLAY03MOV 52H, A;INC 53H;1minDISPLAY03:JNB 20H.0, DISPLAY04;MOV A, TOTALTIME ;计算剩余时间CLR CSUBB A, 53H;MOV B, #10D ;16 进制转换到 10
8、 进制DIV ABSWAP AXRL A, B;MOV 50H, A;DISPLAY04:POP PSWPOP ACCRETDISPLAYTAB: ;共阳数码管反向编码DB 03H, 9FH, 25H, 0DH, 99H;01234DB 49H, 41H, 1FH, 01H, 09H;56789DB 11H, 0C1H, 63H, 85H, 61H;ABCDEDB 0FFH;暗;重算时间;入口数据:总时间(分)CALUTIME:MOV TOTALTIME, ACLR AMOV 52H, A;秒MOV 53H, A;经过的分钟RET;鸣叫一下, 时长 120msPLAY:SETB P1.6MOV
9、 R0, #12D;PLAY1:LCALL DISPLAYDJNZ R0, PLAY1CLR P1.6RET;鸣叫六下, 时长 240ms*12ALARM:SETB P1.6MOV R1, #11D;ALARM2:MOV R0, #12D;ALARM3:LCALL DISPLAYDJNZ R0, ALARM3CPL P1.6DJNZ R1, ALARM2RET;洗涤用子程序;洗涤时暂停按键XDPAUSE:JB P0.0, XDPS01LCALL DISPLAYJB P0.0, XDPS01PUSH 52HPUSH 53HCLR 20H.0;不闪烁MOV A, P1PUSH ACCMOV P1,
10、 #00HLCALL PLAYXDPS02:LCALL DISPLAYJNB P0.0, XDPS02 ;等待按键释放XDPS03:LCALL DISPLAYJB P0.0, XDPS03LCALL DISPLAYJB P0.0, XDPS03LCALL PLAYXDPS04:LCALL DISPLAYJNB P0.0, XDPS04 ;等待按键释放POP ACCMOV P1, ACCSETB 20H.0POP 53HPOP 52HXDPS01:RET;洗涤时延迟 0.32sDELAY320MS:MOV R2, #14D;SJMP XDELAY01;洗涤时延迟 0.56sXDELAY560MS
11、:MOV R2, #28DSJMP XDELAY01;洗涤时延迟 1sXDELAY1S:MOV R2, #50DSJMP XDELAY01;洗涤时延迟 1.6sDELAY1600MS:MOV R2, #80DXDELAY01:LCALL DISPLAYLCALL XDPAUSE;暂停按键LCALL IFINWATER;水位开关DJNZ R2, XDELAY01RET;洗涤前进水子程序INWATER:JNB P0.2, PI1;SETB P1.2MOV A, 53H;ADD A, #20D;MOV 59H, A;PI3:MOV A, 53H;XRL A, 59H;JNZ PI2LCALL ERR
12、ORE4SJMP INWATERPI2:JNB P0.2, PI4;LCALL DISPLAYLCALL XDPAUSESJMP PI3PI4:CLR P1.2PI1:RET;洗涤时是否再进水IFINWATER:JNB P0.2, IF1;MOV A, P1;PUSH ACCMOV P1, #00H;LCALL INWATER;进水POP ACCMOV P1, A;IF1:RET;不能进水报警ERRORE4:PUSH 52HPUSH 53HCLR 20H.0MOV A, P1;PUSH ACCMOV P1, #00H;MOV 50H, #0E4HLCALL ALARME4PK2:LCALL D
13、ISPLAYJNB P0.1, E4PK2;LCALL DISPLAYJNB P0.1, E4PK2E4PK3:LCALL DISPLAYJB P0.1, E4PK3LCALL DISPLAYJB P0.1, E4PK3SETB 20H.0POP ACCMOV P1, ACC;POP 53HPOP 52HRET;排水时延迟 1sDELAY1000MS:MOV R2, #50D;DLY51:LCALL DISPLAYLCALL XDPAUSE;暂停按键DJNZ R2, DLY51;RET;排水子程序OUTWATER:CLR ASETB P1.3JB P0.2, OUTW1MOV R7, #60D
14、OUTW2:LCALL DELAY1000MSJB P0.2, OUTW4DJNZ R7, OUTW2LCALL ERRORE1SJMP OUTWATEROUTW4:CLR CMOV A, #60DSUBB A, R7OUTW1:ADD A, #60DMOV R7, AOUTW3:LCALL DELAY1000MSDJNZ R7, OUTW3RET;不能排水报警ERRORE1:PUSH 52HPUSH 53HCLR 20H.0MOV A, P1;PUSH ACCMOV P1, #00H;MOV 50H, #0E1HLCALL ALARME1PK2:LCALL DISPLAYJNB P0.1,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全自动 洗衣机 单片机 课程 计划
限制150内