MSP430 Timer_A

Timer_Aモジュールは自由度の高いタイマ・カウンタモジュールです Timer_A module is a flexible timer & counter module.

Diagram


From MSP430x4xx User's Guides(slau056g)
※縮小図はクリックで拡大します Click to enlarge.

Devices

2008.2現在、Timer_Aモジュールは全てのデバイスに搭載されています。
C/C(キャプチャ/コンペア)ブロックの数が3以外のデバイスについて以下に記します。
Timer_A module is supported by all devices (2008.2).
Followings are devices which have less thant two C/C (Capture and Compare)blocks.


[+]Click here to see the device list


Timer_A設定フローConfiguration Flow

以下の各項目について設定を行うと自動的にコード(IAR EW C形式)が生成されます。
デフォルトの選択肢は少し明るい色で示されています。
Configure following settings and the codes (IAR EW C) will be generatedautomatically.
Default choice is indicated by bright color.
▼ 生成コード (IAR EW C)
*バグがあるかもしれません。各自ご確認の上ご利用ください。
\/ Generated Code (IAR EW C)
It may contain some bugs. Please check it on your own.

Timer_A レジスタ一覧Register List

MSP430F415などTimer_Aを複数搭載しているデバイスではレジスタ名称が以下のような対応になります。
Timer_A3とTimer_A5の二つを搭載しているデバイスでは、 Timer_A3は(たとえばTACTLとTA0CTLという風に)
二つの名称で定義されています。
In devices which have more than one Timer_A such as MSP430F415, Timer_A3register items is given two names like "TACTL" and "TA0CTL".
デバイスDevice
F2001F2002
F2011F2012
F2003F2013
その他Etc.
F415F417
FW423FW425
FW427 
搭載されているタイマSupported TimerTimer_A2搭載Timer_A2Timer_A3搭載Timer_A3Timer_A3とTimer_A5の2つBoth Timer_A2 and Timer_A3
レジスタ名Register nameTimer_A2Timer_A3Timer_A3Timer_A5
Timer_A 制御Timer_A controlTACTLTA1CTL
 TA0CTL
Timer_A カウンタTimer_A counterTARTA1R
 TA0R
Timer_A C/C制御 0Timer_A C/C control 0TACCTL0TA1CCTL0
 TA0CCTL0
Timer_A C/C制御 1Timer_A C/C control 1TACCTL1TA1CCTL1
 TA0CCTL1
Timer_A C/C制御 2Timer_A C/C control 2TACCTL2TA1CCTL2
 TA0CCTL2
Timer_A C/C制御 3Timer_A C/C control 3
(Timer_A5 Only)
TA1CCTL3
Timer_A C/C制御 4Timer_A C/C control 4
(Timer_A5 Only)
TA1CCTL4
Timer_A C/C 0TACCR0TA1CCR0
 TA0CCR0
Timer_A C/C 1TACCR1TA1CCR1
 TA0CCR1
Timer_A C/C 2TACCR2TA1CCR2
TA0CCR2
Timer_A C/C 3
(Timer_A5のみ)(Only Timer_A5)
 TA1CCR3
Timer_A C/C 4
(Timer_A5のみ)(Only Timer_A5)
 TA1CCR4
Timer_A 割り込みベクタInterrupt vectorTAIVTA1IV
 TA0IV

機能別レジスタ項目詳細Functional Groupings of Register Items

(勝手な分類であり、公式なものではありません)(This is not universally endorsed)
Timer_Aタイマ・クロック関連timer and clock related
クロックソースの選択Clock source selection
TASSELクロックソースClock source
2bitsIAR EW const
00TASSEL_0TACLKTACLK端子入力TACLK terminal input
01TASSEL_1ACLK補助クロックAuxiliary Clock
10TASSEL_2SMCLKサブメインクロックSub main clock
11TASSEL_3INCLKINCLK 端子入力INCLK input terminal
( F11x1, F11x2, F12x, F12x2, F21x1 )
TACLKの反転Reversed TACLK
( F20xx, F4xx family )
TAINCLK端子入力
(上記以外のF1xxファミリ, 上記以外のF2xxファミリ)
TAINCLK terminal input
F1xx family other than those above, F2xx family other than those above
分周比の選択Selection of division factor
ID分周Frequency division
2bitsIAR EW const
00ID_0/ 1
01ID_1/ 2
10ID_2/ 4
11ID_3/ 8
カウントモードの選択Count mode selection
MCカウントモードCount mode
2bitsIAR EW const
00MC_0停止Stop
カウントしないNo count

01MC_1アップUp
10MC_2連続Continuous
11MC_3アップ・ダウンUp Down
Timer_AのクリアTimer_A clear
TACLRTimer_AのクリアTimer_A clear
1bitIAR EW const
00--
01TACLRTAR, TACLK分周比, アップ/ダウンモードでの
カウント方向がリセットされる。
TACLRは自動的にリセットされ常に0が読み出される
TAR, TACLK division factor and Count direction in Up down mode are reset.
TACLR is automatically reset and always read 0.
Timer_A割り込みフラグTimer_A interrupt flag
TAIFG割り込みフラグInterrupt flag
2bitsIAR EW const
00--
01TAIFGTARカウンタのオーバフローでセットされる
TAIVをアクセスするとクリアされる
TAIFG is set by overflow of TAR counter
and is reset by TAIV clear.
TAIFGによる汎用割り込み許可General interrupt enable by TAIFG set.
TAIE汎用割り込み許可General interrupt enable
1bitIAR EW const
0--
1TAIETAIFGフラグのセットで汎用割り込みを発生
(SRのGIEフラグがセットされている必要あり)
Generate General interrupt by TAIFG set. (SR's GIE flag need to be set)
キャプチャモード / コンペアモード選択Capture / Compare mode selection
キャプチャモード/コンペアモード選択Capture mode / Compare mode selection
CAPモードmode
2bitsIAR EW const
0-コンペア・モードCompare mode
1CAPキャプチャ・モードCapture mode
コンペアモード関連Compare mode related
出力モードOutpu mode
各出力は上記設定フローでお試しくださいPlease test each output on "configuration flow" above.
OUTMOD出力モードOutput mode
1bitIAR EW const
000OUTMOD_0OUTビットの値OUT bit value
001OUTMOD_1セットSet
010OUTMOD_2トグル/リセットToggle/Reset
011OUTMOD_3セット/リセットSet/Reset
100OUTMOD_4トグルToggle
101OUTMOD_5リセットReset
110OUTMOD_6トグル/セットToggle/Set
111OUTMOD_7リセット/セットReset/Set
出力の設定/出力状態の取得Output setting / Get output state
出力の状態を読み出せる。
OUTMOD=0のときには出力を設定できる
Can read output state.
output can be controled when OUTMOD=0
OUT状態取得 / 出力設定Get state/ Output setting
2bitsIAR EW const
0-OUT=Low / Lowを出力OUT=Low / output Low
1OUTOUT=High / Highを出力OUT=high / output High
EQUxでラッチされたCCI信号の取得Get CCI signal latched by EQUx
SCCI状態取得 (読み取りのみ)Get state (read only)
1bitIAR EW const
0-CCIはLOWCCI is Low
1SCCICCIはHIGHCCI is High
キャプチャモード関連Capture mode related
キャプチャ・モード
(キャプチャ信号検出エッジの選択)
Capture mode
(selection of capture signal detection edge)
CMキャプチャタイミングCapture timing
1bitIAR EW const
00CM_0キャプチャしないNo capture
01CM_1立ち上がりエッジでのキャプチャCapture at rising edge
10CM_2立下りエッジでのキャプチャCapture at falling edge
11CM_3立ち上がりと立下り両方の
エッジでのキャプチャ
capture at both rising and falling edge
キャプチャソースとクロックの同期Synchronize capture source with clock
SCS同期状態SYNC state
2bitsIAR EW const
0-キャプチャソースとクロックを同期させないAsynchronize capture source with clock
1SCSキャプチャソースをクロックに同期させるSynchronize capture source with clock
キャプチャ・オーバフローCapture overflow
COV発生状態Occurrence state
2bitsIAR EW const
0-キャプチャ・オーバフローが発生してないCapture over flow did not occurred
1COVキャプチャ・オーバフローが発生した。
CCRレジスタを読み出す前に別の
キャプチャが発生してしまったことを示します。
自動的にクリアされません。
Capture over flow occurred.
This shows occurrence of another capture before reading CCR register.
This will not cleared automatically.
キャプチャモード / コンペアモード共通 関連Capture / Compare mode related
キャプチャ/コンペア信号ソースの選択Capture / Compare signal source selection
CCIS信号ソースの選択Signal source selection
2bitsIAR EW const
00CCIS_0CCIxA
01CCIS_1CCIxB
10CCIS_2GND
11CCIS_3VCC
キャプチャ/コンペア信号状態の取得Get Capture/Compare signal state
CCI状態取得 (読み取りのみ)Get state (read only)
1bitIAR EW const
0-CCISはLOWCCIS is LOW
1CCICCISはHIGHCCIS is HIGH
キャプチャ/コンペア割り込みイネーブルCapture/Compare Interrupt enable
CCIE汎用割り込み許可General Interrupt disable
2bitsIAR EW const
0--
1CCIECCIFGフラグのセットで汎用割り込みを発生
(SRのGIEフラグがセットされている必要あり)
Generate General Interrupt with CCIFG flag set.
(SR's GIE flag should be set)
キャプチャ/コンペア割り込みフラグCapture/Compare Interrupt flag
CCIFG割り込みフラグInterrupt flag
2bitsIAR EW const
0--
1CCIFGコンペアモードの場合、コンペアの一致(TAR=TACCRx)でセットされる。
キャプチャモードの場合、キャプチャの発生でセットされる。
TAIVをアクセスするとクリアされる
In compare mode, this flag is set when TAR = TACCRx.
In Capture mode, it is set when a capture occurs.
Accessing TAIV will clear this flag.
割り込みフラグInterrupt Flag
割り込みフラグInterrupt Flag
TAIV割り込みフラグInterrupt flag割り込み優先順位

複数の割り込みフラグが同時にセットされる際には
TAIVを複数回読み出す必要がある。読み出しごとに
この優先順位で最上位にあるものから読み出される
Priority of Interrupt
When multiple interrupt flags are set at a time,
TAIV should be read multiple times. For each reading,
the top interrupt flag is read out in this priority order.
3bitsTAIV値
00000h保留中の割り込み無しNo hold of interrupt-
00102hCCR1のCCIFGCCR1's CCIFG最上位Top
01004hCCR2のCCIFGCCR2's CCIFG 
01106hCCR3のCCIFGCCR3's CCIFG 
10008hCCR4のCCIFGCCR4's CCIFG 
1010AhTAIFG 
1100Ch- 
1110Eh-最下位Bottom