DLY: MOV DJNZ MOV SETB SETB RETI
R0,#9 R0,DLY TL0,#4AH P1.0 EA
;延时36μs
;定时364μs初值赋值
3.编写程序要求:当P1.0引脚的电平正跳变时,对P1.1的输入脉冲进行计数;当P1.2引
脚的电平负跳变时,停止计数,并将计数值写入R0、R1(高位存R1,低位存R0)。 答:将P1.1的输入脉冲接入INT0,即使用T0计数器完成对P1.1口的脉冲计数。参考程序如下:
ORG 0000H LJMP MAIN ORG 000BH LJMP IT0P
MAIN: JNB P1.0,MAIN
MOV TMOD,#05H
SETB TR0 SETB ET0 SETB EA WAIT: JB P1.2,WAIT CLR EA CLR TR0 MOV R1,TH0 MOV R0,TL0 AJMP $ IT0P: INC R2 RETI
;定时器/计数器T0为计数方式1 ;启动T0,开始计数 ;允许T0中断 ;CPU开中断