1. 程式人生 > >微控制器MSP430 - 定時器Timer_A

微控制器MSP430 - 定時器Timer_A

一、定時器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

最低