;*****************************************;
;试验称号:两位数码管动态显现0-99试验 ;
;作者: 龙谊 ;
;版别: VER 1.0 ;
;阐明: 选用共阴极数码管 ;
;修正: 无 ;
;编程言语: 汇编言语 ;
;*****************************************;
ORG00H
START: MOVDPTR,#TABLE;把表TABLE的地址存入数据指针
MOVR1,#00H ;计数器清零,显现从00开端
MOVR5,#50 ;设定显现距离为1秒
BEGIN: MOVA,R1 ;计数器送累加器
MOVB,#10 ;B=10
DIVAB ;除法运算,除数送A,余数送B
MOVCA,@A+DPTR ;从表中除数所指的地址取码
MOVP0,A ;码由P0显现,即显现两位数的十位,段选信号
MOVP2,#0FDH ;位选由P2操控
CALLDELAY ;调延时子程序
MOVP2,#0FFH ;安稳动态显现处理,PROTUES仿真必加,实践电路测验可不必此行
MOVA,B ;将余数送A
MOVCA,@A+DPTR ;从表中余数所指的地址取码
MOVP0,A ;码由P0显现,即显现两位数的个位,段选信号
MOVP2,#0FEH ;位选由P2操控
CALLDELAY ;调延时子程序
MOVP2,#0FFH ;安稳动态显现处理,PROTUES仿真必加,实践电路测验可不必此行
DJNZR5,BEGIN ;显现时刻=1秒?不等于跳到BEGIN
MOVR5,#50 ;等于从头设定延时时刻为1秒
INCR1 ;计数器加1
CJNER1,#100,BEGIN;计数器=100?不等于回来BEGIN
JMPSTART ;计数器=100回来开端从头计数
DELAY: MOVR6,#20 ;选用12MHZ晶振,延时时刻为0.01秒
D1: MOVR7,#248
DJNZR7,$
DJNZR6,D1
RET
TABLE: DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH ;共阴极数码管0-9的编码
END
声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/bandaoti/259935.html