?? 1602lcd_gd.asm
字號:
NOP
NOP
CLR LCD_EN
RET
;***************************************************************
; 發送字符串子程序
;***************************************************************
WRITE1:
MOV R0,#16
WRITE0:
CLR A
MOVC A,@A+DPTR
INC DPTR
ACALL LCD_WDATA
CALL DELAY ;加延時形成滾動效果
DJNZ R0,WRITE0
RET
;***************************************************************
;寫顯示數據到LCD
;RS=H,RW=L,D0-D7=數據,E=高脈沖
;***************************************************************
LCD_WDATA:
ACALL CHECKBUSY
SETB LCD_RS
CLR LCD_RW
MOV P0,A
SETB LCD_EN
NOP
NOP
NOP
NOP
CLR LCD_EN
RET
;***************************************************************
;檢測LCD控制器忙狀態
;讀數據
;RS=L,RW=H,E=H,輸出:D0-D7=數據
;***************************************************************
CHECKBUSY:
PUSH ACC
MOV P0,#0FFH
CLR LCD_RS
SETB LCD_RW
SETB LCD_EN
BUSYLOOP:
NOP
JB P0.7,BUSYLOOP
CLR LCD_EN
POP ACC
RET
;***************************************************************
;閃爍子程序
;***************************************************************
SHAN:
MOV A,#08H ;關閉顯示
ACALL LCD_CMD
ACALL DELAY4
MOV A,#0CH ;開顯示,關閉光標
ACALL LCD_CMD
ACALL DELAY4
DJNZ R4,SHAN
MOV R4,#02H ;設置閃爍次數
RET
;***************************************************************
;延時120MS子程序
;發送字符串時使用
;***************************************************************
DELAY:
MOV R7,#240
DL1: MOV R6,#250
DL2: DJNZ R6,DL2
DJNZ R7,DL1
RET
;***************************************************************
;延時800MS子程序
;閃爍時使用
;***************************************************************
DELAY4:
MOV R0,#40
DL3: MOV R1,#100
DL4: MOV R2,#100
DL5: DJNZ R2,DL5
DJNZ R1,DL4
DJNZ R0,DL3
RET
;***************************************************************
;延時5MS子程序
;LCD初始化使用
;***************************************************************
DELAY5MS:
MOV R1,#10
DL6: MOV R2,#249
DL7: DJNZ R2,DL7
DJNZ R1,DL6
RET
;***************************************************************
;延時1MS子程序
;***************************************************************
DELAY1MS:
MOV R6,#14H ;20
DL8: MOV R7,#19H ;25
DL9: DJNZ R7,DL9
DJNZ R6,DL8
RET
;***************************************************************
CHAR1:
DB " WELCOME TO "
CHAR2:
DB " WWW.WILLAR.COM "
CHAR3:
DB " OT EMOCLEW "
CHAR4:
DB " MOC.RALLIW.WWW "
;***************************************************************
END
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -