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

📄 1602.asm

📁 普通用的激光器控制程序
💻 ASM
📖 第 1 页 / 共 2 页
字号:
        ORG 0000H
	NOP
	NOP
	NOP
	NOP
        LJMP START
	ORG 0013H
	NOP
	NOP
	NOP
	NOP
	LJMP INT2X
        ORG 0030H
START:
        LCALL DELAY
        LCALL INTTO     ;中断设置
        LCALL INIT      ;显示初始化
        LCALL RESETT    ;显示设置
	LCALL WELCOME	 ;初显
	LCALL DELAY2
	MOV 3BH,#01H
	lcall welcome
  ST:   lcall welcome
        LCALL  SELECT    ;ON OR OFF
        LCALL  WELCOME   ;WELCOME
     GG:LCALL  SWITCH    ;DISPLAY SWITCH
        LCALL  ADDTO     ;计数
        LJMP   ST

INTTO:  NOP
	MOV IE,#85H
	SETB PX1
	CLR PX0
	SETB IT0
	SETB IT1
    RET

INIT:
        CLR P1.2
        CLR P1.3
        SETB P1.4
	CLR P1.5
        MOV DPTR,#0feFFH
        MOV A,#38H
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY

        CPL P1.4
        MOV A,#38H
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY

        CPL P1.4
        MOV A,#38H
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY

        CPL P1.4
        MOV A,#38H
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY

        CPL P1.4
        MOV A,#08H
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY

        CPL P1.4
        MOV A,#01H
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY

        CPL P1.4
        MOV A,#06H
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY
    RET


RESETT: CPL P1.4
        MOV A,#01H         ;clear
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY


        CPL P1.4
        MOV A,#38H          ;FUNCTION SET
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY

        CPL P1.4
        MOV A,#0CH        ;  display set
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY

        CPL P1.4             ;input set
        MOV A,#06H
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY

        MOV R3,#00H
	NOP
	NOP
	NOP
	NOP
	CLR P1.5
	CLR P1.5
        MOV R2,#09H
	MOV 3BH,#01H
	MOV 3CH,#88H
	CLR P1.5
    RET


SELECT: lcall welcome
        MOV A,R3          ;R3显示开关标志位 00H=关   01H=开
        CJNE A,#00H,GOTO
	SETB P1.5
	CLR P1.2
        CLR P1.3
        SETB P1.4
        MOV DPTR,#0feFFH
        MOV A,#02H
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY

	;CPL P1.4
        ;MOV A,#01H         ;无触发显示/不显示
        ;MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY
        lcall welcome
        LJMP SELECT
  GOTO: NOP
        RET

WELCOME:
	MOV A,3BH
	CJNE A,#01H,FOR1
        CLR P1.2
        CLR P1.3
        SETB P1.4
        LCALL WELCOME1
        LCALL WELCOME2
        LCALL DELAY1
	MOV 3BH,#00H
  FOR1: NOP
    RET



 WELCOME2:
        CLR P1.2
        SETB  P1.4
        MOV A,#0C0H                 ;ADDRESS
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY
         SETB P1.2
        MOV A,#20H                ;
        LCALL JUMP
        MOV A,#20H                ;
        LCALL JUMP
        MOV A,#20H                ;
        LCALL JUMP
        MOV A,#20H                ;B
        LCALL JUMP
        MOV A,#42H                ;E
        LCALL JUMP
        MOV A,#45H                ;S
        LCALL JUMP
        MOV A,#53H                ;T
        LCALL JUMP
        MOV A,#54H                ;-
        LCALL JUMP
        MOV A,#45H                ;-
        LCALL JUMP
        MOV A,#44H                ;E
        LCALL JUMP
        MOV A,#46H               ; D
        LCALL JUMP
        MOV A,#41H               ; F
        LCALL JUMP
        MOV A,#20H               ; A
        LCALL JUMP
        MOV A,#20H               ;
        LCALL JUMP
        MOV A,#20H                ;
        LCALL JUMP
        MOV A,#20H                ;
        LCALL JUMP

        RET
 WELCOME1:
        SETB P1.4
        MOV A,#10000000B        ;DDRAM ADDRESS
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY
         SETB P1.2
        MOV A,#20H                ;
        LCALL JUMP
        MOV A,#20H                ;
        LCALL JUMP
        MOV A,#45H                ;E
        LCALL JUMP
        MOV A,#44H                ;D
        LCALL JUMP
        MOV A,#46H                ;F
        LCALL JUMP
        MOV A,#41H                ;A
        LCALL JUMP
        MOV A,#20H                ;-
        LCALL JUMP
        MOV A,#20H                ;-
        LCALL JUMP
        MOV A,#32H                ;1
        LCALL JUMP
        MOV A,#31H                ;8
        LCALL JUMP
        MOV A,#64H               ; d
        LCALL JUMP
        MOV A,#42H               ; B
        LCALL JUMP
        MOV A,#6DH              ; M
        LCALL JUMP
        MOV A,#20H               ;
        LCALL JUMP
        MOV A,#20H                ;
        LCALL JUMP
        MOV A,#20H                ;
        LCALL JUMP

        RET



POWER1:
        CLR P1.2
        SETB P1.4
	MOV DPTR,#0feFFH
        MOV A,#10000000B        ;DDRAM ADDRESS
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY
        SETB P1.2
        MOV A,#20H                ;
        LCALL JUMP
        MOV A,#20H                ;
        LCALL JUMP
        MOV A,#45H                ;E
        LCALL JUMP
        MOV A,#44H                ;D
        LCALL JUMP
        MOV A,#46H                ;F
        LCALL JUMP
        MOV A,#41H                ;A
        LCALL JUMP
        MOV A,#20H                ;-
        LCALL JUMP
        MOV A,#20H                ;-
        LCALL JUMP
        MOV A,#32H                ;1
        LCALL JUMP
        MOV A,#31H                ;8
        LCALL JUMP
        MOV A,#64H               ; D
        LCALL JUMP
        MOV A,#42H               ; B
        LCALL JUMP
        MOV A,#6DH              ; M
        LCALL JUMP
        MOV A,#20H               ;
        LCALL JUMP
        MOV A,#20H                ;
        LCALL JUMP
        MOV A,#20H                ;
        LCALL JUMP

        RET
OMD2:
        CLR P1.2
        SETB  P1.4
        MOV A,#0C0H                 ;ADDRESS
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY
       SETB P1.2
        MOV A,#20H
        LCALL JUMP
        MOV A,#20H
        LCALL JUMP
        MOV A,#53H                ;S
        LCALL JUMP
        MOV A,#2FH                ;/
        LCALL JUMP
        MOV A,#4EH                ;N
        LCALL JUMP
        MOV A,#3AH                ;:
        LCALL JUMP
        MOV A,#30H                ;0
        LCALL JUMP
        MOV A,#38H                ;2
        LCALL JUMP
        MOV A,#30H                 ;0
        LCALL JUMP
        MOV A,#35H                 ;3
        LCALL JUMP
        MOV A,#32H                 ;0
        LCALL JUMP
        MOV A,#32H                 ;5
        LCALL JUMP
        MOV A,#30H                 ;0
        LCALL JUMP
        MOV A,#38H                 ;1
        LCALL JUMP
        MOV A,#20H
        LCALL JUMP
        MOV A,#20H
        LCALL JUMP
        RET

 JUMP:
	SETB P1.4
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY
        RET

SWITCH:
X1:     CJNE R2,#08H,X2		;R2=8,POWER输出
        MOV DPTR,#7FF8H

        MOV R0,#40H		;
        MOV R5,#05H
        LCALL ADC0809
        MOV 45H,#00H
        MOV 46H,#00H
        MOV R5,#04H

        MOV A,40H
        MOV R0,#41H
  JX1:  CLR C
        ADD A,@R0
        MOV 45H,A
        INC R0
        JNC JE1
        INC 46H
  JE1:  DJNZ R5,JX1
        LCALL DONE1
        LCALL POWER1
        LCALL POWER2
        LJMP OUT1

X2:
        CJNE R2,#07H,X3
        MOV DPTR,#7FFCH
	MOV R0,#48H
	MOV R5,#05H
        LCALL ADC0809
	MOV 4DH,#00H
	MOV 4EH,#00H
	MOV R5,#04H
	MOV A,48H
	MOV R0,#49H
   JX2: CLR C
	ADD A,@R0
	MOV 4DH,A
	INC R0
	JNC JE2
	INC 4EH
   JE2: DJNZ R5,JX2
        LCALL DONE1
        LCALL POWER0
        LCALL DONE2
        LCALL V242
        LJMP OUT1

  X3:   CJNE R2,#06H,X4
        MOV DPTR,#7FFAH
	MOV R0,#50H
	MOV R5,#05H
        LCALL ADC0809
	MOV 55H,#00H
	MOV 56H,#00H
	MOV R5,#04H
	MOV A,50H
	MOV R0,#51H
   JX3: CLR C
	ADD A,@R0
	MOV 55H,A
	INC R0
	JNC JE3
	INC 56H
   JE3: DJNZ R5,JX3
        LCALL DONE2
        LCALL V241
        LCALL DONE3
        LCALL V52
        LJMP OUT1

X4:     CJNE R2,#05H,X5
        MOV DPTR,#7FFEH
	MOV R0,#58H		;
        MOV R5,#05H
        LCALL ADC0809
	MOV 5DH,#00H
        MOV 5EH,#00H
        MOV R5,#04H
        MOV A,58H
        MOV R0,#59H
  JX4:  CLR C
        ADD A,@R0
        MOV 5DH,A
        INC R0
        JNC JE4
        INC 5EH
  JE4:  DJNZ R5,JX4
        LCALL DONE3
        LCALL V51
        LCALL DONE4
        LCALL V5X2
        LJMP OUT1

X5:     CJNE R2,#04H,X6
        MOV DPTR,#7FFDH
	MOV R0,#60H		;
        MOV R5,#05H
        LCALL ADC0809
	MOV 65H,#00H
        MOV 66H,#00H
        MOV R5,#04H
        MOV A,60H
        MOV R0,#61H
  JX5:  CLR C
        ADD A,@R0
        MOV 65H,A
        INC R0
        JNC JE5
        INC 66H
  JE5:  DJNZ R5,JX5
        LCALL DONE4
        LCALL V5X1
        LCALL DONE5
        LCALL TEMP2
        LJMP OUT1

X6:     CJNE R2,#03H,X7
        MOV DPTR,#7FF9H
	MOV R0,#68H		;
        MOV R5,#05H
        LCALL ADC0809
	MOV 6DH,#00H
        MOV 6EH,#00H
        MOV R5,#04H
        MOV A,68H
        MOV R0,#69H
  JX6:  CLR C
        ADD A,@R0
        MOV 6DH,A
        INC R0
        JNC JE6
        INC 6EH
  JE6:  DJNZ R5,JX6
        LCALL DONE5
        LCALL TEMP1
        LCALL DONE6
        LCALL BIAS2
        LJMP OUT1

X7:   CJNE R2,#02H,X8
        MOV DPTR,#7FFBH
	MOV R0,#70H		;
        MOV R5,#05H
        LCALL ADC0809
	MOV 75H,#00H
        MOV 76H,#00H
        MOV R5,#04H
        MOV A,70H
        MOV R0,#71H
  JX7:  CLR C
        ADD A,@R0
        MOV 75H,A
        INC R0
        JNC JE7
        INC 76H
  JE7:  DJNZ R5,JX7
        LCALL DONE6
        LCALL BIAS1
        LCALL DONE7
        LCALL TEC2
        LJMP OUT1
X8:
        MOV DPTR,#7FFFH
	MOV R0,#78H		;
        MOV R5,#05H
        LCALL ADC0809
	MOV 7DH,#00H
        MOV 7EH,#00H
        MOV R5,#04H
        MOV A,78H
        MOV R0,#79H
  JX8:  CLR C
        ADD A,@R0
        MOV 7DH,A
        INC R0
        JNC JE8
        INC 7EH
  JE8:  DJNZ R5,JX8
        LCALL DONE7
        LCALL TEC1
        LCALL DONE8
        LCALL OMD2
   OUT1:NOP
     RET

 ADC0809:
        CLR P1.4
        MOVX @DPTR,A
        LCALL TIME
        MOVX A,@DPTR
        MOV @R0,A
        INC R0
        DJNZ R5,ADC0809
     RET
 POWER0:
        CLR P1.2
        SETB P1.4
	MOV DPTR,#0feFFH
        MOV A,#10000000B        ;DDRAM ADDRESS
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY
        SETB P1.2
        MOV A,#50H		;P
        LCALL JUMP
        MOV A,#6FH		;O
        LCALL JUMP
        MOV A,#77H		;W
        LCALL JUMP
        MOV A,#20H		;E
        LCALL JUMP
        MOV A,#20H		;
        LCALL JUMP
        MOV A,#52H		;R
        LCALL JUMP
        MOV A,#65H		;E
        LCALL JUMP
        MOV A,#61H		;A
        LCALL JUMP
        MOV A,#64H		;D
        LCALL JUMP
        MOV A,#20H		;
        LCALL JUMP
	MOV R0,#3DH
        MOV A,#3FH		;47H
	XCHD A,@R0
        LCALL JUMP
	INC R0
	MOV A,#3FH
	XCHD A,@R0
        LCALL JUMP
        MOV A,#2EH		;.
        LCALL JUMP
	INC R0
	CLR C
        MOV A,#3FH		;
	XCHD A,@R0
        LCALL JUMP
        MOV A,#64H		;D
        LCALL JUMP
        MOV A,#42H		;B
        LCALL JUMP

      RET


POWER2:
        CLR P1.2
        SETB  P1.4
        MOV A,#0C0H                 ;ADDRESS
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY
          SETB P1.2
        MOV A,#50H		;P
        LCALL JUMP
        MOV A,#6FH		;O
        LCALL JUMP
        MOV A,#77H		;W
        LCALL JUMP
        MOV A,#20H		;E
        LCALL JUMP
        MOV A,#20H		;
        LCALL JUMP
        MOV A,#52H		;R
        LCALL JUMP
        MOV A,#65H		;E
        LCALL JUMP
        MOV A,#61H		;A
        LCALL JUMP
        MOV A,#64H		;D
        LCALL JUMP
        MOV A,#20H		;
        LCALL JUMP
	MOV R0,#3DH
        MOV A,#3FH		;47H
	XCHD A,@R0
        LCALL JUMP
	INC R0
	MOV A,#3FH
	XCHD A,@R0
        LCALL JUMP
        MOV A,#2EH		;.
        LCALL JUMP
	INC R0
	CLR C
        MOV A,#3FH		;
	XCHD A,@R0
        LCALL JUMP
        MOV A,#64H		;D
        LCALL JUMP
        MOV A,#42H		;B
        LCALL JUMP

      RET


 V241:
	CLR P1.2
        SETB P1.4
	MOV DPTR,#0feFFH
        MOV A,#10000000B        ;DDRAM ADDRESS
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY

        SETB P1.2
        MOV A,#31H		;1
        LCALL JUMP
        MOV A,#32H		;2
        LCALL JUMP
        MOV A,#56H		;V
        LCALL JUMP
        MOV A,#20H		;
        LCALL JUMP
        MOV A,#20H		;
        LCALL JUMP
        MOV A,#52H		;R
        LCALL JUMP
        MOV A,#65H		;E
        LCALL JUMP
        MOV A,#61H		;A
        LCALL JUMP
        MOV A,#64H		;D
        LCALL JUMP
        MOV A,#20H		;
        LCALL JUMP
	MOV R0,#3DH
        MOV A,#3FH		;4FH
	XCHD A,@R0
        LCALL JUMP
	INC R0
	MOV A,#3FH
	XCHD A,@R0
        LCALL JUMP
        MOV A,#2EH		;.
        LCALL JUMP
	INC R0
        MOV A,#3FH		;
	XCHD A,@R0
        LCALL JUMP
        MOV A,#56H		;V
        LCALL JUMP
        MOV A,#20H		;
        LCALL JUMP
      RET
V242:
        CLR P1.2
        SETB  P1.4
        MOV A,#0C0H                 ;ADDRESS
        MOVX @DPTR,A
        CPL P1.4
        LCALL DELAY
        SETB P1.2
        MOV A,#31H		;1
        LCALL JUMP

⌨️ 快捷键说明

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