📄 lptprinterinterfaceto8951.asm
字号:
XXXX5: MOV A,#20H
MOV P0,A ;SEND Space DATA.
ACALL STROBE
MOV P0,SERIAL4 ;SEND WAP NO DATA.
ACALL STROBE
MOV P0,SERIAL5 ;SEND WAP NO DATA.
ACALL STROBE
MOV P0,SERIAL6 ;SEND WAP NO DATA.
ACALL STROBE
MOV A,#0DH
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV A,#0AH
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV A,#0AH
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV R5,#00h
MOV DPTR,#MSG6 ;SEND ALL HEADING.
PSEND5: MOV A,R5
MOVC A,@A+DPTR
CJNE A,#0FFh,KKK6
ACALL DELAYP
ACALL NEXTLINEINIT
LJMP second
KKK6: MOV P0,A
ACALL STROBE
INC R5
LJMP PSEND5
second: MOV A,#20H
MOV P0,A ;SEND SPACE DATA. 1
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 2
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 3
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 4
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 5
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 1
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 2
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 3
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 4
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 5
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 1
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 2
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 3
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 4
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 5
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 1
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 2
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 3
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 4
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 5
ACALL STROBE
MOV P0,A ;SEND SPACE DATA. 6
ACALL STROBE
MOV A,SLNO2
SWAP A
ANL A,#0FH
ADD A,#30H
MOV P0,A ;SEND SERIAL NO DATA.
ACALL STROBE
MOV A,SLNO2
ANL A,#0FH
ADD A,#30H
MOV P0,A ;SEND SERIAL NO DATA.
ACALL STROBE
MOV A,SLNO1
SWAP A
ANL A,#0FH
ADD A,#30H
MOV P0,A ;SEND SERIAL NO DATA.
ACALL STROBE
MOV A,SLNO1
ANL A,#0FH
ADD A,#30H
MOV P0,A ;SEND SERIAL NO DATA.
ACALL STROBE
MOV A,#20H
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,AVERAGE1 ;SEND AVERAGE1 DATA.
ACALL STROBE
MOV P0,AVERAGE2 ;SEND AVERAGE1 DATA.
ACALL STROBE
MOV P0,AVERAGE3 ;SEND AVERAGE1 DATA.
ACALL STROBE
MOV P0,AVERAGE4 ;SEND AVERAGE1 DATA.
ACALL STROBE
MOV P0,AVERAGE5 ;SEND AVERAGE1 DATA.
ACALL STROBE
MOV A,#20H
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,RESULT1 ;SEND RESULT DATA.
ACALL STROBE
MOV P0,RESULT2 ;SEND RESULT DATA.
ACALL STROBE
MOV P0,RESULT3 ;SEND RESULT DATA.
ACALL STROBE
MOV P0,RESULT4 ;SEND RESULT DATA.
ACALL STROBE
MOV A,#20H
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,#0DH
ACALL STROBE
MOV P0,#0AH
ACALL STROBE
MOV P0,#0AH
ACALL STROBE
RET
;---------------------------------------------------------------
SPACE: MOV P0,#20H
ACALL STROBE
DJNZ R3,SPACE
RET
;---------------------------------------------------------------
NEXTLINEINIT: MOV A,#1Bh
MOV P0,A
ACALL STROBE
MOV A,#40h
MOV P0,A
ACALL STROBE
RET
;---------------------------------------------------------------
DELAYP: MOV R6,#10H
P_DLY: NOP
DJNZ R6,P_DLY
RET
;----------------------------------------------------------------------
strobe: NOP
CLR P2+6 ;(STROBE)
NOP
NOP
NOP ;p2+6=strobe bar control signal.
setb P2+6
JB P2+4,$ ;LOW MEANS (NOT BUSY) GO DOWNWARDS.
RET
;-----------------------------------------------------------------------
DELAY: MOV R4,#0Fh
RE_DLY: MOV R3,#0A2H
DJNZ R3,$
DJNZ R4,RE_DLY
RET
;----------------------------------------------------------------------
END
;----------------------------------------------------------------------
MOV P0,SERIAL1 ;SEND SERIAL NO DATA.
ACALL STROBE
MOV P0,SERIAL2 ;SEND SERIAL NO DATA.
ACALL STROBE
MOV P0,SERIAL3 ;SEND SERIAL NO DATA.
ACALL STROBE
MOV A,#20H
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,SERIAL4 ;SEND SERIAL NO DATA.
ACALL STROBE
MOV P0,SERIAL5 ;SEND SERIAL NO DATA.
ACALL STROBE
MOV P0,SERIAL6 ;SEND SERIAL NO DATA.
ACALL STROBE
; ________
MOV A,#1BH ; \
MOV P0,A ;SEND SPACE DATA.|
ACALL STROBE ; |__ CHANG CHARACTER.
MOV A,#08H ; |
MOV P0,A ;SEND SPACE DATA.|
ACALL STROBE ; ________/
;----------------------------------------------------------------------
MOV P0,L1A ;SEND TRIGGER DATA.
ACALL STROBE
MOV P0,L1B ;SEND TRIGGER DATA.
ACALL STROBE
MOV P0,L1C ;SEND TRIGGER DATA.
ACALL STROBE
MOV P0,L1D ;SEND TRIGGER DATA.
ACALL STROBE
MOV P0,L1E ;SEND TRIGGER DATA.
ACALL STROBE
MOV A,#20H
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,L2A ;SEND LO-LIMITE DATA.
ACALL STROBE
MOV P0,L2B ;SEND LO-LIMITE DATA.
ACALL STROBE
MOV P0,L2C ;SEND LO-LIMITE DATA.
ACALL STROBE
MOV P0,L2D ;SEND LO-LIMITE DATA.
ACALL STROBE
MOV P0,L2E ;SEND LO-LIMITE DATA.
ACALL STROBE
MOV A,#20H
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,L3A ;SEND HI-LIMITE DATA.
ACALL STROBE
MOV P0,L3B ;SEND HI-LIMITE DATA.
ACALL STROBE
MOV P0,L3C ;SEND HI-LIMITE DATA.
ACALL STROBE
MOV P0,L3D ;SEND HI-LIMITE DATA.
ACALL STROBE
MOV P0,L3E ;SEND HI-LIMITE DATA.
ACALL STROBE
MOV A,#20H
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,L4A ;SEND COMPLEATE DATA.
ACALL STROBE
MOV P0,L4B ;SEND COMPLEATE DATA.
ACALL STROBE
MOV P0,L4C ;SEND COMPLEATE DATA.
ACALL STROBE
MOV P0,L4D ;SEND COMPLEATE DATA.
ACALL STROBE
MOV P0,L4E ;SEND COMPLEATE DATA.
ACALL STROBE
MOV A,#20H
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
MOV P0,A ;SEND SPACE DATA.
ACALL STROBE
;----------------------------------------------------------------------
TX_DATA:mov r2,#35h ;no.of byte tx.
mov R0,#30h ;DATA STARING ADDRESS.
outstr: clr a
MOV A,@R0
lcall wait
inc R0 ; point to next char
djnz r2,outstr
RET
;----------------------------------------------------------------------
wait: jnb ti,wait ; wait until ti is set
clr ti ; clear it
mov sbuf,a ; send acc to serial buffer
RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -