⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 雨刷电机.asm

📁 此为基于LPC920的雨刷控制器汇编源程序程序内有详细的说明
💻 ASM
字号:
;==============================================
;====Power Disassembler for MCS-51 and 6502====
;==============================================
;   Writen by: 覃远高
;   Copyright: 覃远高
;      E-mail: qinyg@163.net
;         Tel: 0755-2282553
; Last Update: 20.Aug,1999
;==============================================
;===========Disassemble information============
;==============================================
;    File Name: E:\bin与HEX互换软件\YUSHUA.BIN
;         Type: MCS-51反编译器
;         Date: 2006-5-29
;==============================================
;==============================================
Q0000:             LJMP  Q0030           ;main
;===========================================
Q0003:             NOP                              ;空操作
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
Q000B:             NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
Q0013:             NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
Q001B:             NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
Q0023:             NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
                   NOP
Q0030:             MOV   A,0A7H                           ;看门狗控制寄存器的内容送累加器 
                   ORL   0A7H,#64H                        ;设置看门狗控制寄存器   
                   LCALL Q02F6                            ;清看门狗
                   MOV   SP,#07H                           
		   MOV   84H,#00H                         ;初始化P0口方向
		   MOV   85H,#00H
                   MOV   P0,#0FFH                          ;初始化P0口
                   MOV   91H,#3FH                         ;初始化P1口的方向
                   MOV   92H,#0C0H
                   MOV   P1,#00H                          ;初始化P1口
                   ANL   A,#30H                           ;A或上30
                   CJNE  A,#30H,Q0095                     ;正常工作
                   MOV   A,41H
                   CJNE  A,#00H,Q0053
                   SJMP  Q0095
Q0053:             CJNE  A,#01H,Q0059
                   LJMP  Q00E4
;===========================================
Q0059:             CJNE  A,#02H,Q005F
                   LJMP  Q0106
;===========================================
Q005F:             CJNE  A,#03H,Q0065
                   LJMP  Q0132
;===========================================
Q0065:             CJNE  A,#11H,Q006B
                   LJMP  Q0161
;===========================================
Q006B:             CJNE  A,#12H,Q0071
                   LJMP  Q0183
;===========================================
Q0071:             CJNE  A,#13H,Q0077
                   LJMP  Q01AF
;===========================================
Q0077:             CJNE  A,#21H,Q007D
                   LJMP  Q0205
;===========================================
Q007D:             CJNE  A,#22H,Q0083
                   LJMP  Q0224
;===========================================
Q0083:             CJNE  A,#23H,Q0089
                   LJMP  Q024A
;===========================================
Q0089:             CJNE  A,#33H,Q008F
                   LJMP  Q027A
;===========================================
Q008F:             CJNE  A,#34H,Q0098
                   LJMP  Q0296
;===========================================
Q0095:             LCALL Q02AF
Q0098:             LCALL Q02F6
                   MOV   41H,#00H
                   MOV   41H,#00H
                   MOV   95H,#0FFH
Q00A4:             MOV   0C2H,#0A5H                        ;清看门狗
                   MOV   0C3H,#5AH
                   MOV   A,P0
                   ANL   A,#1FH
                   JZ    Q00A4
                   MOV   95H,#00H
                   JB    P0.3,Q00BF
                   LCALL Q02DF
                   JB    P0.3,Q00BF
                   LJMP  Q0296
;===========================================
Q00BF:             JB    P0.0,Q00CB
                   LCALL Q02DF
                   JB    P0.0,Q00CB
                   LJMP  Q00E3
;===========================================
Q00CB:             JB    P0.1,Q00D7
                   LCALL Q02DF
                   JB    P0.1,Q00D7
                   LJMP  Q0160
;===========================================
Q00D7:             JB    P0.2,Q0098
                   LCALL Q02DF
                   JB    P0.2,Q0098
                   LJMP  Q01FF
;===========================================
Q00E3:             NOP
Q00E4:             MOV   41H,#01H
                   LCALL Q02F6                    ;清看门狗
                   JNB   P0.0,Q00F0
                   LJMP  Q027A
;===========================================
Q00F0:             JB    P0.3,Q00FC
                   LCALL Q02DF
                   JB    P0.3,Q00FC
                   LJMP  Q027A
;===========================================
Q00FC:             SETB  P1.6
                   CLR   P1.7
                   JNB   P0.4,Q00E4
                   JNB   P0.5,Q00E4
Q0106:             MOV   41H,#02H
                   LCALL Q02F6
                   JNB   P0.0,Q0112
                   LJMP  Q027A
;===========================================
Q0112:             JB    P0.3,Q011E
                   LCALL Q02DF
                   JB    P0.3,Q011E
                   LJMP  Q027A
;===========================================
Q011E:             SETB  P1.6
                   CLR   P1.7
                   JB    P0.5,Q0106
                   LCALL Q02DF
                   JB    P0.5,Q0106
                   CLR   P1.6
                   CLR   P1.7
                   LCALL Q02EE
Q0132:             MOV   41H,#02H
                   LCALL Q02F6
                   JNB   P0.0,Q013E
                   LJMP  Q0296
;===========================================
Q013E:             JB    P0.3,Q014A
                   LCALL Q02DF
                   JB    P0.3,Q014A
                   LJMP  Q0296
;===========================================
Q014A:             SETB  P1.7
                   CLR   P1.6
                   JB    P0.4,Q0132
                   LCALL Q02DF
                   JB    P0.4,Q0132
                   CLR   P1.6
                   CLR   P1.7
                   LCALL Q02EE
                   SJMP  Q0106
Q0160:             NOP
Q0161:             MOV   41H,#11H
                   LCALL Q02F6
                   JNB   P0.1,Q016D
                   LJMP  Q027A
;===========================================
Q016D:             JB    P0.3,Q0179
                   LCALL Q02DF
                   JB    P0.3,Q0179
                   LJMP  Q027A
;===========================================
Q0179:             SETB  P1.6
                   CLR   P1.7
                   JNB   P0.4,Q0161
                   JNB   P0.5,Q0161
Q0183:             MOV   41H,#12H
                   LCALL Q02F6
                   JNB   P0.1,Q018F
                   LJMP  Q027A
;===========================================
Q018F:             JB    P0.3,Q019B
                   LCALL Q02DF
                   JB    P0.3,Q019B
                   LJMP  Q027A
;===========================================
Q019B:             SETB  P1.6
                   CLR   P1.7
                   JB    P0.5,Q0183
                   LCALL Q02DF
                   JB    P0.5,Q0183
                   CLR   P1.6
                   CLR   P1.7
                   LCALL Q02EE
Q01AF:             MOV   41H,#13H
                   LCALL Q02F6
                   JNB   P0.1,Q01BB
                   LJMP  Q0296
;===========================================
Q01BB:             JB    P0.3,Q01C7
                   LCALL Q02DF
                   JB    P0.3,Q01C7
                   LJMP  Q0296
;===========================================
Q01C7:             SETB  P1.7
                   CLR   P1.6
                   JB    P0.4,Q01AF
                   LCALL Q02DF
                   JB    P0.4,Q01AF
                   CLR   P1.7
                   CLR   P1.6
                   MOV   R4,#0FH
Q01DA:             MOV   R5,#64H
Q01DC:             LCALL Q02DF
                   LCALL Q02F6
                   CLR   P1.6
                   CLR   P1.7
                   JNB   P0.1,Q01EC
                   LJMP  Q0296
;===========================================
Q01EC:             JB    P0.3,Q01F8
                   LCALL Q02DF
                   JB    P0.3,Q01F8
                   LJMP  Q0296
;===========================================
Q01F8:             DJNZ  R5,Q01DC
                   DJNZ  R4,Q01DA
                   LJMP  Q0183
;===========================================
Q01FF:             JNB   P0.2,Q0217
                   LJMP  Q027A
;===========================================
Q0205:             MOV   41H,#21H
                   LCALL Q02F6
                   JB    P0.3,Q0217
                   LCALL Q02DF
                   JB    P0.3,Q0217
                   LJMP  Q027A
;===========================================
Q0217:             SETB  P1.6
                   CLR   P1.7
                   JNB   P0.4,Q0205
                   JNB   P0.5,Q0205
                   MOV   30H,#03H
Q0224:             MOV   41H,#22H
                   LCALL Q02F6
                   JB    P0.3,Q0236
                   LCALL Q02DF
                   JB    P0.3,Q0236
                   LJMP  Q027A
;===========================================
Q0236:             SETB  P1.6
                   CLR   P1.7
                   JB    P0.5,Q0224
                   LCALL Q02DF
                   JB    P0.5,Q0224
                   CLR   P1.6
                   CLR   P1.7
                   LCALL Q02EE
Q024A:             MOV   41H,#23H
                   LCALL Q02F6
                   JB    P0.3,Q025C
                   LCALL Q02DF
                   JB    P0.3,Q025C
                   LJMP  Q0296
;===========================================
Q025C:             SETB  P1.7
                   CLR   P1.6
                   JB    P0.4,Q024A
                   LCALL Q02DF
                   JB    P0.4,Q024A
                   JNB   P0.2,Q0271
                   DJNZ  30H,Q0271
                   SJMP  Q0296
Q0271:             CLR   P1.7
                   CLR   P1.6
                   LCALL Q02EE
                   SJMP  Q0224
Q027A:             MOV   41H,#33H
                   LCALL Q02F6
                   JB    P0.5,Q0289
                   LCALL Q02DF
                   JNB   P0.5,Q028F
Q0289:             SETB  P1.6
                   CLR   P1.7
                   SJMP  Q027A
Q028F:             CLR   P1.6
                   CLR   P1.7
                   LCALL Q02EE
Q0296:             MOV   41H,#34H
                   LCALL Q02F6
                   JB    P0.4,Q02A9
                   JB    P0.5,Q02A9
                   CLR   P1.6
                   CLR   P1.7
                   LJMP  Q0098
;===========================================
Q02A9:             SETB  P1.7
                   CLR   P1.6
                   SJMP  Q0296
Q02AF:             LCALL Q02F6                ;清看门狗
                   JB    P0.5,Q02BB           ;判断限位开关
                   LCALL Q02DF                ;短时间延时
                   JNB   P0.5,Q02C1           ;跳入到本次停止
Q02BB:             SETB  P1.6                 ;工作
                   CLR   P1.7
                   SJMP  Q02AF
Q02C1:             CLR   P1.6
                   CLR   P1.7
                   LCALL Q02EE                ;延时
Q02C8:             MOV   41H,#34H
                   LCALL Q02F6                ;清看门狗
                   JB    P0.4,Q02D9           ;限位判断
                   JB    P0.5,Q02D9
                   CLR   P1.6
                   CLR   P1.7
                   RET
;===========================================
Q02D9:             SETB  P1.7                ;工作
                   CLR   P1.6
                   SJMP  Q02C8
Q02DF:             MOV   R6,#0FH             ;延时
Q02E1:             MOV   R7,#64H
                   DJNZ  R7,$
                   DJNZ  R6,Q02E1
                   MOV   0C2H,#0A5H                        ;清看门狗
                   MOV   0C3H,#5AH
                   RET
;===========================================
Q02EE:             MOV   R5,#1EH            ;长延时
Q02F0:             LCALL Q02DF
                   DJNZ  R5,Q02F0
                   RET
;===========================================
Q02F6:             MOV   0C2H,#0A5H                        ;清看门狗
                   MOV   0C3H,#5AH
                   RET
;===========================================
                   End

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -