当前位置:首页 > 单片机 > 单片机
[导读]一、工作方式0定时器/计数器的工作方式0称之为13位定时/计数方式。它由TL(1/0)的低5位和TH(0/1)的8位构成13位的计数器,此时TL(1/0)的高3位未用。1.2.C/T:前面我们说过,定时/计数器即可作定时用也可用计数用,到底

一、工作方式0

定时器/计数器的工作方式0称之为13位定时/计数方式。它由TL(1/0)的低5位和TH(0/1)的8位构成13位的计数器,此时TL(1/0)的高3位未用。

1.

2.C/T:前面我们说过,定时/计数器即可作定时用也可用计数用,到底作什么用,由我们根据需要自行决定,也说是决定权在我们。如果C/T为0就是用作定时器(开关往上打),如果C/T为1就是用作计数器(开关往下打)。顺便提一下:一个定时/计数器同一时刻要么作定时用,要么作计数用,不能同时用的初学者要注意。

3.GATE:看上图,当我们选择了定时或计数工作方式后,定时/计数脉冲却不一定能到达计数器端,中间还有一个开关,显然这个开关不合上,计数脉冲就没法过去,那么开关什么时候过去呢?有两种情况:

GATE=0,分析一下逻辑,GATE非后是1,进入或门,或门总是输出1,和或门的另一个输入端INT1无关,在这种情况下,开关的打开、合上只取决于TR1,只要TR1是1,开关就合上,计数脉冲得以畅通无阻,而如果TR1等于0则开关打开,计数脉冲无法通过,因此定时/计数是否工作,只取决于TR1。

GATE=1,在此种情况下,计数脉冲通路上的开关不仅要由TR1来控制,而且还要受到INT1引脚的控制,只有TR1为1,且INT1引脚也是高电平,开关才合上,计数脉冲才得以通过。这个特性可以用来测量一个信号的高电平的宽度,想想看,怎么测?

1、工作方式1

工作方式1是16位的定时/计数方式,将M1M0设为01即可,其它特性与工作方式0相同。

2、工作方式2

在介绍这种式方式之前先让我们思考一个问题:比如我要计1000个数,可是16位的计数器要计到65536才满,怎么办呢?办法是用预置数,先在计数器里放上64536,再来1000个脉冲,不就行了吗?是的,但是计满了之后我们又该怎么办呢?要知道,计数总是不断重复的,当计满并溢出后,计数器里面的值变成了0(为什么,这时硬件自动清零),因此下一次将要计满65536后才会溢出,这可不符合要求,怎么办?当然办法很简单,就是每次一溢出时执行一段程序(要不然要溢出干吗?)可以在这段程序中做把预置数64536送入计数器中的事情。所以采用工作方式0或1都要在溢出后做一个重置预置数的工作,做工作当然就得要时间,一般来说这点时间不算什么,可是有一些场合我们还是要计较的(如串口通信等),所以就有了第三种工作方式自动再装入预置数的工作方式。此时M1M0=10。

自动重装时TH0(1)赋初值(预置数)

通常这种式作方式常用于波特率发生器(我们将在串行接口中讲解),用于这种用途时,定时器就是为了提供一个时间基准。计数溢出后不需要做事情,要做的仅仅只有一件,就是重新装入预置数,再开始计数,而且中间不要任何延迟,可见这个任务用工作方式2来完成是最好的了。

3、工作方式3

这种式作方式之下,定时/计数器0被拆成2个独立的定时/计数器来用。其中,TL0可以构成8位的定时器或计数器的工作方式,而TH0则只能作为定时器来用。我们知道作定时、计数器来用,需要控制,计满后溢出需要有溢出标记,T0被分成两个来用,那就要两套控制及、溢出标记了,从何而来呢?TL0还是用原来的T0的标记,而TH0则借用T1的标记。如此T1不是无标记、控制可用了吗?是的。

一般情况处,只有在T1以工作方式2运行(当波特率发生器用)时,才让T0工作于方式3的。

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

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

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

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

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

例:流水线上一个包装是60盒,要求每到12盒就产生一个动作,用单片机的工作方式0来控制,应当预置多大的值呢?对了,就是8192-60=8132。当然设为计数时,需将C/T=1。

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

初学者应多看相关书籍中的定时/中断部分,对个标志位的处理与应用要能理解,对你的应用开发有很大帮助的!!!,特别是在按键的消抖、延时等方面。下面给出一个实验,网友只要烧写进89C51,放到实验板即可看到效果,然后在想????

定时器方式0的应用:

应用定时器T1产生1MS的定时,并使P1。0输出周期的2MS方波,设晶震6MHZ。

首先要计算T0的初始值,以定时器方式工作时,每一机器周期计数器加1,6MHZ晶震时的机器周期T=12/F=12/6*10的6次方,设初值为X,则:

2的13次方-X/2*10的负3次方 =10的负3次方 X=7692

以13位二进制数表示为:X=1111000001100B(从前算8位为F0H;)

计算得:TH0初值为0F0H,TL0初值为0CH;

因复位以后,TMOD、TCON初值为0,因此以定时器方式0工作时,初始化程序不必对TMOD重置0,我们查询TF0的状态来控制P1。0输出。在P1。0端得到周期为2MS的方波。

程序清单:

START:MOV TL0,#0CH;初值写入T0

MOV TH0,#0F0H;

SETB TR0;启动T0计数

LOOP:JBC TF0,PTF0

AJMP LOOP

PTF0:MOV TL0,#0CH;计数初值重装

MOV TH0,#0F0H;

CPL P1。0;P1。0求反

AJMPN LOOP

您可以改变定时初值来改变方波的宽度。

扩展阅读:单片机定时器计数器初值的计算

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭