42
Stellaris ® LM3S9B96 Microcontroller 11 章 汎用タイマー JAJU120 SPMS182D 翻訳版(11 ) 最新の英語版: http://www.ti.com/lit/gpn/lm3s9b96 この資料は、Texas Instruments IncorporatedTI)が英文で記述した資料を、皆様のご理解の一助として頂くために日本テキサ ス・インスツルメンツ(日本 TI)が英文から和文へ翻訳して作成したものです。資料によっては正規英語版資料の更新に対応して いないものがあります。日本 TI による和文資料は、あくまでも TI 正規英語版をご理解頂くための補助的参考資料としてご使用下 さい。製品のご検討およびご採用にあたりましては必ず正規英語版の最新資料をご確認下さい。TI および日本 TI は、正規英語 版にて更新の情報を提供しているにもかかわらず、更新以前の情報に基づいて発生した問題や障害等につきましては如何なる 責任も負いません

Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

Stellaris® LM3S9B96 Microcontroller 11 章 汎用タイマー

JAJU120

SPMS182D 翻訳版(11 章) 最新の英語版: http://www.ti.com/lit/gpn/lm3s9b96

この資料は、Texas Instruments Incorporated(TI)が英文で記述した資料を、皆様のご理解の一助として頂くために日本テキサ

ス・インスツルメンツ(日本 TI)が英文から和文へ翻訳して作成したものです。資料によっては正規英語版資料の更新に対応して

いないものがあります。日本 TIによる和文資料は、あくまでもTI正規英語版をご理解頂くための補助的参考資料としてご使用下

さい。製品のご検討およびご採用にあたりましては必ず正規英語版の最新資料をご確認下さい。TI および日本 TI は、正規英語

版にて更新の情報を提供しているにもかかわらず、更新以前の情報に基づいて発生した問題や障害等につきましては如何なる

責任も負いません

Page 2: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

JAJU120

Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版

11 汎用タイマー プログラマブル・タイマーは、タイマーの入力ピンを駆動する外部イベントのカウントや時間計測に使用でき ます。 Stellaris® 汎用タイマー・モジュール(GPTM: General-Purpose Timer Module) には、4つの GPTM ブロック (タイ

マー 0、タイマー1、タイマー2およびタイマー 3)があります。各GPTMブロックには、2つの16ビット・タイマー/カウンタ (タイマー A およびタイマー B)があります。これらは、タイマーやイベント・カウンタとして別個に動作するように設定す

ることも、2つのタイマーを連結して一つの32ビット・タイマーや一つの32ビット・リアルタイム・クロック (RTC: Real-Time Clock)として動作するように構成することもできます。また、タイマーにより μDMA 転送をトリガすることも可能

です。 さらに、タイマーを使用してアナログ-デジタル変換器 (ADC)をトリガすることも可能です。すべての汎用タイマーから

のADCトリガ信号はADCモジュールに到達する前にまとめてORされる(ORed)ため、ADCイベントをトリガするため

に使用できるタイマーはひとつだけになります。 GPTMは、Stellaris ®マイクロコントローラで使用できるタイミング・リソースのひとつです。他のタイマー・リソースには、

システム・タイマー (SysTick) (“System Timer (SysTick)”参照)とPWM モジュールのPWM タイマー (“PWM Timer” 参照)があります。 汎用タイマー・モジュール(GPTM) には、次のような機能オプションのある4つの GPTM ブロックが含まれます。 ■ カウントアップ/カウントダウン ■ 16ビット/32ビット・プログラマブル・ワンショット・タイマー ■ 16ビット/32ビット・プログラマブル周期タイマー ■ 8ビット・プリスケーラ付き16ビット汎用タイマー ■ 32ビット・リアルタイム・クロック (RTC) (入力として外部クロック 32.768KHz を使用している場合) ■ 8つのキャプチャ・コンペアPWM (CCP: Capture Compare PWM) ピン ■ タイマー・モジュールをデイジー・チェーン接続することにより、単一のタイマーで複数のタイミング・イベントを開始で

きる機能 ■ ADC イベント・トリガ ■ デバッグ中にコントローラがCPU 停止フラグ(CPU Halt)をアサートした場合に、ユーザがGPTMを停止する機能 (RTC モードを除く) ■ 16ビット入力エッジ・カウント・モードまたはタイム・キャプチャ・モード ■ ソフトウェアでPWM信号の出力反転が可能な16ビット PWM モード ■ タイマー割り込みのアサートから、割り込みサービス・ルーチンへのエントリまでに経過した時間を判定する機能 ■ マイクロ・ダイレクト・メモリ・アクセス・コントローラ (μDMA) を使用した、効率的な転送

– 各タイマー用の専用チャネル –タイマー割り込みによるバースト・リクエスト

Page 3: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

11.1 ブロック図 図 11-1. GPTM モジュールのブロック図

注: 図 11-1での、使用可能なキャプチャ・コンペア PWM (CCP) ピン はStellaris ® デバイスによって異なります。使

用可能な CCP ピンとそのタイマーの割り当てについては、表 11-1 を参照してください。 表 11-1. 使用可能な CCP ピン

タイマー 16ビット アップカウンタ/ダウンカウンタ 偶数の CCP ピン 奇数の CCP ピン タイマー A CCP0 - タイマー 0

タイマー B - CCP1 タイマー A CCP2 - タイマー 1

タイマー B - CCP3 タイマー A CCP4 - タイマー 2

タイマー B - CCP5 タイマー A CCP6 - タイマー 3

タイマー B - CCP7

11.2 信号の説明 表 11-2 と表 11-3 には、GPTMの外部信号と、各信号の機能が記載されています。GPTMの信号は、いくつかの GPIO 信号の代替機能であり、リセット時はGPIO 信号に初期化されます。下の表中にある「ピン Mux/ピン割り当て」

という見出しの列に、GPTMの信号を配置可能なGPIOピンのリストを示します。GPTMの機能を選択するには、

GPIO 代替機能選択(GPIOAFSEL) レジスタにある AFSELビットを設定する必要があります。カッコ内の数字は、指

定されたGPIOポート・ピンに GPTMの信号を割り当てるために、GPIOポート制御(GPIOPCTL)レジスタの PMCnフィールド中にプログラムする必要のあるコード(encoding)です。GPIOの構成の詳細については、“General-Purpose Input/Outputs (GPIOs)”を参照してください。 表11-2. 汎用タイマーの信号(100LQFP)

ピン名 ピン番号 ピンMux / ピン割り当て

ピンの タイプ

バッファの タイプ

a 説明

Page 4: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

CCP0 13 22 23 39 42 55 66 72 91 97

PD3 (4) PC7 (4) PC6 (6) PJ2 (9) PF4 (1) PJ7 (10) PB0 (1) PB2 (5) PB5 (4) PD4 (1)

I/O TTL キャプチャ/コンペア/PWM 0.

CCP1 24 25 34 54 67 90 96

100

PC5 (1) PC4 (9) PA6 (2) PJ6 (10) PB1 (4) PB6 (1) PE3 (1) PD7 (3)

I/O TTL キャプチャ/コンペア/PWM 1.

CCP2 6 11 25 41 53 67 75 91 95 98

PE4 (6) PD1 (10) PC4 (5) PF5 (1) PJ5 (10) PB1 (1) PE1 (4) PB5 (6) PE2 (5) PD5 (1)

I/O TTL キャプチャ/コンペア/PWM 2.

CCP3 6 23 24 35 61 72 74 97

PE4 (1) PC6 (1) PC5 (5) PA7 (7) PF1 (10) PB2 (4) PE0 (3) PD4 (2)

I/O TTL キャプチャ/コンペア/PWM 3.

CCP4 22 25 35 52 95 98

PC7 (1) PC4 (6) PA7 (2) PJ4 (10) PE2 (1) PD5 (2)

I/O TTL キャプチャ/コンペア/PWM 4.

CCP5 5 12 25 36 90 91

PE5 (1) PD2 (4) PC4 (1) PG7 (8) PB6 (6) PB5 (2)

I/O TTL キャプチャ/コンペア/PWM 5.

CCP6 10 12 50 75 86 91

PD0 (6) PD2 (2) PJ3 (10) PE1 (5) PH0 (1) PB5 (3)

I/O TTL キャプチャ/コンペア/PWM 6.

CCP7 11 13 85 90 96

PD1 (6) PD3 (2) PH1 (1) PB6 (2) PE3 (5)

I/O TTL キャプチャ/コンペア/PWM 7.

a. TTLという指定は、ピンがTTL互換の電圧レベルを持っていることを示しています。. 表 11-3. 汎用タイマーの信号 (108BGA)

ピン名 ピン番号 ピンMux / ピン割り当て

ピンの タイプ

バッファの タイプ

a 説明

CCP0 H1 L2 M2 K6 K4 L12 E12 A11 B7 B5

PD3 (4) PC7 (4) PC6 (6) PJ2 (9) PF4 (1) PJ7 (10) PB0 (1) PB2 (5) PB5 (4) PD4 (1)

I/O TTL キャプチャ/コンペア/PWM 0.

Page 5: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

ピン名 ピン番号 ピンMux / ピン割り当て

ピンの タイプ

バッファの タイプ

a 説明

CCP1 M1 L1 L6

L10 D12 A7 B4 A2

PC5 (1) PC4 (9) PA6 (2) PJ6 (10) PB1 (4) PB6 (1) PE3 (1) PD7 (3)

I/O TTL キャプチャ/コンペア/PWM 1.

CCP2 B2 G2 L1 K3

K12 D12 A12 B7 A4 C6

PE4 (6) PD1 (10) PC4 (5) PF5 (1) PJ5 (10) PB1 (1) PE1 (4) PB5 (6) PE2 (5) PD5 (1)

I/O TTL キャプチャ/コンペア/PWM 2.

CCP3 B2 M2 M1 M6 H12 A11 B11 B5

PE4 (1) PC6 (1) PC5 (5) PA7 (7) PF1 (10) PB2 (4) PE0 (3) PD4 (2)

I/O TTL キャプチャ/コンペア/PWM 3.

CCP4 L2 L1 M6 K11 A4 C6

PC7 (1) PC4 (6) PA7 (2) PJ4 (10) PE2 (1) PD5 (2)

I/O TTL キャプチャ/コンペア/PWM 4.

CCP5 B3 H2 L1

C10 A7 B7

PE5 (1) PD2 (4) PC4 (1) PG7 (8) PB6 (6) PB5 (2)

I/O TTL キャプチャ/コンペア/PWM 5.

CCP6 G1 H2

M10 A12 C9 B7

PD0 (6) PD2 (2) PJ3 (10) PE1 (5) PH0 (1) PB5 (3)

I/O TTL キャプチャ/コンペア/PWM 6.

CCP7 G2 H1 C8 A7 B4

PD1 (6) PD3 (2) PH1 (1) PB6 (2) PE3 (5)

I/O TTL キャプチャ/コンペア/PWM 7.

a. TTLという指定は、ピンがTTL互換の電圧レベルを持っていることを示しています。.

11.3 機能の説明 各 GPTMブロックの主なコンポーネントは、2つの16ビットフリーラン・アップ/ダウンカウンタ(タイマー A およびタイ

マー B)、2つの16ビットマッチ・レジスタ、2つのプリスケーラ・マッチ・レジスタ、2つの16ビットシャドウ・レジスタ、2つの

16ビットロード/初期化レジスタと、それらに関連する制御機能です。各GPTMの機能はソフトウェアにより制御され、

レジスタのインターフェイスを介して設定します。 ソフトウェアで、GPTMコンフィグレーション (GPTMCFG) レジスタ、GPTM タイマー A モード (GPTMTAMR) レジス

タ、GPTM タイマー B モード (GPTMTBMR) レジスタを使用してGPTMを設定します。32ビット・モードでは、タイマー

は32ビット・タイマーとしてのみ動作可能です。ただし、16ビット・モードでは、2つの16ビット・ タイマーを設定すること

も可能です。 11.3.1 GPTMのリセット条件 GPTMにリセットが適用されると、モジュールは非アクティブ状態になり、すべての制御レジスタがクリアされてデフォ

ルト状態になります。カウンタであるタイマー A と タイマー B は、それぞれのタイマーに対応するロード・レジスタであ

Page 6: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

る GPTM タイマー A インターバル・ロード (GPTMTAILR) レジスタ および GPTM タイマー B インターバル・ロード (GPTMTBILR) レジスタ、シャドウ・レジスタである GPTM タイマー A バリュー (GPTMTAV) レジスタおよび GPTM タイマー B バリュー (GPTMTBV) レジスタとともに、初期化されて0xFFFFになります。プリスケール・カウンタは、

GPTM タイマー A プリスケール (GPTMTAPR) レジスタと GPTM タイマー B プリスケール (GPTMTBPR) レジスタ

とともに、初期化されて0x00になります。 11.3.2 32ビット・タイマーの動作モード このセクションでは、GPTMがサポートする3つの32ビット・タイマー・モード (ワンショット、周期、RTC)とその設定例を

説明します。 GPTM は、GPTMコンフィグレーション(GPTMCFG)レジスタのGPTMCFGフィールドに0x0 (32ビットのワンショット/周期タイマー・モード) または 0x1 (RTC モード) を書き込むことにより、32ビット・モードになります。どちらの動作モー

ドでも、GPTMレジスタを連結して、疑似 32ビット・レジスタを形成します。これらのレジスタを次に挙げます。 ■ GPTM タイマー Aインターバル・ロード (GPTMTAILR) レジスタ [15:0] ■ GPTM タイマー Bインターバル・ロード (GPTMTBILR) レジスタ [15:0] ■ GPTM タイマー A (GPTMTAR) レジスタ [15:0] ■ GPTM タイマー B (GPTMTBR) レジスタ [15:0] ■ GPTM タイマー Aバリュー (GPTMTAV) レジスタ [15:0] ■ GPTM タイマー Bバリュー (GPTMTBV) レジスタ [15:0] 32ビット・モードでは、GPTMTAILR に対する32ビットの書き込みアクセスを、GPTMTAILR と GPTMTBILR の両者

に対する書き込みアクセスに変換します。その結果、この書き込み動作のワード順序は次のようになります。 GPTMTBILR[15:0]:GPTMTAILR[15:0] 同様に、GPTMTAR に対する32ビットの読み出しアクセスは次の値を返します。 GPTMTBR[15:0]:GPTMTAR[15:0] GPTMTAV に対する32ビットの読み出しアクセスは次の値を返します。 GPTMTBV[15:0]:GPTMTAV[15:0] 11.3.2.1 32ビット ワンショット/周期タイマー・モード 32ビットのワンショット・タイマー・モードおよび周期タイマー・モードでは、タイマーAレジスタとタイマーBレジスタが連

結して、32ビットのアップカウンタまたはダウンカウンタとして動作します。ワンショット・モードまたは周期モードのどち

らを選択するかは、GPTM タイマー A モード (GPTMTAMR) レジスタのTAMRフィールドに書き込まれる値によって

決まります。GPTM タイマー B モード (GPTMTBMR) レジスタへの書き込みは必要ありません。また、GPTMTAMR レジスタのTACDIR ビットを使用してカウントアップまたはカウントダウンを行うように設定します。 ソフトウェアがGPTMコントロール(GPTMCTL) レジスタのTAENビットを1に設定すると、タイマーは0x0000.0000か

らカウントアップを開始するか、プリロードされた値からカウントダウンを開始します。または、GPTMTAMR レジスタ

のTAWOTビットを1に設定してから、TAENビットを1に設定すると、タイマーはカウントを開始するトリガを待機します

(“Wait-for-Trigger Mode”を参照)。 カウントダウン中のタイマーがタイムアウト・イベント(0x0000.0000)に達すると、タイマーは次のサイクルで連結

GPTMTAILR から開始値をリロードします。カウントアップ中のタイマーがタイムアウト・イベント(連結GPTMTAILR内の値)に達すると、タイマーは次のサイクルで0x0000.0000からカウントを再開します。ワンショット・タイマーになる

ように構成されている場合、タイマーはカウントを停止し、GPTMCTL レジスタのTAENビットを0にクリアします。周期

タイマーとして構成されている場合、タイマーはカウントを継続します。周期モードでかつ、スナップショット・モード (GPTMTAMR レジスタのTASNAPSビットが1にセット)になっていると、タイムアウト・イベント時のタイマーのフリーラ

ン中のカウンタ値がGPTMTAR レジスタにロードされます。これにより、ソフトウェアで割り込みのアサートからISR エントリまでに経過した時間を判定できます。

Page 7: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

GPTMではカウント値のリロードに加えて、タイムアウト・イベントに達した時点で割り込みとトリガを生成します。

GPTMは、GPTMロウ・割り込みステータス (GPTMRIS) レジスタのTATORISビットを1にセットし、GPTM割り込みク

リア (GPTMICR) レジスタへの書き込みにより0にクリアされるまでそれを保持します。タイムアウト割り込みがGPTM割り込みマスク (GPTMIMR) レジスタでイネーブルになっている場合は、GPTMはGPTM マスク割り込みステータス (GPTMMIS) レジスタのTATOMISビットを1にセットします。 タイマー A の値がGPTM タイマー Aマッチ (GPTMTAMATCH) レジスタにロードされた値と等しい場合は、

GPTMTAMRレジスタの TAMIE ビットを1に設定することにより、割り込みを生成することも可能です。この割り込み

は、タイムアウト割り込みと同じステータス、マスク機能、クリア機能を持っています。ADCトリガは、GPTMCTLの

TAOTEビットを1にセットすることでイネーブルになります。μDMA トリガは、μDMAチャネルを設定することによりイ

ネーブルになります。“Channel Configuration”を参照してください。 カウンタがカウントダウンを行っている間に、ソフトウェアによりGPTMTAILR レジスタを更新すると、カウンタは次の

クロック・サイクルで新しい値をロードし、その新しい値からカウントダウンを継続します。カウンタがカウントアップまた

はカウントダウンを行っている間に、ソフトウェアによりGPTM タイマー A バリュー (GPTMTAV) レジスタを更新する

と、カウンタは次のクロック・サイクルで新しい値をロードし、その新しい値からカウントを継続します。 GPTMCTL レジスタのTASTALL ビットを1にセットすると、プロセッサがデバッガにより停止されている間、タイマー

はカウント動作をフリーズします。プロセッサが実行を再開すると、タイマーはカウントを再開します。 11.3.2.2 32ビット リアルタイム・クロック・タイマー・モード リアルタイム・クロック (RTC)モードでは、タイマーAレジスタとタイマーBレジスタを連結することにより32ビットのアッ

プカウンタとなります。RTCモードがリセット後に初めて選択されると、カウンタに0x0000.0001がロードされます。ま

た、カウンタにデータをロードするためには、GPTM タイマー A インターバル・ロード (GPTMTAILR) レジスタに書き

込む必要があります。 偶数のCCP入力ピンへの入力クロックは、RTCモードでは32.768 KHzにして下さい。クロック信号はその後1Hz のrateに分周され、32ビット・カウンタの入力へ転送されます。 ソフトウェアがGPTMCTL レジスタの TAENビットを1にセットすると、カウンタはプリロードされた値0x0000.0001から

カウントアップを開始します。カウント値がGPTMTAMATCHR レジスタにあるプリロード値と一致すると、GPTM は GPTMRIS レジスタの RTCRIS ビットを1にセットし、ハードウェア・リセットが起こるか、ソフトウェアによって(TAENビットの0クリアにより)ディセーブルにされるまで、カウントを継続します。タイマー値が0xFFFF.FFFFに達すると、タイ

マーはロールオーバーし、0x0からカウントアップを継続します。RTC割り込みがGPTMIMRレジスタにより、イネーブ

ルにされている場合、GPTMはGPTMMISレジスタのRTCMISビットを1にセット、割り込みを生成します。ステータス・

フラグは、GPTMICRレジスタのRTCCINTビットに1を書き込むことによりクリアされます。 割り込みの生成に加えて、μDMA トリガの生成も可能です。μDMA トリガは該当する μDMA チャネルを設定すること

によりイネーブルになります。“Channel Configuration”を参照してください。 GPTMCTLレジスタの TASTALLビットおよび/または TBSTALLビットが1にセットされている状態であっても、

GPTMCTLレジスタのRTCENビットが1にセットされているときは、プロセッサがデバッガにより停止されても、タイ

マーはカウント動作を中断しません。 11.3.3 16ビット タイマー動作モード GPTM は、GPTMコンフィグレーション (GPTMCFG) レジスタに0x4を書き込むことにより、16ビット・モードになりま

す。このセクションでは、各GPTM 16ビット・モードの動作を説明します。タイマー A のモードと タイマー B のモードは

同じなので、ひとつの説明中で n を使用して両方のタイマーに言及しています。 11.3.3.1 16ビット ワンショット/周期タイマー・モード 16ビットワンショット・タイマー・モードと周期タイマー・モードでは、16ビットのアップカウンタまたはダウンカウンタとし

て動作しますが、オプションの8ビットプリスケーラにより、24ビットのカウント範囲を持つタイマーに拡張することが可

能です。 ワンショット・モードと周期モードのいずれかを選択するためには、GPTMTnMR レジスタの TnMRフィールドを設定し

Page 8: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

ます。プリスケーラは、GPTMタイマー n プリスケール (GPTMTnPR) レジスタに設定して下さい。タイマーは、

GPTMTnMR レジスタのTnCDIRビットにより、カウントアップまたはカウントダウンを行うように設定します。 ソフトウェアがGPTMCTL レジスタのTnENビットを1にセットすると、タイマーは0x0000.0000からのカウントアップ、ま

たはプリロードされた値からのカウントダウンを開始します。あるいは、GPTMTnMR レジスタのTnWOTビットを1に

セットした状態で、TnENビットが1にセットされるとタイマーはカウントを開始するトリガを待機します(“Wait-for-Trigger Mode”を参照)。 カウントダウン中のタイマーがタイムアウト・イベント(0x0000) に達すると、タイマーは次のサイクルで、連結

GPTMTnILR と GPTMTnPR から開始値をリロードします。カウントアップ中のタイマーがタイムアウト・イベント (GPTMTnILR 内の値) に達すると、タイマーは次のサイクルで0x0000からカウントを再開します。ワンショット・タイ

マーになるように設定されている場合、タイマーはカウントを停止し、GPTMCTLレジスタの TnENビットを0にクリアし

ます。周期タイマーとして構成されている場合、タイマーはカウントを継続します。周期モードでかつ、スナップショット・

モード(GPTMTnMR レジスタのTnSNAPSビットが1)では、タイムアウト・イベント時のタイマーのカウント値が

GPTMTAR レジスタにロードされます。このようにして、ソフトウェアでは割り込みのアサートからISR エントリまでに

経過した時間を判定できます。 タイマーではカウント値のリロードに加えて、タイムアウト・イベントに達した時点で割り込みとトリガを生成します。

GPTM はGPTMRIS レジスタのTnTORIS ビットを1にセットし、GPTMICR レジスタへの書き込みによりクリアされる

までそれを保持します。タイムアウト割り込みが GPTMIMR でイネーブルになっている場合は、GPTMは GPTMISR レジスタのTnTOMISビットを1にセットし、割り込みを生成します。GPTMTnMR レジスタのTnMIE ビットが1のとき、

タイマー値が GPTM タイマー n マッチ (GPTMTnMATCHR) レジスタにロードされた値と等しくなると、割り込みを生

成することも可能です。この割り込みは、タイムアウト割り込みと同じステータス、マスク機能、クリア機能を持っていま

す。ADCトリガは、GPTMCTL レジスタの TnOTE ビットを1にセットすることでイネーブルになります。μDMA トリガは、

該当するμDMAチャネルを設定することによりイネーブルになります。“Channel Configuration”を参照してください。 カウンタがカウントダウンを行っている間に、ソフトウェアによりGPTMTnILR レジスタが更新される場合は、カウンタ

は次のクロック・サイクルで新しい値をロードし、その新しい値からカウントダウンを続行します。カウンタがカウント

アップまたはカウントダウンを行っている間に、ソフトウェアによりGPTM タイマー n バリュー(GPTMTnV) レジスタが

更新される場合は、カウンタは次のクロック・サイクルで新しい値をロードし、その新しい値からカウントを続行します。 GPTMCTL レジスタの TnSTALL ビットが1にセットされる場合は、プロセッサがデバッガにより停止されている間、タ

イマーはカウントをフリーズします。プロセッサが実行を再開すると、タイマーはカウントを再開します。 以下に、プリスケーラを使用した場合の16ビットフリーランタイマーの設定例を示します。すべての値は、クロックが

80MHz( Tc=12.5 ns (クロック周期))であることを前提としています。 表11-4. 16ビット・タイマー(プリスケーラを使用した構成)

プリスケール #クロック (Tc)a 大時間 単位

00000000 1 0.8192 mS 00000001 2 1.6384 mS 00000010 3 2.4576 mS ------------ -- -- -- 11111101 254 208.0768 mS 11111110 255 208.896 mS 11111111 256 209.7152 mS

a. Tc はクロック周期です。

11.3.3.2 入力エッジカウント・モード 注: 立ち上がりエッジを検出するには、入力信号が立ち上がりエッジ後 低2システム・クロック周期の間High である

必要があります。同様に、立ち下がりエッジを検出するには、入力信号が立ち下がりエッジ後 低2システム・ク

ロック周期の間Low である必要があります。このため、エッジ検出用の入力周波数の 大値はシステム周波数

の1/4となります。 エッジカウント・モードでは、GPTM タイマー nプリスケール(GPTMTnPR) レジスタに格納された値をMSB(上位8

ビット)とし、GPTMTnILR レジスタの値を下位16 ビットとする24ビットのダウンカウンタとしてタイマーは動作します。

このモードでは、タイマーは立ち上がりエッジ、立ち下りエッジ、または両エッジの3タイプのイベントをキャプチャするこ

Page 9: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

とが可能です。タイマーがエッジカウント・モードに入るには、GPTMTnMR レジスタのTnCMRビットを0にクリアする

必要があります。タイマーがカウントするエッジのタイプは GPTMCTL レジスタの TnEVENTフィールドによって決ま

ります。GPTMTnPRレジスタの値とGPTMTnILRレジスタの値が連結した24ビットの値と、GPTMタイマーnプリス

ケールマッチ(GPTMTnPMR)レジスタとGPTM タイマー nマッチ(GPTMTnMATCHR)レジスタの値が連結した24ビットの値の差が、カウントされる必要のあるエッジ・イベントの数と等しくなるように、GPTMTnPMRレジスタと

GPTMTnMATCHRレジスタを設定します。 ソフトウェアが GPTMコントロール(GPTMCTL) レジスタのTnENビットを1にセットすると、タイマーによるイベントの

キャプチャが可能になります。CCP ピンへの各入力イベントは、イベントの数が、GPTMTnPMRレジスタと

GPTMTnMATCHR の連結値と一致するまで、カウンタの値を1ずつ減らしていきます。カウント値が一致すると、

GPTM は GPTMRIS レジスタ の CnMRISビットを1にセットします (割り込みがマスクされていない場合は GPTMMISレジスタのCnMMISビットも1にセットします)。 割り込みの生成に加えて、μDMA トリガの生成も可能です。μDMA トリガは該当する μDMA チャネルを設定すること

によりイネーブルになります。“Channel Configuration”を参照してください。 次にカウンタは、GPTMTnILR の値をリロードして停止します。これは、GPTMがGPTMCTL レジスタの TnENビット

を自動的に0にクリアするためです。イベントのカウントが完了すると、ソフトウェアによりTnENが再度イネーブルにな

るまで、それ以降のイベントはすべて無視されます。 図 11-2 に、入力エッジカウント・モードの動作を示します。この図の場合には、タイマーの開始値がGPTMTnILR =0x000A、マッチ値(match value)がGPTMTnMATCHR =0x0006に設定されおり、4つのエッジがカウントされます。

カウンタは、入力信号の両エッジを検出するように設定されています。なお、プリスケールの値は示していません。 図中で、 後の2つのエッジがカウントされないことに注意してください。これは、現在のカウントが

GPTMTnMATCHR レジスタの値と一致した後に、タイマーが自動的に TnEN ビットを0にクリアするためです。 図 11-2. 16ビットの入力エッジカウント・モードの例

Page 10: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

11.3.3.3 16ビット 入力エッジタイム・モード 注: 立ち上がりエッジを検出するには、入力信号が立ち上がりエッジ後 低2システム・クロック周期の間High である

必要があります。同様に、立ち下がりエッジを検出するには、入力信号が立ち下がりエッジ後 低2システム・ク

ロック周期の間Low である必要があります。このため、エッジ検出用の入力周波数の 大値はシステム周波数

の1/4となります。 16ビットの入力エッジタイム・モードでは、プリスケーラは使用できません。

エッジタイム・モードでは、タイマーは16ビットのフリーラン・ダウンカウンタとして動作します。このモードでは、タイマー

はGPTMTnILR レジスタにロードされた値(または、リセット時には0xFFFF)に初期化されます。このモードでは、タイ

マーは立ち上がりエッジ、立ち下りエッジ、または両エッジの3タイプのイベントをキャプチャすることが可能です。

GPTMTnMR レジスタの TnCMR ビットを1にセットすることにより、タイマーはエッジタイム・モードに入ります。また、

タイマーがキャプチャするイベントのタイプはGPTMCTL レジスタのTnEVENTフィールドによって決まります。 ソフトウェアがGPTMCTL レジスタのTnENビットを1にセットすると、タイマーによるイベントのキャプチャが可能になり

ます。選択された入力イベントが検出されると、そのときのタイマーのカウンタ値がGPTMTnR レジスタにキャプチャ

され、マイクロコントローラによる読み出しが可能になります。次にGPTM はCnERISビットを1にセットします(割り込

みがマスクされていない場合はCnEMISビットも1にセット)。GPTMTnV はタイマーのフリーランの値であり、この値と

GPTMTnRレジスタの値を読み出すことにより、割り込みのアサートからISR へのエントリまでに経過した時間を判定

できます。 割り込みの生成に加えて、μDMA トリガの生成も可能です。μDMA トリガは該当するμDMA チャネルを設定すること

によりイネーブルになります。“Channel Configuration”を参照してください。 イベントがキャプチャされた後も、タイマーはカウントを停止せず、TnENビットが0にクリアされるまでカウントを継続し

ます。タイマーが 0x0000に達した時点で、GPTMTnILR レジスタからの値がタイマーにリロードされます。 図 11-3 に、入力エッジ・タイミング・モードの動作を示します。この図では、タイマーの開始値がデフォルト値 0xFFFF であり、タイマーが立ち上がりエッジ・イベントをキャプチャするように設定されています。 立ち上がりエッジ・イベントが検出されるごとに、現在のカウント値がGPTMTnR レジスタにロードされ、別の立ち上が

りエッジが検出され、新しいカウント値がGPTMTnRレジスタにロードされるまで保持されます。

Page 11: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

図 11-3. 16ビットの入力エッジタイム・モードの例

11.3.3.4 16ビット PWMモード 注: 16ビットPWMモードでは、プリスケーラは使用できません。 GPTMは、シンプルなPWM生成モードをサポートしています。PWMモードでは、タイマーはGPTMTnILRレジスタに

より定義される開始値、つまり周期を持つダウンカウンタとして構成されます。PWMモードは、GPTMTnMR レジスタ

のTnAMS ビットを 0x1、TnCMR ビットを 0x0、TnMRフィールドを 0x2 に設定することにより、イネーブルになります。 ソフトウェアがGPTMCTL レジスタのTnENビットを1にセットすると、カウンタは0x0000になるまでカウントダウンしま

す。次のカウンタ・サイクルでは、カウンタは GPTMTnILR レジスタから開始値をリロードし、ソフトウェアが

GPTMCTL レジスタのTnEN ビットを0にクリアしてカウンタをディセーブルにするまで、カウントを継続します。PWM モードでは、割り込みビットやステータス・ビットがアサートされることはありません。 出力PWM信号は、カウンタが GPTMTnILR レジスタの値 (開始ステート) である時にアサートされ、カウンタ値が

GPTM タイマー n マッチ・レジスタ (GPTMTnMATCHR) の値と等しくなる時にデアサートされます。ソフトウェアで、

GPTMCTL レジスタのTnPWML ビットを1にセットすることにより、出力 PWM 信号を反転させることが可能です。 P444の図 11-4は、周期1ms、デューティ比66%の出力PWMを生成する方法です。入力クロックは50MHz、

TnPWML =0 (TnPWML =1 の場合のデューティ比は33%) の設定例です。この例の場合、開始値は

GPTMTnIRL=0xC350、マッチ値は GPTMTnMATCHR=0x411Aです。

Page 12: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

図 11-4. 16ビットのPWM モードの例

11.3.3.5 トリガ待機 (Wait-for-Trigger) モード トリガ待機モードでは、タイマー・モジュールをデイジー・チェーン接続して、タイマー・トリガを使用して一つのタイマー

で複数のタイミング・イベントを開始できるようにすることが可能になります。トリガ待機モードは、GPTMTnMR レジス

タのTnWOT ビットを1にセットすることでイネーブルになります。TnWOT ビットが1にセットされているとき、デイジー・

チェーン接続で直前の位置にあるタイマー(タイマー N)がタイムアウト・イベントに達するまでは、タイマー N+1 はカウ

ントを開始しません。デイジー・チェーン接続は、GPTM1 が常にGPTM0に続き、GPTM2がGPTM1に続き…となる

ように動作します。タイマーAが32ビット・モード(GPTMCFG レジスタのGPTMCFGビットで設定)の場合は、次のモ

ジュールのタイマーA をトリガします。タイマーAが16ビット・モードの場合は、同じモジュールのタイマーBをトリガし、

タイマー Bでは次のモジュールのタイマーAをトリガします。なお、Timer0のTAWOTビットは1にセットしないでください。

P444の図 11-5は、GPTMCFGビットの設定により、デイジー・チェーン接続にどのように影響するかを示しています。

この機能は、ワンショット・モードと周期モード両方の場合に有効です。 図 11-5. タイマーのデイジー・チェーン接続

11.3.4 DMA 動作 各タイマーは専用の μDMA チャネルを備えており、μDMA コントローラに対してリクエスト信号を提供できます。リク

エストはバースト型であり、タイマーロウ割り込み (raw interrupt condition)が発生した時に、割り込みをマスクしてい

ても必ず発生します。μDMA 転送の調停サイズは、タイマー・イベントが発生した時に必ず転送される必要のある

データ量に設定する必要があります。

Page 13: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

例えば、256個のアイテムを10msごとに8アイテムずつ転送するには、10msで周期的タイムアウトをひとつ生成する

ようにタイマーを設定する必要があります。合計256アイテムを転送するために、バースト・サイズは8アイテムに設定

してください。全256アイテムの転送が完了するまで、μDMAコントローラはタイマーがタイムアウトするごとに8つのア

イテムを転送します。 タイマーによりμDMAをイネーブルにするに、他に特別な設定は必要ありません。μDMA コントローラのプログラミン

グの詳細については、“Micro Direct Memory Access (μDMA)”を参照してください。 11.4 初期化と設定 汎用タイマーを使用するには、RCGC1 レジスタの TIMER0ビット、TIMER1ビット、TIMER2ビット、TIMER3ビットを1にセットして、ペリフェラル・クロックをイネーブルにする必要があります。任意のCCPピンを使用する場合は、システ

ム制御モジュールのRCGC2 レジスタを介して適切なGPIOモジュールへのクロックをイネーブルにする必要がありま

す。どのGPIOポートをイネーブルにするかを判断するには、表25-4を参照してください。また、GPIOPCTL レジスタ

の PMCnフィールドを設定して、CCP信号を適切なピンに割り当てます(表25-5を参照)。 このセクションでは、サポート対象の各タイマー・モードについて、モジュールの初期化と設定例を紹介します。 11.4.1 32ビットワンショット/周期タイマー・モード 次の手順で、32ビットのワンショット・モードおよび周期モード用にGPTM を設定します。 1. 設定を行う前に、タイマーがディスエーブルになっている (GPTMCTL レジスタのTAENビットが0にクリア) ことを確

認します。 2. GPTMコンフィグレーションレジスタ (GPTMCFG) に、0x0000.0000を書き込みます。 3. GPTM タイマー A モード レジスタ (GPTMTAMR)のTAMRフィールドを、次のように設定します。

a. ワンショット・モード用には、0x1を書き込みます。 b. 周期モード用には、0x2を書き込みます。

4. 必要に応じて、GPTMTAMR レジスタのTASNAPSビット、TAWOTビット、TAMTEビット、TACDIRビットを設定し

て、タイムアウト時にフリーラン・タイマーの値をキャプチャするかどうか、カウント開始用に外部トリガを使用するかど

うか、トリガまたは割り込みの設定、カウントアップとカウントダウンのどちらを行うかを選択します。 5. GPTM タイマー A インターバル・ロード レジスタ (GPTMTAILR) に開始値(カウントダウン時)またはタイムアウト

値(カウントアップ時)をロードします。 6. 割り込みが必要な場合は、 GPTM割り込みマスク レジスタ (GPTMIMR) の該当するビットを1にセットします。 7. GPTMCTL レジスタの TAENビットを設定してタイマーをイネーブルにし、カウントを開始します。 8. GPTMRIS レジスタをポーリングするか、割り込みがイネーブルになっている場合は割り込みの生成を待機します。

どちらの場合も、GPTM割り込みクリア レジスタ (GPTMICR) の該当するビットに1を書き込むことにより、ステータ

ス・フラグがクリアされます。 ワンショット・モードでは、タイムアウト・イベント後にタイマーがカウントを停止します。タイマーを再度イネーブルにす

るには、この手順を繰り返します。周期モードに設定されたタイマーの場合はタイマーをリロードし、タイムアウト・イベ

ント後もカウントを継続します。 11.4.2 32ビット リアルタイム・クロック (RTC)モード RTC モードを使用するには、偶数番号のCCP入力端子に32.768KHzのクロックを入力する必要があります。次のス

テップに従って、RTC 機能をイネーブルにします。 1. 設定を行う前に、タイマーがディスエーブルになっている (TAENビットが0にクリアされている) ことを確認します。 2. GPTMコンフィグレーション レジスタ (GPTMCFG) に、0x0000.0001 を書き込みます。 3. GPTM タイマー Aマッチ・レジスタ (GPTMTAMATCHR)にマッチ値を書き込みます。 4. 必要に応じて、GPTM制御レジスタ (GPTMCTL) のRTCENビットを1にセットまたは0にクリアします(CPU Halt時のカウント動作の制御)。 5. 割り込みが必要な場合は、GPTM割り込みマスク レジスタ (GPTMIMR) のRTCIMビットを1にセットします。 6. GPTMCTL レジスタのTAENビットを1にセットしてタイマーをイネーブルにし、カウントを開始します。

Page 14: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

タイマーのカウントがGPTMTAMATCHR レジスタの値と等しくなると、GPTMは割り込みを生成し、カウントを継続し

ます。 11.4.3 16ビット ワンショット/周期タイマー・モード 次の手順で、16ビットのワンショット・モードおよび周期モード用にタイマーを設定します。 1. 設定を行う前に、タイマーがディスエーブルになっている (TnENビットが0にクリア) ことを確認します。 2. GPTMコンフィグレーションレジスタ (GPTMCFG) に、0x0000.0004 を書き込みます。 3. GPTM タイマー・モード (GPTMTnMR) レジスタに、次のように TnMRビット・フィールドを設定します。

a. ワンショット・モード用には、0x1を書き込みます。 b. 周期モード用には、0x2を書き込みます。

4. 必要に応じて、GPTMTnMR レジスタの TnSNAPSビット、TnWOTビット、TnMTEビット、TnCDIRビットを設定して、

タイムアウト時にフリーランタイマーの値をキャプチャするかどうか、カウント開始用に外部トリガを使用するかどうか、

トリガまたは割り込みの設定、カウントアップとカウントダウンのどちらを行うかを選択します。 5. プリスケーラを使用する場合は、GPTM タイマー n プリスケール レジスタ (GPTMTnPR) にプリスケール値を書き

込みます。 6. GPTM タイマーインターバルロード レジスタ (GPTMTnILR) に開始値(カウントダウン時)またはタイムアウト値(カウントアップ時)をロードします。 7. 割り込みが必要な場合は、GPTM割り込みマスク レジスタ (GPTMIMR)の該当するビットを1にセットします。 8. GPTM制御 レジスタ (GPTMCTL) の TnENビットを1にセットしてタイマーをイネーブルにし、カウントを開始します。 9. GPTMRIS レジスタをポーリングするか、割り込みがイネーブルになっている場合は割り込みの生成を待機します。

どちらの場合も、GPTM割り込みクリア レジスタ (GPTMICR) の該当するビットに1を書き込むことにより、ステータ

ス・フラグがクリアされます。 ワンショット・モードでは、タイマーはタイムアウト・イベント後にカウントを停止します。タイマーを再度イネーブルにす

るには、この手順を繰り返します。周期モードに設定されたタイマーは、タイマーをリロードし、タイムアウト・イベント後

もカウントを続行します。 11.4.4 入力エッジカウント・モード 次の手順で、入力エッジカウント・モードにタイマーを構成します。 1. 設定を行う前に、タイマーがディスエーブルになっている (TnENビットが0にクリア) ことを確認します。 2. GPTMコンフィグレーション (GPTMCFG) レジスタに、0x0000.0004 を書き込みます。 3. GPTMタイマー・モード (GPTMTnMR) レジスタで、 TnCMRフィールドに 0x0 、TnMRフィールドに0x3を書き込み

ます。 4. GPTM制御 (GPTMCTL) レジスタの TnEVENTフィールド にタイマーがキャプチャするイベントのタイプを設定し

ます。 5. プリスケーラを使用する場合は、GPTM タイマー n プリスケール レジスタ (GPTMTnPR)にプリスケール値を書き

込みます。 6. GPTM タイマー n インターバルロード (GPTMTnILR) レジスタにタイマーの開始値をロードします。 7. GPTM タイマー n マッチ (GPTMTnMATCHR) レジスタにイベントの数をロードします。 8. 割り込みが必要な場合は、GPTM割り込みマスク (GPTMIMR) レジスタの CnMIMビットを1にセットします。 9. GPTMCTL レジスタの TnENビットを1にセットして、タイマーをイネーブルにし、エッジ・イベントの待機を開始しま

す。 10. GPTMRIS レジスタの CnMRISビットをポーリングするか、割り込みがイネーブルになっている場合は割り込み

の生成を待機します。どちらの場合も、GPTM割り込みクリア (GPTMICR) レジスタの CnMCINTビットに1を書き込

むことにより、ステータス・フラグがクリアされます。 入力エッジカウント・モードでは、プログラムされたエッジ・イベント数が検出された後にタイマーが停止します。タイ

マーを再度イネーブルにするには、TnENビットが0にクリアされていることを確認して、ステップ 4 から ステップ 9 までを繰り返してください。 11.4.5 16ビット 入力エッジ・タイミング・モード

Page 15: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

次の手順で、タイマーを入力エッジ・タイミング・モードに設定します。 1.設定を行う前に、タイマーがディスエーブルになっている (TnENビットが0にクリア) ことを確認します。 2. GPTMコンフィグレーション (GPTMCFG) レジスタに、0x0000.0004を書き込みます。 3. GPTM タイマー・モード (GPTMTnMR) レジスタのTnCMRフィールドに 0x1を、TnMRフィールドに 0x3を書き込み

ます。 4. GPTM制御 (GPTMCTL) レジスタ の TnEVENTフィールド を設定し、タイマーがキャプチャするイベントのタイプを

設定します。 5. GPTM タイマー n インターバルロード (GPTMTnILR) レジスタにタイマーの開始値をロードします。 6. 割り込みが必要な場合は、GPTM割り込みマスク (GPTMIMR) レジスタのCnEIMビットを1にセットします。 7. GPTM制御 (GPTMCTL) レジスタのTnENビットを1にセットしてタイマーをイネーブルにし、カウントを開始します。 8. GPTMRIS レジスタの CnERISビットをポーリングするか、割り込みがイネーブルになっている場合は 割り込みの

生成を待機します。どちらの場合も、GPTM割り込みクリア (GPTMICR) レジスタのCnECINTビットに1を書き込むこ

とにより、ステータス・フラグがクリアされます。イベントが発生した時間は、GPTM タイマー n (GPTMTnR) レジスタ

を読み出すことで得られます。 入力エッジ・タイミング・モードでは、エッジ・イベントが検出された後もタイマーは動作を継続しますが、タイマーの時

間間隔はGPTMTnILR レジスタに書き込みを行うことでいつでも変更することが可能です。変更が有効になるのは、

書き込み後の次のサイクルです。 11.4.6 16ビット PWM モード 次の手順で、タイマーをPWMモードに設定します。 1. 設定を行う前に、タイマーがディスエーブルになっている (TnENビットが0にクリア) ことを確認します。 2. GPTMコンフィグレーション(GPTMCFG) レジスタに、0x0000.0004を書き込みます。 3. GPTM タイマー・モード (GPTMTnMR) レジスタのTnAMSフィールドを0x1、TnCMRフィールドを0x0に設定し、

TnMRフィールドを0x2に設定します。 4. GPTM制御 (GPTMCTL) レジスタのTnPWMLフィールドにPWM 信号 (反転されているかどうか)の出力ステート

を設定します。 5. タイマーの開始値を、GPTM タイマー nインターバルロード (GPTMTnILR) レジスタにロードします。 6. GPTM タイマー n マッチ (GPTMTnMATCHR) レジスタに、マッチ値をロードします。 7. GPTM制御 (GPTMCTL) レジスタのTnENビットを1にセットしてタイマーをイネーブルにし、出力 PWM信号の生

成を開始します。 PWMモードでは、PWM信号が生成された後もタイマーは動作を継続します。PWMの周期は、GPTMTnILR レジス

タへの書き込みによりいつでも変更することが可能です。変更が有効になるのは、書き込み後の次のサイクルです。

Page 16: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

11.5 レジスタ・マップ 表11-5 は、GPTM レジスタのリストです。記載されているオフセットはレジスタのアドレスに対する16進インクリメント

であり、次に示すタイマーのベース・アドレスに関連しています。 ■ タイマー0: 0x4003.0000 ■ タイマー1: 0x4003.1000 ■ タイマー2: 0x4003.2000 ■ タイマー3: 0x4003.3000 GPTMのクロックは、レジスタにプログラムする前にイネーブルにする必要があることに注意してください。 表11-5. タイマーのレジスタ・マップ オフセット 名前 タイプ リセット 説明 0x000 GPTMCFG R/W 0x0000.0000 GPTMコンフィグレーション 0x004 GPTMTAMR R/W 0x0000.0000 GPTM タイマー A モード 0x008 GPTMTBMR R/W 0x0000.0000 GPTM タイマー B モード 0x00C GPTMCTL R/W 0x0000.0000 GPTM制御 0x018 GPTMIMR R/W 0x0000.0000 GPTM割り込みマスク 0x01C GPTMRIS RO 0x0000.0000 GPTMロウ割り込みステータス 0x020 GPTMMIS RO 0x0000.0000 GPTM マスク割り込みステータス 0x024 GPTMICR W1C 0x0000.0000 GPTM割り込みクリア 0x028 GPTMTAILR R/W 0xFFFF.FFFF GPTM タイマー Aインターバル・ロード 0x02C GPTMTBILR R/W 0x0000.FFFF GPTM タイマー Bインターバル・ロード 0x030 GPTMTAMATCHR R/W 0xFFFF.FFFF GPTM タイマー A マッチ 0x034 GPTMTBMATCHR R/W 0x0000.FFFF GPTM タイマー B マッチ 0x038 GPTMTAPR R/W 0x0000.0000 GPTM タイマー A プリスケール 0x03C GPTMTBPR R/W 0x0000.0000 GPTM タイマー B プリスケール 0x040 GPTMTAPMR R/W 0x0000.0000 GPTM タイマー A プリスケール・マッチ 0x044 GPTMTBPMR R/W 0x0000.0000 GPTM タイマー B プリスケール・マッチ 0x048 GPTMTAR RO 0xFFFF.FFFF GPTM タイマー A 0x04C GPTMTBR RO 0x0000.FFFF GPTM タイマー B 0x050 GPTMTAV RW 0xFFFF.FFFF GPTM タイマー A バリュー 0x054 GPTMTBV RW 0x0000.FFFF GPTM タイマー B バリュー

11.6 レジスタの説明 このセクションの以降のページでは、GPTM のレジスタをアドレス・オフセットの番号順に記載し、説明します。

Page 17: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 1: GPTMコンフィグレーション (GPTMCFG)、オフセット 0x000 このレジスタは、GPTMの基本動作モードを設定します。このレジスタに書き込まれた値により、GPTM が32ビット・

モードと16ビット・モードのどちらになるかが決まります。 GPTMコンフィグレーション (GPTMCFG) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x000 タイプ R/W、リセット 0x0000.0000

ビット/ フィールド

名前 タイプ リセット 説明

31:3 予約 RO 0x0000.000 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性

のため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてく

ださい。 2:0 GPTMCFG R/W 0x0 GPTMコンフィグレーション GPTMCFG の値は次のように定義されます。 値 説明 0x0 32ビット・タイマー 0x1 32ビット・リアルタイム・クロック (RTC) カウンタ 0x2 予約 0x3 予約 0x4 16ビット・タイマー。この機能は、GPTMTAMR と GPTMTBMR のビット

1:0 により制御されます。

Page 18: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 2: GPTM タイマー A モード (GPTMTAMR)、オフセット 0x004 このレジスタは、GPTMCFG レジスタで選択された設定に基づいて、GPTMを設定します。16ビット PWM モードの

時は、TAAMSビットを1にセットし、TACMRビットを0にクリアし、TAMRフィールドを 0x2に設定してください。 16ビット・タイマーの設定では、TAMRビットはタイマー Aの16ビット・タイマー・モードを制御します。32ビット・タイマー

の設定では、このレジスタが動作モードを制御し、GPTMTBMR の設定内容は無視されます。 GPTM タイマー A モード (GPTMTAMR) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x004 タイプ R/W、リセット 0x0000.0000

ビット/ フィールド

名前 タイプ リセット 説明

31:8 予約 RO 0x0000.00 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換

性のため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するように

してください。 7 TASNAPS R/W 0 GPTM タイマー A スナップショット・モード 値 説明 0 スナップショット・モードはディスエーブルです。 1 タイマー A が周期モードに設定されている場合は、タイムアウト・イ

ベント時にタイマーAのカウント値が GPTM タイマー A (GPTMTAR) レジスタにロードされます。

6 TAWOT R/W 0 GPTM タイマー A トリガ待機 値 説明 0 タイマー A はイネーブルになると直ちにカウントを開始します。 1 タイマー A がイネーブルになっても (GPTMCTL レジスタのTAEN

ビットを1にセット)、デイジー・チェーン接続で直前の位置にあるタイ

マーからトリガを受け取るまでは、タイマーAはカウントを開始しませ

ん。P444 の図 11-5 を参照してください。この機能は、ワンショット・

モードと周期モードの両方で有効です。 このビットは、Timer0のタイマーAでは必ず0にクリアして下さい。 5 TAMIE R/W 0 GPTM タイマー A マッチ割り込みイネーブル 値 説明 0 マッチ割り込みはディスエーブルです。 1 ワンショット・モードおよび周期モードで、タイマーのカウント値が

GPTMTAMATCHR レジスタの値(マッチ値)に達した時に、割り込み

が生成されます。 4 TACDIR R/W 0 GPTM タイマー A カウント・ディレクション 値 説明 0 タイマーはカウントダウンを行います。 1 ワンショット・モードまたは周期モードの時、タイマーはカウントアップ

を行います。カウントアップする場合のタイマーの開始値は0x0000です。

16ビットPWMまたは32ビット RTC モードの場合、このビットは必ず0にクリアしてく

ださい。このビットを1にセットすると、予測できない挙動が発生する結果になりま

す。 3 TAAMS R/W 0 GPTM タイマー A 代替モード選択 TAAMSの値は次のように定義されます。 値 説明 0 キャプチャ・モードがイネーブルになります。 1 PWM モードがイネーブルになります。 注: PWM モードをイネーブルにするには、TACMRビットを0にクリア

して、TAMRフィールドに0x2を設定してください。 2 TACMR R/W 0 GPTM タイマー A キャプチャ・モード

Page 19: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

TACMR の値は次のように定義されます。 値 説明 0 エッジカウント・モード 1 エッジタイム・モード 1:0 TAMR R/W 0x0 GPTM タイマー A モード TAMRの値は次のように定義されます。 値 説明 0x0 予約 0x1 ワンショット・タイマー・モード 0x2 周期タイマー・モード 0x3 キャプチャ・モード タイマー・モードは、GPTMCFG レジスタのビット 2:0(16ビットモードまたは32ビッ

トモード)に設定されたタイマー設定を基にしています。

Page 20: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 3: GPTM タイマー B モード (GPTMTBMR)、オフセット 0x008 このレジスタは、GPTMCFG レジスタで選択された設定に基づいて、GPTMを構成します。16ビット PWM モードの

時は、TBAMSビットを1にセットし、TBCMRビットを0にクリアし、TBMRフィールドを 0x2に設定してください。 16ビット・タイマーの設定では、これらのビットはタイマー Bの16ビット・タイマー・モードを制御します。32ビット・タイ

マー構成では、このレジスタの内容は無視され、GPTMTAMRが使用されます。 GPTM タイマー B モード (GPTMTBMR) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x008 タイプ R/W、リセット 0x0000.0000

ビット/ フィールド

名前 タイプ リセット 説明

31:8 予約 RO 0x0000.00 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性のた

め、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてください。 7 TBSNAPS R/W 0 GPTM タイマー B スナップショット・モード 値 説明 0 スナップショット・モードはディスエーブルです。 1 タイマーBが周期モードで設定されている場合は、タイムアウト・イベ

ント時にタイマーBのカウント値がGPTM タイマー B (GPTMTBR) レジスタにロードされます。

6 TBWOT R/W 0 GPTM タイマー B トリガ待機 値 説明 0 タイマー B はイネーブルになると直ちにカウントを開始します。 1 タイマー B がイネーブルになっても (GPTMCTL レジスタのTBEN

ビットを1にセット)、デイジー・チェーン接続で直前の位置にあるタイ

マーからトリガを受け取るまでは、タイマー B はカウントを開始しませ

ん。P444 の図 11-5 を参照してください。この機能は、ワンショット・

モードと周期モードの両方で有効です。 5 TBMIE R/W 0 GPTM タイマー B マッチ割り込みイネーブル 値 説明 0 割り込みはディスエーブルです。 1 ワンショット・モードおよび周期モードで、タイマーのカウント値が

GPTMTBMATCHRレジスタのマッチ値に達した時に、割り込みが生

成されます。 4 TBCDIR R/W 0 GPTM タイマー B カウントディレクション 値 説明 0 タイマーはカウントダウンを行います。 1 ワンショット・モードまたは周期モードの時、タイマーはカウントアップ

を行います。カウントアップする場合のタイマーの開始値は0x0000で

す。 16ビットPWMまたは32ビット RTC モードの場合、このビットは必ず0にクリアして下さ

い。このビットを1にセットすると、予測できない挙動が発生する結果になります。 3 TBAMS R/W 0 GPTM タイマー B代替モード選択 TBAMS の値は次のように定義されます。 値 説明 0 キャプチャ・モードがイネーブルになります。 1 PWM モードがイネーブルになります。 注: PWM モードをイネーブルにするには、TBCMR ビットを0にクリア

して、TBMR フィールドを0x2に設定してください。 2 TBCMR R/W 0 GPTM タイマー B キャプチャ・モード TBCMR の値は次のように定義されます。 値 説明 0 エッジカウント・モード

Page 21: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

1 エッジタイム・モード 1:0 TBMR R/W 0x0 GPTM タイマー B モード TBMR の値は次のように定義されます。 値 説明 0x0 予約 0x1 ワンショット・タイマー・モード 0x2 周期タイマー・モード 0x3 キャプチャ・モード タイマー・モードは、GPTMCFG レジスタのビット 2:0(16ビットモードまたは32ビットモー

ド)により定義されたタイマー構成を基にしています。

Page 22: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 4: GPTM制御 (GPTMCTL)、オフセット 0x00C このレジスタは、GPTMCFG レジスタおよび GMTMTnMR レジスタと並行して使用され、タイマーの設定を微調整し

たり、タイマー停止や出力トリガ等の他の機能をイネーブルにしたりします。出力トリガを使用して、ADCモジュールの

サンプリングを開始することが可能です。 GPTM制御 (GPTMCTL) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x00C タイプ R/W、リセット 0x0000.0000

ビット/ フィールド

名前 タイプ リセット 説明

31:15 予約 RO 0x0000 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。 14 TBPWML R/W 0 GPTM タイマー B PWM 出力レベル TBPWML の値は次のように定義されます。 値 説明 0 出力は影響を受けません。 1 出力は反転されます。 13 TBOTE R/W 0 GPTM タイマー B 出力トリガのイネーブル TBOTE の値は次のように定義されます。 値 説明 0 タイマーBからのADCトリガ出力はディスエーブルです。 1 タイマーBからのADCトリガ出力はイネーブルです。 さらに、ADCをイネーブルにし、ADCEMUX レジスタ(P537参照)の EMn ビットを使用

してタイマーをトリガ・ソースとして選択する必要があります。 12 予約 RO 0 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。 11:10 TBEVENT R/W 0x0 GPTM タイマー B のイベント・モード TBEVENT の値は次のように定義されます。 値 説明 0x0 立ち上がりエッジ 0x1 立ち下がりエッジ 0x2 予約 0x3 両エッジ 9 TBSTALL R/W 0 GPTM タイマー B 停止イネーブル TBSTALL の値は次のように定義されます。 値 説明 0 デバッガによりプロセッサが停止しても、タイマー B はカウントを続行し

ます。 1 デバッガによりプロセッサが停止すると、タイマー B はカウントをフリー

ズします。 プロセッサが正常に処理を実行している場合は、TBSTALL ビット は無視されます。 8 TBEN R/W 0 GPTM タイマー B イネーブル TBEN の値は次のように定義されます。 値 説明 0 タイマー B はディスエーブルです。 1 タイマー B がイネーブルになり、カウントを開始します。あるいは、

GPTMCFG レジスタに基づいて、キャプチャ・ロジックがイネーブルに

なります。 7 予約 RO 0 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。

Page 23: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

6 TAPWML R/W 0 GPTM タイマー A PWM出力レベル TAPWML の値は次のように定義されます。 値 説明 0 出力は影響を受けません。 1 出力は反転されます。 5 TAOTE R/W 0 GPTM タイマー A 出力トリガイネーブル TAOTE の値は次のように定義されます。 値 説明 0 タイマー AのADC トリガ出力はディスエーブルです。 1 タイマー AのADC トリガ出力はイネーブルです。 さらに、ADCをイネーブルにし、ADCEMUX レジスタ(P537参照)の EMn ビットを使用

してタイマーをトリガ・ソースとして選択する必要があります。 4 RTCEN R/W 0 GPTM RTC イネーブル RTCEN の値は次のように定義されます。 値 説明 0 RTC のカウントはディスエーブルです。

1 RTC のカウントはイネーブルです。 TRCENビットを1にセットすると、TASTALLまたはTBSTALLビットの値にかかわらず、

デバッガによりプロセッサが停止しても、RTCはカウントを継続します。

3:2 TAEVENT R/W 0x0 GPTM タイマー A イベント・モード TAEVENT の値は次のように定義されます。 値 説明 0x0 立ち上がりエッジ 0x1 立ち下がりエッジ 0x2 予約 0x3 両エッジ 1 TASTALL R/W 0 GPTM タイマー A停止イネーブル TASTALL の値は次のように定義されます。 値 説明 0 デバッガによりプロセッサが停止しても、タイマー A はカウントを継続し

ます。 1 デバッガによりプロセッサが停止すると、タイマー A はカウントをフリー

ズします。 プロセッサが正常に処理を実行している場合は、TASTALL ビット は無視されます。 0 TAEN R/W 0 GPTM タイマー A イネーブル TAEN の値は次のように定義されます。 値 説明 0 タイマー A はディスエーブルです。 1 タイマー A がイネーブルになり、カウントを開始します。あるいは、

GPTMCFG レジスタに基づいて、キャプチャ・ロジックがイネーブルにな

ります。

Page 24: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 5: GPTM 割り込みマスク (GPTMIMR)、オフセット 0x018 このレジスタにより、ソフトウェアによるGPTM のコントローラ・レベル割り込みのイネーブル/ディセーブルが可能にな

ります。該当するビットを1にセットすると対応する割り込みがイネーブルになり、該当するビットを0にクリアすると割り

込みがディスエーブルになります。 GPTM割り込みマスク (GPTMIMR) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x018 タイプ R/W、リセット 0x0000.0000

ビット/ フィールド

名前 タイプ リセット 説明

31:12 予約 RO 0x0000.0 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。 11 TBMIM R/W 0 GPTM タイマー B モードマッチ割り込みマスク TBMIM の値は次のように定義されます。 値 説明 0 割り込みはディスエーブルです。 1 割り込みはイネーブルです。 10 CBEIM R/W 0 GPTM キャプチャ B イベント割り込みマスク CBEIM の値は次のように定義されます。 値 説明 0 割り込みはディスエーブルです。 1 割り込みはイネーブルです。 9 CBMIM R/W 0 GPTM キャプチャ Bマッチ割り込みマスク CBMIM の値は次のように定義されます。 値 説明 0 割り込みはディスエーブルです。 1 割り込みはイネーブルです。 8 TBTOIM R/W 0 GPTM タイマー B タイムアウト割り込みマスク TBTOIM の値は次のように定義されます。 値 説明 0 割り込みはディスエーブルです。 1 割り込みはイネーブルです。 7:5 予約 RO 0x0 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。 4 TAMIM R/W 0 GPTM タイマー A モードマッチ割り込みマスク TAMIM の値は次のように定義されます。 値 説明 0 割り込みはディスエーブルです。 1 割り込みはイネーブルです。 3 RTCIM R/W 0 GPTM RTC割り込みマスク RTCIM の値は次のように定義されます。 値 説明 0 割り込みはディスエーブルです。 1 割り込みはイネーブルです。 2 CAEIM R/W 0 GPTM キャプチャ Aイベント割り込みマスク CAEIM の値は次のように定義されます。 値 説明 0 割り込みはディスエーブルです。 1 割り込みはイネーブルです。 1 CAMIM R/W 0 GPTM キャプチャ Aマッチ割り込みマスク CAMIM の値は次のように定義されます。

Page 25: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

値 説明 0 割り込みはディスエーブルです。 1 割り込みはイネーブルです。 0 TATOIM R/W 0 GPTM タイマー Aタイムアウト割り込みマスク TATOIM の値は次のように定義されます。 値 説明 0 割り込みはディスエーブルです。 1 割り込みはイネーブルです。

Page 26: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 6: GPTM ロウ割り込みステータス (GPTMRIS)、オフセット 0x01C このレジスタは、GPTMの内部割り込み信号のステートを示します。これらのビットは、割り込みがGPTMIMR レジス

タでマスクされるかどうかにかかわらず、割り込みイベントが発生すると1にセットされます。各ビットは、GPTMICRの

対応するビットに1を書き込むことによりクリアできます。 GPTMロウ割り込みステータス (GPTMRIS) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x01C タイプ RO、リセット 0x0000.0000

ビット/ フィールド

名前 タイプ リセット 説明

31:12 予約 RO 0x0000.0 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。 11 TBMRIS R/W 0 GPTM タイマー B モードマッチロウ割り込み 値 説明 1 ワンショット・モードと周期モードの場合において、GPTMTBMR レジスタ

のTBMIEビットが1にセットされているとき、カウント値が

GPTMTBMATCHR レジスタのマッチ値に達しています。 0 マッチ値に達していません。 このビットは、GPTMICR レジスタのTBMCINT ビットに1を書き込むことによりクリアさ

れます。 10 CBERIS RO 0 GPTM キャプチャ B イベントロウ割り込み 値 説明 1 キャプチャ B のイベントが発生しました。 0 キャプチャ B のイベントは発生していません。 このビットは、GPTMICR レジスタのCBECINT ビットに1を書き込むことによりクリアさ

れます。 9 CBMRIS RO 0 GPTM キャプチャ B マッチロウ割り込み 値 説明 1 キャプチャ B のマッチが発生しました。 0 キャプチャ B のマッチは発生していません。 このビットは、GPTMICR レジスタのCBMCINT ビットに1を書き込むことによりクリアさ

れます。 8 TBTORIS RO 0 GPTM タイマー B タイムアウトロウ割り込み 値 説明 1 タイマーBがタイムアウトになりました。 0 タイマーBはタイムアウトになっていません。 このビットは、GPTMICR レジスタのTBTOCINT ビットに1を書き込むことによりクリア

されます。 7:5 予約 RO 0x0 ソフトウェアが予約ビットの値に頼ることはできません。今後の製品との互換性を提供

するために、予約ビットの値は読み取り-変更-書き込み(read-modify-write)動作全体

にわたって保存される必要があります。 4 TAMRIS R/W 0 GPTM タイマー A モード マッチロウ割り込み 値 説明 1 ワンショット・モードと周期モードの場合において、GPTMTAMR レジスタ

のTAMIEビットが1にセットされているとき、カウント値が

GPTMTAMATCHR レジスタのマッチ値に達しています。 0 マッチ値に達していません。 このビットは、GPTMICR レジスタのTAMCINT ビットに1を書き込むことによりクリアさ

れます。 3 RTCRIS RO 0 GPTM RTC ロー割り込み 値 説明 1 RTC イベントが発生しました。

Page 27: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

0 RTC イベントは発生していません。 このビットは、GPTMICR レジスタのRTCCINT ビットに1を書き込むことによりクリアさ

れます。 2 CAERIS RO 0 GPTM キャプチャ Aイベントロウ割り込み 値 説明 1 キャプチャ A のイベントが発生しました。 0 キャプチャ A のイベントは発生していません。 このビットは、GPTMICR レジスタのCAECINT ビットに1を書き込むことによりクリアさ

れます。 1 CAMRIS RO 0 GPTM キャプチャ Aマッチロウ割り込み 値 説明 1 キャプチャ A のマッチが発生しました。 0 キャプチャ A のマッチは発生していません。 このビットは、GPTMICR レジスタのCAMCINT ビットに1を書き込むことによりクリアさ

れます。 0 TATORIS RO 0 GPTM タイマー A タイムアウトロウ割り込み 値 説明 1 タイマー Aがタイムアウトになりました。 0 タイマー Aはタイムアウトになっていません。 このビットは、GPTMICR レジスタのTATOCINT ビットに1を書き込むことによりクリア

されます。

Page 28: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 7: GPTM マスク割り込みステータス (GPTMMIS)、オフセット 0x020 このレジスタは、マスク割り込みのステートを示します。GPTMIMRで割り込みがマスクされておらず、かつ割り込み

のアサートが発生するようなイベントが存在する場合は、対応するビットが1にセットされます。すべてのビットは、

GPTMICRの対応するビットに1を書き込むことによりクリアされます。 GPTM マスク割り込みステータス (GPTMMIS) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x020 タイプ RO、リセット 0x0000.0000

ビット/ フィールド

名前 タイプ リセット 説明

31:12 予約 RO 0x0000.0 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。 11 TBMMIS R/W 0 GPTM タイマー B モードマッチ・マスク割り込み 値 説明 1 アンマスクされたタイマー B モード・マッチ割り込みが発生しました。 0 タイマー B モードのマッチ割り込みは発生していないか、マスクされてい

ます。 このビットは、GPTMICR レジスタのTBMCINTビットに1を書き込むことによりクリアさ

れます。 10 CBEMIS RO 0 GPTM キャプチャ B イベント・マスク割り込み 値 説明 1 アンマスクされたキャプチャ Bイベント割り込みが発生しました。 0 キャプチャ B のイベント割り込みは発生していないか、マスクされていま

す。 このビットは、GPTMICR レジスタのCBECINT ビットに1を書き込むことによりクリアさ

れます。 9 CBMMIS RO 0 GPTM キャプチャ B マッチ・マスク割り込み 値 説明 1 アンマスクされたキャプチャ Bマッチ割り込みが発生しました。 0 キャプチャ B モードのマッチ割り込みは発生していないか、マスクされて

います。 このビットは、GPTMICR レジスタのCBMCINT ビットに1を書き込むことによりクリアさ

れます。 8 TBTOMIS RO 0 GPTM タイマー Bタイムアウト・マスク割り込み 値 説明 1 アンマスクされたタイマー Bタイムアウト割り込みが発生しました。 0 タイマー B のタイムアウト割り込みは発生していないか、マスクされてい

ます。 このビットは、GPTMICR レジスタのTBTOCINT ビットに1を書き込むことによりクリア

されます。 7:5 予約 RO 0x0 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。 4 TAMMIS R/W 0 GPTM タイマー A モードマッチ・マスク割り込み 値 説明 1 アンマスクされたタイマー Aマッチ割り込みが発生しました。 0 タイマー A モードのマッチ・マスク割り込みは発生していないか、マスク

されています。 このビットは、GPTMICR レジスタのTAMCINT ビットに1を書き込むことによりクリアさ

れます。 3 RTCMIS RO 0 GPTM RTC マスク割り込み

Page 29: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

値 説明 1 アンマスクされたRTCイベント割り込みが発生しました。 0 RTCのアンマスク・イベント割り込みは発生していないか、マスクされて

います。 このビットは、GPTMICR レジスタのRTCCINT ビットに1を書き込むことによりクリアさ

れます。 2 CAEMIS RO 0 GPTM キャプチャ A マスク・イベントマスク割り込み 値 説明 1 アンマスクされたキャプチャ Aイベント割り込みが発生しました。 0 キャプチャ A のイベント割り込みは発生していないか、マスクされていま

す。 このビットは、GPTMICR レジスタのCAECINTビットに1を書き込むことによりクリアさ

れます。 1 CAMMIS RO 0 GPTM キャプチャ A マッチ・マスク割り込み 値 説明 1 アンマスクされたキャプチャ Aマッチ割り込みが発生しました。 0 キャプチャ A モードのマッチ割り込みは発生していないか、マスクされて

います。 このビットは、GPTMICR レジスタのCAMCINT ビットに1を書き込むことによりクリアさ

れます。 0 TATOMIS RO 0 GPTM タイマー Aタイムアウト・マスク割り込み 値 説明 1 アンマスクされたタイマー Aタイムアウト割り込みが発生しました。 0 タイマー A ののタイムアウト割り込みは発生していないか、マスクされて

います。 このビットは、GPTMICR レジスタのTATOCINT ビットに1を書き込むことによりクリア

されます。

Page 30: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 8: GPTM 割り込みクリア (GPTMICR)、オフセット 0x024 このレジスタは、GPTMRIS レジスタと GPTMMIS レジスタの ステータス・ビットをクリアするために使用されます。

ビットに1を書き込むことにより、GPTMRIS レジスタと GPTMMIS レジスタの対応するビットが0にクリアされます。 GPTM割り込みクリア (GPTMICR) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x024 タイプ W1C、リセット 0x0000.0000

ビット/ フィールド

名前 タイプ リセット 説明

31:12 予約 RO 0x0000.0 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性

のため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてく

ださい。 11 TBMCINT W1C 0 GPTM タイマー B モードマッチ割り込みクリア このビットに1 を書き込むことにより、GPTMRIS レジスタのTBMRIS ビットと

GPTMMIS レジスタのTBMMIS ビット が0にクリアされます。 10 CBECINT W1C 0 GPTM キャプチャ B イベント割り込みクリア このビットに1 を書き込むことにより、GPTMRIS レジスタのCBERIS ビットと

GPTMMIS レジスタのCBEMIS ビット が0にクリアされます。 9 CBMCINT W1C 0 GPTM キャプチャ B マッチ割り込みクリア このビットに1 を書き込むことにより、GPTMRIS レジスタのCBMRIS ビットと

GPTMMIS レジスタのCBMMIS ビット が0にクリアされます。 8 TBTOCINT W1C 0 GPTM タイマー B タイムアウト割り込みクリア このビットに1 を書き込むことにより、GPTMRIS レジスタのTBTORIS ビットと

GPTMMIS レジスタのTBTOMIS ビット が0にクリアされます。 7:5 予約 RO 0x0 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性

のため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてく

ださい。 4 TAMCINT W1C 0 GPTM タイマー A モードマッチ割り込みクリア このビットに1 を書き込むことにより、GPTMRIS レジスタのTAMRIS ビットと

GPTMMIS レジスタのTAMMIS ビット が0にクリアされます。 3 RTCCINT W1C 0 GPTM RTC 割り込みクリア このビットに1 を書き込むことにより、GPTMRIS レジスタのRTCRIS ビットと

GPTMMIS レジスタのRTCMIS ビット が0にクリアされます。 2 CAECINT W1C 0 GPTM キャプチャ A イベント割り込みクリア このビットに1 を書き込むことにより、GPTMRIS レジスタのCAERIS ビットと

GPTMMIS レジスタのCAEMIS ビット が0にクリアされます。 1 CAMCINT W1C 0 GPTM キャプチャ A マッチ割り込みクリア このビットに1 を書き込むことにより、GPTMRIS レジスタのCAMRIS ビットと

GPTMMIS レジスタのCAMMIS ビット が0にクリアされます。 0 TATOCINT W1C 0 GPTM タイマー A タイムアウトロー割り込み このビットに1 を書き込むことにより、GPTMRIS レジスタのTATORIS ビットと

GPTMMIS レジスタのTATOMIS ビット がクリアされます。

Page 31: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 9: GPTM タイマー A インターバルロード(GPTMTAILR)、オフセット 0x028 タイマーのカウントダウン中には、このレジスタはカウント開始値をタイマーにロードするために使用されます。タイ

マーのカウントアップ中には、このレジスタでは上限値を設定します。GPTMが32ビット・モードの場合は、

GPTMTAILR は 32ビット・レジスタになります(上位16ビットがGPTM タイマー Bインターバルロード (GPTMTBILR) レジスタの内容に対応します)。16ビット・モードでは、このレジスタの上位16 ビットが0として読み出され、また、

GPTMTBILRのステートには影響しません。 GPTM タイマー A インターバルロード (GPTMTAILR) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x028 タイプ R/W、リセット 0xFFFF.FFFF

ビット/ フィールド

名前 タイプ リセット 説明

31:16 TAILRH R/W 0xFFFF GPTM タイマー Aインターバルロード レジスタ High GPTMCFG レジスタにより32ビット・モードに設定されている場合は、書き込んだ値が

GPTM タイマー B インターバルロード (GPTMTBILR) レジスタにロードされます。読

み出しはGPTMTBILRの現在値を返します。 16ビット・モードでは、このフィールドは0として読み出され、GPTMTBILRのステートに

は影響しません。 15:0 TAILRL R/W 0xFFFF GPTM タイマー Aインターバルロード レジスタ Low 16ビット・モードと32ビット・モード両方の場合に、このフィールドへの書き込むとタイ

マー Aのカウンタにその値がロードされます。読み出しはGPTMTAILRの現在値を返

します。

Page 32: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 10: GPTM タイマー Bインターバルロード (GPTMTBILR)、オフセット 0x02C このレジスタは、カウント開始値をタイマー Bにロードするために使用されます。GPTMが32ビット・モードに設定され

ている場合、GPTMTBILR はタイマー B の現在値を返し、書き込みを無視します。 GPTM タイマー Bインターバルロード (GPTMTBILR) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x02C タイプ R/W、リセット 0x0000.FFFF

ビット/ フィールド

名前 タイプ リセット 説明

31:16 予約 RO 0x0000 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。 15:0 TBILRL R/W 0xFFFF GPTM タイマー Bインターバルロード レジスタ GPTMが32ビット・タイマーの設定ではない場合は、このフィールドへの書き込みによ

りGPTMTBILRが更新されます。32ビット・モードでは書き込みが無視され、読み出し

はGPTMTBILRの現在値を返します。

Page 33: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 11: GPTM タイマー A マッチ (GPTMTAMATCHR)、オフセット 0x030 このレジスタには、マッチ値がロードされます。ワンショット・モードまたは 周期モードの場合に、タイマー値がこのレジ

スタの値と等しいとき、割り込みを生成することが可能です。エッジカウント・モードでは、このレジスタは GPTMTAILRとともに、カウントされるエッジ・イベントの数を決定します。カウントされるエッジ・イベントの総数は、

GPTMTAILR からこの値を引いた値に等しくなります。 GPTM タイマー Aマッチ (GPTMTAMATCHR) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x030 タイプ R/W、リセット 0xFFFF.FFFF

ビット/ フィールド

名前 タイプ リセット 説明

31:16 TAMRH R/W 0xFFFF GPTM タイマー A マッチ・レジスタ High タイマーがGPTMCFG レジスタにより32ビット・モードに設定されているとき、マッチ・イ

ベントを決定するためにこの値がGPTMTARの上位16ビットと比較されます。 16ビット・モードでは、このビットフィールドは0 として読みだされ、GPTMTBMATCHR

のステートには影響しません。 15:0 TAMRL R/W 0xFFFF GPTM タイマー A マッチ・レジスタ Low タイマーがGPTMCFG レジスタにより32ビット・モードに設定されているとき、マッチ・イ

ベントを決定するためにこの値がGPTMTARの下位16ビットと比較されます。 タイマーが GPTMCFG レジスタにより16ビット・モードに設定されているとき、マッチ・

イベントを決定するためにこの値がGPTMTARと比較されます。 エッジカウント・モードに設定されているとき、この値はGPTMTAILRとともに、カウント

されるエッジ・イベントの数を決定します。カウントされるエッジ・イベントの総数は、

GPTMTAILR からこの値を引いた値に等しくなります。 PWM モードに設定されているとき、この値はGPTMTAILR とともに、出力されるPWM

信号のデューティ比を決定します。

Page 34: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 12: GPTM タイマー B マッチ (GPTMTBMATCHR)、オフセット 0x034 このレジスタにはマッチ値がロードされます。ワンショット・モードまたは 周期モードの場合に、タイマー値がこのレジス

タの値と等しいとき、割り込みを生成することが可能です。エッジカウント・モードでは、このレジスタは GPTMTBILRとともに、カウントされるエッジ・イベントの数を決定します。カウントされるエッジ・イベントの総数は、GPTMTBILR からこの値を引いた値に等しくなります。 GPTM タイマー Bマッチ (GPTMTBMATCHR) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x034 タイプ R/W、リセット 0x0000.FFFF

ビット/ フィールド

名前 タイプ リセット 説明

31:16 予約 RO 0x0000 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。 15:0 TBMRL R/W 0xFFFF GPTM タイマー B マッチ・レジスタ Low タイマーがGPTMCFG レジスタにより16ビット・モードに設定されているとき、マッチ・イ

ベントを決定するためにこの値がGPTMTBRと比較されます。 エッジカウント・モードに設定されているとき、この値はGPTMTBILRとともに、カウント

されるエッジ・イベントの数を決定します。カウントされるエッジ・イベントの総数は、

GPTMTBILR からこの値を引いた値に等しくなります。 PWM モードに設定されているとき、この値はGPTMTBILRとともに、出力されるPWM

信号のデューティ比を決定します。

Page 35: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 13: GPTM タイマー A プリスケール (GPTMTAPR)、オフセット 0x038 このレジスタにより、周期モードおよびワンショット・モードで16ビット・タイマーの範囲を拡張することがソフトウェアで

可能になります。 エッジカウント・モードでは、このレジスタは24ビットのカウント値のMSBになります。 GPTM タイマー Aプリスケール (GPTMTAPR) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x038 タイプ R/W、リセット 0x0000.0000

ビット/ フィールド

名前 タイプ リセット 説明

31:8 予約 RO 0x0000.00 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。 7:0 TAPSR R/W 0x00 GPTM タイマー A プリスケール このレジスタに値を書き込むとその値をロードすることができます。読み出しは、レジス

タの現在値を返します。 詳細と使用例については、P440 の表11-4 を参照してください。

Page 36: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 14: GPTM タイマー B プリスケール (GPTMTBPR)、オフセット 0x03C このレジスタにより、周期モードおよびワンショット・モードで16ビット・タイマーの範囲を拡張することがソフトウェアで

可能になります。 エッジカウント・モードでは、このレジスタは24ビットのカウント値のMSBになります。 GPTM タイマー Bプリスケール (GPTMTBPR) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x03C タイプ R/W、リセット 0x0000.0000

ビット/ フィールド

名前 タイプ リセット 説明

31:8 予約 RO 0x0000.00 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。 7:0 TBPSR R/W 0x00 GPTM タイマー B プリスケール このレジスタに値を書き込むとレジスタにロードすることができます。読み出しは、このレ

ジスタの現在値を返します。 詳細と使用例については、P440 の表11-4 を参照してください。

Page 37: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 15: GPTM タイマー A プリスケールマッチ (GPTMTAPMR)、オフセット 0x040 このレジスタは、16ビットのワンショット・モードまたは周期モードで動作している時に、GPTMTAMATCHR の範囲を

24 ビットに拡張します。 GPTM タイマー Aプリスケールマッチ (GPTMTAPMR) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x040 タイプ R/W、リセット 0x0000.0000

ビット/ フィールド

名前 タイプ リセット 説明

31:8 予約 RO 0x00 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。 7:0 TAPSMR R/W 0x00 GPTM タイマー A プリスケールマッチ この値は、GPTMTAMATCHR とともに、プリスケーラの使用中にタイマーのマッチ・イ

ベントを検出するために使用されます。

Page 38: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 16: GPTM タイマー B プリスケールマッチ (GPTMTBPMR)、オフセット 0x044 このレジスタは、16ビットのワンショット・モードまたは周期モードで動作している時に、GPTMTBMATCHR の範囲を

24 ビットに拡張します。 GPTM タイマー Bプリスケールマッチ (GPTMTBPMR) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x044 タイプ R/W、リセット 0x0000.0000

ビット/ フィールド

名前 タイプ リセット 説明

31:8 予約 RO 0x00 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。 7:0 TBPSMR R/W 0x00 GPTM タイマー B プリスケールマッチ この値は、GPTMTBMATCHR とともに、プリスケーラの使用中にタイマーのマッチ・イ

ベントを検出するために使用されます。

Page 39: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 17: GPTM タイマー A (GPTMTAR)、オフセット 0x048 このレジスタは、入力エッジカウント・モード以外のすべての場合に、タイマー A のカウンタの現在値を示します。入力

エッジカウント・モードの時は、このレジスタは発生したエッジのカウント数を示します。 また、この時、ビット 23:16 にはカウントの上位8ビットが入っています。 GPTM タイマー A (GPTMTAR) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x048 タイプ RO、リセット 0xFFFF.FFFF

ビット/ フィールド

名前 タイプ リセット 説明

31:16 TARH RO 0xFFFF GPTM タイマー A レジスタ High GPTMCFG が32ビット・モードの時は、タイマー B の値が読み出されます。GPTMCFG

が16ビット・モードの時は、ゼロとして読み出されます。 15:0 TARL RO 0xFFFF GPTM タイマー A レジスタ Low 入力エッジカウント・モード以外では、タイマーAのカウント値が読み出されます。

入力エッジカウント・モードでは、発生したエッジのカウント数が読み出されます。

Page 40: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 18: GPTM タイマー B (GPTMTBR)、オフセット 0x04C このレジスタは、入力エッジカウント・モード以外のすべての場合に、タイマー B のカウンタの現在値を示します。入力

エッジカウント・モードの時は、このレジスタは発生したエッジのカウント数を示します。 また、この時、ビット 23:16 にはカウントの上位8ビットが入っています。 入力エッジカウント・モード以外のすべてのモード GPTM タイマー B (GPTMTBR) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x04C タイプ RO、リセット 0x0000.FFFF

ビット/ フィールド

名前 タイプ リセット 説明

31:16 予約 RO 0x0000 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。 15:0 TBRL RO 0xFFFF GPTM タイマー B タイマーBのカウント値が読み出されます。 入力エッジカウント・モード GPTM タイマー B (GPTMTBR) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x04C タイプ RO、リセット 0x0000.FFFF

ビット/ フィールド

名前 タイプ リセット 説明

31:24 予約 RO 0x00 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。 23:0 TBRL RO 0xFF.FFFF GPTM タイマー B 発生したエッジのカウント数が読み出されます。

Page 41: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 19: GPTM タイマー A バリュー (GPTMTAV)、オフセット 0x050 読み出しの場合は、このレジスタはすべてのモード時に、タイマー Aの現在のカウント値を示します。ソフトウェアでは

この値を使用して、割り込みからISR エントリまでに経過した時間を判定できます。書き込みの場合は、次のクロック・

サイクルで、このレジスタに書き込まれた値がGPTMTAR レジスタにロードされます。入力エッジカウント・モードでは、

ビット 23:16 にはカウントの上位8ビットが入っています。 注: エッジカウント・モードでは、GPTMTAV レジスタへの書き込みはできません。 GPTM タイマー Aバリュー (GPTMTAV) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x050 タイプ RW、リセット 0xFFFF.FFFF

ビット/ フィールド

名前 タイプ リセット 説明

31:16 TAVH RW 0xFFFF GPTM タイマー Aバリュー High GPTMCFG レジスタにより32ビット・モードに設定されているとき、GPTM タイマー B バ

リュー (GPTMTBV) レジスタはこの値を書き込みでロードします。読み出しは GPTMTBRの現在値を返します。

16ビット・モードでは、このフィールドは0 として読み出され、GPTMTBRのステートには

影響しません。 15:0 TAVL RW 0xFFFF GPTM タイマー A レジスタ Low 16ビットと32ビット両方のモードでは、このフィールドへの書き込みによりタイマー A用の

カウンタがロードされます。読み出しは、GPTMTARの現在値を返します。

Page 42: Stellaris LM3S9B96 Microcontrollerprocessors.wiki.ti.com/images/8/89/JAJU120_11_GPTimer_JP.pdfJAJU120 Stellaris LM3S9B96 Microcontroller Data Sheet (Rev. D) 11章 翻訳版 11 汎用タイマー

レジスタ 20: GPTM タイマー B バリュー(GPTMTBV)、オフセット 0x054 読み出しの場合は、このレジスタはすべてのモード時に、タイマー Bの現在のカウント値を示します。ソフトウェアでは

この値を使用して、割り込みからISR エントリまでに経過した時間を判定できます。書き込みの場合は、次のクロック・

サイクルで、このレジスタに書き込まれた値がGPTMBR レジスタにロードされます。入力エッジカウント・モードでは、

ビット 23:16 にはカウントの上位8ビットが入っています。 GPTM タイマー Bバリュー(GPTMTBV) タイマー0 ベース: 0x4003.0000 タイマー1 ベース: 0x4003.1000 タイマー2 ベース: 0x4003.2000 タイマー3 ベース: 0x4003.3000 オフセット 0x054 タイプ RW、リセット 0x0000.FFFF

ビット/ フィールド

名前 タイプ リセット 説明

31:16 予約 RW 0x0000 予約ビットの値に依存しないソフトウェアを作成してください。将来の製品との互換性の

ため、リード・モディファイ・ライト処理の中で予約ビットの値を維持するようにしてくださ

い。 15:0 TBVL RW 0xFFFF GPTM タイマー B レジスタ 16ビット・モードでは、このフィールドへの書き込みによりタイマー B用のカウンタがロー

ドされます。読み出しは、GPTMTBRの現在値を返します。 32ビット・モードでは、このフィールドへの書き込みによりGPTMTARの上位16 ビットが

ロードされます。読み出しは、GPTMTARの上位16 ビットの現在値を返します。