编写单片机计数器程序对脉冲进行计数程序
扫描二维码
随时随地手机看文章
编写一段程序,功能要求为:当P1.0引脚的电平正跳变时,对P1.1的输入脉冲进行计数;当P1.2引脚的电平负跳变时,停止计数,并将计数值写入R0、R1(高位存R1,低位存R0)。
解答:将P1.1的输入脉冲接入INT0,即使用T0计数器完成对P1.1口的脉冲计数。编写程序如下:
ORG0000H
LJMPMAIN
ORG000BH
LJMPIT0P
MAIN:JNBP1.0,MAIN
MOVTMOD,#05H;定时器/计数器T0为计数方式1
SETBTR0;启动T0,开始计数
SETBET0;允许T0中断
SETBEA;CPU开中断
WAIT:JBP1.2,WAIT
CLREA
CLRTR0
MOVR1,TH0
MOVR0,TL0
AJMP$
IT0P:INCR2
RETI