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

📄 fontel68.txt

📁 彩色液晶显示
💻 TXT
字号:
LINE_BYTES	equ   176
;/// IN R1,COLOR  R2,R3, XL XH  R12,R13,YL YH  //
		PROC	PutPixel
PutPixel:	PUSH	DPH
		PUSH	DPL
		PUSH	B
		PUSH	ACC
		PUSH	11
		PUSH	12
		PUSH	04H
		PUSH	01H
		PUSH	03H
		PUSH	13
		
		CLR	C
		MOV	A,#LGRAPH_ROW
		SUBB	A,R3
		MOV	A,#HGRAPH_ROW
		SUBB	A,13
		JC	PutPixel5
		MOV	A,#LGRAPH_COL
		SUBB	A,R2
		MOV	A,#HGRAPH_COL
		SUBB	A,12
		JC	PutPixel5
		
		
PPXL:	
		CLR	C
		MOV	A,R3
		SUBB	A,#240
		MOV	DPL,A
		MOV	A,13
		SUBB	A,#0
		MOV	DPH,A
		JNC	PPXL3
		LCALL	PonitAddr
		MOV	P1.5,C
		SETB	P1.6
		MOVX	A,@DPTR
		MOVX	A,@DPTR
		MOV	R4,A
		MOV	B,11
		MOV	A,B
		CJNE	A,#0,PPXL2		
		MOV	A,#01111111B
		ANL	A,R4
		ORL	A,R1		
		MOVX	@DPTR,A
		SJMP	PutPixel5		
		
PPXL2:		MOV	A,#01111111B
		MOV	12,R1
PPXL1:		SETB	C
 		RrC	A
		XCH	A,R1
		CLR	C
		RrC	A
		XCH	A,R1
		DJNZ	B,PPXL1
		ANL	A,R4
		ORL	A,R1
				
		SETB	P1.6
		MOVX	@DPTR,A		
		SJMP	PutPixel5		
		
PPXL3:
		MOV	R3,DPL
		MOV	13,DPH
		MOV	A,R1
		SWAP	A
		MOV	R1,A
		LCALL	PonitAddr
		MOV	P1.5,C
		SETB	P1.6
		MOVX	A,@DPTR
		MOVX	A,@DPTR
		MOV	R4,A
		MOV	B,11
		MOV	A,B
		CJNE	A,#0,PPXL22
		MOV	A,#11110111B
		ANL	A,R4
		ORL	A,R1		
		MOVX	@DPTR,A
		SJMP	PutPixel5		
		
PPXL22:		MOV	A,#11110111B
		MOV	12,R1
PPXL11:		SETB	C
 		RrC	A
		XCH	A,R1
		CLR	C
		RrC	A
		XCH	A,R1
		DJNZ	B,PPXL11
		ANL	A,R4
		ORL	A,R1
		SETB	P1.6
		MOVX	@DPTR,A		
				
PutPixel5:
		POP	13
		POP	3
		POP	01H
		POP	04H
		POP	12
		POP	11
		POP	ACC
		POP	B
		POP	DPL
		POP	DPH
		RET
		END
;///IN R2,R3,R12,R13,R1            OUT ACC  ///////////
		PROC	ReadPixel
ReadPixel:
		PUSH	B
		push	01h
    	        PUSH    DPH
		PUSH	DPL
		PUSH	12
		PUSH	13
		PUSH	04H
		PUSH	11
		PUSH	03H
		PUSH	13
		
		CLR	C
		MOV	A,R3
		SUBB	A,#240
		MOV	DPL,A
		MOV	A,13
		SUBB	A,#0
		MOV	DPH,A
		JNC	RPXL4
		
		LCALL	PonitAddr
		MOV	P1.5,C
		SETB	P1.6
		MOVX	A,@DPTR
		MOVX	A,@DPTR
		MOV	R4,A
		MOV	B,11
		MOV	A,B
		CJNE	A,#0,RPXL2		
		MOV	A,#10000000B
		ANL	A,R4
		MOV	R1,A
		SJMP	RPixel5		

		
RPXL2:		MOV	A,#10000000B
RPXL1:		CLR	C
 		RrC	A
		DJNZ	B,RPXL1
		ANL	A,R4
		MOV	B,11
RPXL3:		CLR	C
 		RlC	A
		DJNZ	B,RPXL3
		MOV	R1,A		
		SJMP	RPixel5		
		
RPXL4:		
		MOV	R3,DPL
		MOV	13,DPH

		LCALL	PonitAddr
		MOV	P1.5,C
		SETB	P1.6
		MOVX	A,@DPTR
		MOVX	A,@DPTR
		MOV	R4,A
		MOV	B,11
		MOV	A,B
		CJNE	A,#0,RPXL22
		MOV	A,#10000000B
		ANL	A,R4
		SWAP	A
		MOV	R1,A
		SJMP	RPixel5		

		
RPXL22:		MOV	A,#10000000B
RPXL11:		CLR	C
 		RrC	A
		DJNZ	B,RPXL11
		ANL	A,R4
		MOV	B,11
RPXL33:		CLR	C
 		RlC	A
		DJNZ	B,RPXL33
		SWAP	A
		MOV	R1,A
		
RPixel5:
		MOV	A,R1
		POP	13
		POP	3
		
		POP	11
		POP	04H
		POP	13
		POP	12
		POP	DPL
		POP	DPH
		pop	01h
		POP	B
		RET
		END
;/////////////////////////////////////////////////////////////////////////
;R2:XL R3:LY R12:HX R13:HY  ADDR=[64XH+XL/4+1]+[176*LY]     LEAVE=R11
PonitAddr:	
		PUSH	02H
		PUSH	03H
		PUSH	12
		PUSH	13
		PUSH	06H
		PUSH	B
		PUSH	A
		MOV	A,12
		MOV	B,#64
		MUL	AB
		MOV	DPH,B
		MOV	DPL,A
		MOV	A,R2
		MOV	B,#4
		DIV	AB
		MOV	11,B ;;
		ADD	A,DPL
		
		MOV	DPL,A
		MOV	A,#1
		ADDC	A,DPL
		MOV	DPL,A
		MOV	A,#0
		addc	a,DPH
		mov	dph,a
		MOV	A,R3
		MOV	B,#LINE_BYTES
		MUL	AB
		ADD	A,DPL
		MOV	DPL,A
		MOV	A,DPH
		ADDC	A,B
		MOV	DPH,A
		clr	c		
		POP	A
		POP	B
		POP	06H
		POP	13
		POP	12
		POP	03H
		POP	02H
		RET

;/////////清屏////////////////
		PROC	ClearScreen
ClearScreen:	PUSH	DPL
		PUSH	DPH
		PUSH	B
		PUSH	04H
		PUSH	A
		clr	P1.5
		setb	p1.6
		
		MOV	R4,#0
		MOV	DPTR,#0
CLEARSCREEN2:	MOV	B,#LINE_BYTES
CLEARSCREEN1:	INC	DPTR
		MOV	A,R1
		MOVX	@DPTR,A
		DJNZ	B,CLEARSCREEN1
		DJNZ	R4,CLEARSCREEN2
		POP	A
		POP	04
		POP	B
		POP	DPH
		POP	DPL
		RET
		END
;/////////////////显示中西文/////////////////////////////////
		PROC	Display
Display:	LCALL ReadFont
		MOV   R1,Fc_RGB
		MOV   12,HCursorX
		MOV   R2,LCursorX
		MOV   13,HCursorY
		MOV   R3,LCursorY
		MOV   R4,VBytes
Display1:	MOV   R5,HBytes

Display2:	MOV   P1,R7
		INC   R7
		MOV   P0,#0FFH
		CLR	P1.5	
		clr	p1.6
		MOVX  A,@DPTR
		MOV   R0,A

		MOV   R6,#8
Display3:	PUSH  06H
		MOV   A,R0
		RLC   A
		MOV   R0,A
		JNC   Display6

		MOV   R6,HTimes
Display4:	PUSH  06H
		MOV   R6,VTimes
Display5:	LCALL PutPixel
	;	INC   R3
		MOV	A,R3
		ADD	A,#1H
		MOV	R3,A
		MOV	A,13
		ADDC	A,#0
		MOV	13,A
		DJNZ  R6,Display5
		
		MOV   A,R3
		CLR   C
		SUBB  A,VTimes
		MOV   R3,A
		MOV	A,13
		SUBB	A,#0
		MOV	13,A
		MOV	A,R2
		ADD	A,#1H
		MOV	R2,A
		MOV	A,12
		ADDC	A,#0
		MOV	12,A
		POP   06H
		DJNZ  R6,Display4
		SJMP  Display7
Display6:	MOV   A,HTimes
		ADD   A,R2
		MOV   R2,A
		MOV	A,12
		ADDC	A,#0
		MOV	12,A
Display7:	POP   06H
		DJNZ  R6,Display3
		DJNZ  R5,Display2

		MOV   R2,LCursorX
		MOV	12,HCursorX
		MOV   A,VTimes
		ADD   A,R3
		MOV   R3,A
		MOV	A,13
		ADDC	A,#0
		MOV	13,A
		DJNZ  R4,Display1
		RET
		END
;/////////////////////字模地址//////////////////////////////////////
ReadFont:	CLR	C
		JB	IsHanZi,ReadFont2

		MOV	A,R7
		MOV	R7,#0
		RRC	A
		JNC	ReadFont1
		MOV	R7,#10H
ReadFont1:	MOV	DPL,A
		MOV	DPH,#HIGH(FONT_ROM)
 		RET

ReadFont2:	MOV	A,R6
		SUBB	A,#(0A1H-80H)
		MOV	R6,A
		MOV	A,R7
		SUBB	A,#0A1H
		MOV	B,#94
		MUL	AB
		ADD	A,R6
		XCH	A,B
		ADDC	A,#HIGH(FONT_ROM)
		MOV	DPL,B
		MOV	DPH,A
		MOV	R7,#0
		RET

⌨️ 快捷键说明

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