《单片机原理及应用》课件 第4章 MCS - 51单片机定时器计数器原理及应用_第1页
《单片机原理及应用》课件 第4章 MCS - 51单片机定时器计数器原理及应用_第2页
《单片机原理及应用》课件 第4章 MCS - 51单片机定时器计数器原理及应用_第3页
《单片机原理及应用》课件 第4章 MCS - 51单片机定时器计数器原理及应用_第4页
《单片机原理及应用》课件 第4章 MCS - 51单片机定时器计数器原理及应用_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2026/02/09MCS-51单片机定时器/计数器原理及应用汇报人:┢┦aΡpyCONTENTS目录01

定时器/计数器的结构02

方式控制寄存器TMOD03

控制寄存器TCON04

定时器/计数器的4种工作方式05

对外部输入信号的要求06

定时器/计数器的编程和应用定时器/计数器的结构01基本结构与工作模式片内定时器/计数器配置MCS-51单片机片内集成T0(P3.4引脚)和T1(P3.5引脚)两个定时器/计数器,可独立工作,满足定时或计数功能需求。核心工作模式分类支持定时器模式(对系统时钟12分频后内部脉冲计数)和计数器模式(对外部引脚负跳变脉冲计数),均为增1计数器,复位初值为0,可通过指令设置新初值。四种工作方式概述通过TMOD寄存器的M1、M0位配置4种工作方式:方式0(13位计数器)、方式1(16位计数器)、方式2(8位自动重装)、方式3(T0拆分为两个8位计数器,T1停止计数)。结构框图解析

核心控制寄存器包含TMOD(工作方式控制寄存器,字节地址89H,不可位寻址)和TCON(控制寄存器,字节地址88H,可位寻址),分别用于模式/方式选择及启停、中断标志管理。

定时器模式信号来源定时器模式下,计数信号为系统时钟振荡器经12分频后的内部脉冲,周期固定(如12MHz晶振对应1μs/脉冲),通过计数次数计算定时时间。

计数器模式信号来源计数器模式下,计数信号来自外部引脚T0/P3.4或T1/P3.5,检测到引脚负跳变时计数器加1,需满足最高计数频率为晶振频率的1/24(如12MHz晶振允许最高500kHz外部脉冲)。方式控制寄存器TMOD02TMOD寄存器格式与功能TMOD寄存器基本特性

字节地址为89H,不可位寻址,高4位控制T1,低4位控制T0,用于选择定时器/计数器的工作模式和工作方式。GATE门控位功能

GATE=0时,仅由TRx控制定时器/计数器运行;GATE=1时,由TRx和外中断引脚(INT0/INT1)共同控制运行。M1、M0工作方式选择位

2位编码对应4种工作方式,决定计数器位数及工作模式,如00为方式0(13位)、01为方式1(16位)等。C/T模式选择位

C/T=0时为定时器模式,对12分频后的内部脉冲计数;C/T=1时为计数器模式,对外部引脚(T0/P3.4或T1/P3.5)负跳变脉冲计数。工作方式选择表解析

方式0(M1=0,M0=0)13位定时器/计数器,由TLx低5位和THx高8位构成,计数溢出后需软件重装初值,适用于兼容早期MCS-48单片机。

方式1(M1=0,M0=1)16位定时器/计数器,THx和TLx均为8位,计数范围更大,溢出后需软件重装初值,是实际应用中常用方式。

方式2(M1=1,M0=0)8位自动重装初值计数器,TLx计数溢出时自动将THx初值载入TLx,无需软件干预,定时精度高,适用于循环定时场景。

方式3(M1=1,M0=1)仅适用于T0,将其拆分为两个独立8位计数器(TL0和TH0),TH0固定为定时器模式并占用T1的TR1和TF1,T1此时通常用作波特率发生器。控制寄存器TCON03TCON寄存器格式与位功能TCON寄存器基本特性字节地址为88H,可位寻址,位地址范围88H~8FH,包含与定时器/计数器相关的高4位和与外部中断相关的低4位。TF1、TF0计数溢出标志位计数器计数溢出时自动置1。查询方式下需软件清0;中断方式下进入中断服务程序后由硬件自动清0,用于标识计数完成状态。TR1、TR0计数运行控制位TRx=1时启动计数,TRx=0时停止计数。当GATE=0时,仅由TRx控制计数;GATE=1时,需TRx与INTx引脚共同控制,可通过软件置1或清0。定时器/计数器的4种工作方式04方式0(13位定时器/计数器)13位计数器构成由TLx(x=0,1)的低5位和THx的高8位构成13位计数器,TLx低5位溢出向THx进位,THx计数溢出则置位TCON中的TFx标志。C/T位工作模式切换C/T=0时为定时器模式,对系统时钟振荡器12分频后的脉冲计数;C/T=1时为计数器模式,对T0(P3.4)或T1(P3.5)引脚上的外部负跳变脉冲计数。GATE位运行控制逻辑GATE=0时,仅由TRx控制计数启停;GATE=1时,需TRx=1且INTx引脚为高电平才允许计数,实现外部信号协同控制。方式1(16位定时器/计数器)16位计数器结构由THx高8位和TLx低8位构成16位计数器,计数范围0~65535,溢出后需软件重装初值,与方式0的13位计数器相比位数增加3位。控制状态位兼容性GATE、C/T、TFx、TRx等控制状态位含义与方式0完全相同,操作逻辑一致,仅计数器位数不同。应用场景差异相比方式0,方式1因16位计数范围更大,适用于需更长定时/计数周期的场景,且初值计算更直观,实际应用中优先选用。方式2(8位自动重装定时器/计数器)

自动重装初值机制TLx作为8位计数器,THx作为常数缓冲器,TLx溢出时自动将THx中初值加载至TLx,无需软件干预,实现循环定时/计数。

硬件结构特点计数溢出时,在置位TFx标志的同时完成初值自动装载,简化程序设计,避免因软件重装初值导致的定时误差。

典型应用优势适用于需要精确定时且周期固定的场景(如串行通信波特率发生器),省去初值重装指令执行时间,提高定时精度。方式3(T0的双8位计数器模式)

01T0的双计数器结构T0分为TLO和TH0两个独立8位计数器,TLO使用T0的C/T、GATE、TR0、INT0控制位,TH0固定为定时器模式,占用T1的TR1和TF1。

02T1在方式3下的工作状态T0工作在方式3时,T1可设置为方式0、1、2,用于串行口波特率发生器或无需中断的场合,设置为方式3时T1停止计数。

03资源占用特性TH0占用T1的中断请求源TF1,因此T1在方式3下无法产生中断,仅可作为简单定时器或波特率发生器使用。对外部输入信号的要求05外部计数脉冲的采样与计数01负跳变触发计数原理计数器模式下,外部输入信号产生由1→0的负跳变时,计数器值增1。每个机器周期的S5P2期间采样外部引脚,连续两个机器周期分别采得1和0时,下一机器周期S3P1计数器加1。02负跳变确认的机器周期确认一次负跳变需2个机器周期(24个振荡周期),故计数器对外部输入脉冲的最高计数频率为系统振荡器频率的1/24。03不同晶振频率下的最高输入脉冲频率晶振频率为6MHz时,允许输入的最高脉冲频率为250kHz;晶振频率为12MHz时,最高输入脉冲频率为500kHz。外部输入信号的电平保持要求

电平保持的必要性为确保某一给定电平在变化前能被采样一次,该电平至少需保持一个机器周期,以保证采样的准确性。

外部输入信号要求示意图如图5.12所示,外部输入信号的电平保持时间应不小于一个机器周期(T),以满足计数器对信号的正确采样与计数。定时器/计数器的编程和应用06LED循环闪烁控制

TMOD寄存器初始化定时器T0工作于方式1(16位定时器),C/T=0设为定时模式,GATE=0仅由TR0控制运行,TMOD初始化为0X01。

计数初值计算晶振频率12MHz时,机器周期1μs,定时5ms需计数5000次。初值X=65536-5000=60536,即0XEC78(TH0=0XEC,TL0=0X78)。

IE寄存器设置开启总中断EA=1,允许T0中断ET0=1,使能定时中断响应。

程序编写思路主函数初始化TMOD、初值、中断并启动T0;中断服务程序每5ms触发一次,累计100次(0.5S)后翻转P2口电平,控制8个LED闪烁。外部事件计数统计

计数模式配置定时器T0工作于方式1计数模式,C/T=1,计数脉冲来自T0(P3.4)引脚,TMOD配置为0X05。

计数初值设置初值设为255(TH0=0XFF,TL0=0XFF),每检测到一次外部负跳变(按钮按下)计数器加1,溢出时触发中断。

数码管显示逻辑定义段码数组DSY_CODE存储0-9显示码,计数值count通过P0(十位)和P2(个位)口输出,实现按一次按钮数字加1。

中断与优先级设置使能T0中断(ET0=1)和外部中断0(清零功能),设置T0中断优先级高于外部中断,确保计数准确性。方波与音频信号生成2ms周期方波实现定时器T0方式1定时1ms,中断服务程序中翻转P2.0引脚电平,高低电平各1ms,形成周期2ms方波。初值计算:1ms定时对应初值0XFC18(12MHz晶振)。1KHz音频信号原理1KHz音频信号周期1ms,通过定时0.5ms翻转P2.0引脚,产生500Hz方波(基频1KHz)。定时器初值与2ms方波相同,中断服务程序中状态位切换实现信号输出。程序逻辑设计主函数初始化TMOD、初值及中断,启动定时器后进入空循环;中断服务程序负责重新加载初值、翻转引脚状态,无需主循环干预。简易秒表设计

01计时功能定义两位数码管显示0.1-9.9s,按键控制:第一次按下开始计时,第二次停止,第三次清零,计时到9.9s自动归零。

02定时器配置定时器T0方式1定时50ms,每2次中断(100ms)计为0.1s,累计100次(10s)后清零。初值计算:50ms定时对应(65535-50000)=15536,即TH0=0X3C,TL0=0XB0。

03按键处理逻辑通过按键状态标志key-Flag-Idx控制状态切换,结合延时消抖(DelayMS(10)),实现开始/停止/清零功能的可靠触发。

04显示刷新机制中断服务程序中每0.1s更新计数值second-counts,通过P0(十位)和P2(个位)口输出段码,动态刷新数码管显示。门控位应用之脉冲宽度测量

门控位GATE功能利用TMOD设置GATE=1,T0运行受TR0和INT0(P3.2)引脚共同控制。当INT0为高电平时,TR0=1启动计数;INT0为低电平时停止计数,实现脉冲宽度测量。

定时器与中断配置定时器T0方式1(16位定时),定时50ms,溢出中断记录次数。初值TH0=0X14,TL0=0X13(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论