lcdmodule.asm

来自「液晶显示模块驱动程序原创更容易理解更有参考意义」· 汇编 代码 · 共 76 行

ASM
76
字号
RS  EQU  P3.7
RW  EQU  P3.6
E   EQU  P3.5
PORT    EQU  P1
COUNTER EQU  31H
 
 ORG 0000H
 AJMP  MAIN
 ORG 0050H
MAIN: MOV SP,#60H
      CALL INITIAL
      MOV  A,#10000000B
      CALL INSTRUCT
      MOV DPTR,#TABLE
      CALL DISPLAY
      LJMP  MAIN
INITIAL:
        MOV A,#00111100B   ;function set one line,display on
        CALL INSTRUCT
        MOV A,#00001111B   ;display on/off set
        CALL INSTRUCT
        MOV A,#00000001B  ;display clear
        CALL INSTRUCT
        MOV A,#00000111B  ; entry mode set
        CALL INSTRUCT
            
        RET
INSTRUCT:CALL BUSY
         CLR RS
         CLR RW
         SETB E
         MOV PORT,A
         CLR  E
         RET
DISPLAY: PUSH ACC
         CALL BUSY
         SETB RS
         CLR RW
         SETB E
         MOV A,#00H
         MOVC A,@A+DPTR
         JZ  END_PR
         CALL W_DATA
         INC DPTR
         JMP DISPLAY
END_PR:  POP ACC
         RET
         
         RET
W_DATA: 
         CALL BUSY
         SETB RS
         CLR RW
         SETB E
         MOV PORT,A
         CLR E
         RET
DELAY:  MOV R7,#0FFH
        MOV R6,#0FFH
DELAY1: DJNZ R6,DELAY1
        DJNZ R7,DELAY1
        RET
BUSY:    PUSH ACC
         CLR RS
         SETB RW
         SETB E
         MOV A,PORT
         JB  ACC.7,BUSY
         POP ACC
         RET
TABLE: DB "LCD PANNEL",00H
      
       
       END
         
         

⌨️ 快捷键说明

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