技术文档

单片机定时器方式0 单片机定时器0的使用

小编 2025-09-16 技术文档 23 0

单片机定时器0的使用

一:首先选择使用哪组寄存器?

问:8051单片机有哪些定时器?

答:8051单片机拥有3组定时器,分别是定时器0(T0) 定时器1(T1) 定时器2(T2)。

问:如何选择定时器?

答: 8051单片机定时器需要通过IE(中断允许控制器)进行设置,ET0,ET1 分别对应定时器0 定时器1

ET0,ET1 分别在IE寄存器的第1位和第3位 对应 IE = 0000 0010 IE = 0000 0100

二:选择定时器的工作方式

问:如何设置单片机的定时器是工作在定时模式,还是计数模式?

答:8051单片机的工作方式设定需要通过TMOD寄存器来设置,TMOD寄存器不可以通过位寻址。

TMOD寄存器的高4位用于设置定时器1

TMOD寄存器的第4位用于设置定时器0

定时器0 C/T TMOD的 第3位设置为0为定时模式,设置为1为计数模式 0000 0100

定时器1 C/T TMOD的 第6位设置为0为定时模式,设置为1为计数模式 0100 0000

三:选择定时器的方式选择功能

问:如何设置单片机定时器的工作方式选择功能

答:定时器的方式选择功能由TMOD寄存器来设定,不可以位寻址。

TMOD的第0位第1位 对应定时器0

TMOD的第4位第5位 对应定时器1

方式0 M1=0 M0=0 13位定时器/计数器

方式1 M1=0 M0=1 16位定时器/计数器

方式2 M1=1 MO=0 自动重载8位定时器/计数器

方式3 M1=1 M0=1 T0分为2个8位独立计数器,T1无方式3

「硬件小百科」单片机定时器计数器的方式控制字

与定时/计数有关两个特殊功能寄存器

在单片机中有两个特殊功能寄存器与定时/计数有关,这就是TMOD和TCON。

顺便说一下,TMOD和TCON是名称,我们在写程序时就能直接用这个名称来指定它们,当然也能直接用它们的地址89H和88H来指定它们(其实用名称也就是直接用地址,汇编软件帮你翻译一下而已)。

<TMOD结构>

从图1中我们能看出,TMOD被分成两部份,每部份4位。分别用于控制T1和T0,至于这里面是什么意思,我们下面介绍。

<TCON结构>

从图2中我们能看出,TCON也被分成两部份,高4位用于定时/计数器,低4位则用于中断(我们暂不管)。而TF1(0)我们上节课已提到了,当计数溢出后TF1(0)就由0变为1。原来TF1(0)在这儿!那么TR0、TR1又是什么呢?看上节课的图。

计数脉冲要进入计数器还真不不难,有层层关要通过,最起码,就是TR0(1)要为1,开关才能合上,脉冲才能过来。因此,TR0(1)称之为运行控制位,可用指令SETB来置位以启动计数器/定时器运行,用指令CLR来关闭定时/计数器的工作,一切尽在自已的掌握中。

<单片机定时器/计数器结构>

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

工作方式0

当TMOD中的M1,M2设置成0,0时,定时器/计数器就工作在方式0,工作方式0是一种13位定时器/计数器方式。

工作方式1

工作方式1为16位定时器/计数其结构和操作与工作方式0基本相同,唯一的区别是工作方式1的计数器由TL0的8位和TH0的8位共同组成16位的计数器,其定时时间为:

t=(216-T0初值)×时钟周期×12

工作方式2

方式2为8位自动装入时间常数方式,方式0和方式1若用于循环重复定时/计数时(如产生连续脉冲信号),每次计数满后溢出时,寄存器TL0和TH0全部为0,所以第二次计数还得重新装入时间初值。这样不仅麻烦而且影响精度。方式2避免了上述缺陷它的定时时间为:

t=(28-T0初值)×时钟周期×12

工作方式3

方式3:特殊工作方式只适用于T0,除了是用8位寄存器TL0外,其功能和操作与方式0和方式1完全相同,但是,另一个计数器TH0只可以工作在内部定时器模式下。工作方式3为T0增加了一个8位的定时器。

定时器/计数器的定时/计数范围

工作方式0:13位定时/计数方式,因此,最多能计到2的13次方,也就是8192次。

工作方式1:16位定时/计数方式,因此,最多能计到2的16次方,也就是65536次。

工作方式2和工作方式3,都是8位的定时/计数方式,因此,最多能计到2的8次方,也说是256次。

预置值计算:用最大计数量减去需要的计数次数即可。

例:流水线上一个包装是12盒,要求每到12盒就产生一个动作,用单片机的工作方式0来控制,应当预置多大的值呢?对了,就是8192-12=8180。

以上是计数,明白了这个道理,定时也是一样。

以上所有信息仅作为学习交流使用,不作为任何学习和商业标准。若您对文中任何信息有异议,欢迎随时提出,谢谢!

关于云创硬见

云创硬见是国内最具特色的电子工程师社区,融合了行业资讯、社群互动、培训学习、活动交流、设计与制造分包等服务,以开放式硬件创新技术交流和培训服务为核心,连接了超过30万工程师和产业链上下游企业,聚焦电子行业的科技创新,聚合最值得关注的产业链资源, 致力于为百万工程师和创新创业型企业打造一站式公共设计与制造服务平台。

相关问答

、MCS-51 单片机定时器 工作 方式0 是指的什么工作方式?

工作方式0是13位定时器模式,这是为了与8048兼容而设计的.工作方式0是13位定时器模式,这是为了与8048兼容而设计的.

51 单片机 定时器 的四种工作 方式 的各自定时范围?

工作方式013位计数模式最大范围0-8191工作方式116位计数模式最大范围0-65535工作方式28位自动重装计数模式0-255工作模式3(只有T0)TL0和TH0将被分割...

51 单片机 MCS-51,如果采用的晶振的频率为3MHz, 定时器 /计数器...

[最佳回答]方式0:2^13/3M*12=0.032768s;方式1:2^16/3M*12=0.262144s;方式2:2^8/3M*12=0.001024s;方式0:2^13...

89c51 单片机定时器 有哪几种工作 方式 ,它们之间有什么区别?

有四种工作模式:模式0,模式1,模式2,模式3(1)模式0:选择定时器的高8位和低5位组成一个13位定时器/计数器。TL低5位溢出时向TH进位,TH溢出时向中断标志位...有...

8051 单片机定时器 原理?

8051单片机定时器工作原理及用法TMOD:控制定时器的工作方式。8个bit,高四位bit控制T1,、低四位bit控制T0。因为定时器有4种工作方式;TMOD=0x00(工...

单片机 定时 ET0=1什么意思,,要详解。。 - 懂得

单片机定时ET0=1的意思是51单片机的定时器0允许中断。ET0是51系列单片机定时器0的中断允许开关,定时器中断是为了满足定时或计数溢出处理的需要而设...

51 单片机 定时器 计数器使用方法?

先说下定时器使用方法:定时器使用方法:设置工作模式(设置特殊功能寄存器TMOD)设置计数寄存器处置设置TCON,通过TR0置1使计时器开始计数判断TCON寄存器T...

单片机 倒计时程序编写?

工作过程:首先上电之后先调整定时时间,每按一次加键定时加十分钟,减键同理,当设置好分钟之后按下设置键等到数码管闪动后松开按键进入小时设置,每按一次加...

单片机 中用C语言怎么设置TOMD,模式0,1,2,3,对应的 定时 ...

有相关资料要的话留邮箱那得看你用什么单片机,51单片机的话有两定时器T0和T1;TMOD是一个八位的寄存器,分别对应两个定时器的一些状态,如工作方式...

51 单片机定时器 一毫秒怎么写?

假设晶振为12MHz,不用中断时程序语句如下:TMOD=0x01;//定时器0工作方式1TH0=(65536-1000)/256;//装入初值TL0=(65536-1000)%256;TF...

猜你喜欢