⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lptprinterinterfaceto8951.asm

📁 Printer interface with 89c51 controller (LPT Port connector)
💻 ASM
📖 第 1 页 / 共 2 页
字号:
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 + -