求亚龙236八位数码管显示0-7汇编语言程序

如题所述

第1个回答  2012-07-28

 

                         ORG    0000H

                         LJMP    0100H

MAIN:                MOV     SP,#70H 

                         MOV    60H,#0        ;给显示缓冲区送显示的初值 01234567

                         MOV    61H,#1

                         MOV    62H,#2     

                         MOV    63H,#3

                         MOV    64H,#4       

                         MOV    65H,#5

                         MOV    66H,#6     

                         MOV    67H,#7

 LY:                  LCALL     DISP      ;调用显示子程序  显示01234567

                        MOV     R5,#8        ;延时一段时间

LLL0:               LCALL    YS1MS         

                        DLNZ       R5,LLL0

LLL:                 SJMP      LY 

;以下为显示子程序和延时子程序 

DISP:                MOV    R0,#60H          ;指针指向显示缓冲区

                         MOV    R7,#8         ;设循环显示的次数  显示8位数据

                         CLR     C

                         MOV    R6,#00000001B   ;从p2.0开始显示  即先显示第一位

LL:                    MOV    DPTR,#TAB         ;数据指针指向显示编码表达首地址

                         MOV    A,@R0

                         MOVC  A  ,  @ A+ DPTR ;取显示编码

                         MOV     P0,A                     ;送P0口显示

                         MOV     A,R6

                         MOV     P2,A                    ;控制显示位

                         RLC      A                      ;修改显示位

                         MOV     R6,A

                         INC       R0                     ;指向下一个要显示的数据

                         LCALL    YS1MS            ;延时显示时间

                         DJNZ      R7,LL              ;4位数据没显示完 则转LL继续显示

                         RET

TAB:                 DB        0C0H,0F9H,0A4H,0B0H,99H    ;显示编码

                         DB        92H,82H,0F8H,80H,98H

 

 

YS1MS:            MOV    R5,#45            ;延时子程序

YSLL:               MOV    R4,#200

 YYLL:              DJNZ    R4,YYLL

                         DJNZ   R5,YSLL

                         RET

 

              按你的要求设计的    哈哈  试试吧   别忘给加分啊

追问

能不能附流程图?这个和我说的硬件不一样,是动态显示还是静态显示呀?

追答

可以把你的电路图 发过来 我可以按你的电路改程序
当数码管较多时,一般都是采用动态显示 本显示就是动态的

追问

想要这个的原理图和程序设计流程图就行,我还可以加分的。麻烦了

追答

好啊  可以   就是在要一个流程图是吧   一会发给你

 

     可以了吧    可以给俺加分了吧   呵呵

追问

还没行,那个仿真的图没太看懂,给个原理图呀。

本回答被提问者采纳
相似回答