第六章_定时器__计数器.ppt

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六章_定时器__计数器

第六章 定时器及应用;§6.1 定时/计数器概述;1、结构;结构;∵1个机器周期=12振荡脉冲;§6.2 定时器的控制;一、工作模式控制寄存器TMOD;GATE;二、控制寄存器TCON;一、模式0及应用;方式0 M1M0=00 ;编制初始化程序: 1)写TMOD; 2)确定IE、IP; 3)写计数初值; 4)启动计数(TRi) ;= 0001 1110 000 0 1100B, ; ORG 0000H LJMP MAIN ORG 000BH LJMP INSE1 ORG 1000H MAIN: MOV SP,#60H MOV TL0,#0CH MOV TH0,#0F0H MOV TMOD,#00H ;(2)查询方式;二、模式1及应用;方式1 M1M0=01 ;三、模式2及应用;模式2 M1M0=10 ;例:当P3.4引脚上的电平发生负跳变时,从P1.0输出一个500μs同步脉冲。请编程实现该功能。;(2)计算初值;(3)程序清单;四、模式3及应用;振荡器; TH1 (8位); 例:设某用户系统中已使用了两个外部中断源,并置定时器T1工作在模式2,作串行口波特率发生器用。现要求再增加一个外部中断源,并由P1.0引脚输出一个5kHz的方波。fosc=12MHz。 ;TL0的计数初值为FFH,TH0的计数初值X计算如下: P1.0的方波频率为5kHz,故周期T=1/(5kHz)=0.2ms 用TH0定时100μs时,X=256-100×12/12=156 ORG 0000H LJMP MAIN ORG 000BH LJMP TLOINT ORG 001BH LJMP THOINT; ORG 0030H MAIN: MOV TMOD,#27H;T0为模式3,计数方式;T1为模式2,定时方式 MOV TL0,#0FFH ;置TL0计数初值 MOV TH0,#156 ;置TH0计数初值 MOV TH1,#data ; data是根据波特率要求设置的常数(即初值) MOV TL1,#data MOV TCON,#55H ;外中断0,外中断1边沿触发,启动T0 MOV IE,#9FH ;开放全部中断 SJMP $ ( ……) TL0溢出中断服务程序(由000BH转来) TLOINT:MOV TL0,#0FFH ;TL0重赋初值 (中断处理) RETI TH0溢出中断服务程序(由001BH转来) THOINT:MOV TH0,#156 CPL P1.0 RETI; T0定时/计数,而T1停止计数,但可作波特率发生器。T0分成两独立定时/计数器TL0和TH0。 TL0使用C//T、GATE、TR0、/INT0、TF0定时/计数, TH0使用TR1、TF1 因此,只能用于定时 模式3时,T1可定时为模式0、1、2的定时/计数,但不可中断,所以一般只作串口波特率发生器用。 ;小结:1、89C51单片机内有几个定时计数器? 如何计数? 2、T0、T1有几种工作模式? 3、编程应用前要事先确定的参数有几个? ; ; ORG 0000H LJMP MAIN ORG 0050H MAIN:MOV TMOD,#99H ;T0、T1均工作在定时,

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档