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

📄 液晶显示子程序.asm

📁 LCM(RT-240128TA)显示程序 */ /* LCM 控制芯片 T6963C 带32KRAM */ /* MCU 型号: STC 89C52RD2 */ /* 时钟频率: 11.0592
💻 ASM
📖 第 1 页 / 共 5 页
字号:
	mov dptr,#zk_ru                  ;入
	lcall hanzi
	mov dptr,#zk_gth                 ;感叹号
	lcall hanzisz
        ret
;======================================================================
disp_gb:
        mov r2,gb_x_add
        mov r3,gb_y_add
        lcall gb_on
        ret
;======================================================================
;======================================================================
;=====================================================================
;=====================================================================
;=====================================================================
;=====================================================================
;=====================================================================
;=====================================================================
;=====================================================================
;=====================================================================
;=====================================================================
;=====================================================================
;=====================================================================
;=====================================================================
;=====================================================================
;********************************************************************
int:					;初始化子程序
	mov p1,#0ffh
	mov p3,#0ffh
	mov p0,#0ffh
	mov p2,#0ffh
;----------------------------------------------------------------------
;        mov dps,#00h
;----------------------------------------------------------------------
	mov r7,#78h
	mov r0,#08h
	mov a,#00h
yint1:	mov @r0,a
	inc r0
	djnz r7,yint1
;----------------------------------------------------------------------
	mov r7,#50h
	mov r0,#80h
	mov a,#00h
yint2:	mov @r0,a
	inc r0
	djnz r7,yint2
;-----------------------------------------------------------------------
;        mov 0c4h,#41h
;------------------------------------------------------------------------

;-------------------------------------------------------------------------
	mov 89h,#21h	;tmod
	mov 87h,#00h	;pcon
	mov 98h,#50h	;scon0
	mov 0c0h,#50h	;scon1

	mov th0,#4ch
	mov tl0,#00h
	setb tr0
	setb et0
;	mov th1,#4ch			;定时器1  50ms
;	mov tl1,#00h
;	setb tr1			;定时器1位运行控制位
;	setb et1			;定时器1中断允许位

	
;-----------------------------------------------------------------------------------
;        setb ex0			;外部中断0允许位
;        setb it0			;外部中断0类型控制位(1--下降沿  0--低电平)
        setb es				;串行口中断允许位
;        setb es1
        setb ea				;中断允许位
	ret
;===================================================================================
;======================================================================
disp_kuang:	                        ;显示框
	lcall aread
	lcall bread
;        lcall cread
	mov yadd,#00h
	lcall xread
        mov yadd,#19
	lcall xread
	mov yadd,#108
	lcall xread
        mov yadd,#127
	lcall xread
        ret
;==================================================
;================================================================
disp_mima_hz:
        mov dptr,#zk_mi                  ;密
	lcall hanzi
	mov dptr,#zk_ma                  ;码
	lcall hanzi
	mov dptr,#zk_mh                  ; :
	lcall hanzisz
        ret
;======================================================================
disp_22_sz:
        mov xadd,#12
	mov yadd,#54
;        mov dph,#l1_dph
;        mov dpl,#l1_fy_yinfaliang
disp_22_sz_0:
        movx a,@dptr
        anl a,#0f0h
        jnz disp_22_sz_1
        push dph
        push dpl
        mov dptr,#zk_no                 ;
	lcall hanzisz
        pop dpl
        pop dph
	movx a,@dptr
        anl a,#0fh
        jnz disp_22_sz_2
        push dph
        push dpl
        mov dptr,#zk_no                 ;
	lcall hanzisz
        pop dpl
        pop dph
        inc dptr
        movx a,@dptr
        anl a,#0f0h
        jnz disp_22_sz_3
        push dph
        push dpl
        mov dptr,#zk_no                 ;
	lcall hanzisz
        pop dpl
        pop dph
	movx a,@dptr
        ljmp disp_22_sz_4
disp_22_sz_1:
        lcall disp_hz_h
	movx a,@dptr
disp_22_sz_2:
	lcall disp_hz_l
        inc dptr
disp_22_sz_3:
        movx a,@dptr
        lcall disp_hz_h
	movx a,@dptr
disp_22_sz_4:
	lcall disp_hz_l
        push dph
        push dpl
	mov dptr,#zk_xsd
	lcall hanzisz
        pop dpl
        pop dph
        inc dptr
        movx a,@dptr
        lcall disp_hz_h
        movx a,@dptr
	lcall disp_hz_l
        inc dptr
        movx a,@dptr
        lcall disp_hz_h
;        movx a,@dptr
;	lcall disp_hz_l
        ret
;======================================================================
;======================================================================
;======================================================================
disp_21_hz:
        mov xadd,#5
	mov yadd,#30
disp_21_hz_0:
	mov dptr,#zk_ti                  ;提
	lcall hanzi
	mov dptr,#zk_dan                 ;单
	lcall hanzi
	mov dptr,#zk_hao                 ;号
	lcall hanzi
	mov dptr,#zk_mh                  ; :
	lcall hanzisz
        ret
;================================================================
;================================================================
;================================================================
;================================================================
;================================================================
;================================================================
disp_hz_h:                              ;8x16 字符和数字字节高位显示
        push dph
        push dpl
        anl a,#0f0h
	swap a
	mov dptr,#zk_0
	mov b,#16
	mul ab
	add a,dpl
	mov dpl,a
	mov a,#00h
	addc a,dph
	mov dph,a
	lcall hanzisz
        pop dpl
        pop dph
	ret
;-----------------------------------------------------------------
disp_hz_l:                              ;8x16 字符和数字字节低位显示
        push dph
        push dpl
	anl a,#0fh
	mov dptr,#zk_0
	mov b,#16
	mul ab
	add a,dpl
	mov dpl,a
	mov a,#00h
	addc a,dph
	mov dph,a
        lcall hanzisz
        pop dpl
        pop dph
	ret
;-----------------------------------------------------------------
hanzisz:
	MOV A,YADD
        MOV B,#1EH
        MUL AB
        MOV R2,A
        MOV A,XADD
        CLR C
        ADD A,R2
        MOV R2,A
        MOV A,#00H
        ADDC A,B
        MOV R3,A
	MOV R6,#16
HANZIA: MOV R4,#24H
        LCALL COM1
        PUSH 03H
        MOV A,#00H
        MOVC A,@A+DPTR
        jnb disp_fan_bit,hanzi_fan_1
        cpl a
hanzi_fan_1:
        MOV R3,A
        MOV R4,#0C0H
        LCALL COM2
        INC DPTR
        POP 03H
        MOV B,#1EH
        LCALL ADRX
        DJNZ R6,HANZIA

        inc xadd

        ret
;==============================================
HANZI:
	MOV A,YADD
        MOV B,#1EH
        MUL AB
        MOV R2,A
        MOV A,XADD
        CLR C
        ADD A,R2
        MOV R2,A
        MOV A,#00H
        ADDC A,B
        MOV R3,A
	MOV R6,#16
HANZIA_1:
	MOV R4,#24H
        LCALL COM1
        PUSH 03H
        MOV A,#00H
        MOVC A,@A+DPTR
        jnb disp_fan_bit,hanzi_fan_2
        cpl a
hanzi_fan_2:
        MOV R3,A
        MOV R4,#0C0H
        LCALL COM2
        INC DPTR
        POP 03H
        MOV B,#1
        LCALL ADRX

        MOV R4,#24H
        LCALL COM1
        PUSH 03H
        MOV A,#00H
        MOVC A,@A+DPTR
        jnb disp_fan_bit,hanzi_fan_3
        cpl a
hanzi_fan_3:
        MOV R3,A
        MOV R4,#0C0H
        LCALL COM2
        INC DPTR
        POP 03H
        MOV B,#1dH
        LCALL ADRX

        DJNZ R6,HANZIA_1


        inc xadd
        inc xadd

        ret
;=====================================================
COM4:   PUSH DPL
        PUSH DPH
	MOV DPTR,#disp_kz_add
YY06:   MOVX A,@DPTR
        JNB ACC.0,YY06
        JNB ACC.1,YY06
        MOV DPTR,#disp_data_add
        MOVX A,@DPTR
        POP DPH
        POP DPL
        RET

⌨️ 快捷键说明

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