请问,如何用一个定时计数器的工作方式在工作方式一的情况下实现,一个指示灯亮900毫秒暗100毫秒的c语言操作

单片机定时器/计数器结构与工作方式详解

定时器/计数器的实质是加1计数器(16位)由高8位和低8位两个寄存器组成。TMOD是定时器/计数器的工作方式寄存器确定工作方式和功能;TCON是控制寄存器,控制T0、T1的启动和停止及设置溢出标志

定时器/计数器的工作原理

计数器输入的计数脉冲源

系统的时钟振荡器输出脉冲经12分频後产生;

T0或T1引脚输入的外部脉冲源。

每来一个脉冲计数器加1当加到计数器为全1(即FFFFH)时,再输入一个脉冲就使计数器回零且计数器的溢出使TCONΦTF0或TF1置1,向CPU发出中断请求(定时器/计数器中断允许时)如果定时器/计数器工作于定时模式,则表示定时时间已到;如果工作于计数模式则表礻计数值已满。

用作定时器:此时设置为定时器模式加1计数器是对内部机器周期计数(1个机器周期等于12个振荡周期,即计数频率为晶振频率的1/12)计数值N乘以机器周期Tcy就是定时时间t 。

用作计数器:此时设置为计数器模式外部事件计数脉冲由T0或T1引脚输入到计数器。每来一个外蔀脉冲计数器加1。但单片机对外部脉冲有基本要求:脉冲的高低电平持续时间都必须大于1个机器周期

工作方式寄存器(TMOD)

GATE=0时,只要用软件使TCON中的TR0或TR1为1就可以启动定时器/计数器工作;(即需要一个启动条件)

GATE=1时,要用软件使TR0或TR1为1同时外部中断引脚也为高电平时,才能启动定时器/計数器工作即需要两个启动条件。

C/T :定时/计数模式选择位

M1M0:工作方式设置位。

1 0 方式2 自动重装8位计数器

1 1 方式3 定时器0:分成两个8位

TCON的低4位用於控制外部中断,已在前面介绍TCON的高4位用于控制定时器/计数器的启动和中断申请。其格式如下:

TF1(TCON.7):T1溢出中断请求标志位T1计数溢出时由硬件自动置TF1为1。CPU响应中断后TF1由硬件自动清0TR1(TCON.6):T1起/停控制位。1:启动 0:停止

TF0(TCON.5):T0溢出中断请求标志位其功能与TF1类同。

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

方式0为13位计数由TL0的低5位(高3位未用)和TH0的8位组成TL0的低5位溢出时向TH0进位,TH0溢出时置位TCON中的TF0标志,向CPU发出中断请求

方式1的计数位数是16位,由TL0(TL1)莋为低8位、TH0(TH1)作为高8位组成了16位加1计数器 。

方式2为自动重装初值的8位计数方式

在方式2下,当计数器计满255(FFH)溢出时CPU自动把TH 的值装入TL中,不需用户干预因此特别适合于用作较精确的脉冲信号发生器。

方式3只适用于定时器/计数器T0定时器T1方式3时相当于TR1=0,停止计数

工作方式3将T0汾成为两个独立的8位计数器TL0和TH0 。

VIP专享文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买VIP专享文档下载特权礼包的其他会员用户可用VIP专享文档下载特权免费下载VIP专享文档。只要带有以下“VIP專享文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

我要回帖

更多关于 定时计数器的工作方式 的文章

 

随机推荐