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

📄 显示.asm

📁 当今单片机厂商琳琅满目
💻 ASM
字号:
INCLUDE 'H51.INC'
        LJMP    MAIN
        ORG     001BH
T0INT:  PUSH    PSW
        MOV     TL1,TTL
        MOV     TH1,TTH
        SETB    00H
        DJNZ    CISHU,T0INTE
        MOV     CISHU,#100
        SETB    01H
T0INTE: POP     PSW
        RETI

MAIN:   LCALL   CSHIH         ;初始化
LP1:    LCALL   YIMA          ;译码
        LCALL   LED4W         ;显示
        LCALL   SUANSH        ;计算时间
        CLR     00H
        JNB     00H,$
        SJMP    LP1

SUANSH: DJNZ    SHANS,SUAN1
        MOV     SHANS,#50
        CPL     04H
SUAN1:  JNB     01H,SUANSE
        CLR     01H
        SETB    02H
        INC     MIAO
        MOV     A,MIAO
        CJNE    A,#60,SUANSE
        MOV     MIAO,#0
        INC     FEN
        MOV     A,FEN
        CJNE    A,#60,SUANSE
        MOV     FEN,#0
        INC     SHI
        MOV     A,SHI
        CJNE    A,#24,SUANSE
        MOV     SHI,#0
        INC     DAY
        MOV     A,DAY
        CJNE    A,#32,SUANSE
        MOV     DAY,#1
        INC     YUE
        MOV     A,YUE
        CJNE    A,#13,SUANSE
        MOV     YUE,#1
        INC     NIAN
SUANSE: RET

LED4W:  MOV     A,XWEI
        MOV     B,#3
        MUL     AB
        MOV     DPTR,#LED4T
        JMP     @A+DPTR
LED4T:  LJMP    LD4W1
        LJMP    LD4W2
        LJMP    LD4W3
        LJMP    LD4W4
LD4W1:  MOV     LEDD,MLED1
        MOV     A,#1
        ANL     A,SHAN
        MOV     LEDW,A
        INC     XWEI
        SJMP    LED4WE
LD4W2:  MOV     LEDD,MLED2
        MOV     A,#2
        ANL     A,SHAN
        MOV     LEDW,A
        INC     XWEI
        SJMP    LED4WE
LD4W3:  MOV     LEDD,MLED3
        MOV     A,#4
        ANL     A,SHAN
        MOV     LEDW,A
        INC     XWEI
        SJMP    LED4WE
LD4W4:  MOV     LEDD,MLED4
        MOV     A,#8
        ANL     A,SHAN
        MOV     LEDW,A
        MOV     XWEI,#0
LED4WE: MOV     A,XYE
        MOV     B,#3
        MUL     AB
        MOV     DPTR,#SHANAB
        JMP     @A+DPTR
SHANAB: LJMP    SHAN0
        LJMP    SHAN1
        LJMP    SHAN2
        LJMP    SHAN3
SHAN0:  LJMP    LEDEEE
SHAN1:  JB      04H,SHAN12
        ANL     MLED3,#01111111B
        LJMP    LEDEEE
SHAN12: ORL     MLED3,#10000000B
        LJMP    LEDEEE
SHAN2:  LJMP    LEDEEE
SHAN3:  LJMP    LEDEEE
LEDEEE: RET

YIMA:   JNB     02H,YIMAE1
        CLR     02H
        MOV     A,XYE
        MOV     B,#3
        MUL     AB
        MOV     DPTR,#YIMAB
        JMP     @A+DPTR
YIMAB:  LJMP    XYE0       ;显秒
        LJMP    XYE1       ;显时分
        LJMP    XYE2       ;显月日
        LJMP    XYE3       ;显年
YIMAE1: LJMP    YIMAE
XYE0:   MOV     A,MIAO
        MOV     B,#10
        DIV     AB
        MOV     BLED1,B
        MOV     BLED2,A
        MOV     BLED3,#13H
        MOV     BLED4,#10H
        LJMP    YIMAA
XYE1:   MOV     A,FEN
        MOV     B,#10
        DIV     AB
        MOV     BLED1,B
        MOV     BLED2,A
        MOV     A,SHI
        MOV     B,#10
        DIV     AB
        MOV     BLED3,B
        MOV     BLED4,A
        LJMP    YIMAA
XYE2:   MOV     A,DAY
        MOV     B,#10
        DIV     AB
        MOV     BLED1,B
        MOV     BLED2,A
        MOV     A,YUE
        MOV     B,#10
        DIV     AB
        MOV     BLED3,B
        MOV     BLED4,A
        LJMP    YIMAA
XYE3:   MOV     A,NIAN
        MOV     B,#100
        DIV     AB
        MOV     BLED3,A
        MOV     A,B
        MOV     B,#10
        DIV     AB
        MOV     BLED1,B
        MOV     BLED2,A
        MOV     BLED4,#2
YIMAA:  MOV     R0,#BLED1     ;四位LED
        MOV     R1,#MLED1
        MOV     R7,#4
        MOV     DPTR,#YIMTAB
YIMAA1: MOV     A,@R0
        MOVC    A,@A+DPTR
        MOV     @R1,A
        INC     R0
        INC     R1
        DJNZ    R7,YIMAA1
YIMAE:  RET
YIMTAB: DB      3FH,06H,5BH,4FH         ;0,1,2,3
        DB      66H,6DH,7DH,07H         ;4,5,6,7
        DB      7FH,6FH,77H,7CH         ;8,9,A,B
        DB      39H,5EH,79H,71H         ;C,D,E,F
        DB      00H,0F3H,76H,80H,40H    ; ,P,H,.,-

CSHIH:  MOV     SHAN,#0FFH
        MOV     SHANS,#50
        MOV     XWEI,#0
        MOV     BIAOZ,#00000110B
        MOV     LEDD,#0
        MOV     LEDW,#0
        MOV     XYE,#1
        MOV     CISHU,#100      ;1s=10ms*100
        MOV     NIAN,#7         ;2007.11.09
        MOV     YUE,#11
        MOV     DAY,#9
        MOV     SHI,#20         ;20:15:00
        MOV     FEN,#15
        MOV     MIAO,#0
        MOV     TMOD,#10H       ;T1方式1
        MOV     TTH,#0D8H       ;10MS
        MOV     TTL,#0F0H
        MOV     TL1,TTL
        MOV     TH1,TTH
        SETB    ET1
        SETB    EA
        SETB    TR1
        RET
BIAOZ   DATA    20H     ;标志:.0=1定时到,.1=1运行计算时间
                        ;.2=1运行译码,.3=1设置状态
                        ;.4闪耀位,=0灭,=1亮
KEYBZ   DATA    21H     ;键盘标志:.0(08H)=1去抖(KD),.1(09H)=1抬键(KT)
                        ;.2(0AH)=1运行处理键盘子程序(KC)                    
NIAN    DATA    30H     ;年2000~2255
YUE     DATA    31H     ;月1~12
DAY     DATA    32H     ;日1~31
SHI     DATA    33H     ;时0~23
FEN     DATA    34H     ;分0~59
MIAO    DATA    35H     ;秒0~59
CISHU   DATA    36H     ;次数10MS->100
XYE     DATA    37H     ;显示页,=0秒,=1时分,=2月日,=3年

XWEI    DATA    40H     ;显示位,4位:0~3
SHAN    DATA    41H     ;闪耀位置,0~3,对应LED1~4
SHANS   DATA    42H     ;闪耀亮时间(循环次数)

TTL     DATA    4EH
TTH     DATA    4FH
BLED1   DATA    50H     ;显示数据BCD
BLED2   DATA    51H
BLED3   DATA    52H
BLED4   DATA    53H
MLED1   DATA    54H     ;显示数据译码
MLED2   DATA    55H
MLED3   DATA    56H
MLED4   DATA    57H

KEYP    EQU     P2      ;键盘接口
LEDD    EQU     P1      ;数码管段
LEDW    EQU     P0      ;数码管位
KD      BIT     08H     ;按键去抖
KT      BIT     09H     ;按键抬键
KC      BIT     0AH     ;运行键盘处理子程序
END

⌨️ 快捷键说明

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