使用动态数码管显示3.1415926和11.059260,间隔时间为1s,各位大佬,怎么写啊

发布时间:
浏览次数: 654

好酷屋教程网小编为您收集和整理了使用动态数码管显示3.1415926和11.059260,间隔时间为1s,各位大佬,怎么写啊的相关教程:使用中断就行了啊,C语言也是这样的,编译器会把C语言转换成汇编语言。然后再转换成HEX文件。代码如下:ORG00HLJMPMAINORG001BH    ;定时器1入口地址LJMPTIMER1_ISR

  使用中断就行了啊,C语言也是这样的,编译器会把C语言转换成汇编语言。然后再转换成HEX文件。

代码如下:
ORG 00H
LJMP MAIN
ORG 001BH         ;定时器1入口地址
LJMP TIMER1_ISR
ORG 0100H
MAIN:
MOVTMOD,#10H
MOVTL1,#0F0H
MOVTH1,#0D8H ;赋初值,定时10毫秒
SETBTR1
MOVIE,#88H
MOVR2,#20 ;R2的值可以随时修改
MOVR3,#100;100 * 10MS = 1S
DISP:
MOVA,R2 ;南北方向显示初值R2=20秒
 MOVB,#10
DIVAB
MOVP0,A       ;段选
MOVP2,#01     ;位选
ACALLD1ms ;延时
MOV P2,#00 ;清零
MOV P0,B  
MOV P2,#02 
ACALL D1ms 
MOV P2,#00     ;清零
 LJMPDISP     ;这个地方就一直循环,怎样实现定时器的作用??
;*********** 定 时 1 秒 中 断 ***********
TIMER1_ISR:
MOVTL1,#0F0H
MOVTH1,#0D8H ;赋初值,定时10毫秒
PUSHACC
PUSHPSW
DJNZR3,TIMER1_END
MOVR3,#100
MOVA,R2
DECR2
JNZTIMER1_END
MOVR2,#20
TIMER1_END:
POPPSW
POPACC
RETI
;************ 延 时 D1ms 程序***********
D1ms: 
MOV R7,#02H
DL:
MOV R6,#0FFH
DL1:
DJNZ R6,DL1
DJNZ R7,DL
RET
;***************************************
END。

以上就是好酷屋教程网小编为您收集和整理的大佬,数码管,间隔相关内容,如果对您有帮助,请帮忙分享这篇文章^_^

本文来源: https://www.haoku5.com/youxi/6412827142413591d80d64e4.html

相关推荐

    分享到: