Appendix

タイマ機能を使ったプログラミング

Appendix

インターバル，ワンショット，PWM，分周器，リアルタイム出力を使いこなす

タイマ機能を使ったプログラミング加納 昌明，秋岡 隆伸
組み込み制御にタイマ機能は欠かせません．タイマ機能は単きます．に一定時間ごとに割り込みをかけるだけでなく，タイマの数を基本的な動作はインターバル・タイマと同じですが，コンペ計測したり，それを使ってワンショット・パルスや PWM を発ア・レジスタとタイマ・カウンタが一致するたびに割り込み要生させたりと，さまざまな応用が可能です．ここでは，タイマ求が発生し，タイマ出力が反転動作を繰り返します．周期との基本から，タイマを使った実用的な機能の実現までを解説しデューティ比用に二つのコンペア・レジスタを使用すれば，ます．

PWM 出力が可能となります．
PWM 出力は，一定周期であるパルスの中で ON/OFF（ H /1．マイコン内蔵タイマの概要

L ）時間の比率を任意に変えてパルス出力を行います．ランプの明るさやモータの回転速度を制御する場合などに使われます．

● タイマにはさまざまな機能がある
マイコンにおけるタイマとは，時間管理やパルス計数，PWM（Pulse Width Modulation）制御波形生成などを行う内蔵周辺回路のことです．

2．V850ES/JG2 のタイマ機能
本誌 2007 年 5 月号の付属基板に搭載されている V850ES/JG2

マイコンを使ったシステムを設計する上で，動作タイミング

は，以下の機能を持つタイマ・カウンタを内蔵しています．

を制御することは非常に重要な要素です．この動作タイミング¡16 ビット・タイマ・イベント・カウンタ P（TMP0 〜 5）を管理するのがタイマです．単純に時間を計るだけでなく，数¡16 ビット・タイマ・イベント・カウンタ Q（TMQ0）を数える（カウントする）機能もあることから，タイマ・カウン¡16 ビット・インターバル・タイマ・カウンタ M（TMM）

タと呼ばれます．

¡時計タイマ（WT）

タイマ・カウンタは，「タイマ」と「（イベント）カウンタ」の二¡ウォッチドッグ・タイマ（WDT2）

つの機能を結合した名前です．基本的に，タイマとカウンタを¡リアルタイム出力（RTO）実現するための回路は同一で，ともに入力された信号をカウンこれらについて説明していきます．

トします．これらは使用目的と入力される信号で区別されます．
タイマは，システム・クロックのように一定間隔で入力される信号をカウントし，時間の経過を表すために使われます．

● コンペア機能とキャプチャ機能● 16 ビット・タイマ・イベント・カウンタ（TMP0 〜 TMP5/TMQ0）
16 ビットのタイマ・イベント・カウンタである TMP と TMQ
は，プログラムの設定によって豊富なタイマ/カウンタ機能をカウンタは，任意の間隔で入力された信号（イベント）の数を実現します．TMP と TMQ は，多くの V850ES コアに標準でカウントして個数を示します．また，カウント動作だけでは使内蔵されている周辺機能で，制御システムの時間管理やモータ用される局面が限られますが，コンペア機能やキャプチャ機能などの周辺アクチュエータ制御に利用できます．と一緒に使うことでさまざまな用途に使えます．

V850ES/JG2 には，TMP0 〜 TMP5 と TMQ0 の合計 7 回路

コンペア機能は，タイマ・カウンタのカウント値と比較する（エッジ検出回路 2 チャネル，立ち上がり/立ち下がり/両エッための値をレジスタに設定し，値が一致したときに一致信号（割ジ検出），タイマ割り込み信号出力（1 チャネル），制御出力（2り込み要求）を発生させます．

チャネル），カウント値の一致割り込み信号出力（2 チャネル）がキャプチャ機能は，外部から入力された信号により，そのと搭載されており，それぞれが独立して制御できます．

きのタイマ・カウンタの値を読み込むために使用します．ス

TMP と TMQ には，以下の機能があります．

トップ・ウォッチにたとえると分かりやすいでしょう．外部入¡インターバル・タイマ機能

力（スタート・ボタン）により，カウンタのカウント動作をス¡外部イベント・カウンタ機能

タートします．そして，次の外部入力（ラップタイム・ボタン）¡外部トリガ・パルス出力機能

により，そのときのラップタイムを記録（キャプチャ）します．

¡ワンショット・パルス出力機能

これらの機能を使用して，パルス出力や PWM 出力を実現でJune 2007

¡PWM 出力機能

News Flash ――○○○○●○○○○●○○○○●○○○○●○○○○●○○○○●―― タイマ，タイマ割り込み，コンペア機能，キャプチャ機能，インターバル割り込み，
KEYWORD○○○○●○○○○●○○○○●○○○○●○○○○●○○○○●○○○○●○○○○●○○○○●○○○○●○○○○●○○○
ワンショット・パルス出力，PWM 出力，分周器，リアルタイム出力○●○○○○●○○○○●○○○○●○○○○●○○○○●○○○○●○○○○●○○○○●○○○○●○○○○●○○○○●

71

内部バス

fXX
fXX/2
fXX/4
fXX/8
fXX/16
fXX/32
fXX/64注1，fXX/256注2
fXX/128注1，fXX/512注2

TPn CNTセレ
クタセレ
クタクリア
制御出回力路CCR0
バッファ・レジスタ

TIPn 0
TIPn1

検出エ
回ッ路ジ

INTTPn OV

16ビット・カウンタ

TOPn 0TOPn 1

INTTPn CC0
INTTPn CC1

CCR1
バッファ・レジスタ

TPn CCR0
TPn CCR1
注1：TMP0，TMP2，TMP4
注2：TMP1，TMP3，TMP5

図1
TMP のブロック図

備考 fXX：メイン・クロック周波数

内部バス

内部バス

TM0CTL0TM0CE

TM0CKS2

TM0CKS1

TM0CKS0

TM0CMP0一致

fXX
fXX/2
fXX/4
fXX/64
fXX/512
INTWT
fR/8
fXT

セレ
クタ

制御回路

16ビット・カウンタ

INTTM0EQ0

クリア

備考fXX
：メイン・クロック周波数fR：内蔵発振クロック周波数fXT：サブクロック周波数
INTWT ：時計タイマ割り込み要求信号

図 2 TMM0 のブロック図¡フリー・ランニング・タイマ機能¡パルス幅測定機能
TMP と TMQ の機能一覧を表 1 に，TMP の回路ブロック図を図 1 に示します．レジスタについては，本誌 2007 年 5 月号付
属 CD-ROM に収録したユーザーズ・マニュアル（U17715● 時計タイマ（WT）
WT は，メインまたはサブクロックからカウント・クロックを選択して，0.5 秒や 0.25 秒などの時間を生成して計時処理を行います．
WT はインターバル・タイマとしても使用できます．時計タJJ2V0UD.PDF）に記載されています．

イマ・クロック周波数を分周して作ったカウント値を，イン● 16 ビット・インターバル・タイマ・カウンタ M（TMM）

ターバルとして繰り返し割り込み要求信号を発生させ，一定周TMM は，簡単な構成のインターバル・タイマです．メイン期の管理を行います．また，時計カウント動作とインターバルまたはサブクロックからカウント・クロック（8 通り）を選択します．次にコンペア・レジスタに任意の値を設定して，制御システムの一定周期を管理します．
図 2 に TMM0 のブロック図を示します．

動作は，同時に使用できます．
図 3 に時計タイマのブロック図を示します．

● ウォッチドッグ・タイマ（WDT2）
WDT2 は，プログラムの異常動作や CPU の暴走を監視するためのタイマです．設定された一定時間内に CPU からのアク72

News Flash ――アルプス電気が TDK に HDD ヘッド事業を譲渡
アルプス電気は，同社のハード・ディスク装置（HDD）用ヘッド事業に関する設備，および特許などの知的財産権を譲渡することでTDK と合意した．また，アルプス電気は東光とセンサ IC を共同開発することも併せて発表した．

June 2007