打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
cc2530手册翻译(定时器1)

1、

定时器1是一个独立的16位定时器,有五个独立的捕获/比较通道,每一通道使用一个I/O引脚。

在每个活动时钟边沿递增或递减,活动时钟边沿周期由寄存器CLKCONCMD.TICKSPD定义,时钟频率范围为0.25M~32M。进一步频率划分可通过T1CTL.DIV来设置,其取值有1、8、32或128。因此,用32MHz为系统时钟源时,定时器1可以使用的最低时钟频率为1953.125Hz,最高为32MHz。

 

2、

可以通过两个8位的SFR读取16位的计数器值:T1CNTH和T1CNTL,分别包含高位和低位字节。

当读取T1CNTL时,计数器的高位字节在那时被缓冲到T1CNTH,以便高位字节可以从T1CNTH中读出。因此T1CNTL必须总是在读取T1CNTH之前首先读取。

 

3、

对T1CNTL寄存器的所有写入访问将复位16位计数器。

当达到最终计数值(溢出)时,计数器产生一个中断请求。

可以通过设置T1CTL来控制定时器开始或挂起。如果是非00值写入T1CTL.MODE时,计数器开始运行;如果是00写入T1CTL.MODE,计数器停止在它现在的值上。

 

4、操作模式

(1)、自由运行模式(Free-Running Mode):

       计数器从0x0000开始,每个活动时钟边沿增加1,当计数器达到0XFFFF,计数器重新载入0X0000,继续递增它的值。

       当终端计数器的值达到0XFFFF时,设置IRCON.T1IF和T1STAT.OVFIF。如果同时设置了TIMIF.OVFIM和IEN1.T1EN,将产生一个中断请求。

       自由运行模式可以用于产生独立的时间间隔,输出信号频率。

 

       (2)模模式(Modulo Mode):

       16位计数器从0X0000开始,每个活动时钟边沿增加1,当计数器达到寄存器T1CC0(T1CC0H:T1CC0L)保存的最终计数值,计数器将复位到0X0000,并继续递增。

       如果计数器以大于T1CC0的值开始,当终端计数器达到0XFFFF时,将设置IRCON.T1IF和T1STAT.OVFIF。

如果设置了TIMIF.OVFIM和IEN1.T1EN,将产生一个中断请求。

模模式可以用于周期不必是0XFFFF的应用程序。

 

(3)正计数/倒计数模式(Up/Down Mode)

       计数器反复从0X0000开始,正计数直到达T1CC0保存的值,然后计数器将倒计数直到0X0000。

       用于周期必须是对称输出脉冲而不是0XFFFF的应用程序,因此允许中心对齐的PWM是输出应用的实现。

       当计数器达到0X0000时,设置IRCON.T1IF和T1STAT.OVFIF。如果设置了TIMIF.OVFIM和IEN1.T1EN,将产生一个中断请求。

 

       (4)通道模式控制(Channel Mode Control)

       通道模式随着每个通道的控制和状态寄存器T1CCTLn设置,设置包括输入捕获和输出比较模式。

       (4)(1)、输入捕获模式(Input Capture Mode)

       当一个通道配置位输入捕获通道,和该通道相关的I/O引脚必须被配置为输入。

       在启动定时器之后,输入引脚的一个上升沿、下降沿或任何边沿都将触发一个捕获,即把16位计数器(T1CNTH:T1CNTL)内容捕获到相关的捕获寄存器(T1CCnH:T1CCnL)中,因此定时器可以捕获一个外部事件发生的时间。

       在定时器使用I/O引脚之前,要求的I/O引脚必须被配置为定时器1外设引脚。

       通道输入引脚同步于系统内部时钟,因此输入引脚上的脉冲的最低持续时间必须大于系统时钟周期。

       当捕获发生时,IRCON.T1IF和T1STAT.CHnIF被设置,如果设置了T1CCTLn.IM和IEN1.T1EN,将产生一个中断请求。

       (4)(2)、输出比较模式(Output Compare Mode)

       在输出比较模式,与通道相关的I/O引脚设置为输出。

       在定时器启动后,将比较计数器(T1CNTH:T1CNTL)和捕获寄存器(T1CCnH:T1CCnL)的内容;如果捕获寄存器和计数器内容相等,则就设置输出引脚(根据比较输出模式T1CCTLn.CMP的设置进行复位或切换)

       写入T1CCnL的值不起作用,它正在被缓冲,除非其相应的高位寄存器T1CCnH已被写入。直到计数器值为0X00时,写入比较寄存器(T1CCnH:T1CCnL)才有效。

       注意通道0的输出比较模式较少,因为T1CC0H:T1CC0L在模式6和7有一个特殊功能,意味着通道0不能用于输出比较模式。

       当发生一个比较时,将设置IRCON.T1IF和T1STAT.CHnIF;如果设置了T1CCTLn.IM和IEN1.T1EN,将生成一个中断请求。

 

5、定时器1中断

       定时器分配了一个中断向量,当下列定时器事件发生时,将产生一个中断请求:

       (1)、计数器达到最终计数值;

       (2)、输入捕获事件;

       (3)、输出捕获事件。

       状态寄存器T1STAT包含计数到达终点事件和5个捕获/比较事件产生的中断标志位。仅当相应的中断使能位IEN1.T1EN一起被设置后中断请求才会产生。

 

6、定时器1DMA触发

       有三种DMA触发与定时器1有关,分别为T1_CH0,T1_CH1,T1_CH2,他们是在通道比较事件中触发;通道3和4没有DMA触发。

 

7、定时器1寄存器

       与定时器1相关的定时器有

       T1CNTH、T1CNTL:定时器1计数器高低字节

T1CTL:定时器1控制器

T1STAT:定时器1状态标志位

T1CCTLn:定时器1捕获/比较控制

T1CCnH、T1CCnL:定时器1捕获寄存器高低字节。

TIMIF:定时器1/3/4中断屏蔽/标志

 

T1CTL:定时器1控制器

端口

Bit位

名称

初始化

读/写

描述

T1CTL

7:4

---

0000

R0

未使用

3:2

DIV[1:0]

00

R/W

时钟分频

00:不分频

01:8分频

10:32分频

11:128分频

1:0

MODE[1:0]

00

R/W

定时器1模式选择

00:暂停运行

01:自由模式(从0X0000至OXFFFF反复计数)

10:模模式(从0X0000至T1CCnH:T1CCnL反复计数)

 

T1STAT定时器1状态标志位

端口

Bit位

名称

初始化

读/写

描述

T1STAT

7:6

---

00

R0

未使用

5

OVFIF

0

R/W0

定时器1计数器溢出中断标志,在自由模式和模模式到达终点计数值,在正/倒计数模式中到达0。写1无效。

4

CH4IF

0

R/W0

定时器1通道4中断标志位,当通道4中断条件发生时设置。写1无效。

3

CH3IF

0

R/W0

定时器1通道3中断标志位,当通道3中断条件发生时设置。写1无效。

2

CH2IF

0

R/W0

定时器1通道2中断标志位,当通道2中断条件发生时设置。写1无效。

1

CH1IF

0

R/W0

定时器1通道1中断标志位,当通道1中断条件发生时设置。写1无效。

0

CH0IF

0

R/W0

定时器1通道0中断标志位,当通道0中断条件发生时设置。写1无效。

  

T1CCTLn:定时器1捕获/比较控制

端口

Bit位

名称

初始化

读/写

描述

T1CCTLn

7

RFIRQ

0

R/W

通道n捕获选择

0:正常捕获输入

1:RF捕获中断

6

IM

1

R/W

通道n中断屏蔽

0:禁止通道n中断请求

1:使能通道n中断请求

5:3

CMP[2:0]

000

R/W

通道n比较模式选择,当定时器的值等于T1CC0中的比较值时,选择操作输出

000:发生比较时输出端置1

001:发生比较时输出端置0

010:发生比较时输出端翻转

011:

通道0:上升沿比较输出设置,0清除

通道1(或2或3或4):在正/倒计数模式下,上升沿比较设置,下降沿比较输出清除;否则比较输出设置,0清除

100:

通道0:上升沿比较输出清除,0设置

通道1(或2或3或4):在正/倒计数模式下,上升沿比较清除,下降沿比较输出设置;否则比较输出清除,0设置

101:

通道0:没使用

通道1(或2或3或4):等于T1CC0清除,等于T1CCn设置。

110:

通道0:没使用

通道1(或2或3或4):等于T1CC0设置,等于T1CCn清除。

111:初始化输出引脚,CMP[2:0]不改变。

2

MODE

0

R/W

定时器1通道n模式选择:

0:捕获模式

1:输出模式

1:0

CAP[1:0]

00

R/W

通道n捕获模式选择

00:无捕获

01:上升边沿捕获

10:下降边沿捕获

11:所有边沿捕获

 

TIMIF:定时器1/3/4中断屏蔽/标志

端口

Bit位

名称

初始化

读/写

描述

TIMIF

7

---

0

R0

未使用

6

OVFIM

1

R/W

定时器1溢出中断屏蔽

5

T4CH1IF

0

R/W0

定时器4通道1中断标志

0:无中断未决

1:中断未决

4

T4CH0IF

0

R/W0

定时器4通道0中断标志

0:无中断未决

1:中断未决

3

T4OVFIF

0

R/W0

定时器4溢出中断标志

0:无中断未决

1:中断未决

2

T3CH1IF

0

R/W0

定时器3通道1中断标志

0:无中断未决

1:中断未决

1

T3CH0IF

0

R/W0

定时器3通道0中断标志

0:无中断未决

1:中断未决

0

T3OVFIF

0

R/W0

定时器3溢出中断标志

0:无中断未决

1:中断未决

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
STM32CubeMX教程-PWM呼吸灯
三菱FX 5U PLC高速计数器基础及模拟量
STM32关于使用定时器触发ADC转换的解决办法和详细说明
电机控制基础2——定时器捕获单输入脉冲原理
MCS-51单片机定时器/计数器基础详述
8051系列单片机
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服