第5章节定时器计数器的C51编程(208KB).ppt

第5章节定时器计数器的C51编程(208KB).ppt

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
void time0_int(void) interrupt 1 { TH0=(65536-10000)/256; //重载初始值 TL0=(65536-10000)%256; i++; //每发生一次中断,计数变量加1 if (i==50) //发生50次中断,定时0.5ms { P1_1=!P1_1; i=0; //计数变量清零 } } 方法2:硬件定时器*硬件计数器 (1)T0定时器,定时器50ms,定时时间到,P1.0取反; (2)T1计数器, 计数脉冲位P1.0, 计数10次; (3)计数次数到 P1.1取反。 【例5-6】不同占空比的输出 设系统时钟频率为12MHz,编程实现:P1.1引脚上输出周期为1s,占空比为20%的脉冲信号。 (取10ms基础,100个,分别占20个、80个) 【例5-7】计数器应用 用定时器/计数器T0监视一生产线,每生产100个工件,发出一包装命令,包装成一箱,并记录其箱数。 实验1 按钮型开关模拟计数器实验 实验2 定时器实验 * 第5章 51单片机定时器/计数器的C51编程 5.1 定时器/计数器的基本知识 5.2 定时器/计数器的工作模式 5.3 定时器/计数器应用举例 5.4 实验 5.1 51单片机的定时器/计数器基本知识 51单片机有两个16位的定时器/计数器,其核心部件为加法计数器。 5.1.1 结构 5.1.2 控制寄存器 5.1.1 结构 计数功能: 是指对外部事件进行计数:计数信号来自T0(P3.4)、T1(P3.5)引脚。 定时功能: 也是通过计数器的计数功能来完成的,不过此时的计数脉冲来自单片机内部:机器周期。 5.1.2 控制寄存器 与定时器/计数器应用有关的控制寄存器有2个,分别为TCON、TMOD、TH、TL。 1、计数器控制寄存器(TCON) 2、工作方式控制寄存器(TMOD) 3、TH、TL 4、如果是中断方式,还与IE、IP寄存器有关。 5.2 工作模式4种 1.模式0 定时和计数范围: 计数器的计数值范围是:1~8192(213) 当为计数器工作方式时: 计数器的初值范围为:0~213-1; 定时时间的计算公式为: 定时时间=(213-计数初值)×定时周期 若晶振频率为6MHz,其定时周期2μs: 则最短定时时间为: Tmin=[213-(213-1)] ×2μs =2(μs) 最长定时时间为: Tmax=(213-0) ×2μs =16384(μs) 2.模式1: 定时与计数范围: 计数器的计数值范围是:1~65536(216)。 当为计数器工作方式时: 计数器的初值范围为: 0~216-1; 当为定时工作方式时: 定时时间=(216-计数初值)×定时周期 若晶振频率为12MHz,其定时周期1μs: 则最短定时时间为: Tmin=[216-(216-1)] ×1μs =1(μs) 最长定时时间为: Tmax=(216-0) ×1μs =65536(μs) 3.模式2: 计数与定时范围: 计数器的计数值范围是:1~256(28) 当为计数器工作方式时: 计数器的初值范围为:0~28-1; 当为定时工作方式时: 定时时间=(28-计数初值)×定时周期 若晶振频率为12MHz,其定时周期1μs: 则最短定时时间为: Tmin=[28-(28-1)] ×1μs =1(μs) 最长定时时间为: Tmax=(28-0) ×1μs =256(μs) 4.模式3: 5.3 应用举例 (1)TMOD的确定 (2)计数器的计数初值X 已知需要计的数N : X=2N-n 模式1: TH=(65536-n)/256; TL=(65536-n)%256; 或:TH=-n/256; TL=-n%256; 模式2: TH=TL=256-n;或: TH=TL=-n (3)定时器/计数器在中断方式工作时,需开CPU中断和源中断——编程IE寄存器; (4)启动定时器/计数器——编程TCON中的TR1或TR0位。 (5)中断类型号: 1、3 【例5-1】计数器工作方式初始化示例: 定时器/计数器0工作于计数方式,且允许中断,计数值n=100,分别令其工作在模式1和模式2,初始化编程。 模式1: TMOD=0x05; //设置计数器工作方式 TH0=(65536-100)/256; //计数器高8位TH0赋初值 TL0=(65536-100)%256; //计数器低8位TL0赋初值 EA=1;ET0=1; //中断管理

文档评论(0)

精品课件 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档