單片機(jī)定時(shí)問題:亮100ms、滅300ms
6MHz晶振,用定時(shí)計(jì)數(shù)器1,采用中斷方式,通過P1.0讓一個(gè)發(fā)光二極管亮100ms、滅300ms,周而復(fù)始。
匯編編程實(shí)現(xiàn)。
最佳答案:
;下列程序,經(jīng)過編譯、仿真,符合要求:
ORG 0000H
SJMP START
ORG 000BH
SJMP T0_INT
START:
MOV TMOD, #01H
MOV TH0, #03CH
MOV TL0, #0B0H ;100ms@6MHz
SETB TR0
SETB ET0
SETB EA
MOV R2, #4
CLR P1.0
SJMP $ ;設(shè)置結(jié)束,原地轉(zhuǎn)移,等待中斷
T0_INT:
MOV TH0, #03CH
MOV TL0, #0B0H ;100ms@6MHz
SETB P1.0 ;100ms就上升為高電平
DJNZ R2, T0_END ;不夠四次,退出中斷
MOV R2, #4
CLR P1.0 ;每中斷四次,輸出一次低電平
T0_END:
RETI
END
;----------------------------------