您的位置 首页 开关

单片机定时器(更精确的形式1操作)

;让LED灯每隔R1ms变化一次COUNTEQU9217;对于11.0592的晶振来说,9217相当于10msLEDEQUP1.1ORG0000HMOVR0,#00HDJNZR0,$MOVR1,00H

;让LED灯每隔R1ms改变一次

COUNTEQU9217 ;关于11.0592的晶振来说,9217相当于10ms
LEDEQUP1.1

ORG0000H
MOVR0,#00H
DJNZR0,$
MOVR1,00H;用R1来作为全体计数时用
MOVSP,#60H
MOVR1,#00H

//MOVA,TMOD
//ANLA,#11110000B
//CLRACC.3
//CLRACC.2
//CLRACC.1
//SETBACC.0
//MOVTMOD,A
MOVTMOD,#00000001B ;上面的写法可以用这个替代,更简练一些

MOVTH0,#(65536-COUNT)/256
MOVTL0,#255
CLRTF0
SETBTR0

LOOP:JNBTF0,LOOP
;
OVER:CLRTF0
MOVTH0,#(65536-COUNT)/256
MOVTL0,#255

INCR1
MOVA,R1
CJNER1,#5,NEXT;没到达50ms,在进行累加守时
CPLLED
MOVR1,#00H ;从头给装初值
NEXT:AJMPLOOP;到达50ms后,灯取反后重新开端守时

END

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/dianyuan/kaiguan/266703.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部