19.6 基本クロック割り込み情報(clock)
ここでは,基本クロック割り込みに関する情報を定義します。cfg600は,本定義に基づいて,基本クロック用タイマ初期化関数(void _RI_init_cmt(void))が記述されたri_cmt.hを出力します。

なお,基本クロック割り込み情報として定義可能な数は,1個に限られます。

形式

< >内は,ユーザが記述する部分を示します。

 clock {
     timer       = <1. 基本クロック用タイマ・チャネルの選択(timer)>;
     template    = <2. テンプレート・ファイル(template)>;
     timer_clock = <3. CMT入力周波数(timer_clock)>;
     IPL         = <4. 基本クロック割り込み優先レベル(IPL)>;
 };


1 ) 基本クロック用タイマ・チャネルの選択(timer

- 説明
基本クロックに使用するタイマのチャネルを定義します。


- 定義形式
シンボル


- 定義範囲
以下のいずれかから選択してください。


表19−7  clock.timer

設定値

説明

CMT0

可変ベクタ28に割り当てられたCMTチャネル0を使用する。

CMT1

可変ベクタ29に割り当てられたCMTチャネル1を使用する。

CMT2

可変ベクタ30に割り当てられたCMTチャネル2を使用する。

CMT3

可変ベクタ31に割り当てられたCMTチャネル3を使用する。

OTHER

上記以外のタイマを使用する。この場合,ユーザがタイマ初期化ルーチンを作成する必要があります。

NOTIMER

基本クロック割り込みを使用しない。



備考1 CMT(Compare Match Timer)は,RX MCUに標準的に搭載されているタイマです。

備考2 使用するRX MCUがCMTチャネル2,3をサポートしていない場合は,”CMT2”および”CMT3”を選択しないでください。また,CMTチャネル2,3に割り当てられた可変ベクタが表19−7と異なるRX MCUを使用する場合も,”CMT2”および”CMT3”を選択しないでください。
例えば,RX111はCMTチャネル2,3をサポートしていません。また,RX64Mでは,CMTチャネル2,3に割り当てられた可変ベクタは,30,31ではありません。


- 省略時の扱い
デフォルト・システム・コンフィギュレーション・ファイルの設定値(出荷時は“CMT0”)を適用


2 ) テンプレート・ファイル(template

- 説明
CMT(コンペアマッチタイマ)の初期化関数が定義されたテンプレート・ファイルを指定します。
timerに“NOTIMER”または“OTHER”を指定した場合,本指定は単に無視されます。
テンプレート・ファイルは,RI600V4によって提供されます。テンプレートファイルは,今後のバージョンで追加される場合があります。各テンプレート・ファイルがサポートするMCUは,リリースノートを参照してください。
テンプレートによっては,CMT1, CMT2, CMT3のいずれかがサポートされない場合があります。timerにそのテンプレートで未対応のCMTチャネルを指定した場合,cfg600はエラーを報告しませんが,cfg600が出力するri_cmt.hをインクルードするファイルのコンパイル時にエラーになります。





- 定義形式
シンボル


- 定義範囲



- 省略時の扱い
デフォルト・システム・コンフィギュレーション・ファイルの設定値(出荷時は“rx610.tpl”)を適用


3 ) CMT入力周波数(timer_clock

- 説明
CMTに供給されるクロックの周波数を定義します。PCLK(周辺モジュールクロック)の周波数を指定してください。


- 定義形式
周波数


- 定義範囲



- 省略時の扱い
デフォルト・システム・コンフィギュレーション・ファイルの設定値(出荷時は25MHz)を適用


4 ) 基本クロック割り込み優先レベル(IPL

- 説明
基本クロック用タイマの割り込み優先レベルを定義します。


- 定義形式
数値


- 定義範囲
1〜システム情報(system)カーネル割り込みマスクレベル(system_IPL)


- 省略時の扱い
デフォルト・システム・コンフィギュレーション・ファイルの設定値(出荷時は4)を適用


- VTIM_LVL
cfg600は,本設定値を定義したマクロVTIM_LVLを,システム情報ヘッダ・ファイルkernel_id.hに出力します。