單片機定時器(timer0工作方式2)
COUNTEQU92;對于11.0592的晶振來說,92相當(dāng)于100us
LEDEQUP1.1
ORG0000H
MOVR0,#00H
DJNZR0,$
MOVSP,#60H
MOVR1,#00H;用R1來作為整體計數(shù)時用
MOVR2,#00H
//MOVA,TMOD
//ANLA,#11110000B
//CLRACC.3
//CLRACC.2
//CLRACC.1
//SETBACC.0
//MOVTMOD,A
MOVTMOD,#00000010B ;上面的寫法可以用這個代替,更簡練一些
MOVTH0,#(256-COUNT)
MOVTL0,#00H
CLRTF0
SETBTR0
LOOP:JNBTF0,LOOP
;
OVER:CLRTF0
INCR1
CJNER1,#100,NEXT;沒達到10ms,在進行累加定時
MOVR1,#00H
INCR2
CJNER2,#5,NEXT ;此時延時達到10*R2ms
MOVR2,00H ;重新給裝初值
CPLLED
NEXT:AJMPLOOP
END
評論