定时计数器结构及工作原理知识讲稿.pptVIP

  • 2
  • 0
  • 约4.4千字
  • 约 23页
  • 2018-12-08 发布于天津
  • 举报

定时计数器结构及工作原理知识讲稿.ppt

定时计数器结构及工作原理知识讲稿.ppt

定时:对片内振荡器的f0/12(机器周期)进行计数。 定时时间=(2n-初值)×机器 周期;定时/计数器0 可以工作在模式 0~3 定时/计数器1 可以工作在模式 0~2; ③ GATE 一般不用,但是当GATE=0时,禁止INTi。;START:MOV TMOD,#06H ;设置T0为模式2,外部计数方式 MOV TH0,#0FFH ;T0计数器初值255 MOV TL0,#0FFH SETB TR0 ;启动T0计数 LOOP1:JBC TF0,PTF01 ;查询T0溢出标志,TF0=1转移,且TF0=0. SJMP LOOP1 PTF01: CLR TR0 ;停止计数 MOV TMOD,#02H ;设置T0为模式2,定时方式 MOV TH0,#06H ;T0定时500us MOV TL0,#06H CLR P1.0 ;p1.0清0 SETB TR0 ;启动定时500us LOOP2:JBC TF0,PTF02 ;查询溢出标志,定时到TF0=1转移,且TF0=0. SJMP LOOP2 PTF02: SETB P1.0 ;P1.0置1 CLR TR0 ;停止计数 SJMP START;模式3:仅对定时/计数器0有效 T0?TH0+TL0 对定时/计数器1,停止计数。; 但T1仍可工作在方式 0~2。 这时:由于TR1、TF1被T0占用,仅用T1控制位C/T切换其定时器或计数器工作方式就可使T1工作。 计数器溢出时(13、 16或 8 bit时),只能将输出送入串口或用于不需要中断的场合。 当T1需要用作串行口波特率发生器时,T0才设置为工作方式3,这时,常将T1设置为工作方式2。; 当工作于定时状态时,由于定时/计数器是计数机器周期,每个机器周期包括12个振荡周期,则有: 1个机器周期 = 2us(6MHz) 或 = 1us(12MHz);③ 对以上要求编程如下(以定时1ms中断方式控制P1.0输出方波): ORG 0000H RESET: AJMP MAIN ORG 000BH AJMP IT0P ORG 0100H MAIN: MOV SP,#60H ACALL PT0MD HERE: AJMP HERE PT0MD: MOV TMOD, #00H MOV TL0, #0CH MOV TH0, #0F0H;例2: 用方式1在P1.0输出脉冲 ; ORG 0100H MAIN: MOV SP ,#60H MOV TMOD ,#00 ; MOV TL0,#0CH ; MOV TH0 ,#0F0H ; SETB EA ;CPU开中断 SETB ET0 ;允许定时器0中断 SETB TR0 ;启动定时器0工作 HERE : AJMP HERE ;或用 SJMP $ ORG 0200H ;中断服务程序 TOINT : MOV TL0 , #0CH ;重新装入时间常数 MOV TH0 , #0F0H CPL P1.0 ;在P1.0脚得到方波 RETI; ② 以查询方式 ORG 0000H AJMP MAIN ORG 2000H MAIN: MOV TMOD, #01 ;定时器0工作在方式1 MOV TL0 , #0CH MOV TH0, #0FEH SETB TR0 ;启动定时器0工作 LOOP: JNB TF0 ,$ ;查询TF0,若计数器未溢出,原地等待 CLR TF0 CPL P1.0 ;得到方波 MOV TL0,#0CH

文档评论(0)

1亿VIP精品文档

相关文档