• 検索結果がありません。

タイマ B1

ドキュメント内 H8/3687グループ ハードウェアマニュアル (ページ 167-171)

タイマB1は、入力クロックによりカウントアップする8ビットのタイマです。タイマB1の機能は、インター バル機能、オートリロード機能の2種類です。タイマB1のブロック図を図11.1に示します。

11.1 特長

• クロック選択:8種類

7種類の内部クロック(φ/8192、φ/2048、φ/512、φ/256、φ/64、φ/16、φ/4)と外部クロックの選択が可 能(外部イベントのカウントが可能)。

• カウンタのオーバフローで割り込みを発生

【記号説明】

TMB1 φ

TMIB1

TCB1

:タイマモードレジスタB1

:タイマカウンタB1 TLB1

IRRTB1

:タイマロードレジスタB1

:タイマB1割り込み要求フラグ PSS

TMIB1

:プリスケーラS

:タイマB1イベント入力

内 部 デ l タ バ ス TCB1

TMB1

PSS

TLB1

IRRTB1

図11.1  タイマB1ブロック図

11.2 入出力端子

タイマB1の端子構成を表11.1に示します。

表11.1  端子構成

名称 略称 入出力 機能

タイマB1イベント入力 TMIB1 入力 TCB1に入力するイベント入力端子

11.3 レジスタの説明

タイマB1には以下のレジスタがあります。

• タイマモードレジスタB1(TMB1)

• タイマカウンタB1(TCB1)

• タイマロードレジスタB1(TLB1)

11.3.1 タイマモードレジスタ B1(TMB1)

TMB1はオートリロード機能の選択、および入力クロックの選択を行います。

ビット ビット名 初期値 R/W 説      明

7 TMB17 0 R/W オートリロード機能選択

0:インターバル機能を選択 1:オートリロード機能を選択 6

5 4 3

− 1 1 1 1

リザーブビットです。リードすると常に1が読み出されます。

2 1 0

TMB12 TMB11 TMB10

0 0 0

R/W R/W R/W

クロックセレクト

000:内部クロックφ/8192でカウント 001:内部クロックφ/2048でカウント 010:内部クロックφ/512でカウント 011:内部クロックφ/256でカウント 100:内部クロックφ/64でカウント 101:内部クロックφ/16でカウント 110:内部クロックφ/4でカウント

111:外部イベント(TMIB1)の立ち上がりエッジまたは立ち下がりエッジでカウ ント*

【注】 *  外部イベントのエッジ選択は、割り込みエッジセレクトレジスタ1

(IEGR1)のIEG1により設定します。詳細は「3.2.1 割り込みエッジセレ クトレジスタ1(IEGR1)」を参照してください。なおTMB12〜TMB10を それぞれ1にセットする前に、必ずポートモードレジスタ1(PMR1)のIRQ1

11.3.2 タイマカウンタ B1(TCB1)

TCB1は8ビットのリード可能なアップカウンタで、入力する内部クロックによりカウントアップされます。入 力するクロックは、TMB1のTMB12〜TMB10により選択します。TCB1の値は、CPUから常にリードできます。TCB1 がオーバフロー(H'FF→H'00またはH'FF→TLB1の設定値)すると、IRR2のIRRTB1フラグが1にセットされま す。TCB1は、TLB1と同一のアドレスに割り付けられます。TCB1の初期値はH'00です。

11.3.3 タイマロードレジスタ B1(TLB1)

TLB1は8ビットのライト専用レジスタで、TCB1のリロード値を設定します。TLB1にリロード値を設定する と、同時にその値はTCB1にもロードされ、TCB1はその値からカウントアップを開始します。またオートリロー ド動作時にTCB1がオーバフローすると、TCB1にTLB1の値がロードされます。したがって、オーバフロー周期 を1〜256入力クロックの範囲で設定することができます。TLB1は、TCB1と同一のアドレスに割り付けられて います。TLB1の初期値はH'00です。

11.4 動作説明

11.4.1 インターバルタイマの動作

TMB1のTMB17を0にクリアすると、タイマB1は8ビットのインターバルタイマとして動作します。リセッ ト時、TCB1はH'00、TMB17は0にクリアされるため、リセット直後はインターバルタイマとして停止すること なくカウントアップを続けます。タイマB1の動作クロックはTMB1のTMB12〜TMB10によって、プリスケーラ Sの出力する7種類の内部クロック、TMB1入力からの外部クロックを選択できます。

TMB1のカウント値がH'FFになった後にクロックが入力されると、タイマB1はオーバフローしてIRR2の IRRTB1フラグが1にセットされます。このときにIENR2のIENTB1が1ならばCPUに割り込みを要求します。

オーバフロー時にはTCB1のカウント値はH'00に戻り、再びカウントアップを開始します。インターバルタイ マ動作時(TMB17=0)にTLB1を設定すると、同時にTCB1にもTLB1の値をロードします。

11.4.2 オートリロードタイマの動作

TMB1のTMB17を1にセットすると、タイマB1は8ビットのオートリロードタイマとして動作します。TLB1 にリロード値を設定すると、同時にその値がTCB1にロードされ、TCB1はその値からカウントアップを開始しま す。TCB1のカウント値がH'FFになった後にクロックが入力されると、タイマB1はオーバフローし、TLB1の値 がTCB1にロードされて、その値からカウントアップを続けます。したがって、TLB1の値によってオーバフロー 周期を1〜256入力クロックの範囲で設定できます。

オートリロード動作時のクロックおよび割り込みについては、インターバル動作時と同様です。なおオートリ ロード動作時(TMB17=1)にTLB1の値を再設定すると、同時にTCB1にもTLB1の値をロードします。

11.4.3 イベントカウンタ

タイマB1は、TMIB1をイベント入力端子とするイベントカウンタとして動作します。TMB1のTMB12〜TMB10 をそれぞれ1にセットすると外部イベントが選択され、TCB1はTMB1端子入力の立ち上がりエッジまたは立ち 下がりエッジでカウントアップします。

外部イベント入力を使用する場合は、PMR1のIRQ1を1にセットし、かつIENR1のIEN1を0にクリアして、

IRQ1割り込み要求を禁止してください。

11.5 タイマ B1 の動作モード

タイマB1の動作モードを表11.2に示します。

表11.2  タイマB1の動作モード

動作モード リセット アクティブ スリーブ サブアクティブ サブスリーブ スタンバイ インターバル リセット 動作 動作 停止 停止 停止 TCB1

オートリロード リセット 動作 動作 停止 停止 停止

TMB1 リセット 動作 保持 保持 保持 保持

ドキュメント内 H8/3687グループ ハードウェアマニュアル (ページ 167-171)