📄 lpc936
字号:
MOV R0,#E2P_4
PGM_USERB:
MOV FMCON,#LOAD ;;装载命令,清除页寄存器
MOV FMADRH,R5 ; ;写入高地址
MOV FMADRL,R4 ;;写入低地址
LOAD_PAGE:
MOV FMDATA,@R0 ;;数据写入页寄存器
INC R0 ;;指向下一个字节
DJNZ R2,LOAD_PAGE ; ;一直操作直至编程字节数为零
PGM_U2:
MOV FMCON,#EP ; ;否则擦除和编程页
MOV R0,FMCON ;;备份返回的状态
MOV A,R0 ;;读状态
ANL A,#0FH ;;保存低四位
JNZ BAD ;;
CLR C ;;如果操作无误,清除错误标志
RET ;;返回
BAD:
SETB C ;;设置错误标志
RET ;;返回
;**************************
LJMP ERR
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
IBOE:
RETI
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
E2P_XL:
MOV A,@R0
MOV R0,#E2P_4
MOV @R0,A
MOV R2,#1
MOV R4,#LOW(E2PC)
MOV R5,#HIGH(E2PC)
ACALL PGM_USERB
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
START:
MOV R7,#10
ST1:
MOV IEn0,#0
MOV SP,#0e2H
MOV A,PCON
CLR ACC.5
CLR ACC.4
MOV PCON,A
ORL PCONA,#0bfH
;;;;;;;;;;;;;;;;;;;;;;;;;;
MOV WDL,#0250
MOV A,WDCON
ANL A,#1FH
MOV WDCON,A
MOV WFEED1,#0A5H
MOV WFEED2,#05AH
;;;;;;;;;;;;;;;;;;;;;;;;;;;;
MOV A,RSTSRC
anl a,#3fh
cjne a,#30h,ST4
ANL RSTSRC,#0c0H
sjmp st2
st4:
SETB F0
ANL RSTSRC,#0c0H
SJMP ST3
st2:
DJNZ R6,$
LCALL CLRWDT
DJNZ R7,ST2
LCALL IOINIT
LCALL INTLCD
SETB F0
ST3:
LCALL RAMINIT
LCALL INTGXP ;E2PROM数据恢复
LCALL IOINIT
MOV 62H,#10
MOV IEN1,#0 ;|---|EST| - | - | - |EC |EKBI|EI2C|
MOV IEN0,#0A8h ;#0A8H
MOV IP0,#022H
MOV IP0H,#020H
lcall RE2PROM1
LCALL TMINIT
LCALL DELAY
LCALL DELAY
LCALL DELAY
LCALL DELAY
LCALL DELAY
LCALL DELAY
LCALL DELAY
LCALL DELAY
LCALL LCDSETUP
MOV A,#1
LCALL LCDW_COM
MOV R7,#20
LCALL DELAY ;显示初始化
LCALL DELAY
LCALL DELAY
LCALL DELAY
SETB LCDE
ST7:
mov r0,#tmrh
mov a,@r0
anl a,#03h
jnz st9
mov a,#01h
clr c
subb a,tmrl
jc st9
clr l_ret
sjmp st8
st9:
setb l_ret
st8:
MOV A,PCON
SETB ACC.0
CLR ACC.1
MOV PCON,A ;进入空闲模式
LCALL IOINIT
SETB P1.5
SJMP ST7
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
mov a,4eh
mov b,42h
inc a
inc b
mul ab
dec a
mov dptr,#TABSPEED
CLR C
RLC A
JNC SSS0
INC DPH
SSS0:
ADD A,DPL
MOV DPL,A
CLR A
ADDC A,DPH
MOV DPH,A
CLR A
movc a,@a+dptr
mov r3,a
CLR A
INC DPTR
movc a,@a+dptr
CPL A
ADD A,#1
MOV R2,A
MOV A,R3
CPL A
ADDC A,#0
clr ea
mov 49h,R2
mov 48h,A
setb ea
ret
;;;;;;;;;;;;;;;;;;;;;;;;;
SPEED:
mov a,42h
xrl a,43h
mov r4,#0
jz speed0
MOV R2,#0
MOV R3,43H
MOV R4,42h
MOV R7,#5
LCALL NDIV31 ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
speed0:
MOV A,R4
MOV B,#3
MUL AB
MOV DPTR,#TABSPEED
ADD A,DPL
MOV DPL,A
MOV A,DPH
ADDC A,B
MOV DPH,A
CLR A
MOVC A,@A+DPTR
MOV 4BH,A
INC DPTR
CLR A
MOVC A,@A+DPTR
MOV 4CH,A
INC DPTR
CLR A
MOVC A,@A+DPTR
MOV 4DH,A
MOV R2,4BH
MOV R3,4CH
MOV R4,4DH
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
speedaaa:
mov r7,4eh
inc R7
LCALL NDIV31
mov a,r2
jz speed1
;mov r3,#0
;mov r4,#0
speed1:
clr a
clr c
subb a,r4
mov r4,a
clr a
subb a,r3
clr ea
MOV 48H,A
MOV 49H,R4
setb ea
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;
RE2PROM:
anl deecon,#0eh
clr ea
mov deeadr,#0
setb ea
RE2PROM0:
mov a,deecon
jnb acc.7,RE2PROM0
mov a,deedat
ret
RE2PROM1:
lcall RE2PROM
mov 4eh,a
MOV A,#15
CJNE A,4EH,INaa0
INaa0:
JNC INaa1
MOV 4EH,#15
lcall we2prom
INaa1:
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
WE2PROM:
mov a,deecon
jnb acc.7,WE2PROM
anl deecon,#0eh
clr ea
mov deedat,4eh
mov deeadr,#0h
setb ea
RET
;**************************
T00: ;各轴进给定时器
PUSH PSW
PUSH ACC
SETB RS0
clr rs1
MOV A,R0
PUSH ACC
;mov th0,#0fdh
;mov tl0,#01FH
Mov th0,48h
mov tl0,49h
; MOV R0,#0A1H
; MOV TL0,@R0
; DEC R0
; MOV TH0,@R0
JNB PUSDIV,T00A
; anl p0,#9fh
clr dir1
clr pus1
LJMP T0A20
T00A:
JNB C1G,T0A11
MOV C,C1DIR
LCALL DIRPUS1
T0A13:
MOV R0,#G1X
MOV F0,C
MOV C,X1DIR
LCALL INDE
MOV X1DIR,C
SJMP T0A20
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
T0A11:
JNB G1ING,T0A20
MOV A,G1PING
ORL A,G1PING+1
ORL A,G1PING+2
JNZ T0A12
CLR G1ING ;进给完毕,清除进给标志G1ING
SJMP T0A20
T0A12:
MOV C,G1DIR
LCALL DIRPUS1
MOV R0,#G1PING
LCALL DEC1
MOV C,G1DIR ;G1DIR:点动进给方向
SJMP T0A13
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
T0A20:
CPL PUSDIV
; ACALL SAVERAM
POP ACC
MOV R0,A
POP ACC
POP PSW
RETI ;;;;;;;;78个时钟周期
LJMP ERR
;单字节无符号数乘法程序 (R3R4*R7)=(R2R3R4)
;入口 :R3,R4,R7
;占用资源:ACC,B
;堆栈需求:2字节
;出口 :R2,R3,R4
NMUL21 :MOV A,R4
MOV B,R7
MUL AB
MOV R4,A
MOV A,B
XCH A,R3
MOV B,R7
MUL AB
ADD A,R3
MOV R3,A
CLR A
ADDC A,B
MOV R2,A
CLR OV
RET
;单字节无符号除法程序 (R2R3R4/R7)=(R2)R3R4 余数R7
;入口 :R2,R3,R4,R7
;占用资源:ACC,B,F0
;堆栈需求:3字节
;出口 :(R2),R3,R4,R7,OV
NDIV31 :MOV A,R2
MOV B,R7
DIV AB
PUSH Acc
MOV R2,B
MOV B,#10H
NDV311 :CLR C
MOV A,R4
RLC A
MOV R4,A
MOV A,R3
RLC A
MOV R3,A
MOV A,R2
RLC A
MOV R2,A
MOV F0,C
CLR C
SUBB A,R7
JB F0,NDV312
JC NDV313
NDV312 :MOV R2,A
INC R4
NDV313 :DJNZ B,NDV311
POP Acc
CLR OV
JZ NDV314
SETB OV
NDV314 :XCH A,R2
MOV R7,A
RET
ORG 3800H
TABSPEED:
DB 1bh,00,00
DB 1BH,0,0
DB 0DH,80H,0
DB 09,0,0
DB 6,0C0H,0
DB 5,66H,66H
DB 4,80H,0
DB 3,0DBH,6DH
DB 3,60H,0
DB 3,0,0
DB 2,0B3H,33H
DB 2,74H,5DH
DB 2,40H,0
DB 2,13H,0B1H
DB 1,0EDH,0B6H
DB 1,0CCH,0CCH
;1
DB 1,0B0H,0
DB 1,96H,96H
DB 1,80H,0
DB 1,6BH,0CAH
DB 1,59H,99H
DB 1,49H,24H
DB 1,3AH,2EH
DB 1,2CH,85H
DB 1,20H,0
DB 1,14H,7AH
DB 1,9,0D8H
DB 1, 0,0
DB 0,0F6H,0DBH
DB 0, 0EEH,58H
DB 0, 0E6H,066H
DB 0,0DEH,0F7H
;2
DB 0,0D8H,0
DB 0, 0D1H,74H
DB 0, 0CBH,4BH
DB 0, 0C5H,7CH
DB 0, 0C0H,0
DB 0, 0BAH,0CFH
DB 0, 0B5H,0E5H
DB 0, 0B1H,3BH
DB 0, 0ACH,0CCH
DB 0, 0A8H,95H
DB 0, 0A4H,92H
DB 0, 0A0H,0BEH
DB 0, 9DH,17H
DB 0, 99H,99H
DB 0, 96H,42H
DB 0, 93H,10H
;3
DB 0,90H,0
DB 0, 8DH,0FH
DB 0, 8AH,3DH
DB 0, 87H,87H
DB 0, 84H,0ECH
DB 0,82H,6AH
DB 0, 80H,0
DB 0, 7DH,0ACH
DB 0, 7BH,6DH
DB 0, 79H,43H
DB 0, 77H,2CH
DB 0, 75H,27H
DB 0, 73H,33H
DB 0, 71H,4FH
DB 0, 6FH,7BH
DB 0, 6DH,0B6H
;4
DB 0, 6CH,0
DB 0, 6AH,56H
DB 0, 68H,0BAH
DB 0, 67H,2AH
DB 0, 65H,0A5H
DB 0, 64H,2CH
DB 0, 62H,0BEH
DB 0, 61H,5AH
DB 0, 60H,0
DB 0, 5EH,0AFH
DB 0, 5DH,67H
DB 0, 5CH,28H
DB 0, 5AH,0F2H
DB 0, 59H,0C4H
DB 0, 58H,9DH
DB 0, 57H,7EH
;5
DB 0, 56H,66H
DB 0, 55H,55H
DB 0, 54H,4AH
DB 0, 53H,46H
DB 0, 52H,49H
DB 0, 51H,51H
DB 0, 50H,5FH
DB 0, 4FH,72H
DB 0, 4EH,8BH
DB 0, 4DH,0A9H
DB 0, 4CH,0CCH
DB 0, 4BH,0F4H
DB 0, 4BH,21H
DB 0, 4AH,52H
DB 0, 49H,88H
DB 0, 48H,0C2H
;6
DB 0,48H,0
DB 0,47h,41h
DB 0,46H,87H
DB 0,45H,0D1H
DB 0, 45H,1EH
DB 0, 44H,6FH
DB 0,43H,0C3H
DB 0,43H,1BH
DB 0,42H,76H
DB 0,41H,0D4H
DB 0,41H,35H
DB 0,40H,99H
DB 0,40H,0
DB 0,3FH,69H
DB 0,3EH,0D6H
DB 0,3EH,45H
;7
DB 0,3DH,0B6H
DB 0,3DH,2BH
DB 0, 3CH,0A1H
DB 0, 3CH,1AH
DB 0, 3BH,96H
DB 0, 3BH,13H
DB 0, 3AH,93H
DB 0, 3AH,15H
DB 0, 39H,99H
DB 0, 39H,1FH
DB 0, 38H,0A7H
DB 0, 38H,31H
DB 0, 37H,0BDH
DB 0, 37H,4BH
DB 0, 36H,0DBH
DB 0, 36H,6CH
;8
DB 0, 36H,00H
DB 0, 35H,94H
DB 0, 35H,2BH
DB 0, 34H,0C3H
DB 0, 34H,5DH
DB 0, 33H,0F8H
DB 0, 33H,95H
DB 0, 33H,33H
DB 0, 32H,0D2H
DB 0, 32H,73H
DB 0, 32H,16H
DB 0, 31H,0BAH
DB 0, 31H,5FH
DB 0, 31H,05H
DB 0, 30H,0ADH
DB 0, 30H,55H
;9
DB 0,30H,0
DB 0, 2FH,0ABH
DB 0, 2FH,57H
DB 0, 2FH,05H
DB 0, 2EH,0B3H
DB 0, 2EH,63H
DB 0, 2EH,14H
DB 0, 2DH,0C6H
DB 0, 2DH,79H
DB 0, 2DH,2DH
DB 0, 2CH,0E2H
DB 0, 2CH,97H
DB 0, 2CH,4EH
DB 0, 2CH,06H
DB 0, 2BH,0BFH
DB 0, 2BH,78H
;A
DB 0,2BH,33H
DB 0, 2AH,0EEH
DB 0, 2AH,0AAH
DB 0, 2AH,67H
DB 0, 2AH,25H
DB 0, 29H,0E4H
DB 0, 29H,0A3H
DB 0, 29H,63H
DB 0, 29H,24H
DB 0, 28H,0E6H
DB 0, 28H,0A8H
DB 0, 28H,6BH
DB 0, 28H,2FH
DB 0, 27H,0F4H
DB 0, 27H,0B9H
DB 0, 27H,7FH
;B
DB 0,27H,45H
DB 0,27H,0DH
DB 0,26H,0D4H
DB 0,26H,9DH
DB 0, 26H,66H
DB 0, 26H,30H
DB 0, 25H,0FAH
DB 0, 25H,0C5H
DB 0, 25H,90H
DB 0, 25H,5CH
DB 0, 25H,29H
DB 0, 24H,0F6H
DB 0, 24H,0C4H
DB 0,24H,92H
DB 0, 24H,61H
DB 0, 24H,30H
;C
DB 0,24H,0
DB 0,23H,0D0H
DB 0,23H,0A0H
DB 0, 23H,72H
DB 0, 23H,43H
DB 0, 23H,16H
DB 0, 22H,0E8H
DB 0,22H,0BBH
DB 0,22H,8FH
DB 0,22H,63H
DB 0,22H,37H
DB 0,22H,0CH
DB 0,21H,0E1H
DB 0,21H,0B7H
DB 0,21H,8DH
DB 0,21H,64H
;D
DB 0,21H,3BH
DB 0,21H,12H
DB 0,20H,0EAH
DB 0,20H,0C2H
DB 0,20H,9AH
DB 0, 20H,73H
DB 0,20H,4CH
DB 0,20H,26H
DB 0, 20H,0
DB 0, 1FH,0DAH
DB 0, 1FH,0B4H
DB 0, 1FH,8FH
DB 0, 1FH,6BH
DB 0, 1FH,46H
DB 0, 1FH,22H
DB 0,1EH,0FEH
;E
DB 0,1EH,0DBH
DB 0,1EH,0B8H
DB 0, 1EH,95H
DB 0, 1EH,73H
DB 0, 1EH,50H
DB 0, 1EH,2EH
DB 0, 1EH,0DH
DB 0, 1DH,0ECH
DB 0, 1DH,0CBH
DB 0, 1DH,0AAH
DB 0, 1DH,89H
DB 0, 1DH,69H
DB 0, 1DH,49H
DB 0, 1DH,2AH
DB 0, 1DH,0AH
DB 0, 1CH,0EBH
;F
DB 0,1CH,0CCH
DB 0,1CH, 0AEH
DB 0,1CH,8FH
DB 0,1CH, 71H
DB 0,1CH, 53H
DB 0,1CH, 36H
DB 0,1CH, 18H
DB 0,1BH,0FBH
DB 0,1BH, 0DEH
DB 0,1BH,0C2H
DB 0,1BH,0A5H
DB 0,1BH, 89H
DB 0,1BH, 6DH
DB 0,1BH, 51H
DB 0,1BH, 36H
DB 0,1BH, 1BH
;ORG 0C00H
TAB0: DB ' -- 岩祺科技 -- '
TAB1: DB ' 联系电话 '
TAB2: DB ' 131,0011,6660 '
TAB3: DB ' 139,3515,5175 '
TAB4: DB '0123456789ABCDEF'
TAB5: DB '进刀量'
DB '反间隙'
DB '左侧:'
DB '右侧:'
TAB6: DB 011H,033H,077H,0FFH
TABSPED:
DB ' ','1'
DB ' ','2'
DB ' ','3'
DB ' ','4'
DB ' ','5'
DB ' ','6'
DB ' ','7'
DB ' ','8'
DB ' ','9'
DB '1','0'
DB '1','1'
DB '1','2'
DB '1','3'
DB '1','4'
DB '1','5'
DB '1','6'
TAB9:DB ' ** 太原一机 ** '
TAB8:DB ' *小蓉工作室* '
TAB10:DB '太原第一机床厂 '
tab11:db '急停限位'
TAB12:DB ' 专注的力量 '
TAB13:DB ' 成就梦想! '
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -