51单片机中的定时器和计数器

原创 2013年12月02日 17:37:06



从上面定时器/计数器结构图中我们可以看出,16位的定时/计数器分别由两个8位专用寄存器组成,即:T0由TH0和TL0构成;T1由TH1和TL1 构成。其访问地址依次为8AH-8DH。每个寄存器均可单独访问。这些寄存器是用于存放定时或计数初值的。此外,其内部还有一个8位的定时器方式寄存器 TMOD和一个8位的定时控制寄存器TCON。这些寄存器之间是通过内部总线和控制逻辑电路连接起来的。TMOD主要是用于选定定时器的工作方式; TCON主要是用于控制定时器的启动停止,此外TCON还可以保存T0、T1的溢出和中断标志。当定时器工作在计数方式时,外部事件通过引脚T0 (P3.4)和T1(P3.5)输入。

定时计数器的原理:

一、定时器/计数器为定时工作方式时,

计数器的加1信号由振荡器的12分频信号产生,即每过一个机器周期,计数器加1,直至计满溢出为止。显然,定时器的定时时间与系统的振荡频率有关。因一个机器周期等于12个振荡周期,所以计数频率fcount=1/12osc。如果晶振为12MHz,则计数周期为:

T=1/(12×106)Hz×1/12=1μs

这是最短的定时周期。若要延长定时时间,则需要改变定时器的初值,并要适当选择定时器的长度(如8位、13位、16位等)。

二、定时器/计数器为计数工作方式时,

通过引脚T0和T1对外部信号计数,外部脉冲的下降沿将触发计数。计数器在每个机器周期的S5P2期间采样引脚输入电 平。若一个机器周期采样值为1,下一个机器周期采样值为0,则计数器加1。此后的机器周期S3P1期间,新的计数值装入计数器。所以检测一个由1至0的跳 变需要两个机器周期,故外部事件的最高计数频率为振荡频率的1/24。例如,如果选用12MHz晶振,则最高计数频率为0.5MHz。虽然对外部输入信号 的占空比无特殊要求,但为了确保某给定电平在变化前至少被采样一次,外部计数脉冲的高电平低电平保持时间均需在一个机器周期以上。


当CPU用软件给定时器设置了某种工作方式之后,定时器就会按设定的工作方式独立运行,不再占用CPU的操作时间,除非定时器计满溢出,才可能中断CPU 当前操作。CPU也可以重新设置定时器工作方式,以改变定时器的操作。由此可见,定时器是单片机中效率高而且工作灵活的部件。

综上所述,我们已知定时器/计数器是一种可编程部件,所以在定时器/计数器开始工作之前,CPU必须将一些命令(称为控制字)写入定时/计数器。将控制字写入定时/计数器的过程叫定时器/计数器初始化。在初始化过程中,要将工作方式控制字写入方式寄存器,工作状态字(或相关位)写入控制寄存器,赋定时/计 数初值。下面我们就提出的控制字的格式及各位的主要功能与大家详细的讲解。

控制寄存器 定时器/计数器T0和T1有2个控制寄存器-TMOD和TCON,它们分别用来设置各个定时器/计数器的工作方式,选择定时或计数功能,控制启动运行,以及作为运行状态的标志等。其中,TCON寄存器中另有4位用于中断系统。


数据结构视频教程 清华大学严蔚敏主讲 全48讲完整版asf格式

迅雷下载:  数据结构(清华严蔚敏)01.rar 迅雷下载:  数据结构(清华严蔚敏)02.rar 迅雷下载:  数据结构(清华严蔚敏)03.rar 迅雷下载:  数据结构(清华严蔚敏)04.r...

经典数据结构视频教程下载 (清华大学 严蔚敏)

可以用迅雷下载的. 经典的数据结构视频教程,由清华大学数据结构教材作者严蔚敏老师主讲。 HTTP 下载地址,共3.85 GB: 第一章 绪论 http://doworks.cn/uc/...

浅谈51单片机(c语言)中断以及定时器(计数器)的使用

中断和定时器是51中最为重要的部分,下面就来详细的讲一下中断以及定时器(计数器)的使用。  首先我们先来说一下中断,很多人都会把中断和定时器混淆,这里要强调的是,中断可以采用定时器(计数器)溢出的方式...

基于proteus的51单片机仿真实例五十八、定时器/计数器T1的定时实例

本系列文章讲述了基于proteus仿真的51单片机学习,内容全面,不仅讲解电路原理,还讲解了单片机c语言,实例丰富,内容全面。...

51单片机的定时器/计数器概念

一、MCS-51单片机的定时器/计数器概念 单片机中的定时器和计数器其实是同一个物理的电子元件,只不过计数器记录的是单片机外部发生的事情(接受的是外部脉冲),而定时器则是由单片机自身提供的一个非...

MCS-51单片机计数器定时器详解

转载自:http://www.360doc.com/content/14/0219/10/12891049_353743057.shtml 80C51单片机内部设有两个16位的可编程定时器/计数器。...

51单片机-定时器/计数器

定时器顾名思义就是设定一段时间,这段时间到了之后可以触发中断,在中断中处理我们的任务。定时器还有一个功能就是计数,每次一个出发定时器内部的TH.TL就会加一,如果加满了就会产生溢出中断。那如何控制定时...

转 MCS-51单片机的定时器/计数器概念 非常好的寄存器关系图

一、MCS-51单片机的定时器/计数器概念 单片机中的定时器和计数器其实是同一个物理的电子元件,只不过计数器记录的是单片机外部发生的事情(接受的是外部脉冲),而定时器则是由单片机自身提供的一个非...
  • phker
  • phker
  • 2015年03月17日 21:00
  • 4062

MCS-51单片机的定时器/计数器概念 寄存器关系图

一、MCS-51单片机的定时器/计数器概念 单片机中的定时器和计数器其实是同一个物理的电子元件,只不过计数器记录的是单片机外部发生的事情(接受的是外部脉冲),而定时器则是由单片机自身提供的一个非...

关于51单片机学习中计数器/定时器中断的理解

对于单片机初学者来说,为了达到延时控制时间等目的,常常让单片机计算for循环函数,随着学习的深入,不可避免的,我们开始逐渐接触到了定时器/计数器中断来控制时间,这里针对定时器/计数器中断,专门作出如下...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:51单片机中的定时器和计数器
举报原因:
原因补充:

(最多只允许输入30个字)