用一个定时器定时50us,也可以达到题目要求。
在我的空间里面有类似的问题和解答。
------------------------
ORG 0000H
SJMP START
ORG 001BH ;T1中断入口.
SJMP T1_INT
START:
MOV TMOD, #20H ;设置T1定时方式2
MOV TH1, #206 ;自动重新装入方式.
MOV TL1, #206 ;定时时间50us@12MHz
MOV IE, #10001000B ;开放总中断和T1中断.
SETB TR1 ;启动T1
MOV R2, #3 ;周期是3×50us
SJMP $ ;等着吧.
T1_INT:
SETB P1.0 ;输出高.
DJNZ R2, T1_END ;R2-1
CLR P1.0 ;减到0,就输出低电平.
MOV R2, #3
T1_END:
RETI ;中断返回.
END ;完.