单片机MSP430 - 定时器Timer_A

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012313335/article/details/52836601

一、定时器Timer_A 介绍

       Timer_A是一个具有多路捕获/比较寄存器的16位定时/计数器,主要有TAxCTL,TAxR,TAxCCTLn,TAxIV,TAxEX0 几个寄存器。其中最主要的是TAxCTL寄存器,它决定Timer_A的输入时钟信号,Timer_A的工作模式,Timer_A的开启与停止,中断的申请等。中断可以来自定时器溢出或者任意的捕获/比较寄存器Timer_A的特征包括:

  • 具有4种工作模式的异步定时/计数器
  • 可选择配置的时钟源
  • 可配置的PWM输出功能
  • 异步输入和同步锁存
二、Timer_A 操作
1. 16位定时/计数器
       16位定时/计数寄存器TAxR,在每个时钟信号的上升沿做增一计数或减一计数。TAxR可以通过置位TACLR清除。Timer_A机构图如下:
2. 时钟源的选择和分频
       定时器时钟 TACLK 可以选择来自 ACLK、SMCLK 或者外部的TAxCLK。时钟源由 TASSELx 位来选择。选定的时钟源可以直接到达定时器,或者通过 IDx 位经过2、4、8分频后到达定时器,选定的时钟源可以通过 IDEXx 进行2、3、4、5、6、7或者8分频。当 TACLR 置位时,定时器时钟源分频器被复位。
3.  启动定时器
  • 在 MC > {0} 同时时钟源被激活的情况下,定时器开始计数
  • 在定时器工作在增计数模式或者增/减计数模式时,对 TAxCCR0 写 0 可以停止定时器。定时器可以通过对 TAxCCR0 写入一个非零值来重新启动计数。在这种情况下,定时器从零开始计数。
4. 定时器模式控制

MCx

工作模式

描述

00

停止模式

定时器停止

01

增计数模式

定时器重复地从0计数到TAxCCR0

10

连续计数模式

定时器重复地从0计数到0FFFFh

11

增/减计数模式

定时器重复地从0计数到TAxCCR0然后减计数到0


三、Timer_A 寄存器
1. Timer_A 控制寄存器(TAxCTL)

15~10

9~8

7~6

5~4

3

2

1

0

未用

TASSEL

ID

MC

未用

TACLR

TAIE

TAIFG


保留


位15~10    

未用

TASSELx

位9~8

Timer_A时钟源选择

     00  TAxCLK     10  SMCLK

     01  ACLK       11  TAxCLK

IDx

位7~6

输入分配器。这些位和 IDEXx 位一起选择输入时钟的分频值

     00  /1           01  /2

     10  /4           11  /8

MCx

位5~4

MCx 位5~4 模式控制。当Timer_A不用于节电模式时,设置 MCx = 00h

     00  停止模式            01  增计数模式

     10  连续计数模式     11  增/减计数模式

TACLR

位2

Timer_A 清除位。置位该位将复位 TAxR,TACLK 分频和计数方向。该位会自动复位,且读出的值通常总为0

TAIE

位1

Timer_A 中断允许位。该位使能TAIFG中断请求。(0中断禁止1 中断使能)

TAIFG

位0

Timer_A 中断标志位(0 无中断请求1 有中断请求)


2. Timer_A 计数器(TAxR)

15~0

TAxR

TAxR位15~0Timer_A 寄存器。TAxR寄存器是 Timer_A 的计数器。

3. 捕获/比较控制寄存器(TAxCCTLn)

15~14

13~12

11

10

9

8

7~5

4

3

2

1

0

CM

CCIS

SCS

SCCI

未用

CAP

OUTMOD

CCIE

CCI

OUT

COV

CCIFG


CM

位15~14      

捕获模式

00  禁止捕获模式      01  上升沿捕获

10  下降沿捕获         11  上升沿与下降沿都捕获

CCIS

位13~12

捕获/比较输入选择

00  CCIxA      01  CCIxB

10  GND       11  VCC

SCS

位11

同步捕获源,用来同步定时器时钟和捕获信号(0  异步捕获      1  同步捕获)

SCCI

位10

同步/捕获比较输入

未用

9

未用位

CAP

8

捕获模式(比较模式      1 捕获模式)

OUTMOD

7~5

输出模式

000   OUT位的值      001   置位

010   翻转/复位        011   置位/复位

100   翻转                101   复位

110   翻转/复位        111   复位/置位

CCIE

4

捕获/比较中断使能,该位使能相应的CCIFG标志的中断请求(0   中断禁止      1   中断使能)

CCI

3

捕获比较输入。所选择的输入信号可以通过该位读取

OUT

2

输出信号,对于模式0,该位直接控制输出的状态(0   输出低电平      1   输出高电平)

COV

1

捕获溢出位。该位表示一个捕获溢出发生。COV必须由软件复位(0   没有捕获溢出发      1   有捕获溢出发生)

CCIFG

0

捕获比较中断标志位(0   没有中断挂起      1   有中断挂起)


4. Timer_A 中断向量寄存器(TAxIV)

15~4

3~1

0

0

TAIV

0

TAIV   位15~0   Timer_A中断向量值

TAIV内容

中断源

中断标志

中断优先级

00h

无中断源

 

 

02h

捕获/比较1

TAxCCR1 CCIFG

最高

04h

捕获/比较2

TAxCCR2 CCIFG

 

06h

捕获/比较3

TAxCCR3 CCIFG

 

08h

捕获/比较4

TAxCCR4 CCIFG

 

0Ah

捕获/比较5

TAxCCR5 CCIFG

 

0Ch

捕获/比较6

TAxCCR6 CCIFG

 

0Eh

定时器溢出

TAxCTL TAIFG

最低

 

猜你喜欢

转载自blog.csdn.net/u012313335/article/details/52836601