註:用T1計數實現。T1工作於計數方式時,計數脈沖通過T1(p3.5)輸入。T0定時到對T1(p3.5)取反壹次,則T1(p3.5)每20ms產生壹個計數脈沖,那麽定時500ms只需2次。設T1工作於方式2,T0工作於方式1,定時方式;則這時方式控制字為61H.定時計數器T0,T1都采用中斷方式工作。
程序如下:
ORG
000H
LJMP
MAIN
ORG
000BH
MOV
TH0,#0D8H
MOV
TL0,#0F0H
CPL
P3.5
RETI
ORG
001BH
CPL
P1.1
RETI
ORG
0100H
MAIN:
MOV
TMOD,#61H
MOV
TH0,#0D8H
MOV
TL0,#0F0H
MOV
R2,#00H
MOV
TH1,#0E7H
MOV
TL1,#0E7H
SETB
EA
SETB
ETO
SETB
ET1
SETB
TR0
SETB
TR1
SJMP
$
END
有壹點覺得很奇怪:它是通過對T1(p3.5)取反計數的,但是每取反兩次不就又變回原來的值了嗎,到頭來哪兒起到計數作用了,還有就是R2到底起到什麽作用了。本人初學,問題可能較簡單,莫見笑