基于单片机的全自动洗衣机控制系统毕业设计论文(4)

2019-04-02 19:19

洗涤动作子程序流程图

开始 根据过程代码获取电机正转 -停止-反转-停止的时间周期

电机动作 进水处理

设定快速 洗时间和 是否进水 电机正转 停止反转 停止周期 否 清标志 否

是否暂停 是 重启否 暂停处理

否 是

时间到否? 否

是 快速洗标 志?

否 结束

脱水子程序流程图

是 安全开关 显示鸣叫是否断开 否 否 电机动安全开

关是否 延时5 安全开 关 是 是否暂 是 安全开关断开停

是否 否 间处 瞬 暂 停 否

是否暂 是 是 不平衡修脱水不平衡 否 3次 正> 否 脱水时间 到否 是 不平衡修正重置修正

延时30秒,关闭排水 是 结

4.3全自动洗衣机控制系统汇编语言源程序

ORG 0000H LJMP MAIN ORG 0030H ;延迟10ms程序 ;使用R0, R1 DELAY10MS: MOV R0, #100D; DELAY10MS02: MOV R1, #23D DELAY10MS01: DJNZ R1, DELAY10MS01 DJNZ R0, DELAY10MS02 RET ;显示子程序

;20H.0闪烁标志位:=0不闪烁,=1在1s内亮灭一次 ;20H.1程序开始标志:=1开始, =0选择 ;显示缓冲:50H

;经过的时间:53H,52H,51H=分钟,秒,20ms的次数 ;总时间:TOTALTIME=40H TOTALTIME EQU 40H DISPLAY: PUSH ACC PUSH PSW SETB RS0 JNB 20H.1, DISPLAY01 MOV A, 50H ;高位是否为零 CJNE A, #0AH, DISPLAY05 DISPLAY05: JNC DISPLAY06 XRL A, #0F0H ;高位为零不显示 MOV 50H, A DISPLAY06: JNB 20H.0, DISPLAY01 ;是否需闪烁 MOV A, 51H CJNE A, #25D, DISPLAY02; DISPLAY02: JC DISPLAY01 MOV 50H, #0FFH ;暗显示(不亮) DISPLAY01: MOV A, 50H ;显示低位 ANL A, #0FH; MOV DPTR, #DISPLAYTAB; MOVC A, @A+DPTR; MOV P2, A; SETB P0.6 CLR P0.7 LCALL DELAY10MS MOV A, 50H ;显示高位 SWAP A ANL A, #0FH; MOV DPTR, #DISPLAYTAB; MOVC A, @A+DPTR; MOV P2, A; CLR P0.6 SETB P0.7 LCALL DELAY10MS INC 51H ;累计时间 MOV A, #50D ; XRL A, 51H ; JNZ DISPLAY03 ;50次的20ms未到 MOV 51H, A ; INC 52H ;1s MOV A, #60D; XRL A, 52H ; JNZ DISPLAY03

MOV 52H, A ; INC 53H ;1min DISPLAY03: JNB 20H.0, DISPLAY04; MOV A, TOTALTIME ;计算剩余时间 CLR C SUBB A, 53H ; MOV B, #10D ;16进制转换到10进制 DIV AB SWAP A XRL A, B ; MOV 50H, A ; DISPLAY04: POP PSW POP ACC RET

DISPLAYTAB: ;共阳数码管反向编码 DB 03H, 9FH, 25H, 0DH, 99H ;01234 DB 49H, 41H, 1FH, 01H, 09H ;56789 DB 11H, 0C1H, 63H, 85H, 61H ;ABCDE DB 0FFH ;暗 ;重算时间

;入口数据:A=总时间(分) CALUTIME: MOV TOTALTIME, A CLR A MOV 52H, A ;秒 MOV 53H, A ;经过的分钟 RET

;鸣叫一下, 时长120ms PLAY: SETB P1.6 MOV R0, #12D; PLAY1: LCALL DISPLAY DJNZ R0, PLAY1 CLR P1.6 RET

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;

;鸣叫六下, 时长240ms*12 ALARM: SETB P1.6 MOV R1, #11D; ALARM2: MOV R0, #12D; ALARM3: LCALL DISPLAY DJNZ R0, ALARM3 CPL P1.6 DJNZ R1, ALARM2 RET ;;;;;;;;;;;;;;;;;;;;; ;;;;;洗涤用子程序 ;;;;;;;;;;;;;;;;;;;;; ;洗涤时暂停按键 XDPAUSE: JB P0.0, XDPS01 LCALL DISPLAY JB P0.0, XDPS01 PUSH 52H PUSH 53H CLR 20H.0 ;不闪烁 MOV A, P1 PUSH ACC MOV P1, #00H LCALL PLAY XDPS02: LCALL DISPLAY

JNB P0.0, XDPS02 ;等待按键释放 XDPS03: LCALL DISPLAY JB P0.0, XDPS03 LCALL DISPLAY JB P0.0, XDPS03 LCALL PLAY XDPS04: LCALL DISPLAY JNB P0.0, XDPS04 ;等待按键释放 POP ACC MOV P1, ACC SETB 20H.0 POP 53H POP 52H XDPS01: RET

;洗涤时延迟0.32s DELAY320MS: MOV R2, #14D; SJMP XDELAY01 ;洗涤时延迟0.56s XDELAY560MS: MOV R2, #28D SJMP XDELAY01 ;洗涤时延迟1s XDELAY1S: MOV R2, #50D SJMP XDELAY01 ;洗涤时延迟1.6s DELAY1600MS: MOV R2, #80D XDELAY01: LCALL DISPLAY LCALL XDPAUSE LCALL IFINWATER DJNZ R2, XDELAY01 RET

;洗涤前进水子程序 INWATER: JNB P0.2, PI1; SETB P1.2 MOV A, 53H; ADD A, #20D; MOV 59H, A; PI3: MOV A, 53H; XRL A, 59H; JNZ PI2 LCALL ERRORE4 SJMP INWATER PI2: JNB P0.2, PI4; LCALL DISPLAY LCALL XDPAUSE SJMP PI3 PI4: CLR P1.2 PI1: RET

;洗涤时是否再进水 IFINWATER: JNB P0.2, IF1; MOV A, P1; PUSH ACC MOV P1, #00H; LCALL INWATER POP ACC

;暂停按键 ;水位开关 ;进水


基于单片机的全自动洗衣机控制系统毕业设计论文(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:民事诉讼法(2009.7新)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: