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

📄 my_hanxian_.asm

📁 设置16×16汉字显示
💻 ASM
字号:
;R1:存列扫描数
;21H:存中断程序显示的组数
;R3:存显示子程序中显示的第几个字
;R4:存放主程序要显示的第几组字,连接主程序、中断子程序、显示子程序
;R5:存放每一组的首地址
;R6:存放循环的次数
ORG           0000H
AJMP          MAIN
ORG           0003H
ajmp int00
org          0100H
MAIN:         MOV          SP,    #3FH
              MOV          IE,    #81H         ;设置外部中断1
              SETB         IT0                 ;低电平触发中断
              MOV          31H,   #05H         ;中断寄存器设置初值
LOOP0:        MOV          R4,    #04H
;主程序循环显示
LOOP:        LCALL      DISPLAY
             DJNZ       R4,    LOOP
             SJMP       LOOP0
;中断子程序
int00:        MOV           21H,R4                    ;暂存计数指针
SEG:         MOV           R4,22H                    ;存中断计数
             DEC           R4
             CJNE          R4,#00H,SEG1
             MOV           R4,#05H
SEG1:        LCALL         DIsPLAY
             MOV           22H,R4
             MOV           R4,21H
             RETI
;显示子程序
DISPLAY:     DEC         R4                ;初始化
             MOV         A,R4
             MOV         B,#60H
             MUL         AB
             MOV         DPTR,#TAB
             MOV         20H,#00H          ;20H暂存每一个字的首地址
             add a,dpl             ;把每一个字的首地址指针给DPTR
	     mov dpl,a
	     mov a,b
             addc a,dph
	     mov dph,a
             MOV         R3,#03H          ;存字数
             MOV         R0,#50            ;每一个字的循环次数,以保证字的亮度  
WORD1:       MOV         R5,20H            ;R5做地址指针
             MOV         R1,#00H           ;R1做列扫描,且计数
WORD2:       MOV         A,R5              ;寻址
             MOVC        A,@A+DPTR
             MOV         P2,A              ;锁存信号
             SETB        P3.0
             NOP
             CLR         P3.0
             INC         R5
             MOV         A,R5
             MOVC        A,@A+DPTR
             MOV         P2,A
             SETB        P3.1
             NOP
             CLR         P3.1
             INC         R5
             MOV         P1,R1             ;列扫描信号
             INC         R1
             LCALL       DELAY             ;延时100ms
             CJNE        R1,#16,WORD2      ;是否够16个字 
             DJNZ        R0,WORD1          ;是否够循环次数
             MOV         20H,R5            ;记录首地址
             DJNZ        R3,WORD1          ;是否满3个字
             RET
;延时100mS
DELAY:       PUSH        ACC
             PUSH        PSW
             SETB        RS0;换一组寄存器
             MOV         R7  ,#100
D2:          MOV         R6  ,#10
D1:          MOV         R5  ,#100
HERE:        DJNZ        R5  ,HERE
             DJNZ        R6  ,D1
             DJNZ        R7  ,D2
             POP         PSW
             POP         ACC   
             RET
; 刘亚丽 付吉吉  苗金华  大家好  
TAB:DB 00H,00H,04H,02H,04H,03H,04H,06H,04H,0CH,04H,10H,04H,60H,05H,80H
    DB 0FEH,00H,05H,0C0H,04H,30H,04H,08H,04H,04H,04H,02H,04H,01H,04H,00H;刘
    DB 00H,00H,7FH,0FEH,02H,40H,02H,40H,02H,48H,22H,4CH,12H,48H,12H,48H
    DB 0AH,50H,0AH,50H,0AH,60H,02H,40H,02H,44H,0FFH,0FEH,00H,00H,00H,00H;亚
    DB 00H,00H,0FFH,0FEH,00H,00H,00H,00H,7EH,0FCH,42H,84H,42H,0C4H,62H,0A4H
    DB 52H,0B4H,5AH,0A4H,52H,84H,42H,84H,42H,84H,4EH,0BCH,44H,88H,00H,00H;丽
    DB 08H,10H,0CH,10H,10H,10H,10H,10H,27H,0FEH,30H,10H,54H,10H,92H,10H
    DB 11H,10H,11H,90H,11H,10H,10H,10H,10H,10H,10H,50H,10H,20H,00H,00H;付
    DB 01H,00H,01H,04H,0FFH,0FEH,01H,00H,01H,00H,01H,08H,7FH,0FCH,00H,00H
    DB 00H,00H,1FH,0F0H,10H,10H,10H,10H,10H,10H,1FH,0F0H,10H,10H,00H,00H;吉
    DB 01H,00H,01H,04H,0FFH,0FEH,01H,00H,01H,00H,01H,08H,7FH,0FCH,00H,00H
    DB 00H,00H,1FH,0F0H,10H,10H,10H,10H,10H,10H,1FH,0F0H,10H,10H,00H,00H;吉
    DB 08H,20H,08H,20H,08H,20H,7FH,0FEH,08H,20H,08H,20H,3FH,0F8H,21H,08H
    DB 21H,08H,3FH,0F8H,21H,08H,21H,08H,21H,08H,3FH,0F8H,20H,08H,00H,00H;苗
    DB 01H,00H,01H,00H,02H,80H,04H,40H,08H,30H,30H,0EH,0CFH,0F4H,01H,00H
    DB 01H,00H,3FH,0F8H,01H,00H,09H,20H,05H,20H,05H,40H,0FFH,0FEH,00H,00H;金
    DB 08H,80H,0CH,88H,10H,9CH,30H,0E0H,53H,80H,90H,84H,10H,84H,10H,7CH
    DB 11H,00H,01H,00H,7FH,0FEH,01H,00H,01H,00H,01H,00H,01H,00H,01H,00H;华
    DB 01H,00H,01H,00H,01H,00H,01H,00H,01H,00H,0FFH,0FEH,01H,00H,02H,80H
    DB 02H,80H,02H,40H,04H,40H,04H,20H,08H,10H,10H,18H,20H,0EH,40H,04H;大
    DB 02H,00H,01H,00H,3FH,0FEH,40H,04H,5FH,0E8H,01H,00H,02H,00H,0FH,20H
    DB 72H,0B0H,04H,0C0H,19H,0C0H,66H,0B0H,18H,8EH,60H,84H,05H,00H,02H,00H;家
    DB 10H,00H,11H,0FCH,10H,08H,10H,10H,0FCH,20H,24H,20H,24H,20H,27H,0FEH
    DB 44H,20H,64H,20H,18H,20H,08H,20H,14H,20H,26H,20H,44H,0A0H,80H,40H;好
end

⌨️ 快捷键说明

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