lcdclr.asm

来自「lcd19264显示的驱动程序。采用KEIL C51编写。」· 汇编 代码 · 共 152 行

ASM
152
字号
;; Clear lcd screen

FA   EQU 20H
FB   EQU 21H
LAB  EQU 22H
PAGE1 EQU 72H


PROG SEGMENT CODE
           public LcdCLR

           CSEG AT 0
           USING 0 ; Register-Bank 0

           RSEG PROG

LcdCLR:
      MOV    R3,#8
      MOV    R1,#0B8H 
CLR0: MOV    A,R1
      mov    R0,A
      CALL   OUTI1
      mov    R0,#40h
      CALL   OUTI1
      MOV    R2,#40H
LP1:  MOV    R0,#0
      CALL   OUTD1
      DJNZ   R2,LP1
      INC    R1
      DJNZ   R3,CLR0
      
      MOV    R3,#8
      MOV    R1,#0B8H 
CLR1: MOV    A,R1
      mov    R0,A
      CALL   OUTI2
      mov    R0,#40h
      CALL   OUTI2
      MOV    R2,#40H
LP2:  MOV    R0,#0
      CALL   OUTD2
      DJNZ   R2,LP2
      INC    R1
      DJNZ   R3,CLR1
      
      MOV    R3,#8
      MOV    R1,#0B8H 
CLR3: MOV    A,R1
      mov    R0,A
      CALL   OUTI3
      mov    R0,#40h
      CALL   OUTI3
      MOV    R2,#40H
LP3:  MOV    R0,#0
      CALL   OUTD3
      DJNZ   R2,LP3
      INC    R1
      DJNZ   R3,CLR3
    
      RET

OUTI1:
      MOV    DPTR,#6FF1H  ;;WRITE DDRAM  ADDRESS
      MOV    A,#010H      ;;E=1, RW=0, DI=0, CS2=0, CS1=0
      MOVX   @DPTR,A
      MOV    DPTR,#6FF0H
      MOV    A,R0
      MOVX   @DPTR,A
      MOV    DPTR,#6FF1H
      MOV    A,#00H
      MOVX   @DPTR,A
      MOV    DPTR,#6FF1H
      MOV    A,#03H
      MOVX   @DPTR,A
      RET
      
OUTD1:
      MOV    DPTR,#6FF1H   ;;WRITE DISPLAY DATA
      MOV    A,#014H       ;;E=1, RW=0, DI=1, CS2=0, CS1=0
      MOVX    @DPTR,A
      MOV    DPTR,#6FF0H
      MOV    A,R0
      MOVX   @DPTR,A
      MOV    DPTR,#6FF1H
      MOV    A,#04H
      MOVX   @DPTR,A
      MOV    DPTR,#6FF1H
      MOV    A,#07H
      MOVX   @DPTR,A
      RET
      
OUTI2:
      MOV    DPTR,#6FF1H    ;;WRITE DDRAM  ADDRESS
      MOV    A,#012H        ;;E=1, RW=0, DI=0, CS2=1, CS1=0
      MOVX   @DPTR,A
      MOV    DPTR,#6FF0H
      MOV    A,R0
      MOVX   @DPTR,A
      MOV    DPTR,#6FF1H
      MOV    A,#00H
      MOVX   @DPTR,A
      MOV    DPTR,#6FF1H
      MOV    A,#03H
      MOVX   @DPTR,A
      RET
OUTD2:
      MOV    DPTR,#6FF1H   ;;WRITE DISPLAY DATA
      MOV    A,#016H       ;;E=1, RW=0, DI=1, CS2=1, CS1=0
      MOVX    @DPTR,A
      MOV    DPTR,#6FF0H
      MOV    A,R0
      MOVX   @DPTR,A
      MOV    DPTR,#6FF1H
      MOV    A,#04H
      MOVX   @DPTR,A
      MOV    DPTR,#6FF1H
      MOV    A,#07H
      MOVX   @DPTR,A
      RET
      
OUTI3:
      MOV    DPTR,#6FF1H    ;;WRITE DDRAM  ADDRESS
      MOV    A,#011H        ;;E=1, RW=0, DI=0, CS2=0, CS1=1
      MOVX   @DPTR,A
      MOV    DPTR,#6FF0H
      MOV    A,R0
      MOVX   @DPTR,A
      MOV    DPTR,#6FF1H
      MOV    A,#00H
      MOVX   @DPTR,A
      MOV    DPTR,#6FF1H
      MOV    A,#03H
      MOVX   @DPTR,A
      RET
      
OUTD3:
      MOV    DPTR,#6FF1H   ;;WRITE DISPLAY DATA
      MOV    A,#015H       ;;E=1, RW=0, DI=1, CS2=0, CS1=1
      MOVX    @DPTR,A
      MOV    DPTR,#6FF0H
      MOV    A,R0
      MOVX   @DPTR,A
      MOV    DPTR,#6FF1H
      MOV    A,#04H
      MOVX   @DPTR,A
      MOV    DPTR,#6FF1H
      MOV    A,#07H
      MOVX   @DPTR,A
      RET

      end

⌨️ 快捷键说明

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