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

📄 汉字程序.asm

📁 经典的p算法
💻 ASM
字号:
; 61202控制器演示程序以香港精电公司 MGL(S)-19264 屏为例
; 显示为三行内容 "清华蓬远公司  竭诚为广大用户服务  电话:62549762"
 
        COM     EQU 30H
        WDATA   EQU 31H
        PAGE1   EQU 32H
        FILE    EQU 33H
        TABL    EQU 34H
        TABH    EQU 35H
        LMR     EQU 36H
        AMOUNT  EQU 37H

        ORG 0000H
        LJMP  MAIN
        ORG 0030H
MAIN:   MOV SP,#60H
        LCALL PR7
;--------------------
        MOV     LMR,#01H
        MOV     PAGE1,#00H
        MOV     FILE,#00H
        LCALL   SADD
        MOV     DPTR,#TAB1
        MOV     TABL,DPL
        MOV     TABH,DPH
        MOV     AMOUNT,#04H
MAIN1:  LCALL   WHZ
        DJNZ    AMOUNT,MAIN1

        MOV     LMR,#02H
        MOV     PAGE1,#00H
        MOV     FILE,#00H
        LCALL   SADD
        MOV     AMOUNT,#02H
MAIN11: LCALL   WHZ
        DJNZ    AMOUNT,MAIN11
;------------------
        MOV     LMR,#01H
        MOV     PAGE1,#03H
        MOV     FILE,#00H
        LCALL   SADD
        MOV     AMOUNT,#04H
MAIN2:  LCALL   WHZ
        DJNZ    AMOUNT,MAIN2

        MOV     LMR,#02H
        MOV     PAGE1,#03H
        MOV     FILE,#00H
        LCALL   SADD
        MOV     AMOUNT,#04H
MAIN21: LCALL   WHZ
        DJNZ    AMOUNT,MAIN21

        MOV     LMR,#03H
        MOV     PAGE1,#03H
        MOV     FILE,#00H
        LCALL   SADD
        LCALL   WHZ
;------------------
        MOV     LMR,#01H
        MOV     PAGE1,#06H
        MOV     FILE,#00H
        LCALL   SADD
        MOV     AMOUNT,#04H
MAIN3:  LCALL   WHZ
        DJNZ    AMOUNT,MAIN3

        MOV     LMR,#02H
        MOV     PAGE1,#06H
        MOV     FILE,#00H
        LCALL   SADD
        MOV     AMOUNT,#04H
MAIN31: LCALL   WHZ
        DJNZ    AMOUNT,MAIN31

        MOV     LMR,#03H
        MOV     PAGE1,#06H
        MOV     FILE,#00H
        LCALL   SADD
        MOV     AMOUNT,#03H
MAIN32: LCALL   WHZ
        DJNZ    AMOUNT,MAIN32

        SJMP $
;--------------------------------< > 写汉字子程序
WHZ:    MOV     R3,#02H
WHZ2:   MOV     R2,#10H
WHZ1:   MOV     DPL,TABL
        MOV     DPH,TABH
        MOV     A,#00H
        MOVC    A,@A+DPTR
        MOV     WDATA,A
        LCALL   DWW

        INC     TABL
        MOV     A,TABL
        CJNE    A,#00H,WHZ3
        INC     TABH

WHZ3:   DJNZ    R2,WHZ1
        INC     PAGE1
        LCALL   SADD
        DJNZ    R3,WHZ2

        DEC     PAGE1
        DEC     PAGE1
        MOV     A,FILE
        ADD     A,#10H
        XCH     A,FILE
        LCALL   SADD

        MOV     DPL,TABL
        MOV     DPH,TABH
        RET
;---------------------------< > 设写数据地址
SADD:   MOV     A,PAGE1
        ADD     A,#0B8H
        MOV     COM,A
        LCALL   CW

        MOV     A,FILE
        ADD     A,#40H
        MOV     COM,A
        LCALL   CW
        RET
;---------------------------< >根据 LMR 值写指令
CW:     MOV     A,LMR
        CJNE    A,#01H,CW2
        LCALL   CWL
        SJMP    CW4
CW2:    CJNE    A,#02H,CW3
        LCALL   CWM
        SJMP    CW4
CW3:    CJNE    A,#03H,CW4
        LCALL   CWR
CW4:    RET
;----------------------------< >根据 LMR 值写数据
DWW:     MOV     A,LMR
        CJNE    A,#01H,DW2
        LCALL   DWL
        SJMP    DW4
DW2:    CJNE    A,#02H,DW3
        LCALL   DWM
        SJMP    DW4
DW3:    CJNE    A,#03H,DW4
        LCALL   DWR
DW4:    RET
;--------------------------------< > 写指令子程序
CWL:    MOV DPTR,#0200H                 ;   A11  A10  A9   A8
        MOVX A,@DPTR                    ;  /CSB /CSA  R/W  D/I
        JB ACC.7,CWL
        MOV DPTR,#0000H                 ;左
        MOV A,COM
        MOVX @DPTR,A
        RET
CWR:    MOV DPTR,#0600H                 ;右
        MOVX A,@DPTR
        JB ACC.7,CWR
        MOV DPTR,#0400H
        MOV A,COM
        MOVX @DPTR,A
        RET
CWM:    MOV DPTR,#0A00H                 ;中
        MOVX A,@DPTR
        JB ACC.7,CWM
        MOV DPTR,#0800H
        MOV A,COM
        MOVX @DPTR,A
        RET
;---------------------------- < > 写数据子程序
DWL:    MOV DPTR,#0200H                ;左
        MOVX A,@DPTR
        JB ACC.7,DWL
        MOV DPTR,#0100H
        MOV A,WDATA
        MOVX @DPTR,A
        RET
DWR:    MOV DPTR,#0600H                 ;右
        MOVX A,@DPTR
        JB ACC.7,DWR
        MOV DPTR,#0500H
        MOV A,WDATA
        MOVX @DPTR,A
        RET
DWM:    MOV DPTR,#0A00H                ;中
        MOVX A,@DPTR
        JB ACC.7,DWM
        MOV DPTR,#0900H
        MOV A,WDATA
        MOVX @DPTR,A
        RET
;-----------------------------< > 清屏子程序
PR6:    MOV     R4,#00H
PR61:   MOV     A,R4
        ANL     A,#07H
        ORL     A,#0B8H          ;设起始页为 0
        MOV     COM,A
        LCALL   CWL
        LCALL   CWM
        LCALL   CWR
        MOV     COM,#40H          ;设起始列为 0
        LCALL   CWL
        LCALL   CWM
        LCALL   CWR
        MOV     R3,#40H
        MOV     WDATA,#00H
PR62:   LCALL   DWL
        LCALL   DWM
        LCALL   DWR
        DJNZ    R3,PR62
        INC     R4
        CJNE    R4,#08H,PR61    ;8 ROW
        RET
;----------------------------< > 初始化
PR7:    MOV     COM,#3FH       ;3F-开显示, 3E-关显示
        LCALL   CWL
        LCALL   CWM
        LCALL   CWR
        MOV     COM,#0C0H      ;设起始行为 0
        LCALL   CWL
        LCALL   CWM
        LCALL   CWR

        LCALL PR6               ;清屏
        RET
;======================================================
TAB1:   DB 010H,022H,064H,00CH,0C0H,044H,054H,054H;清
        DB 054H,07FH,054H,054H,056H,044H,040H,000H
        DB 000H,004H,0FCH,003H,000H,000H,0FFH,015H
        DB 015H,015H,055H,095H,07FH,000H,000H,000H
        DB 000H,040H,020H,010H,0FCH,003H,040H,020H;华
        DB 010H,0FFH,008H,004H,006H,0C0H,000H,000H
        DB 004H,004H,004H,004H,005H,004H,004H,0FFH
        DB 004H,004H,005H,005H,005H,005H,004H,000H
        DB 082H,08AH,092H,0B2H,002H,0A7H,092H,05EH;蓬
        DB 02AH,0AFH,02AH,05AH,04AH,082H,082H,000H
        DB 000H,080H,040H,03FH,041H,090H,095H,095H
        DB 095H,0FFH,095H,095H,095H,090H,080H,000H
        DB 040H,042H,044H,0CCH,000H,020H,022H,0E2H;远
        DB 022H,022H,0E2H,023H,032H,020H,000H,000H
        DB 000H,040H,020H,01FH,020H,050H,04CH,043H
        DB 040H,040H,047H,048H,048H,04EH,040H,000H
;---------
        DB 000H,000H,080H,040H,030H,00CH,000H,0C0H;公
        DB 007H,01AH,020H,040H,080H,080H,080H,000H
        DB 001H,001H,020H,070H,028H,024H,023H,020H
        DB 020H,028H,030H,060H,000H,001H,000H,000H
        DB 010H,010H,092H,092H,092H,092H,092H,092H;司
        DB 0D2H,09AH,012H,002H,0FFH,002H,000H,000H
        DB 000H,000H,03FH,010H,010H,010H,010H,010H
        DB 03FH,000H,040H,080H,07FH,000H,000H,000H
;-----------
TAB2:   DB 008H,0E8H,009H,00EH,0E8H,008H,03EH,0AAH;竭
        DB 06AH,02AH,02AH,02AH,03FH,082H,000H,000H
        DB 010H,033H,010H,016H,009H,00AH,03DH,020H
        DB 029H,027H,069H,081H,041H,03FH,001H,000H
        DB 040H,042H,0CCH,000H,000H,0F8H,088H,088H;诚
        DB 088H,008H,0FFH,008H,00AH,0CCH,008H,000H
        DB 000H,000H,03FH,090H,048H,03FH,008H,010H
        DB 04FH,020H,013H,01CH,063H,080H,0E0H,000H
        DB 020H,020H,020H,022H,024H,02CH,020H,0E0H;为
        DB 03FH,020H,020H,020H,020H,0F0H,020H,000H
        DB 000H,040H,020H,010H,008H,004H,003H,000H
        DB 002H,004H,04CH,080H,040H,03FH,000H,000H
        DB 000H,000H,0FCH,004H,004H,004H,004H,005H;广
        DB 006H,004H,004H,004H,004H,006H,004H,000H
        DB 040H,030H,00FH,000H,000H,000H,000H,000H
        DB 000H,000H,000H,000H,000H,000H,000H,000H
        DB 020H,020H,020H,020H,020H,020H,0A0H,07FH;大
        DB 0A0H,020H,020H,020H,020H,030H,020H,000H
        DB 000H,040H,040H,020H,010H,00CH,003H,000H
        DB 001H,006H,008H,010H,020H,060H,020H,000H
        DB 000H,000H,0FEH,022H,022H,022H,022H,0FEH;用
        DB 022H,022H,022H,022H,0FFH,002H,000H,000H
        DB 080H,060H,01FH,002H,002H,002H,002H,07FH
        DB 002H,002H,042H,082H,07FH,000H,000H,000H
        DB 000H,000H,0F8H,088H,088H,088H,088H,089H;户
        DB 08EH,088H,088H,088H,088H,0FCH,008H,000H
        DB 080H,060H,01FH,000H,000H,000H,000H,000H
        DB 000H,000H,000H,000H,000H,001H,000H,000H
        DB 000H,000H,0FEH,022H,022H,022H,0FEH,000H;服
        DB 0FEH,082H,0A2H,0A2H,09FH,082H,000H,000H
        DB 080H,040H,03FH,002H,042H,082H,07FH,000H
        DB 0FFH,040H,037H,008H,034H,0C3H,040H,000H
        DB 000H,020H,010H,008H,08FH,054H,0D4H,024H;务
        DB 054H,054H,08EH,084H,000H,000H,000H,000H
        DB 002H,002H,081H,083H,042H,032H,00FH,002H
        DB 042H,082H,042H,03EH,001H,003H,001H,000H
;--------------
TAB3:   DB 000H,0F0H,090H,090H,090H,090H,0FFH,090H;电
        DB 090H,090H,090H,0F8H,010H,000H,000H,000H
        DB 000H,00FH,004H,004H,004H,004H,07FH,084H
        DB 084H,084H,084H,08FH,080H,0F0H,000H,000H
        DB 040H,042H,044H,0CCH,000H,040H,044H,044H;话
        DB 044H,0FCH,042H,043H,042H,060H,040H,000H
        DB 000H,000H,000H,07FH,020H,010H,0FCH,044H
        DB 044H,047H,044H,044H,0FEH,004H,000H,000H
        DB 000H,000H,000H,000H,000H,000H,030H,030H;∶
        DB 000H,000H,000H,000H,000H,000H,000H,000H
        DB 000H,000H,000H,000H,000H,000H,006H,006H
        DB 000H,000H,000H,000H,000H,000H,000H,000H
        DB 000H,000H,0FEH,07DH,083H,083H,083H,083H;ⅶ
        DB 083H,083H,083H,001H,000H,000H,000H,000H
        DB 000H,000H,07FH,0BEH,0C1H,0C1H,0C1H,0C1H
        DB 0C1H,0C1H,0C1H,0BEH,07FH,000H,000H,000H
        DB 000H,000H,000H,001H,083H,083H,083H,083H;ⅲ
        DB 083H,083H,083H,07DH,0FEH,000H,000H,000H
        DB 000H,000H,07FH,0BEH,0C1H,0C1H,0C1H,0C1H
        DB 0C1H,0C1H,0C1H,080H,000H,000H,000H,000H
        DB 000H,000H,0FEH,07DH,083H,083H,083H,083H;ⅵ
        DB 083H,083H,083H,001H,000H,000H,000H,000H
        DB 000H,000H,000H,080H,0C1H,0C1H,0C1H,0C1H
        DB 0C1H,0C1H,0C1H,0BEH,07FH,000H,000H,000H
        DB 000H,000H,0FEH,07CH,080H,080H,080H,080H;ⅴ
        DB 080H,080H,080H,07CH,0FEH,000H,000H,000H
        DB 000H,000H,000H,000H,001H,001H,001H,001H
        DB 001H,001H,001H,03EH,07FH,000H,000H,000H
        DB 000H,000H,0FEH,07DH,083H,083H,083H,083H;ⅹ
        DB 083H,083H,083H,07DH,0FEH,000H,000H,000H
        DB 000H,000H,000H,080H,0C1H,0C1H,0C1H,0C1H
        DB 0C1H,0C1H,0C1H,0BEH,07FH,000H,000H,000H
        DB 000H,000H,000H,001H,003H,003H,003H,003H;ⅷ
        DB 003H,003H,003H,07DH,0FEH,000H,000H,000H
        DB 000H,000H,000H,000H,000H,000H,000H,000H
        DB 000H,000H,000H,03EH,07FH,000H,000H,000H
        DB 000H,000H,0FEH,07DH,083H,083H,083H,083H;ⅶ
        DB 083H,083H,083H,001H,000H,000H,000H,000H
        DB 000H,000H,07FH,0BEH,0C1H,0C1H,0C1H,0C1H
        DB 0C1H,0C1H,0C1H,0BEH,07FH,000H,000H,000H
        DB 000H,000H,000H,001H,083H,083H,083H,083H;ⅲ
        DB 083H,083H,083H,07DH,0FEH,000H,000H,000H
        DB 000H,000H,07FH,0BEH,0C1H,0C1H,0C1H,0C1H
        DB 0C1H,0C1H,0C1H,080H,000H,000H,000H,000H
        END

⌨️ 快捷键说明

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