标题: STC89C52RC单片机汇编语言数码管显示程序 [打印本页]

作者: vitaminaaa    时间: 2025-6-11 23:44
标题: STC89C52RC单片机汇编语言数码管显示程序
利用实验电路板提供的显示电路,6位数码管同时显示一样的数字
DUAN EQU P2.6
WEI EQU P2.7
ORG 0000H
LJMP START

ORG 0100H
START: CLR DUAN
    CLR WEI
    MOV P0, #4FH ; 数字“3”的代码
    SETB DUAN
    CLR DUAN

    MOV A, #0FEH ; 选中第一个数码管
LOOP:
    MOV P0, A
    SETB WEI
    CLR WEI
    RR A ; 改变位选
    SJMP LOOP

END
2 6位数码管同时显示不一样的数字。
DUAN EQU P2.6
WEI EQU P2.7
ORG 0000H
LJMP ST_VIEW

ORG 0100H
ST_VIEW:
    MOV R6, #6 ; 循环次数
    MOV DPTR, #TAB ; 段选查表偏移量
    MOV R7, #00H ; 位选初值
    MOV R5, #0FEH ; 位选初值

VIEW:
    MOV A, R5 ; 赋位选
    MOV P0, A ; 输出位选
    SETB WEI ; 输出位选
    CLR WEI

    MOV A, R7
    MOVC A, @A+DPTR ; 查表
    MOV P0, A ; 赋段选
    SETB DUAN ; 输出段选
    CLR DUAN ; 关闭段选
    INC R7 ; 段选偏移量加一

    MOV A, R5
    RL A ; 改变位选偏移量
    MOV R5, A ; 改变位选偏移量

    MOV P0, 00H ; 全灭段选
    SETB DUAN ; 输出段选
    CLR DUAN ; 关闭段选
    DJNZ R6, VIEW ; 6个数码管

    LJMP ST_VIEW ; 循环显示

TAB: DB 3FH, 06H, 5BH, 4FH, 66H, 6DH ; 0-5段选码

END





欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1