www.pudn.com > My_LCD_Driver.rar > LCD_DRIVER_IO.ASM
$NOMOD51
COM_ADDR equ 0x7000
DAT_ADDR equ 0x3000
LCD_CS equ p2.7
LCD_A0 equ P2.6
LCD_RES equ P1.0
LCD_WR equ P3.6
LCD_RD equ P3.7
$include (REG51.INC)
;proc segment code
NAME LCD_asm
?PR?LCD_COM_W?LCD_asm segment code
; ?PR?LCD_Data_W?LCD_asm segment code
; ?PR?MCD_Data_W?LCD_asm segment code
rseg ?PR?LCD_COM_W?LCD_asm
public LCD_COM_W
public LCD_Data_W
public MCD_DT_R
LCD_COM_W:
push acc
push psw
setb LCD_CS
setb LCD_A0
setb LCD_WR
setb LCD_RD
clr LCD_CS
clr LCD_WR
mov acc,r7
mov P0,acc
nop
setb LCD_WR
setb LCD_CS
pop psw
pop acc
ret
LCD_Data_W:
push acc
push psw
clr LCD_A0
clr LCD_CS
clr LCD_WR
mov acc,r7
mov P0,acc
nop
setb LCD_WR
setb LCD_A0
setb LCD_CS
pop psw
pop acc
ret
MCD_DT_R:
push acc
push psw
clr LCD_A0
clr LCD_CS
clr LCD_RD
nop
setb LCD_RD
mov acc,P0
; mov r7,acc
setb LCD_A0
setb LCD_CS
pop psw
pop acc
ret
end