6.7MB

本ドキュメントはCypress (サイプレス) 製品に関する情報が記載されております。
富士通マイクロエレクトロニクス
CONTROLLER MANUAL
CM44-10149-4
F2MC®-16LX
16 ビット・マイクロコントローラ
MB90990 Series
ハードウェアマニュアル
F2MC®-16LX
16 ビット・マイクロコントローラ
MB90990 Series
ハードウェアマニュアル
富士通マイクロエレクトロニクスのマイコンを効率的に開発するための情報を下記 URL にてご紹介いたします。
ご採用を検討中 , またはご採用いただいたお客様に有益な情報を公開しています。
http://edevice.fujitsu.com/micom/jp-support/
富士通マイクロエレクトロニクス株式会社
はじめに
■ 本書の目的と対象読者
富士通マイクロエレクトロニクス製品につきまして,平素より格別のご愛読を賜り厚く
お礼申し上げます。
MB90990 シリーズは , ASIC(Application Specific IC) 対応が可能なオリジナル 16 ビット・
ワンチップマイクロコントローラである F2MC®-16LX ファミリの汎用品の一つとして
開発された製品です。
本書は , 実際にこの半導体を使って製品を設計する技術者の方を対象に , MB90990 シ
リーズの機能や動作について記載しています。本書をご一読ください。
■ 商標
F2MCは, FUJITSU Flexible Microcontrollerの略で富士通マイクロエレクトロニクス株式
会社の登録商標です。
その他の記載されている社名および製品名などの固有名詞は , 各社の商標または登録
商標です。
i
■ 本書の全体構成
本書は , 以下に示す 27 の章および付録から構成されています。
第1章
概要
特長と基本的な仕様について説明します。
第2章
CPU
CPU の機能と動作について説明します。
第3章
割込み
割込み , 拡張インテリジェント I/O サービス (EI2OS) の機能と動作について説明し
ます。
第4章
遅延割込み発生モジュール
遅延割込み発生モジュールの機能と動作について説明します。
第5章
クロック
クロックについて説明します。
第6章
クロックスーパバイザ
クロックスーパバイザの機能と動作について説明します。本機能は "J" サフィック
スのある製品にのみ使用できます。
第7章
リセット
リセットについて説明します。
第8章
低消費電力モード
低消費電力モードについて説明します。
第9章
メモリアクセスモード
メモリアクセスモードの機能と動作について説明します。
第 10 章 I/O ポート
I/O ポートの機能について説明します。
第 11 章 タイムベースタイマ
タイムベースタイマの機能と動作について説明します。
第 12 章 ウォッチドッグタイマ
ウォッチドッグタイマの機能と動作について説明します。
第 13 章 16 ビット入出力タイマ
16 ビット入出力タイマの機能と動作について説明します。
第 14 章 16 ビットリロードタイマ
16 ビットリロードタイマの機能と動作について説明します。
第 15 章 時計タイマ
時計タイマの機能と動作について説明します。
第 16 章 8/16 ビット PPG タイマ
8/16 ビット PPG タイマの機能と動作について説明します。
第 17 章 DTP/ 外部割込み
DTP/ 外部割込みの機能と動作について説明します。
ii
第 18 章 8/10 ビット A/D コンバータ
8/10 ビット A/D コンバータの機能と動作について説明します。
第 19 章 低電圧検出 /CPU 動作検出リセット
低電圧検出 /CPU 動作検出リセットの機能と動作について説明します。本機能は "J"
サフィックスのある製品にのみ使用できます。評価用品は , CPU 動作検出のみに対
応します。
第 20 章 LIN-UART
LIN-UART の機能と動作について説明します。
第 21 章 CAN コントローラ
CAN コントローラの機能と概要について説明します。
第 22 章 アドレス一致検出機能
アドレス一致検出機能の機能と動作について説明します。
第 23 章 ROM ミラー機能 選択モジュール
ROM ミラー機能選択モジュールの機能と動作について説明します。
第 24 章 フラッシュメモリ
フラッシュメモリの機能と動作について説明します。
第 25 章 フラッシュメモリ品の シリアル書込み接続例
横河ディジタルコンピュータ株式会社製 AF220/AF210/AF120/AF110 フラッシュマ
イコンプログラマを使用した場合のシリアル書込みの接続例について説明します。
第 26 章 クロック補正ユニット
クロック補正ユニットの概要およびレジスタの構成 / 機能について説明します。本
機能は "J" サフィックスのある製品にのみ使用できます。評価用品は , CR クロック
の補正には対応しておりません。
第 27 章 D/A コンバータ
D/A コンバータの機能と動作について説明します。
付録
I/O マップ , F2MC-16LX の命令などを掲載します。
iii
• 本資料の記載内容は , 予告なしに変更することがありますので , ご用命の際は営業部門にご確
認ください。
• 本資料に記載された動作概要や応用回路例は , 半導体デバイスの標準的な動作や使い方を示し
たもので , 実際に使用する機器での動作を保証するものではありません。したがいまして , こ
れらを使用するにあたってはお客様の責任において機器の設計を行ってください。これらの使
用に起因する損害などについては , 当社はその責任を負いません。
• 本資料に記載された動作概要・回路図を含む技術情報は , 当社もしくは第三者の特許権 , 著作
権等の知的財産権やその他の権利の使用権または実施権の許諾を意味するものではありませ
ん。また , これらの使用について , 第三者の知的財産権やその他の権利の実施ができることの
保証を行うものではありません。したがって , これらの使用に起因する第三者の知的財産権や
その他の権利の侵害について , 当社はその責任を負いません。
• 本資料に記載された製品は , 通常の産業用 , 一般事務用 , パーソナル用 , 家庭用などの一般的用
途に使用されることを意図して設計・製造されています。極めて高度な安全性が要求され , 仮
に当該安全性が確保されない場合 , 社会的に重大な影響を与えかつ直接生命・身体に対する重
大な危険性を伴う用途 ( 原子力施設における核反応制御 , 航空機自動飛行制御 , 航空交通管制 ,
大量輸送システムにおける運行制御 , 生命維持のための医療機器 , 兵器システムにおけるミサ
イル発射制御をいう ), ならびに極めて高い信頼性が要求される用途 ( 海底中継器 , 宇宙衛星を
いう ) に使用されるよう設計・製造されたものではありません。したがって , これらの用途に
ご使用をお考えのお客様は , 必ず事前に営業部門までご相談ください。ご相談なく使用された
ことにより発生した損害などについては , 責任を負いかねますのでご了承ください。
• 半導体デバイスはある確率で故障が発生します。当社半導体デバイスが故障しても , 結果的に
人身事故 , 火災事故 , 社会的な損害を生じさせないよう , お客様は , 装置の冗長設計 , 延焼対策
設計 , 過電流防止対策設計 , 誤動作防止設計などの安全設計をお願いします。
• 本資料に記載された製品を輸出または提供する場合は , 外国為替及び外国貿易法および米国輸
出管理関連法規等の規制をご確認の上 , 必要な手続きをおとりください。
•
本書に記載されている社名および製品名などの固有名詞は , 各社の商標または登録商標です。
Copyright ©2008-2009 FUJITSU MICROELECTRONICS All rights reserved.
iv
目次
第1章
1.1
1.2
1.3
1.4
1.5
1.6
1.7
第2章
概要 ............................................................................................................ 1
MB90990 シリーズの概要 ...................................................................................................... 2
MB90990 シリーズのブロックダイヤグラム ......................................................................... 8
外形寸法図............................................................................................................................ 11
端子配列図............................................................................................................................ 12
端子機能説明 ........................................................................................................................ 13
入出力回路形式 .................................................................................................................... 16
デバイスの取扱いに関する注意事項 .................................................................................... 20
CPU.......................................................................................................... 25
2.1 CPU の概要 .......................................................................................................................... 26
2.2 メモリ空間............................................................................................................................ 27
2.3 メモリマップ ........................................................................................................................ 30
2.4 リニア方式によるアドレス指定 ........................................................................................... 31
2.5 バンク方式によるアドレス指定 ........................................................................................... 32
2.6 メモリ空間における多バイト長データ................................................................................. 34
2.7 レジスタ ............................................................................................................................... 35
2.7.1
アキュムレータ (A)..................................................................................................... 38
2.7.2
ユーザスタックポインタ (USP) とシステムスタックポインタ (SSP) ....................... 39
2.7.3
プロセッサステータス (PS) ....................................................................................... 40
2.7.4
プログラムカウンタ (PC)........................................................................................... 43
2.8 レジスタバンク .................................................................................................................... 44
2.9 プリフィックスコード.......................................................................................................... 46
2.10 割込み抑止命令 .................................................................................................................... 48
第3章
割込み ...................................................................................................... 49
3.1 割込みの概要 ........................................................................................................................ 50
3.2 割込みベクタ ........................................................................................................................ 53
3.3 割込み制御レジスタ (ICR00 ∼ ICR15) ................................................................................ 55
3.4 割込みフロー ........................................................................................................................ 59
3.5 ハードウェア割込み ............................................................................................................. 61
3.5.1
ハードウェア割込みの動作 ........................................................................................ 62
3.5.2
ハードウェア割込みの発生と解除.............................................................................. 63
3.5.3
多重割込み ................................................................................................................. 65
3.6 ソフトウェア割込み ............................................................................................................. 66
3.7 拡張インテリジェント I/O サービス (EI2OS) ....................................................................... 68
3.7.1
拡張インテリジェント I/O サービスディスクリプタ (ISD) ........................................ 70
3.8 拡張インテリジェント I/O サービス (EI2OS) の動作フローと使用手順............................... 73
3.9 例外 ...................................................................................................................................... 76
第4章
4.1
4.2
4.3
遅延割込み発生モジュール ...................................................................... 77
遅延割込み発生モジュールの概要........................................................................................ 78
遅延割込み発生モジュールのブロックダイヤグラム ........................................................... 79
遅延割込み発生モジュールの構成........................................................................................ 80
v
4.3.1
遅延割込み要求発生 / 解除レジスタ (DIRR)............................................................... 81
4.4 遅延割込み発生モジュールの動作説明................................................................................. 82
4.5 遅延割込み発生モジュールの使用上の注意 ......................................................................... 83
4.6 遅延割込み発生モジュールのプログラム例 ......................................................................... 84
第5章
クロック................................................................................................... 85
5.1 クロック ............................................................................................................................... 86
5.2 クロック発生部のブロックダイヤグラム ............................................................................. 89
5.2.1
クロック発生部のレジスタ ........................................................................................ 91
5.3 クロック選択レジスタ (CKSCR).......................................................................................... 92
5.4 PLL/ サブクロック制御レジスタ (PSCCR) .......................................................................... 96
5.5 クロックモード .................................................................................................................... 98
5.6 発振安定待ち時間 ............................................................................................................... 102
5.7 振動子の接続 ...................................................................................................................... 103
第6章
クロックスーパバイザ ........................................................................... 105
6.1 クロックスーパバイザの概要 ............................................................................................. 106
6.2 クロックスーパバイザの構成 ............................................................................................. 107
6.3 クロックスーパバイザのレジスタ...................................................................................... 109
6.3.1
クロックスーパバイザ制御レジスタ (CSVCR) ........................................................ 110
6.4 クロックスーパバイザの動作説明...................................................................................... 112
6.5 クロックスーパバイザ使用上の注意 .................................................................................. 115
第7章
7.1
7.2
7.3
7.4
7.5
7.6
第8章
リセット................................................................................................. 117
リセットの概要 .................................................................................................................. 118
リセット要因と発振安定待ち時間...................................................................................... 121
外部リセット端子 ............................................................................................................... 123
リセット動作 ...................................................................................................................... 124
リセット要因ビット ........................................................................................................... 126
リセットによる各端子の状態 ............................................................................................. 130
低消費電力モード .................................................................................. 131
8.1 低消費電力モードの概要 .................................................................................................... 132
8.2 低消費電力回路のブロックダイヤグラム ........................................................................... 135
8.3 低消費電力モード制御レジスタ (LPMCR) ......................................................................... 137
8.4 CPU 間欠動作モード .......................................................................................................... 140
8.5 スタンバイモード ............................................................................................................... 141
8.5.1
スリープモード ........................................................................................................ 143
8.5.2
時計モード ............................................................................................................... 145
8.5.3
タイムベースタイマモード ...................................................................................... 147
8.5.4
ストップモード ........................................................................................................ 149
8.6 スタンバイモードの状態遷移 ............................................................................................. 152
8.7 スタンバイモードとリセット時の端子状態 ....................................................................... 153
8.8 低消費電力モード使用上の注意 ......................................................................................... 154
第9章
メモリアクセスモード ........................................................................... 157
9.1 メモリアクセスモードの概要 ............................................................................................. 158
9.1.1
モード端子 ............................................................................................................... 159
9.1.2
モードデータ ............................................................................................................ 160
vi
9.1.3
バスモード別メモリ空間 .......................................................................................... 161
第 10 章
I/O ポート............................................................................................... 163
10.1 I/O ポート ........................................................................................................................... 164
10.2 I/O ポートのレジスタ一覧 .................................................................................................. 165
10.2.1
ポートデータレジスタ (PDR)................................................................................... 166
10.2.2
ポート方向レジスタ (DDR) ...................................................................................... 168
10.2.3
プルアップ制御レジスタ (PUCR2) .......................................................................... 170
10.2.4
アナログ入力許可レジスタ (ADER) ......................................................................... 171
10.2.5
入力レベル選択レジスタ (ILSR0,ILSR1).................................................................. 172
第 11 章
タイムベースタイマ............................................................................... 175
11.1 タイムベースタイマの概要................................................................................................. 176
11.2 タイムベースタイマのブロックダイヤグラム.................................................................... 178
11.3 タイムベースタイマの構成................................................................................................. 180
11.3.1
タイムベースタイマ制御レジスタ (TBTC)............................................................... 181
11.4 タイムベースタイマの割込み ............................................................................................. 183
11.5 タイムベースタイマの動作説明 ......................................................................................... 184
11.6 タイムベースタイマ使用上の注意...................................................................................... 188
11.7 タイムベースタイマのプログラム例 .................................................................................. 189
第 12 章
ウォッチドッグタイマ ........................................................................... 191
12.1 ウォッチドッグタイマの概要 ............................................................................................. 192
12.2 ウォッチドッグタイマの構成 ............................................................................................. 194
12.3 ウォッチドッグタイマのレジスタ...................................................................................... 196
12.3.1
ウォッチドッグタイマ制御レジスタ (WDTC).......................................................... 197
12.4 ウォッチドッグタイマの動作説明...................................................................................... 199
12.5 ウォッチドッグタイマ使用上の注意 .................................................................................. 203
12.6 ウォッチドッグタイマのプログラム例............................................................................... 205
第 13 章
16 ビット入出力タイマ .......................................................................... 207
13.1 16 ビット入出力タイマの概要............................................................................................ 208
13.2 16 ビット入出力タイマのブロックダイヤグラム............................................................... 210
13.2.1
16 ビットフリーランタイマのブロックダイヤグラム ............................................. 211
13.2.2
インプットキャプチャのブロックダイヤグラム ...................................................... 212
13.3 16 ビット入出力タイマの構成............................................................................................ 214
13.3.1
タイマ制御ステータスレジスタ ( 上位 )(TCCSH0) .................................................. 215
13.3.2
タイマ制御ステータスレジスタ ( 下位 )(TCCSL0)................................................... 216
13.3.3
タイマデータレジスタ (TCDT0)............................................................................... 218
13.3.4
インプットキャプチャ制御ステータスレジスタ (ICS)............................................. 219
13.3.5
インプットキャプチャレジスタ (IPCP) ................................................................... 221
13.3.6
インプットキャプチャエッジレジスタ (ICE) ........................................................... 223
13.4 16 ビット入出力タイマの割込み ........................................................................................ 226
13.5 16 ビットフリーランタイマの動作説明 ............................................................................. 228
13.6 インプットキャプチャの動作説明...................................................................................... 230
13.7 16 ビット入出力タイマの使用上の注意 ............................................................................. 232
13.8 16 ビット入出力タイマのプログラム例 ............................................................................. 233
vii
第 14 章
16 ビットリロードタイマ ...................................................................... 235
14.1 16 ビットリロードタイマの概要 ........................................................................................ 236
14.2 16 ビットリロードタイマのブロックダイヤグラム ........................................................... 239
14.3 16 ビットリロードタイマの構成 ........................................................................................ 241
14.3.1
タイマ制御ステータスレジスタ上位 (TMCSR: H) ................................................... 244
14.3.2
タイマ制御ステータスレジスタ下位 (TMCSR: L).................................................... 246
14.3.3
16 ビットタイマレジスタ (TMR).............................................................................. 249
14.3.4
16 ビットリロードレジスタ (TMRLR) ..................................................................... 250
14.4 16 ビットリロードタイマの割込み .................................................................................... 251
14.5 16 ビットリロードタイマの動作説明................................................................................. 252
14.5.1
内部クロックモードの動作 ...................................................................................... 254
14.5.2
イベントカウントモードの動作 ............................................................................... 259
14.6 16 ビットリロードタイマの使用上の注意.......................................................................... 263
14.7 16 ビットリロードタイマのプログラム例.......................................................................... 266
第 15 章
時計タイマ ............................................................................................. 269
15.1 時計タイマの概要 ............................................................................................................... 270
15.2 時計タイマのブロックダイヤグラム .................................................................................. 272
15.3 時計タイマの構成 ............................................................................................................... 274
15.3.1
時計タイマ制御レジスタ (WTC) .............................................................................. 275
15.4 時計タイマの割込み ........................................................................................................... 278
15.5 時計タイマの動作説明........................................................................................................ 279
15.6 時計タイマのプログラム例................................................................................................. 281
第 16 章
8/16 ビット PPG タイマ ........................................................................ 283
16.1 8/16 ビット PPG タイマの概要 .......................................................................................... 284
16.2 8/16 ビット PPG タイマのブロックダイヤグラム ............................................................. 287
16.2.1
8/16 ビット PPG タイマ C のブロックダイヤグラム............................................... 288
16.2.2
8/16 ビット PPG タイマ D のブロックダイヤグラム............................................... 291
16.3 8/16 ビット PPG タイマの構成 .......................................................................................... 294
16.3.1
PPGC 動作モード制御レジスタ (PPGCC)............................................................... 296
16.3.2
PPGD 動作モード制御レジスタ (PPGCD)............................................................... 298
16.3.3
PPGC/PPGD カウントクロック選択レジスタ (PPGCD)......................................... 300
16.3.4
PPG リロードレジスタ (PRLLC/PRLHC, PRLLD/PRLHD) ..................................... 302
16.4 8/16 ビット PPG タイマの割込み ...................................................................................... 304
16.5 8/16 ビット PPG タイマの動作説明................................................................................... 305
16.5.1
8 ビット PPG 出力 2 チャネル独立動作モード........................................................ 306
16.5.2
16 ビット PPG 出力動作モード ............................................................................... 309
16.5.3
8+8 ビット PPG 出力動作モード ............................................................................. 312
16.6 8/16 ビット PPG タイマ使用上の注意 ............................................................................... 315
第 17 章
DTP/ 外部割込み .................................................................................... 317
17.1 DTP/ 外部割込みの概要...................................................................................................... 318
17.2 DTP/ 外部割込みのブロックダイヤグラム ......................................................................... 319
17.3 DTP/ 外部割込みの構成...................................................................................................... 321
17.3.1
DTP/ 外部割込み要因レジスタ 1 (EIRR1) ................................................................ 323
17.3.2
DTP/ 外部割込み許可レジスタ 1 (ENIR1) ................................................................ 325
17.3.3
検出レベル設定レジスタ 1 (ELVR1) ........................................................................ 327
17.3.4
DTP/ 外部割込み要因選択レジスタ (EISSR)............................................................ 329
viii
17.4 DTP/ 外部割込みの動作説明............................................................................................... 331
17.4.1
外部割込み機能 ........................................................................................................ 335
17.4.2
DTP 機能 .................................................................................................................. 336
17.5 DTP/ 外部割込みの使用上の注意 ....................................................................................... 337
17.6 DTP/ 外部割込み回路のプログラム例 ................................................................................ 339
第 18 章
8/10 ビット A/D コンバータ................................................................... 343
18.1 8/10 ビット A/D コンバータの概要 .................................................................................... 344
18.2 8/10 ビット A/D コンバータのブロックダイヤグラム........................................................ 346
18.3 8/10 ビット A/D コンバータの構成 .................................................................................... 349
18.3.1
A/D 制御ステータスレジスタ 1 (ADCS1)................................................................. 352
18.3.2
A/D 制御ステータスレジスタ 0 (ADCS0)................................................................. 356
18.3.3
A/D データレジスタ (ADCR0/ADCR1)..................................................................... 359
18.3.4
A/D セッティングレジスタ (ADSR0/ADSR1) .......................................................... 360
18.3.5
アナログ入力許可レジスタ (ADER5, ADER6) ......................................................... 365
18.4 8/10 ビット A/D コンバータの割込み................................................................................. 367
18.5 8/10 ビット A/D コンバータの動作説明 ............................................................................. 368
18.5.1
単発変換モード ........................................................................................................ 370
18.5.2
連続変換モード ........................................................................................................ 372
18.5.3
停止変換モード ........................................................................................................ 374
18.5.4
EI2OS 機能を使用した変換動作............................................................................... 376
18.5.5
A/D 変換データ保護機能 .......................................................................................... 377
18.6 8/10 ビット A/D コンバータ使用上の注意.......................................................................... 381
第 19 章
19.1
19.2
19.3
19.4
19.5
19.6
低電圧検出 /CPU 動作検出リセット ...................................................... 383
低電圧 /CPU 動作検出リセット回路の 概要....................................................................... 384
低電圧 /CPU 動作検出リセット回路の構成........................................................................ 386
低電圧 /CPU 動作検出リセット回路のレジスタ................................................................. 388
低電圧 /CPU 動作検出リセット回路の動作........................................................................ 392
低電圧 /CPU 動作検出リセット回路使用上の注意 ............................................................. 393
低電圧 /CPU 動作検出リセット回路のプログラム例 ......................................................... 395
第 20 章
LIN-UART .............................................................................................. 397
20.1 LIN-UART の概要 ............................................................................................................... 398
20.2 LIN-UART の構成 ............................................................................................................... 401
20.3 LIN-UART の端子 ............................................................................................................... 406
20.4 LIN-UART のレジスタ ........................................................................................................ 408
20.4.1
シリアル制御レジスタ (SCR)................................................................................... 409
20.4.2
LIN-UART シリアルモードレジスタ (SMR) ............................................................. 411
20.4.3
シリアルステータスレジスタ (SSR) ........................................................................ 414
20.4.4
受信データレジスタ / 送信データレジスタ (RDR/TDR) .......................................... 417
20.4.5
拡張ステータス制御レジスタ (ESCR) ..................................................................... 419
20.4.6
拡張通信制御レジスタ (ECCR) ................................................................................ 421
20.4.7
ボーレートジェネレータレジスタ 0, 1(BGR0/BGR1).............................................. 423
20.5 LIN-UART の割込み............................................................................................................ 424
20.5.1
受信割込み発生とフラグセットのタイミング.......................................................... 427
20.5.2
送信割込み発生とフラグセットのタイミング.......................................................... 429
20.6 LIN-UART のボーレート..................................................................................................... 431
20.6.1
ボーレート設定 ........................................................................................................ 433
ix
20.6.2
リロードカウンタ..................................................................................................... 436
20.7 LIN-UART の動作 ............................................................................................................... 438
20.7.1
非同期モード ( 動作モード 0, 1) の動作 ................................................................... 440
20.7.2
同期モード ( 動作モード 2) の動作........................................................................... 444
20.7.3
LIN 機能 ( 動作モード 3) の動作 ............................................................................... 447
20.7.4
シリアル端子直接アクセス ...................................................................................... 451
20.7.5
双方向通信機能 ( ノーマルモード ) .......................................................................... 452
20.7.6
マスタ / スレーブ型通信機能 ( マルチプロセッサモード )....................................... 454
20.7.7
LIN 通信機能............................................................................................................. 457
20.7.8
LIN-UART の LIN 通信フローチャート例 ( 動作モード 3) ........................................ 458
20.8 LIN-UART 使用上の注意..................................................................................................... 460
第 21 章
CAN コントローラ ................................................................................. 463
21.1 CAN コントローラの特長................................................................................................... 464
21.2 CAN コントローラのブロックダイヤグラム ...................................................................... 465
21.3 レジスタ一覧 ...................................................................................................................... 466
21.4 CAN コントローラのレジスタ分類 .................................................................................... 471
21.4.1
制御ステータスレジスタ (CSR) の構成 ................................................................... 472
21.4.2
制御ステータスレジスタ (CSR) の機能 ................................................................... 473
21.4.3
ノードステータスビットとノードステータスの対応............................................... 475
21.4.4
バス動作停止ビット使用上の注意事項 (HALT = 1).................................................. 476
21.4.5
ラストイベント表示レジスタ (LEIR) ....................................................................... 478
21.4.6
受信および送信エラーカウンタ (RTEC) .................................................................. 481
21.4.7
ビットタイミングレジスタ (BTR)............................................................................ 482
21.4.8
ビットタイミングレジスタ (BTR) によるプリスケーラの設定................................ 484
21.4.9
メッセージバッファ有効レジスタ (BVALR) ............................................................ 486
21.4.10
IDE レジスタ (IDER) ................................................................................................ 487
21.4.11
送信要求レジスタ (TREQR)..................................................................................... 488
21.4.12
送信 RTR レジスタ (TRTRR) ................................................................................... 489
21.4.13
リモートフレーム受信待機レジスタ (RFWTR)........................................................ 490
21.4.14
送信解除レジスタ (TCANR) ..................................................................................... 491
21.4.15
送信完了レジスタ (TCR) .......................................................................................... 492
21.4.16
送信割込み許可レジスタ (TIER) .............................................................................. 493
21.4.17
受信完了レジスタ (RCR).......................................................................................... 494
21.4.18
リモート要求受信レジスタ (RRTRR) ...................................................................... 495
21.4.19
受信オーバランレジスタ (ROVRR).......................................................................... 496
21.4.20
受信割込み許可レジスタ (RIER) .............................................................................. 497
21.4.21
アクセプタンスマスク選択レジスタ (AMSR) .......................................................... 498
21.4.22
アクセプタンスマスクレジスタ 0/1(AMR0/AMR1).................................................. 500
21.4.23
メッセージバッファ ................................................................................................. 502
21.4.24
ID レジスタ x(x=0 ∼ 15)(IDRx)................................................................................ 504
21.4.25
DLC レジスタ x(x=0 ∼ 15)(DLCRx)......................................................................... 506
21.4.26
データレジスタ x(x=0 ∼ 15)(DTRx) ........................................................................ 507
21.5 CAN コントローラの送信................................................................................................... 509
21.6 CAN コントローラの受信................................................................................................... 511
21.7 CAN コントローラの受信フローチャート.......................................................................... 514
21.8 CAN コントローラの使用方法............................................................................................ 515
21.9 メッセージバッファ (x) による送信方法 ............................................................................ 517
21.10 メッセージバッファ (x) による受信方法 ............................................................................ 519
x
21.11 マルチレベルメッセージバッファの構成の決定 ................................................................ 521
21.12 CAN ダイレクトモードレジスタ ........................................................................................ 523
21.13 CAN コントローラの使用上の注意 .................................................................................... 524
第 22 章
アドレス一致検出機能 ........................................................................... 525
22.1 アドレス一致検出機能の概要 ............................................................................................. 526
22.2 アドレス一致検出機能のブロックダイヤグラム ................................................................ 527
22.3 アドレス一致検出機能の構成 ............................................................................................. 528
22.3.1
アドレス検出制御レジスタ (PACSR0/PACSR1) ..................................................... 529
22.3.2
検出アドレス設定レジスタ (PADR0 ∼ PADR5)...................................................... 533
22.4 アドレス一致検出機能の動作説明...................................................................................... 536
22.4.1
アドレス一致検出機能の使用例 ............................................................................... 537
22.5 アドレス一致検出機能のプログラム例............................................................................... 542
第 23 章
ROM ミラー機能選択モジュール........................................................... 545
23.1 ROM ミラー機能選択モジュールの概要 ............................................................................ 546
23.2 ROM ミラー機能選択レジスタ (ROMM) ............................................................................ 548
第 24 章
フラッシュメモリ .................................................................................. 549
24.1 フラッシュメモリの概要 .................................................................................................... 550
24.2 フラッシュメモリ全体のブロックダイヤグラム ................................................................ 551
24.3 フラッシュメモリのセクタ構成 ......................................................................................... 552
24.4 書込み / 消去モード ............................................................................................................ 553
24.5 フラッシュメモリコントロールステータスレジスタ (FMCS) ........................................... 554
24.6 フラッシュメモリ書込みコントロールレジスタ (FWR0/FWR1) ....................................... 557
24.7 フラッシュメモリ自動アルゴリズム起動方法.................................................................... 562
24.8 自動アルゴリズム実行状態の確認...................................................................................... 564
24.8.1
データポーリングフラグ (DQ7) ............................................................................... 566
24.8.2
トグルビットフラグ (DQ6) ...................................................................................... 567
24.8.3
タイミングリミット超過フラグ (DQ5) .................................................................... 568
24.8.4
セクタ消去タイマフラグ (DQ3) ............................................................................... 569
24.9 フラッシュメモリの書込み / 消去....................................................................................... 570
24.9.1
フラッシュメモリの読出し / リセット状態 .............................................................. 571
24.9.2
フラッシュメモリへのデータ書込み ........................................................................ 572
24.9.3
フラッシュメモリの全データの消去 ( チップ消去 )................................................. 574
24.9.4
フラッシュメモリの任意データの消去 ( セクタ消去 ) ............................................. 575
24.9.5
フラッシュメモリのセクタ消去の一時停止 ............................................................. 577
24.9.6
フラッシュメモリのセクタ消去の再開 .................................................................... 578
24.10 フラッシュメモリ使用上の注意 ......................................................................................... 579
24.11 フラッシュセキュリティ機能 ............................................................................................. 580
第 25 章
25.1
25.2
25.3
25.4
25.5
フラッシュメモリ品のシリアル書込み接続例 ....................................... 583
シリアル書込み接続の基本構成 ......................................................................................... 584
シリアル書込み接続例 ( ユーザ電源使用時 )...................................................................... 587
シリアル書込み接続例 ( ライタから電源供給時 )............................................................... 589
フラッシュマイコンプログラマとの最小限の接続例 ( ユーザ電源使用時 ) ....................... 591
フラッシュマイコンプログラマとの最小限の接続例 ( ライタから電源供給時 )................ 593
xi
第 26 章
クロック補正ユニット ........................................................................... 595
26.1 クロック補正ユニットの概要 ............................................................................................. 596
26.2 クロック補正ユニットのレジスタ...................................................................................... 599
26.3 アプリケーションノート .................................................................................................... 607
第 27 章
D/A コンバータ ...................................................................................... 609
27.1 D/A コンバータの概要 ........................................................................................................ 610
27.2 D/A コンバータのブロックダイヤグラム ........................................................................... 611
27.3 D/A コンバータの構成 ........................................................................................................ 612
27.4 D/A コンバータレジスタ .................................................................................................... 613
27.4.1
D/A コンバータレジスタ 0(DAT0)............................................................................ 614
27.4.2
D/A 制御レジスタ 0(DACR0).................................................................................... 615
27.5 D/A コンバータのプログラム例.......................................................................................... 616
付録
付録 A
付録 B
B.1
B.2
B.3
B.4
B.5
B.6
B.7
B.8
B.9
付録 C
索引
............................................................................................................... 617
I/O マップ ...................................................................................................................... 618
命令 ............................................................................................................................... 628
命令の種類 .................................................................................................................. 629
アドレッシング ........................................................................................................... 630
直接アドレッシング.................................................................................................... 632
間接アドレッシング.................................................................................................... 639
実行サイクル数 ........................................................................................................... 646
実効アドレスフィールド ............................................................................................ 648
命令一覧表の読み方.................................................................................................... 650
F2MC-16LX 命令一覧表 .............................................................................................. 653
命令マップ .................................................................................................................. 667
MB90990 シリーズ割込みベクタ一覧表........................................................................ 689
............................................................................................................... 693
xii
本版での主な変更内容
ページ
−
変更内容(詳細は本文を参照してください。
)
−
品種名を変更
MB90V950JAS → MB90V950AJAS
MB90V950MAS → MB90V950AMAS
23
第 1 章 概要
「・サテライト Flash」を削除
1.7 デバイスの取扱いに
関する注意事項
■デバイス取扱い上の
注意
● MB90V950 を使用し
てのソフト開発時の注
意点
89
第 5 章 クロック
5.2 クロック発生部のブ
ロックダイヤグラム
■クロック発生部のブ
ロックダイヤグラム
図 5.2-1
図を変更
動作クロックセレクタの不要な接続線を削除
時計タイマの不要な接続線を削除
101
5.5 クロックモード
図 5.5-1 の説明文を変更
(7) CS1,CS0=11B CS2= 1 → (7) PLL クロック発振安定待ち終了 &
CS1, CS0= 11B& CS2= 1
(19) CS1,CS0=11B CS2= 1 → (19) メインクロック発振安定待ち終
了 & CS1, CS0= 11B& CS2= 1
102
5.6 発振安定待ち時間
123
第 7 章 リセット
7.3 外部リセット端子
■外部リセット端子の
ブロックダイヤグラム
図 7.3-1
要約文を変更
PLL クロック→ PLL クロックモード
図を変更
「(PLL 逓倍回路 , HCLK の 2 分周 )」の文を削除
<注意事項>を変更
「特に外部クロックで動作させる場合は , リセット入力時にク
ロックを入力する必要があります。」の文を削除
126
7.5 リセット要因ビット
■リセット要因ビット
図 7.5-1
図を変更
RST 端子のまわりの破線枠を削除
135
第 8 章 低消費電力モー
ド
8.2 低消費電力回路のブ
ロックダイヤグラム
■低消費電力回路のブ
ロックダイヤグラム
図 8.2-1
図を変更
動作クロックセレクタの不要な接続線を削除
時計タイマの不要な接続線を削除
xiii
ページ
変更内容(詳細は本文を参照してください。
)
144
第 8 章 低消費電力モー
ド
8.5 スタンバイモード
8.5.1 スリープモード
■スリープモードから
の復帰
394
第 19 章 低電圧検出 /
CPU 動作検出リセット
19.5 低電圧 /CPU 動作
検出リセット回路使用
上の注意
■ CPU 動作検出リセッ
ト回路使用上の注意
表 19.5-1 を新規追加
551
第 24 章 フラッシュメ
モリ
24.2 フラッシュメモリ
全体のブロックダイヤ
グラム
節を分割
24.2 フラッシュメモリ全体のブロックダイヤグラムと
フラッシュメモリのセクタ構成 →
24.2 フラッシュメモリ全体のブロックダイヤグラム ,
24.3 フラッシュメモリのセクタ構成
552
24.3 フラッシュメモリ
のセクタ構成
551
24.2 フラッシュメモリ
全体のブロックダイヤ
グラム
<注意事項>の変更
「, 外部クロックは 0ms」を削除
要約文を変更
「図 24.2-1 にフラッシュメモリインタフェース回路を含めた」
を削除
セクタ構造に関する文を削除
■ フラッシュメモリ全
体のブロックダイヤグ
ラム
説明文を追加
552
24.3 フラッシュメモリ
のセクタ構成
要約文を追加
556
24.5 フラッシュメモリ
コントロールステータ
スレジスタ (FMCS)
■ フラッシュメモリコ
ントロールステータス
レジスタ (FMCS)
< 注意事項 > を変更
「RDYINT ビットと RDY ビットは同時には変化しません。どち
らか片方のビットで判定するようにプログラムを作成してくだ
さい。」の文を削除
■ 自動アルゴリズム終
了タイミング
項目タイトルと説明文を追加
図 24.5-2
図タイトルを変更
RDYINT ビットと RDY ビットの変化タイミング →
自動アルゴリズム終了タイミングと RDYINT ビットおよび
RDY ビットの関係
xiv
ページ
564
変更内容(詳細は本文を参照してください。
)
第 24 章 フラッシュメ
モリ
24.8 自動アルゴリズム
実行状態の確認
■ハードウェアシーケ
ンスフラグ
説明文を変更
DQ2 に関する記述を削除
表 24.8-1
ビット No.2 を変更
DQ2 → −
565
表 24.8-2
表を訂正
行を変更
DQ2 の列を削除
値を訂正
* 注釈を削除
569
24.8 自動アルゴリズム
実行状態の確認
571
24.9 フラッシュメモリ
の書込み / 消去
24.9.1 フラッシュメモ
リの読出し / リセット
状態
■ フラッシュメモリの
読出し / リセット状態
説明文を変更
1 回と 3 回のバス動作を行う → 1 回と 4 回のバス動作を行う
575
24.9.4 フラッシュメモ
リの任意データの消去
( セクタ消去 )
■ フラッシュメモリの
任意データの消去 ( セ
クタ消去 )
● セクタ指定方法
説明文を変更
50μs → 最小 50μs
● 複数のセクタを指定
するときの注意
説明文を変更
50μs → 最小 50μs
576
図 24.9-2
図を変更
577
24.9.5 フラッシュメモ
リのセクタ消去の一時
停止
■フラッシュメモリの
セクタ消去の一時停止
説明文を追加
セクタ消去一時停止コマンド発行から 20μs 以内に , 再開コマン
ドを発行すると , 再開後の動作は保証できません。ただし , 評
価用品では , 20μs 以内の再開コマンドは無視されます。
579
24.10 フラッシュメモリ
使用上のご注意
■フラッシュメモリ使
用上の注意
●書込み / 消去中のモード遷移を追加
「24.7.5 トグルビット 2 フラグ (DQ2)」の項を削除
( 項番号は初版時のもの )
xv
ページ
580
変更内容(詳細は本文を参照してください。
)
第 24 章 フラッシュメ
モリ
24.11 フラッシュセキュ
リティ機能
節タイトル変更
フラッシュセキュリティの特長→フラッシュセキュリティ機能
要約文を変更
フラッシュセキュリティ機能によりフラッシュメモリの内容保
護ができます。→
フラッシュセキュリティ機能によりフラッシュメモリの内容を
保護することができます。
変更箇所は , 本文中のページ左側の│によって示しています。
xvi
第1章
概要
特長と基本的な仕様について説明します。
1.1 MB90990 シリーズの概要
1.2 MB90990 シリーズのブロックダイヤグラム
1.3 外形寸法図
1.4 端子配列図
1.5 端子機能説明
1.6 入出力回路形式
1.7 デバイスの取扱いに関する注意事項
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
1
第 1 章 概要
1.1 MB90990 シリーズの概要
1.1
MB90990 シリーズ
MB90990 シリーズの概要
MB90990 シリーズは , 車載用途向けに設計された 16 ビットマイクロコントローラ
です。CAN 機能 , キャプチャ , コンペア系タイマ , A/D コンバータなどを搭載してい
ます。
■ MB90990 シリーズの特長
MB90990 シリーズには以下の特長があります。
● クロック
• PLL クロック逓倍回路内蔵
• 発振クロックの 2 分周または発振クロックの 1 逓倍∼ 8 逓倍 ( 発振クロック 4 MHz
の場合 , 4 MHz ∼ 32 MHz) のマシンクロック (PLL クロック ) を選択可能
• 最小命令実行時間 : 31.25 ns( 発振クロック 4 MHz, PLL クロック 8 逓倍で動作した
場合 )
● 16 M バイトの CPU メモリ空間
内部は 24 ビットアドレッシング
● コントローラ用途に最適な命令体系
• 豊富なデータタイプ ( ビット , バイト , ワード , ロングワード )
• 豊富なアドレッシングモード (23 種類 )
• 符号付き乗除算命令 , RETI 命令機能強化
• 32 ビットのアキュムレータ採用による高精度演算の強化
● 高級言語 (C 言語 )/ マルチタスクに対応する命令体系
• システムスタックポインタの採用
• 各種ポインタ間接命令の強化
• バレルシフト命令
● 実行速度の向上
4 バイトの命令キュー
● 強力な割込み機能
• 8 レベル , 34 要因の強力な割込み機能
• 最大 16 チャネルの外部割込みに対応
● CPU に依存しない自動データ転送機能
拡張インテリジェント I/O サービス機能 (EI2OS) : 最大 16 チャネル
2
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 1 章 概要
1.1 MB90990 シリーズの概要
● 低消費電力 ( スタンバイ ) モード
• スリープモード (CPU 動作クロックを停止するモード )
• タイムベースタイマモード ( 発振クロックとサブクロック , タイムベースタイマと
時計タイマのみ動作させるモード )
• 時計モード ( サブクロックと時計タイマのみ動作させるモード )
• ストップモード ( 発振クロックとサブクロックを停止するモード )
• CPU 間欠動作モード
● プロセス
CMOS テクノロジ
● I/O ポート
• 汎用入出力ポート (CMOS 出力 )
- 36 本
● タイマ
• タイムベースタイマ , 時計タイマ , ウォッチドッグタイマ : 1 チャネル
• 8/16 ビット PPG タイマ : 8 ビット× 6 チャネルまたは 16 ビット× 3 チャネル
• 16 ビットリロードタイマ : 2 チャネル
• 16 ビット入出力タイマ
- 16 ビットフリーランタイマ : 1 チャネル (FRT0 : ICU0/1/2/3)
- 16 ビットインプットキャプチャ (ICU) : 4 チャネル
● Full-CAN コントローラ : 1 チャネル
• CAN 規格 Ver. 2.0A および Ver. 2.0B に準拠
• 16 個のメッセージバッファ内蔵
• CAN ウェイクアップ
● UART(LIN) : LIN-UART × 2 チャネル , UART 1 チャネル
• 全二重ダブルバッファ付き
• クロック非同期またはクロック同期シリアル転送を使用可能
● DTP/ 外部割込み : 8 チャネル , CAN ウェイクアップ : 1 チャネル
外部入力により拡張インテリジェント I/O サービス (EI2OS) の起動および外部割込みを
発生
● 遅延割込み発生モジュール
タスク切換え用の割込み要求を発生
● 8/10 ビット A/D コンバータ : 16 チャネル
• 8/10 ビットの分解切換え可能
• 外部トリガ入力による起動が可能
• 変換時間 : 3 μs( マシンクロック 32 MHz の場合 , サンプリング時間を含む )
● プログラムパッチ機能
6 アドレスポインタ分のアドレス一致検出
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
3
第 1 章 概要
1.1 MB90990 シリーズの概要
MB90990 シリーズ
● 低電圧 /CPU 動作検出リセット機能 ( 型格に J サフィックスがある製品 )
• 低電圧 (2.8V ∼ 4.2V をプログラム設定 ) を検出して自動リセット
• プログラムが暴走しインターバル時間内 ( 約 16.4ms ∼約 524ms@ 外部 4 MHz を
プログラム設定 ) にカウンタがクリアされない場合に自動リセット
● クロックスーパバイザ ( 型格に J サフィックスがある製品 )
● クロック補正ユニット ( 型格に J サフィックスがある製品 )
測定結果から補正値を算出し , トリミングを行うことにより CR 発振回路の発振精度を
向上させることができます。
● ポートの入力電圧レベルを変更可能
Automotive 入力レベル /CMOS シュミット入力レベル ( シングルチップモードの初期値
は Automotive レベル )
● 8 ビット D/A コンバータ : 1 チャネル
4
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 1 章 概要
1.1 MB90990 シリーズの概要
MB90990 シリーズ
■ 品種構成
表 1.1-1 に , 品種構成を示します。
表 1.1-1 品種構成一覧
品名
特長
分類
MB90F997JBS,
MB90F997MBS
MB90V950AJAS,
MB90V950AMAS
フラッシュメモリ品
評価用品
F2MC-16LX CPU
CPU
システムクロック
PLL クロック逓倍方式 ( × 1, × 2, × 3, × 4, × 6, × 8,PLL 停止時 1/2)
最小命令実行時間 31.25ns (4MHz 原発振 8 逓倍 )
ROM 容量
フラッシュメモリ
メイン
128K バイト
サテライト 32K バイト
RAM 容量
8K バイト
30K バイト
パッケージ
LQFP-48
PGA-299
エミュレータ
専用電源 *1
―
あり
FPGA データ *2
―
050617 版
アダプタボード *2
―
MB2147-20 04C 版以降
外部
*1 : エミュレータ (MB2147-01) をご使用いただく際のジャンパスイッチ (TOOL VCC) の設定です。
詳細につきましてはエミュレータハードウェアマニュアルを参照してください。
*2 : 上記以外の FPGA データ , アダプタボードを使用されている場合は , 営業部門にご相談くださ
い。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
5
第 1 章 概要
1.1 MB90990 シリーズの概要
MB90990 シリーズ
■ 特長
表 1.1-2 周辺機能 (1 / 2)
品名
特長
UART
MB90F997JBS
MB90F997MBS
MB90V950AJAS
LIN-UART × 2 チャネル
UART × 1 チャネル
MB90V950AMAS
7 チャネル
専用リロードタイマによって広範囲の通信速度設定が可能
LIN 機能は LIN マスタおよび LIN スレーブとして使用可能
(LIN-UART のみ対応可能 )
I2C(400 kbps)
A/D コンバータ
なし
2 チャネル
16 チャネル
24 チャネル
10 ビットまたは 8 ビット分解能
変換時間 : サンプルタイムを含めて最小 3μs(1 チャネルあたり )
16 ビットリロード
タイマ
16 ビット I/O
タイマ
16 ビット アウト
プットコンペア
16 ビット イン
プットキャプチャ
8/16 ビット PPG
2 チャネル
4 チャネル
動作クロック周波数 :fsys/21, fsys/23, fsys/25(fsys= システムクロック周波数 )
外部イベントカウント機能サポートします。
1 チャネル
2 チャネル
オーバフロー時に割込み信号を出力します。
アウトプットコンペア (ch.0, ch.4) との照合時に , タイマクリアをサポートしま
す。
動作クロック周波数 :fsys/21, fsys/22, fsys/23, fsys/24, fsys/25, fsys/26, fsys/27
(fsys= システムクロック周波数 )
I/O タイマ 0 ( クロック入力 FRCK0) は ICU 0/1/2/3, OCU 0/1/2/3 に対応
I/O タイマ 1 ( クロック入力 FRCK1) は ICU 4/5/6/7, OCU 4/5/6/7 に対応
8 チャネル
なし
16 ビット入出力タイマと 16 ビットコンペアレジスタの一致時に割込み信号を
出力します。
最大 3 つのコンペアレジスタを組み合わせた出力信号生成が可能です。
4 チャネル
8 チャネル
端子入力 ( 立上りエッジ , 立下りエッジ , 両エッジ ) により I/O タイマ値の保持 ,
および割込み発生を行います。
3 チャネル
8 ビットリロードカウンタ× 6 本
下位 8 ビット用リロードレジスタ×
6本
上位 8 ビット用リロードレジスタ×
6本
8 チャネル
8 ビットリロードカウンタ× 16 本
下位 8 ビット用リロードレジスタ×
16 本
上位 8 ビット用リロードレジスタ×
16 本
8 ビットと 16 ビットの動作モードをサポートします。
一対の 8 ビットリロードカウンタを 1 本の 16 ビットリロードカウンタとし
て , あるいは 8 ビットのプリスケーラと 8 ビットのリロードカウンタとして構
成可能です。
動作クロック周波数 :fsys, fsys/21, fsys/22, fsys/23, fsys/24 あるいは fosc=5MHz 時
102.4μs (fsys= システムクロック周波数 , fosc= 発振クロック周波数 )
6
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 1 章 概要
1.1 MB90990 シリーズの概要
MB90990 シリーズ
表 1.1-2 周辺機能 (2 / 2)
品名
特長
CAN
インタフェース
MB90F997JBS
MB90F997MBS
MB90V950AJAS
1 チャネル
MB90V950AMAS
3 チャネル
CAN 仕様 Ver 2.0A および Ver 2.0B に準拠します。
エラー時の自動再送が可能。
リモートフレーム時の自動転送に対応。
送受信メッセージバッファ 16 本
マルチプルメッセージをサポートします。
受動フィルタの柔軟な構成 : フルビットコンペア / フルビットマスク /
2 つの部分ビットマスク
10kbps ∼ 1 Mbps の通信が可能
(1Mbps でご使用の場合 , マシンクロックは 8MHz 以上で動作する必要があり
ます。また 10kbps でご使用の場合 , マシンクロックは 16MHz 以下で動作する
必要があります )。
外部割込み
8 チャネル
16 チャネル
エッジ検出あるいはレベル検出が設定可能です。
クロック補正
ユニット
あり
なし
なし
なし
クロックスーパ
バイザ
あり
なし
あり
なし
低電圧検出
リセット
あり
なし
なし
なし
CPU 動作検出
リセット
あり
なし
あり
なし
クロック
モジュレーション
D/A コンバータ
サブクロック
あり
なし
あり
1 チャネル
2 チャネル
なし
あり
なし
汎用入出力サポート (CMOS 出力 ) :
- 82 本
入力レベル設定 :
- ポート 0 ∼ポート 3 : CMOS/
Automotive/
TTL レベル
から選択可能
- ポート 4 ∼ポート A : CMOS/
Automotive
レベルから
選択可能
I/O ポート
汎用入出力サポート (CMOS 出力 ) :
- 36 本
入力レベル設定 :
- CMOS/Automotive レベルから
選択可能
フラッシュメモリ
( フラッシュ
メモリ品のみ )
自動プログラミング , Embedded Algorithm, 書込み / 消去 / 消去中断 / 消去再開
コマンドをサポートします。
アルゴリズムの完了を示すフラグ
ブートセクタ構成
各セクタ消去を実行可能です。
フラッシュの内容保護のためのフラッシュセキュリティ機能
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
7
第 1 章 概要
1.2 MB90990 シリーズのブロックダイヤグラム
MB90990 シリーズ
MB90990 シリーズのブロックダイヤグラム
1.2
MB90990 シリーズのブロックダイヤグラムを示します。
■ 評価用品のブロックダイヤグラム
図 1.2-1, 図 1.2-2 に評価用品のブロックダイヤグラムを示します。
図 1.2-1 評価用品 (MB90V950AMAS) のブロックダイヤグラム
X0,X1
RST
クロック
制御
F2MC-16LX コア
16 ビット
入出力タイマ
0
インプット
キャプチャ
8 チャネル
RAM
30Kバイト
SOT6 SOT0
SCK6 SCK0
SIN6 SIN0
AVCC
AVSS
AN23 AN0
AVRH
AVRL
ADTG
DA1, DA0
PPGF PPG0
SDA1, SDA0
SCL1, SCL0
プリスケーラ
7 チャネル
16 ビット
入出力タイマ
1
UART
7チャネル
CAN
コントローラ
3 チャネル
8/10 ビット
A/D
コンバータ
24 チャネル
10 ビット
D/A
コンバータ
2 チャネル
内
部
デ
|
タ
バ
ス
16 ビット
リロード
タイマ
4 チャネル
外部バス
8/16 ビット
PPG
16 チャネル
I2C
インタ
フェース
2 チャネル
DMA
8
アウトプット
コンペア
8 チャネル
FRCK0
IN7
OUT7
IN0
OUT0
FRCK1
RX2
TX2
RX0
TX0
TIN3 TIN0
TOT3 TOT0
AD15 AD00
A23 A16
ALE
RD
WRL
WRH
HRQ
HAK
RDY
CLK
DTP/
外部
割込み
クロック
モニタ
FUJITSU MICROELECTRONICS LIMITED
INT15 INT8
(INT15R INT8R)
INT7 INT0
CKOT
CM44-10149-4
第 1 章 概要
1.2 MB90990 シリーズのブロックダイヤグラム
MB90990 シリーズ
図 1.2-2 評価用品 (MB90V950AJAS) のブロックダイヤグラム
X0, X1
RST
CR
発振回路
クロック
制御
F2MC-16LX コア
16ビット
入出力タイマ
0
インプット
キャプチャ
8チャネル
クロック
補正ユニット
CPU動作検出
アウトプット
コンペア
8チャネル
16ビット
入出力タイマ
1
RAM
30Kバイト
プリスケーラ
7チャネル
AVCC
AVSS
AN23 ~ AN0
AVRH
AVRL
UART
7チャネル
8/10ビット
A/D
コンバータ
24チャネル
内部データバス
SOT6 ~ SOT0
SCK6 ~ SCK0
SIN6 ~ SIN0
CAN
コントローラ
3チャネル
16ビット
リロード
タイマ
4チャネル
PPGF ~ PPG0
SDA1, SDA0
SCL1, SCL0
OUT7 ~ OUT0
FRCK1
RX2 ~ RX0
TX2 ~ TX2
TIN3 ~ TIN0
TOT3 ~ TOT0
A23 ~ A16
ALE
10ビット
D/A
コンバータ
2チャネル
RD
外部バス
I2C
インタ
フェース
2チャネル
WRL
WRH
HRQ
8/16ビット
PPG
16チャネル
DMA
CM44-10149-4
IN7 ~ IN0
AD15 ~ AD00
ADTG
DA1, DA0
FRCK0
HAK
RDY
CLK
DTP/
外部
割込み
クロック
モニタ
FUJITSU MICROELECTRONICS LIMITED
INT15 ~ INT8
(INT15R ~ INT8R)
INT7 ~ INT0
CKOT
9
第 1 章 概要
1.2 MB90990 シリーズのブロックダイヤグラム
MB90990 シリーズ
■ フラッシュメモリ品のブロックダイヤグラム
図 1.2-3 に , フラッシュメモリ品のブロックダイヤグラムを示します。
図 1.2-3 フラッシュメモリ品のブロックダイヤグラム
X0, X1
クロック
制御
F2MC-16LXコア
RST
CR
発振回路*
クロック
補正ユニット*
低電圧検出*
CPU動作検出*
RAM
メインFLASH
プリスケーラ
3チャネル
SOT0, SOT1, SOT2
SCK0, SCK1, SCK2
SIN0, SIN1, SIN2
AVCC
AVSS
DA0
AVCC
AVSS
AN15 AN0
AVR
ADTG
PPGA(B), PPGB(A),
PPGF(E), PPGD(C),
PPGC(D), PPGE(F)
IN0
16ビット
入出力
タイマ0
FRCK0
CAN
内部データバス
サテライト
FLASH
インプット
キャプチャ
4 チャネル
コントローラ
1チャネル
16ビット
リロード
タイマ
2チャネル
IN3
RX1
TX1
TIN2, TIN3
TOT2, TOT3
LIN-UART
2チャネル
UART
1チャネル
8ビット
D/A
コンバータ
1チャネル
8/10ビット
A/D
コンバータ
16チャネル
8/16ビット
PPG
3チャネル
DTP/
外部割込み
INT8, INT9R
INT10, INT11
INT12R, INT13
INT14R, INT15R
* : 型格に "J" サフィックスのある製品
10
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 1 章 概要
1.3 外形寸法図
MB90990 シリーズ
外形寸法図
1.3
MB90990 シリーズには , 1 種類のパッケージが用意されています。
なお , 本外形寸法図は参考用です。正式版につきましては別途ご相談ください。
■ 外形寸法図 (LQFP-48)
図 1.3-1 に , LQFP-48 タイプの外形寸法図を示します。
図 1.3-1 LQFP-48 タイプの外形寸法図
プラスチック・LQFP, 48 ピン
(FPT-48P-M26)
リードピッチ
0.50mm
パッケージ幅×
パッケージ長さ
7 × 7mm
リード形状
ガルウイング
封止方法
プラスチックモールド
取付け高さ
1.70mm MAX
質量
0.17g
コード(参考)
P-LFQFP48-7×7-0.50
プラスチック・LQFP, 48 ピン
(FPT-48P-M26)
注 1)* 印寸法はレジン残りを含む。
注 2)端子幅および端子厚さはメッキ厚を含む。
注 3)端子幅はタイバ切断残りを含まず。
9.00±0.20(.354±.008)SQ
+0.40
+.016
* 7.00 –0.10 .276 –.004 SQ
36
0.145±0.055
(.006±.002)
25
37
24
0.08(.003)
Details of "A" part
+0.20
1.50 –0.10
+.008
(Mounting height)
.059 –.004
INDEX
48
13
"A"
0˚~8˚
LEAD No.
1
0.50(.020)
0.10±0.10
(.004±.004)
(Stand off)
12
0.20±0.05
(.008±.002)
0.08(.003)
0.25(.010)
M
0.60±0.15
(.024±.006)
©2003-2008 FUJITSU MICROELECTRONICS LIMITED F48040S-c-2-3
C
2003 FUJITSU LIMITED F48040S-c-2-2
単位:mm (inches)
注意:括弧内の値は参考値です。
最新の外形寸法図については , 下記の URL にてご確認ください。
http://edevice.fujitsu.com/package/jp-search/
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
11
第 1 章 概要
1.4 端子配列図
MB90990 シリーズ
端子配列図
1.4
MB90990 シリーズの端子配列を示します。
■ 端子配列図 (LQFP-48)
図 1.4-1 に , LQFP-48 タイプの端子配列図を示します。
図 1.4-1 端子配列図 (LQFP-48)
P43/TX1
P86/SOT1
P87/SCK1
P85/SIN1
48
47
46
45
44
43
42
41
40
39
38
37
AV SS
P41
P40
P4 4/ FRCK0
P8 2/ SIN0/TIN2/INT14R
P84/SCK0/INT15R
P83/SOT0/TOT2
P42/RX1/INT9R
(TOP VIEW)
AV CC
AVR
P60/AN0
P61/AN1
P62/AN2
P63/AN3
P64/AN4
P65/AN5/PPGA(B)
P6 6/A N 6/PPGC(D)
P6 7/A N 7/PPGE(F)
P8 0/ADTG/INT12R
TOP VIEW
36
35
34
33
32
31
30
29
28
27
26
25
P20 *
P21/PPGB(A) *
P22/PPGD(C) *
P23/PPGF(E) *
P24/IN0
P25/IN1
P26/IN2
P27/IN3
X1
X0
C
V SS
P55/AN13/INT10
P56/AN14/INT11/DA0
P57/AN15/INT13
MD2
MD1
MD0
RST
V CC
P5 1/ AN9/SOT2
P52/AN10/SCK2
P53/AN11/TIN3
P54/AN12/TOT3/INT8
13
14
15
16
17
18
19
20
21
22
23
24
P50/AN8/SIN2
1
2
3
4
5
6
7
8
9
10
11
12
(FPT48P-M26)
* :
12
高電流ポート
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 1 章 概要
1.5 端子機能説明
MB90990 シリーズ
端子機能説明
1.5
MB90990 シリーズの端子機能について説明します。
■ 端子機能
表 1.5-1 端子機能説明 (1 / 3)
端子番号
端子名
回路形式
1
AVCC
I
2
AVR
−
3∼7
P60 ∼ P64
H
AN0 ∼ AN4
AN5 ∼ AN7
H
F
13
汎用入出力ポート
L
UART2 用シリアルデータ入力端子
P51
汎用入出力ポート
AN9
H
AN10
汎用入出力ポート
H
SCK2
汎用入出力ポート
H
TIN3
汎用入出力ポート
AN12
TOT3
H
INT8
AN13
INT10
CM44-10149-4
A/D コンバータ用アナログ入力端子
リロードタイマ 3 用出力端子
INT8 用外部割込み要求入力端子
P55
17
A/D コンバータ用アナログ入力端子
リロードタイマ 3 用イベント入力端子
P54
16
A/D コンバータ用アナログ入力端子
UART2 用クロック入出力端子
P53
AN11
A/D コンバータ用アナログ入力端子
UART2 用シリアルデータ出力端子
P52
15
A/D コンバータ用アナログ入力端子
SIN2
SOT2
14
A/D コンバータ用トリガ入力端子
INT12R 用外部割込み要求入力端子
P50
AN8
A/D コンバータ用アナログ入力端子
汎用入出力ポート
INT12R
12
汎用入出力ポート
PPG 用出力端子
P80
ADTG
A/D コンバータ用電源 (Vref+) 入力端子
VCC 以下の入力にしてください。
汎用入出力ポート
PPGA(B),PPGC
(D),PPGE(F)
11
アナログ回路用 VCC 電源入力端子
A/D コンバータ用アナログ入力端子
P65 ∼ P67
8 ∼ 10
機能説明
汎用入出力ポート
H
A/D コンバータ用アナログ入力端子
INT10 用外部割込み要求入力端子
FUJITSU MICROELECTRONICS LIMITED
13
第 1 章 概要
1.5 端子機能説明
MB90990 シリーズ
表 1.5-1 端子機能説明 (2 / 3)
端子番号
端子名
回路形式
P56
汎用入出力ポート
AN14
18
19
M
INT11
A/D コンバータ用アナログ入力端子
INT11 用外部割込み要求入力端子
DA0
D/A コンバータ用アナログ出力端子
P57
汎用入出力ポート ( 評価用品は入出力回路形式が異な
ります。)
H
AN15
INT13
A/D コンバータ用アナログ入力端子
INT13 用外部割込み要求入力端子
20
MD2
D
動作モード指定用入力端子
21, 22
MD1, MD0
C
動作モード指定用入力端子
23
RST
E
リセット入力
24
VCC
−
電源入力端子 (3.5 V ∼ 5.5 V)
25
VSS
−
電源入力端子 (0 V)
26
C
I
電源安定化容量端子
0.1 μF 以上のセラミックコンデンサを接続してくださ
い。
27
X0
A
発振入力端子
28
X1
A
発振出力端子
29 ∼ 32
P27 ∼ P24
G
インプットキャプチャ 0 ∼ 3 用イベント入力端子
P23 ∼ P21
汎用入出力ポート
レジスタの設定によって , プルアップ抵抗の有無を設
定できます。この機能はシングルチップモード時に有
効となります。
高電流出力ポートです。
( 評価用品は入出力回路形式が異なります。)
J
PPGF(E),PPGD
(C),PPGB(A)
36
37
38
汎用入出力ポート
レジスタの設定によって , プルアップ抵抗の有無を設
定できます。この機能はシングルチップモード時に有
効となります。
IN3 ∼ IN0
33 ∼ 35
14
機能説明
P20
P85
SIN1
P87
SCK1
PPG 用出力端子
J
K
F
汎用入出力ポート
レジスタの設定によって , プルアップ抵抗の有無を設
定できます。この機能はシングルチップモード時に有
効となります。
高電流出力ポートです。
( 評価用品は入出力回路形式が異なります。)
汎用入出力ポート
UART1 用シリアルデータ入力端子
汎用入出力ポート
UART1 用クロック入出力端子
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 1 章 概要
1.5 端子機能説明
MB90990 シリーズ
表 1.5-1 端子機能説明 (3 / 3)
端子番号
39
40
端子名
P86
SOT1
P43
TX1 回路形式
F
F
P42
41
RX1
F
F
F
K
TIN2
45
UART0 用クロック入出力端子
汎用入出力ポート
SIN0
P44
UART0 用シリアルデータ出力端子
INT15R 用外部割込み要求入力端子
P82
INT14R
CAN1 インタフェース用 RX 入力端子
汎用入出力ポート
INT15R
44
CAN1 インタフェース用 TX 出力端子
リロードタイマ 2 用出力端子
P84
SCK0
汎用入出力ポート
汎用入出力ポート
TOT2
43
UART1 用シリアルデータ出力端子
INT9R 用外部割込み要求入力端子
P83
SOT0
汎用入出力ポート
汎用入出力ポート
INT9R
42
機能説明
UART0 用シリアルデータ入力端子
INT14R 用外部割込み要求入力端子
リロードタイマ 2 用イベント入力端子
F
FRCK0
汎用入出力ポート ( 評価用品は入出力回路形式が異な
ります。)
フリーランタイマ 0 クロック端子
46, 47
P40, P41
F
汎用の入出力ポート
48
AVSS
I
アナログ回路用 VSS 電源入力端子
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
15
第 1 章 概要
1.6 入出力回路形式
1.6
MB90990 シリーズ
入出力回路形式
MB90990 シリーズの各端子の入出力回路形式を示します。
■ 入出力回路形式
表 1.6-1 入出力回路形式 (1 / 4)
分類
A
回路
備考
X1
Xout
発振回路
高速発振帰還抵抗 = 約 1 MΩ
( フラッシュメモリ品 )
X0
スタンバイ制御信号
X1
Xout
発振回路
高速発振帰還抵抗 = 約 1 MΩ
( 評価用品 )
X0
スタンバイ制御信号
B
X1A
Xout
発振回路
低速発振帰還抵抗 = 約 10 MΩ
X0A
スタンバイ制御信号
C
D
R
CMOS
ヒステリシス
入力
R
CMOS
ヒステリシス
入力
プルダウン
抵抗
16
• 評価用品
CMOS ヒステリシス入力
• フラッシュメモリ品
CMOS 入力
• 評価用品
CMOS ヒステリシス入力
プルダウン抵抗値 : 約 50 kΩ
• フラッシュメモリ品
CMOS 入力
プルダウンなし
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 1 章 概要
1.6 入出力回路形式
MB90990 シリーズ
表 1.6-1 入出力回路形式 (2 / 4)
分類
回路
備考
E
CMOS ヒステリシス入力
プルアップ抵抗値 : 約 50 kΩ
プルアップ
抵抗
CMOS
ヒステリシス
入力
R
F
P-ch
N-ch
• CMOS レベル出力
(IOL = 4 mA, IOH = − 4 mA)
Pout
Nout
R
CMOS ヒステリシス入力
• CMOS ヒステリシス入力
(VIH0.8Vcc VIL0.2Vcc)
( スタンバイ時入力遮断機能付き )
• Automotive 入力
( スタンバイ時入力遮断機能付き )
Automotive 入力
入力遮断用
スタンバイ制御
G
プルアップ制御
P-ch
Pout
P-ch
N-ch
Nout
R
• CMOS レベル出力
(IOL = 4 mA, IOH = − 4 mA)
• CMOS ヒステリシス入力
(VIH0.8Vcc VIL0.2Vcc)
( スタンバイ時入力遮断機能付き )
• Automotive 入力
( スタンバイ時入力遮断機能付き )
• プルアップ抵抗設定可能 : 約 50 kΩ
CMOS ヒステリシス
入力
Automotive 入力
入力遮断用
スタンバイ制御
H
P-ch
N-ch
• CMOS レベル出力
(IOL = 4 mA, IOH = − 4 mA)
Pout
Nout
R
CMOS ヒステリシス
入力
• CMOS ヒステリシス入力
(VIH0.8Vcc VIL0.2Vcc)
( スタンバイ時入力遮断機能付き )
• Automotive 入力
( スタンバイ時入力遮断機能付き )
• A/D アナログ入力
Automotive 入力
入力遮断用
スタンバイ制御
アナログ入力
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
17
第 1 章 概要
1.6 入出力回路形式
MB90990 シリーズ
表 1.6-1 入出力回路形式 (3 / 4)
分類
回路
備考
I
電源入力保護回路
P-ch
N-ch
J
プルアップ制御
P-ch
( 評価用品 :IOL=4 mA, IOH=- 4 mA)
Pout 高電流出力
P-ch
N-ch
• CMOS レベル出力
(IOL = 20 mA, IOH = − 14 mA)
Nout 高電流出力
R
CMOS ヒステリシス
入力
• CMOS ヒステリシス入力
(VIH0.8Vcc VIL0.2Vcc)
( スタンバイ時入力遮断機能付き )
• Automotive 入力
( スタンバイ時入力遮断機能付き )
• プルアップ抵抗設定可能 : 約 50 kΩ
Automotive 入力
入力遮断用
スタンバイ制御
K
• CMOS レベル出力
(IOL = 4 mA, IOH = − 4 mA)
P-ch
N-ch
Pout
Nout
R
CMOS ヒステリシス入力
Automotive 入力
• CMOS ヒステリシス入力
(VIH0.7Vcc VIL0.3Vcc)
( スタンバイ時入力遮断機能付き )
• Automotive 入力
( スタンバイ時入力遮断機能付き )
• CMOS ヒステリシス入力
(VIH0.8Vcc VIL0.2Vcc)
( スタンバイ時入力遮断機能付き )
CMOS ヒステリシス
入力
入力遮断用
スタンバイ制御
18
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 1 章 概要
1.6 入出力回路形式
MB90990 シリーズ
表 1.6-1 入出力回路形式 (4 / 4)
分類
回路
備考
L
P-ch
N-ch
• CMOS レベル出力
(IOL = 4 mA, IOH = − 4 mA)
Pout
Nout
R
CMOS ヒステリシス入力
Automotive 入力
CMOS ヒステリシス
入力
入力遮断用
スタンバイ制御
• CMOS ヒステリシス入力
(VIH0.8Vcc VIL0.2Vcc)
( スタンバイ時入力遮断機能付き )
• Automotive 入力
( スタンバイ時入力遮断機能付き )
• CMOS ヒステリシス入力
(VIH0.7Vcc VIL0.3Vcc)
( スタンバイ時入力遮断機能付き )
• A/D アナログ入力
アナログ入力
M
P-ch
N-ch
• CMOS レベル出力
(IOL = 4 mA, IOH = − 4 mA)
Pout
Nout
R
CMOS ヒステリシス
入力
• CMOS ヒステリシス入力
(VIH0.8Vcc VIL0.2Vcc)
( スタンバイ時入力遮断機能付き )
• Automotive 入力
( スタンバイ時入力遮断機能付き )
• A/D アナログ入力
• D/A アナログ出力
Automotive 入力
入力遮断用
スタンバイ制御
アナログ入力
アナログ出力
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
19
第 1 章 概要
1.7 デバイスの取扱いに関する注意事項
1.7
MB90990 シリーズ
デバイスの取扱いに関する注意事項
MB90990 シリーズの取扱い上の注意について説明します。
■ デバイス取扱い上の注意
● ラッチアップの防止
CMOS IC では , 次に示すような場合にラッチアップ現象が発生することがあります。
• 入力端子や出力端子に VCC より高い電圧や , VSS より低い電圧が印加された場合
• VCC ∼ VSS 間に定格を超える電圧が印加された場合
• AVCC の電源が VCC の電圧の前に供給された場合
ラッチアップが起きると電源電流が激増し , 素子の熱破壊に至る場合がありますので ,
使用に際しては最大定格を超えることのないよう十分に注意してください。また , 同様
な理由から , アナログ電源電圧 (AVCC, AVR) がデジタル電源電圧を超えることのない
ように十分注意してください。
● 未使用端子の処理について
使用していない入力端子を開放のままにしておくと,誤動作およびラッチアップによる
永久破損の原因になることがありますので , 2 kΩ 以上の抵抗を介してプルアップまた
はプルダウンの処理をしてください。また , 使用してない入出力端子については , 出力
状態にして開放するか , 入力状態の場合は入力端子と同じ処理をしてください。
● 外部クロック使用時の注意について
高速発振端子 (X0,X1) は , 外部クロック入力は使用できません。
● PLL クロックモード動作中の注意について
本マイコンで PLL を選択しているときに , 発振子が外れたりあるいはクロック入力が
停止した場合 , 本マイコンは PLL 内部の自励発振回路の自走周波数で動作を継続し続
ける場合があります。この動作は保証外の動作です。
20
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 1 章 概要
1.7 デバイスの取扱いに関する注意事項
MB90990 シリーズ
● 電源端子について (VCC/VSS)
VCC, VSS が複数ある場合 , デバイスの設計上ラッチアップなどの誤動作を防止するた
めに , 同電位にすべき端子はデバイス内部で接続してありますが , 不要幅射の低減 , グ
ランドレベルの上昇によるストローブ信号の誤動作防止 , 総出力電流規格を守るために ,
必ずそれらすべてを外部で電源およびグランドに接続してください ( 図 1.7-1 を参照し
てください )。
また , 電源供給源からできる限り低インピーダンスでこのデバイスの VCC, VSS に接続
するように配慮してください。
さらに , このデバイスの近くで , VCC と VSS の間に 0.1 μF 程度のコンデンサをバイパ
スコンデンサとして接続することをお勧めします。
図 1.7-1 電源端子 (VCC/VSS)
VCC
VSS
VCC
VSS
VSS
VCC
MB90990
シリーズ
VCC
VSS
VSS
VCC
● プルアップ / プルダウン抵抗について
MB90990 シリーズは内部プルアップ / プルダウン抵抗オプションをサポートしていま
せん ( ただし , ポート 2 のみプルアップ抵抗を内蔵しています )。
必要に応じて端子にプルアップ / プルダウン処理をしてください。
● 水晶発振回路について
X0/X1 端子の周辺のノイズは , このデバイスの誤動作の原因となります。X0/X1 端子お
よび水晶発振子 ( あるいはセラミック振動子 ) さらにグランドへのバイパスコンデンサ
はできるだけ近くになるように配慮し , また , 水晶発振子の配線はほかの回路の配線と
できる限り交差させないでください。また , X0/X1 端子の回りをグランドで囲むような
プリント基板アートワークは,安定した動作を期待できますので,強くお勧め致します。
各量産品において , ご使用される発振子メーカに発振評価依頼をしてください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
21
第 1 章 概要
1.7 デバイスの取扱いに関する注意事項
MB90990 シリーズ
● A/D コンバータの電源 , アナログ入力の投入順序について
A/D コンバータの電源 (AVCC, AVR) およびアナログ入力 (AN0 ∼ AN15) の印加は , 必
ずデジタル電源 (VCC) の投入後に行ってください。また , 電源切断時は A/D コンバー
タの電源およびアナログ入力の遮断の後でデジタル電源の遮断を行ってください。そ
の際 , AVR は , AVCC を超えないように投入・切断を行ってください。
● A/D コンバータの未使用端子処理について
A/Dコンバータを使用しないときは, AVCC=VCC, AVSS=AVR=VSSに接続してください。
● 電源投入時の注意
内部に内蔵している降圧回路の誤作動を防ぐために,電源投入時における電圧の立上り
時間は 50 μs (0.2 V ∼ 2.7 V) 以上を確保してください。
● 供給電圧の安定化
VCC 電源電圧の動作保証内においても , 電源電圧の急激な変化があると誤動作を起こ
す場合がありますので , VCC 電源電圧を安定させてください。
安定化の基準としては , 商用周波数 (50 Hz ∼ 60 Hz) での VCC リプル変動 (peak to peak
値 ) は , 標準 VCC 電源電圧値の 10% 以下に , また , 電源の切換え時などの瞬時変化にお
いては過渡変動率が 0.1 V/ms 以下になるように電源電圧を抑えてください。
● CAN 使用時の設定について
CAN を使用する場合は , CAN ダイレクトモードレジスタ (CDMR) の DIRECT ビットを
必ず "1" に設定してください ( 表 1.7-1 を参照してください )。DIRECT ビットが正しく
設定されていないと CAN が正しく動作しませんのでご注意ください。
表 1.7-1 CAN ダイレクトモードの設定
CAN ダイレクトモード設定
(CDMR:DIRECT ビットの設定 )
必要な設定
1 : CAN ダイレクトモード有効
設定禁止
0 : CAN ダイレクトモード無効
( 初期状態 )
<注意事項>
CAN ダイレクトモードについては「21.12 CAN ダイレクトモードレジスタ (CDMR)」を
参照してください。
22
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 1 章 概要
1.7 デバイスの取扱いに関する注意事項
● フラッシュセキュリティ機能について
セキュリティビットはフラッシュメモリの領域内に配置されています。セキュリティ
ビットに保護コード "01H" を書き込むとセキュリティがかかりますので , セキュリティ
機能を使用しない場合はこのアドレスには "01H" を書き込まないでください。
セキュリティビットのアドレスは表 1.7-2 を参照してください。
表 1.7-2 セキュリティビットのアドレス
MB90F997JBS,
MB90F997MBS
フラッシュメモリサイズ
セキュリティビットのアドレス
1M ビットフラッシュメモリ搭載
FE0001H
● MB90950 シリーズのソフトウェア資産を流用される場合について
MB90990 シリーズのプログラミングに関して , 特に MB90950 シリーズのソフトウェア
資産を流用される場合 , 以下の点にご注意ください。
• MB90990 シリーズには存在しないレジスタへのアクセス
MB90950 シリーズには存在して , MB90990 シリーズには存在しないレジスタやビッ
トに関してはアクセスしない。もしくは , 初期値を設定するようにしてください。
初期値以外を設定すると , MB90V950 を使用したエミュレーションで正常に動作し
ない場合があります。
• 外部割込み要求選択レジスタ (EISSR) の設定
MB90990 シリーズには外部割込み要求入力 , INT8R, INT9, INT10R, INT11R, INT12,
INT13R, INT14, INT15 が搭載されておりません。未搭載の端子をイネーブルにする
と誤動作の原因となりますので , DTP/ 外部割込みを使用される場合は EISSR の設定
を行ってから各レジスタの設定を実施してください。
● MB90V950 を使用してのソフト開発時の注意点
MB90V950 には以下の機能は搭載しておりません。
• 低電圧検出リセット回路
• CR クロック補正 ( クロック補正ユニット )
● シリアル通信について
シリアル通信においては , ノイズなどにより間違ったデータを受信する可能性があり
ます。そのため , ノイズを抑えるボードの設計をしてください。
また , 万が一 ノイズなどの影響により誤ったデータを受信した場合を考慮して最後に
データのチェックサムなどを付加してエラーが発生した場合には , 再送を行うなどの
処理をしてください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
23
第 1 章 概要
1.7 デバイスの取扱いに関する注意事項
24
MB90990 シリーズ
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第2章
CPU
CPU の機能と動作について説明します。
2.1 CPU の概要
2.2 メモリ空間
2.3 メモリマップ
2.4 リニア方式によるアドレス指定
2.5 バンク方式によるアドレス指定
2.6 メモリ空間における多バイト長データ
2.7 レジスタ
2.8 レジスタバンク
2.9 プリフィックスコード
2.10 割込み抑止命令
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
25
第 2 章 CPU
2.1 CPU の概要
2.1
MB90990 シリーズ
CPU の概要
F2MC-16LX CPU コアは , 民生用・車載用機器などの高速リアルタイム処理が要求さ
れる用途向けに設計された 16 ビット CPU です。F2MC-16LX の命令セットはコン
トローラ用途向けに設計されており , 各種制御の高速・高効率処理が可能です。
■ CPU の概要
F2MC-16LX CPU コアは 16 ビットデータ処理はもちろん , 内部に 32 ビットアキュム
レータを塔載しているため 32 ビットデータ処理も可能です。メモリ空間は最大 16 M
バイト ( 拡張可能 ), リニア方式およびバンク方式のいずれかにてアクセス可能です。ま
た , 命令体系は F2MC-8L の A-T アーキテクチャをベースに , 高級言語対応命令の追加・
アドレッシングモードの拡張・乗除算命令の強化・ビット処理の充実化により命令が
強化されています。
以下に , F2MC-16LX CPU の特長を示します。
● 最小命令実行時間
31.25 ns (4 MHz 発振 , 8 逓倍 )
● 最大メモリ空間
16 M バイト , リニア / バンク方式にてアクセス
● コントローラ用途に最適化された命令体系
• 豊富なデータタイプビット / バイト / ワード / ロングワード
• 拡張されたアドレッシングモード 23 種類
• 32 ビットアキュムレータの採用による高精度演算 (32 ビット長 ) の強化
● 強力な割込み機能
8 つのプライオリティレベル ( プログラマブル )
● CPU に依存しない自動転送機能
最大 16 チャネルまでの拡張インテリジェント I/O サービス
● 高級言語 (C 言語 )/ マルチタスクに対応した命令体系
システムスタックポイントの採用 / 命令セットの対称性 / バレルシフト命令
● 実行速度の向上
4 バイトのキュー
26
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 2 章 CPU
2.2 メモリ空間
MB90990 シリーズ
2.2
メモリ空間
F2MC-16LX CPU が管理するデータ・プログラム・I/O はすべて F2MC-16LX CPU に
ある 16 M バイトのメモリ空間のいずれかに配置されます。CPU は 24 ビットのアド
レスバスでこれらのアドレスを示すことにより , 各リソースをアクセスできます。
■ CPU メモリ空間の概要
図 2.2-1 に , F2MC-16LX システムとメモリマップの関係例を示します。
図 2.2-1 F2MC-16LX システムとメモリマップの関係例
F2MC-16LXデバイス
FFFFFFH
FFFC00H
プログラム
FF0000H*1
ベクタテーブル領域
プログラム領域
ROM 領域
100000H
外部領域*3
010000H
F2MC-16LX
CPU
内部データバス
周辺回路
008000H
007900H
000D00H*2
データ
EI2OS
周辺回路
割込み
000380H
000180H
000100H
0000F0H
0000C0H
0000B0H
周辺回路
000020H
汎用ポート
000000H
ROM領域
(FFバンクのイメージ)
周辺機能制御
レジスタ領域
データ領域
汎用レジスタ
2
EI OS
ディスクリプタ領域
I/O 領域
RAM 領域
外部領域*3
周辺機能制御
レジスタ領域
割込み制御
レジスタ領域
周辺機能制御
レジスタ領域
I/Oポート制御
レジスタ領域
I/O 領域
*1: 品種によって , 内蔵 ROM の容量が異なります。
*2: 品種によって , 内蔵 RAM の容量が異なります。
*3: シングルチップモードの場合には , アクセスなしとします。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
27
第 2 章 CPU
2.2 メモリ空間
MB90990 シリーズ
■ ROM 領域
● ベクタテーブル領域 ( アドレス : FFFC00H ∼ FFFFFFH)
• リセットと割込みおよび CALLV ベクタに対応したベクタテーブルです。
• ROM 領域の最上位に割り当てられており , それぞれのベクタテーブルのアドレスに
対応する処理ルーチンの開始アドレスをデータとして設定します。
● プログラム領域 ( アドレス :FE0000H ∼ FFFBFFH(128K バイトの場合 ))
• 内部プログラム領域として ROM が内蔵されています。
• 内部 ROM 容量は品種によって異なります。
■ RAM 領域
● データ領域 ( アドレス : 000100H ∼ 0020FFH(8 K バイトの場合 ))
• 内部データ領域としてスタティック RAM が内蔵されています。
• 内部 RAM 容量は品種によって異なります。
● 汎用レジスタ領域 ( アドレス : 000180H ∼ 00037FH)
• 8 ビット , 16 ビット , 32 ビットの演算や転送に使用する補助的なレジスタを配置し
ます。
• RAM 領域の一部に割り当てられており , 通常の RAM として使用することもできま
す。
• 汎用レジスタとして使用すると , 汎用レジスタアドレッシングによって短い命令で
高速にアクセスできます。
● 拡張インテリジェント I/O サービス (El2OS) ディスクリプタ領域
( アドレス 000100H ∼ 00017FH)
• 転送モード , I/O のアドレス , 転送数およびバッファアドレスを保持します。
• RAM 領域の一部に割り当てられており , 通常の RAM として使用することもできま
す。
■ I/O 領域
● 割込み制御レジスタ領域 ( アドレス : 0000B0H ∼ 0000BFH)
割込み制御レジスタ (ICR00 ∼ ICR15) は , 割込み機能を持つすべての周辺機能に対応し ,
割込みレベルの設定および拡張インテリジェント I/O サービス (EI2OS) の制御を行いま
す。
● 周辺機能制御レジスタ領域 ( アドレス : 000020H ∼ 0000AFH, 0000C0H ∼ 0000EFH,
007900H ∼ 007FFFH)
周辺機能およびデータの入出力を制御します。
● I/O ポート制御レジスタ領域 ( アドレス : 000000H ∼ 00001FH)
I/O ポートおよびデータの入出力を制御します。
28
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 2 章 CPU
2.2 メモリ空間
■ アドレス作成の方式
F2MC-16LX のアドレス指定には , 以下に示す 2 つの方式があります。
● リニア方式
24 ビットアドレスすべてを命令により指定する方式
● バンク方式
アドレス上位 8 ビットを用途に応じたバンクレジスタでアドレス下位 16 ビットを命令
により指定する方式
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
29
第 2 章 CPU
2.3 メモリマップ
2.3
MB90990 シリーズ
メモリマップ
図 2.3-1 に , MB90990 シリーズのメモリマップを示します。
■ メモリマップ
図 2.3-1 に示すように , バンク 00 の上位部分は FF バンク ROM のイメージであり , C コ
ンパイラのスモールモデルを有効にします。下位 16 ビットも同様なため , ポインタ宣
言内の far 仕様を使用せずに ROM 内のテーブルを参照できます。例えば , "00C000H"
にアクセスしようとすると , ROM 内の "FFC000H" の値にアクセスします。バンク FF
内の ROM 領域は , バンク 00 内にその全体イメージを表示することはできません。
"FF8000H" ∼ "FFFFFFH" の間のイメージはバンク 00 内で可視ですが , "FF0000H" ∼
"FF7FFFH" の間のイメージはバンク FF 内でしか可視でありません。
図 2.3-1 メモリマップ
MB90F997JBS,
MB90F997MBS
MB90V950AJAS,
MB90V950AMAS
FFFFFFH
FFFFFFH
ROM (FFバンク)
FF0000H
FEFFFFH
ROM (FEバンク)
FE0000H
FDFFFFH
FF0000H
FEFFFFH
ROM (FFバンク)
ROM (FEバンク)
FE0000H
ROM (FDバンク)
FD0000H
FCFFFFH
ROM (FCバンク)
FC0000H
FBFFFFH
ROM (FBバンク)
FB0000H
FAFFFFH
FA0000H
F9FFFFH
F90000H
F8FFFFH
ROM (FAバンク)
ROM (F9バンク)
ROM (F8バンク)
F80000H
00FFFFH
008000H
007FFFH
007900H
0078FFH
F77FFFH
F70000H
ROM (FFバンク
のイメージ)
周辺
010000H
00FFFFH
008000H
007FFFH
ROM (サテライト)
ROM (FFバンク
のイメージ)
周辺
007900H
RAM 30Kバイト
0020FFH
RAM 8Kバイト
000100H
0000EFH
000000H
周辺
000100H
0000FFH
0000F0H
0000EFH
000000H
周辺
:アクセス禁止
30
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 2 章 CPU
2.4 リニア方式によるアドレス指定
MB90990 シリーズ
リニア方式によるアドレス指定
2.4
リニア方式には以下に示す 2 つの方式があります。
• 24 ビットオペランド指定 : オペランドにて直接 24 ビットのアドレスを指定する
方式
• 32 ビットレジスタ間接指定 : 32 ビットの汎用レジスタの内容の下位 24 ビットを
アドレスとして引用する方式
■ 24 ビットオペランド指定
図 2.4-1 に 24 ビットオペランド指定の例を , 図 2.4-2 に 32 ビットレジスタ間接指定の
例を示します。
図 2.4-1 リニア方式 (24 ビットオペランド指定 ) の例
JMPP
123456H
17452DH
旧プログラムカウンタ +
17H
プログラムバンク
452DH
JMPP 123456H
123456H
次の命令
新プログラムカウンタ +
プログラムバンク
12H
3456H
図 2.4-2 リニア方式 (32 ビットレジスタ間接指定 ) の例
MOV A, @RL1+7
旧 AL
090700H
XXXX
3AH
7
RL1
240906F9H
( 上位 8 ビットは無視 )
新 AL
CM44-10149-4
003AH
FUJITSU MICROELECTRONICS LIMITED
31
第 2 章 CPU
2.5 バンク方式によるアドレス指定
2.5
MB90990 シリーズ
バンク方式によるアドレス指定
バンク方式は 16 M バイトの空間を 64 K バイトごとの 256 個のバンクに分割し , 以
下に示す 5 つのバンクレジスタで各空間に対応するバンクを指定します。
• プログラムカウンタバンクレジスタ (PCB)
• データバンクレジスタ (DTB)
• ユーザスタックバンクレジスタ (USB)
• システムスタックバンクレジスタ (SSB)
• アディショナルデータバンクレジスタ (ADB)
■ バンク方式によるアドレス指定
● プログラムカウンタバンクレジスタ (PCB) による指定
プログラムカウンタバンクレジスタ (PCB) によって指定される 64 K バイトのバンクを
プログラム (PC) 空間とよび , 主として命令コードやベクタテーブル , 即値データなど
が存在します。
● データバンクレジスタ (DTB) による指定
データバンクレジスタ (DTB) によって指定される 64 K バイトのバンクをデータ (DT)
空間とよび , 主として読み書き可能なデータや内外リソースの制御 / データレジスタな
どが存在します。
● ユーザスタックバンクレジスタ (USB)・システムスタックバンクレジスタ (SSB) による指
定
ユーザスタックバンクレジスタ (USB) またはシステムスタックバンクレジスタ (SSB)
によって指定される 64 K バイトのバンクをスタック (SP) 空間とよび , プッシュ / ポッ
プ命令や割込みのレジスタ退避などの際にスタックアクセスが発生したときにアクセ
スされる領域です。どちらの空間が使用されるかはコンディションコードレジスタ中
の S フラグの値に依存します。
● アディショナルデータバンクレジスタ (ADB) による指定
アディショナルデータバンクレジスタ (ADB) によって指定される 64 K バイトのバンク
をアディショナル (AD) 空間とよび , 主として DT 空間に入りきらなかったデータなど
が存在します。
表 2.5-1 に示すように , 各アドレッシングモードで使用されるデフォルト空間が , 命令
のコード効率を向上するために事前に決められています。また , あるアドレッシングを
用いたときにデフォルト以外の空間を使用したいときは,各バンクに対応しているプリ
フィックスコードを命令に先行して指定することにより,そのプリフィックスコードに
対応した任意のバンク空間をアクセスできます。
DTB, USB, SSB, ADB はリセットにより "00H" に初期化され , PCB はリセットベクタに
より指定された値に初期化されます。リセット後 , DT, SP, AD の各空間はバンク
"00H"(000000H ∼ 00FFFFH) に配置され , PC 空間はリセットベクタにより指定されたバ
ンクに配置されます。
32
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 2 章 CPU
2.5 バンク方式によるアドレス指定
MB90990 シリーズ
表 2.5-1 デフォルト空間
デフォルト空間
アドレッシング
プログラム空間
PC 間接 , プログラムアクセス , 分岐系
データ空間
@RW0,@RW1,@RW4,@RW5 を用いたアドレッシング ,
@A,addr16,dir
スタック空間
PUSHW, POPW,@RW3,@RW7 を用いたアドレッシング
アディショナル空間
@RW2,@RW6 を用いたアドレッシング
図 2.5-1 に , レジスタバンクに分割されたメモリ空間の例を示します。
図 2.5-1 各空間の物理アドレス
FFFFFFH
プログラム空間
FF0000H
FFH
: PCB( プログラムカウンタバンクレジスタ )
B3H
: ADB( アディショナルデータバンクレジスタ )
92H
: USB( ユーザスタックバンクレジスタ )
68H
: DTB( データバンクレジスタ )
4BH
: SSB( システムスタックバンクレジスタ )
B3FFFFH
アディショナル空間
B30000H
物
理
ア
ド
レ
ス
92FFFFH
ユーザスタック空間
920000H
68FFFFH
680000H
データ空間
4BFFFFH
システムスタック空間
4B0000H
000000H
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
33
第 2 章 CPU
2.6 メモリ空間における多バイト長データ
MB90990 シリーズ
メモリ空間における多バイト長データ
2.6
メモリへの書込みはアドレスの低い方から順に行われます。したがって , 32 ビット
長データであれば下位 16 ビットが先に転送され , 続いて上位 16 ビットが転送され
ます。
なお , 下位データの書込み直後にリセット信号を入力すると上位データが書き込まれ
ないことがあります。
■ メモリ空間における多バイト長データの配置
図 2.6-1 に , メモリにおける多バイト長データの構成を示します。データは下位 8 ビッ
トが n 番地に , 以下 n+1 番地 , n+2 番地 , n+3 番地・・・の順に配置されます。
図 2.6-1 メモリにおける多バイト長データの配置の例
MSB
"H"
LSB
01010101B
11001100B
11111111B
00010100B
01010101B
11001100B
11111111B
n 番地
00010100B
"L"
■ 多バイト長データのアクセス
アクセスはすべてバンク内を基本にして行われますので,多バイト長のデータをアクセ
スする命令では, "FFFFH"番地の次のアドレスは同じバンクの"0000H"番地になります。
図 2.6-2 に , 多バイト長データのアクセス命令の例を示します。
図 2.6-2 MOVW A, FFFFH の実行
"H"
80FFFFH
実行前の AL
??
実行後の AL
23H
??
01H
.
.
.
800000H
23H
01H
"L"
34
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 2 章 CPU
2.7 レジスタ
MB90990 シリーズ
2.7
レジスタ
F2MC-16LX のレジスタは大別して , 専用レジスタと汎用レジスタの 2 種類に分ける
ことができます。
専用レジスタは , CPU の内部に専用ハードウェアとして存在し , 使用する用途が
CPU のアーキテクチャ上で限定されています。
汎用レジスタは , 通常のメモリと同じく , 使用する用途をユーザが指定することがで
きるものです。CPU のアドレス空間上に RAM と共存し , アドレスを指定しないで
アクセスできるという点では専用レジスタと同じです。
■ 専用レジスタ
F2MC-16LX CPU コアの専用レジスタは以下に示す 11 本があります。
• アキュムレータ (A=AH:AL)
: 16 ビット× 2 本のアキュムレータ
(合計32ビットのアキュムレータと
しても使用可能 )
• ユーザスタックポインタ (USP)
: ユーザスタック領域を示す 16 ビッ
トのポインタ
• システムスタックポインタ (SSP)
: システムスタック領域を示す 16
ビットのポインタ
• プロセッサステータス (PS)
: システムの状態を示す 16 ビットのレ
ジスタ
• プログラムカウンタ (PC)
: プログラムが格納されているアド
レスを持つ 16 ビットのレジスタ
• プログラムカウンタバンクレジスタ (PCB)
: PC 空間を示す 8 ビットのレジスタ
• データバンクレジスタ (DTB)
: DT 空間を示す 8 ビットのレジスタ
• ユーザスタックバンクレジスタ (USB)
: ユーザスタック空間を示す8ビット
のレジスタ
• システムスタックバンクレジスタ (SSB)
: システムスタック空間を示す8ビッ
トのレジスタ
• アディショナルデータバンクレジスタ (ADB) : AD 空間を示す 8 ビットのレジスタ
• ダイレクトページレジスタ (DPR)
: ダイレクトページを示す8ビットの
レジスタ
図 2.7-1 に , 専用レジスタの構成を示します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
35
第 2 章 CPU
2.7 レジスタ
MB90990 シリーズ
図 2.7-1 専用レジスタ
AH
AL
アキュムレータ
USP
ユーザスタックポインタ
SSP
システムスタックポインタ
PS
プロセッサステータス
PC
プログラムカウンタ
DPR
ダイレクトページレジスタ
PCB
プログラムカウンタバンクレジスタ
DTB
データバンクレジスタ
USB
ユーザバンクレジスタ
SSB
システムスタックバンクレジスタ
ADB
アディショナルデータバンクレジスタ
8 ビット
16 ビット
32 ビット
36
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 2 章 CPU
2.7 レジスタ
MB90990 シリーズ
■ 汎用レジスタ
図 2.7-2 に示すように , F2MC-16LX の汎用レジスタは主記憶の "000180H" ∼ "00037FH"( 最
大の場合 ) に存在し , レジスタバンクポインタ (RP) によって先に述べたアドレスのど
の部分が現在使用中のレジスタバンクであるかを指定します。各バンクには以下に示
す 3 種類のレジスタが存在します。これらは独立ではなく , 以下に示すような関係があ
ります。
• R0 ∼ R7
: 8 ビットの汎用レジスタ
• RW0 ∼ RW7 : 16 ビットの汎用レジスタ
• RL0 ∼ RL3 : 32 ビットの汎用レジスタ
図 2.7-2 汎用レジスタ
MSB
LSB
16ビット
000180HH
RP x 10HH
RW0
下位
汎用レジスタの先頭アドレス
RL0
RW1
RW2
RL1
RW3
R1
R0
RW4
R3
R2
RW5
R5
R4
RW6
R7
R6
RW7
RL2
RL3
上位
バイトレジスタとワードレジスタの上位 / 下位バイトの関係は ,
RW(i+4)=R(i × 2+1) × 256 + R(i × 2)[i=0 ∼ 3]
という式で表すことができ , RLi の上位・下位と RW の関係は
RL(i)=RW(i × 2+1) × 65536 + RW(i × 2)[i=0 ∼ 3]
という式で表すことができます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
37
第 2 章 CPU
2.7 レジスタ
2.7.1
MB90990 シリーズ
アキュムレータ (A)
アキュムレータ (A) レジスタは , 2 つの 16 ビットの演算用レジスタ AH および AL
で構成され , 演算などを行った際の結果やデータ転送の一時記憶などに使用されま
す。
■ アキュムレータ (A)
アキュムレータ (A) レジスタでは , 図 2.7-3 に示すように , 32 ビットデータ処理時は AH
と AL を連結して使用します。また , 図 2.7-4 に示すように , 16 ビットデータ処理のワー
ド処理や 8 ビットデータ処理のバイト処理のときは AL のみが使用されます。A レジ
スタ中のデータはメモリ / レジスタ (Ri, RWi, RLi) 中のデータと各種演算ができ , F2MC-8
のときと同様 , F2MC-16LX でも基本的にワード長以下のデータを AL へ転送すると , 転
送前の AL 中のデータが自動的に AH に転送される ( データ保持機能 ) ので , データ保
持機能と AL-AH 間演算にて各種処理効率を上げることが可能になります。
AL へのバイト長以下のデータの転送時は , データは符号拡張またはゼロ拡張され 16
ビット長となり AL へ格納されます。AL 中のデータは , ワード長としてもバイト長と
しても扱えます。AL にバイト処理の算術演算命令を実行すると , 演算前の AL の上位
8 ビットは無視され演算結果の上位 8 ビットはすべて "0" になります。A レジスタはリ
セットでは初期化されず , リセット直後は不定値になります。
図 2.7-3 32 ビットデータ転送例
MOVL A,@RW1+6
実行前の A
MSB
XXXXH
XXXXH
A6H
DTB
実行後の A
8F74H
A61540H
8FH
74H
A6153EH
2BH
52H
15H
38H
+6
2B52H
AH
LSB
RW1
AL
図 2.7-4 AL-AH 転送例
MSB
MOVW A,@RW1+6
実行前の A
XXXXH
1234H
A6H
DTB
LSB
A61540H
8FH
74H
A6153EH
2BH
52H
15H
38H
+6
実行後の A
38
1234H
2B52H
RW1
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 2 章 CPU
2.7 レジスタ
MB90990 シリーズ
ユーザスタックポインタ (USP) とシステムスタック
ポインタ (SSP)
2.7.2
ユーザスタックポインタ (USP) およびシステムスタックポインタ (SSP) は , 16 ビッ
トのレジスタであり , プッシュ / ポップ命令およびサブルーチン実行時のデータ退避 /
復帰のメモリアドレスを示します。
■ ユーザスタックポインタ (USP) とシステムスタックポインタ (SSP)
図 2.7-5に示すようにユーザスタックポインタ(USP)とシステムスタックポインタ(SSP)
は , スタック系の命令により使用されますが , プロセッサステータス中の S フラグが
"0" のときは USP レジスタが有効になり , S フラグが "1" のときは SSP レジスタが有効
になります。また , 割込みが受け付けられると S フラグがセットされるため , 割込み時
のレジスタ退避は必ず SSP の示すメモリ中に行われます。割込みルーチンでのスタッ
ク処理は SSP で , 割込みルーチン以外のスタック処理は USP が用いられます。スタッ
ク空間を分ける必要のない場合は SSP だけをお使いください。
スタック時のアドレスの上位 8 ビットは , SSP → SSB, USP → USB により示されます。
また , USP および SSP はリセットでは初期化されず , 不定値になります。
図 2.7-5 スタック操作命令とスタックポインタ
MSB
S フラグが "0" のときの PUSHW A の例
実行前
AL
S フラグ
実行後
AL
S フラグ
A624H
USB
C6H
0
SSB
56H
A624H
USB
C6H
0
SSB
56H
USB
C6H
SSB
56H
USB
C6H
SSB
56H
USP
SSP
USP
SSP
F328H
C6F326H
LSB
XX
XX
1234H
S フラグが "0" であるため
システムスタックを使用
F326H
1234H
C6F326H
A6H
24H
F328H
561232H
XX
XX
561232H
A6H
24H
S フラグが "1" のときの PUSHW A の例
AL
S フラグ
AL
S フラグ
A624H
1
A624H
1
USP
SSP
USP
SSP
1234H
F328H
1232H
S フラグが "1" であるため
システムスタックを使用
<注意事項>
スタックポインタに設定すべき値は , 原則として偶数アドレスを使用してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
39
第 2 章 CPU
2.7 レジスタ
MB90990 シリーズ
プロセッサステータス (PS)
2.7.3
プロセッサステータス (PS) は , CPU の動作制御を行うビットと CPU の状態を示す
ビットより構成されています。
■ プロセッサステータス (PS)
図 2.7-6 に示すように , プロセッサステータス (PS) の上位バイトはレジスタバンクの先
頭アドレスを示すインタラプトレベルマスクレジスタ (ILM) およびレジスタバンクポ
インタ (RP) により構成されています。また , PS の下位バイトは命令実行結果および割
込み発生などによりセット / リセットされる各種フラグを持つコンディションコード
レジスタ (CCR) により構成されています。
図 2.7-6 プロセッサステータス (PS) の構造
bit15
bit13
PS
bit12
bit8
ILM
bit7
bit0
RP
CCR
■ コンディションコードレジスタ (CCR)
図 2.7-7 に , コンディションコードレジスタ (CCR) の構造を示します。
図 2.7-7 コンディションコードレジスタ (CCR) の構成
初期値
* : 不定値
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
-
I
S
T
N
Z
V
C
-
0
1
*
*
*
*
*
: CCR
● 割込み許可フラグ (I)
ソフトウェアインタラプト以外のすべての割込み要求に対して I が "1" のときは割込み
が許可 , "0" のときは割込みがマスクされます。リセット時はクリアされます。
● スタックフラグ (S)
S が "0" のときはスタック操作用ポインタとして USP が有効 , "1" のときは SSP が有効
になります。割込み受付け時およびリセット時にセットされます。
● スティッキィビットフラグ (T)
論理右 / 算術右シフト命令を実行後にキャリよりシフトアウトされたデータに 1 つ以
上"1"があったら"1",それ以外は"0"になります。シフト量が"0"の場合も"0"になります。
● ネガティブフラグ (N)
演算結果の MSB が "1" なら N フラグはセットされ , それ以外はクリアされます。
● ゼロフラグ (Z)
演算結果がすべて "0" ならセットされ , それ以外はクリアされます。
40
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 2 章 CPU
2.7 レジスタ
MB90990 シリーズ
● オーバフローフラグ (V)
演算の実行により符号付き数値としてオーバフローが発生するとセットされ , 発生し
ないとクリアされます。
● キャリフラグ (C)
演算の実行により MSB より桁上り / 桁下りが発生するとセットされ , 発生しないとク
リアされます。
■ レジスタバンクポインタ (RP)
図 2.7-8 に示すように , レジスタバンクポインタ (RP) は , F2MC-16LX の持つ汎用レジ
スタとそれが存在する内部 RAM のアドレスとの関係を示すレジスタで , 現在使用中
のレジスタバンクの先頭のメモリアドレスを [000180H+(RP) × 10H] という変換式で示
します。RP は 5 ビットにより構成されており "00H" ∼ "1FH" までの値をとることがで
き , "000180H" ∼ "00037FH" のメモリ中にレジスタバンクを配置できます。ただし , こ
の範囲内であっても内部 RAM でなければ汎用レジスタとして使用することはできま
せん。RP はリセットによりすべて "0" に初期化されます。命令上では RP に 8 ビット
の即値を転送できますが , 実際に使用されるのはそのデータの下位 5 ビットのみです。
図 2.7-8 レジスタバンクポインタ (RP)
初期値
B4
B3
B2
B1
B0
0
0
0
0
0
: RP
■ インタラプトレベルマスクレジスタ (ILM)
図 2.7-9 に示すように , インタラプトレベルマスクレジスタ (ILM) は 3 ビットから構成
されており , CPU の割込みマスクのレベルを示します。この 3 ビットにより示される
レベルより強いレベルの割込み要求のみが受け付けられます。表 2.7-1 に示すように ,
レベルの強弱は "0" が最強で , "7" が最弱と定義されています。したがって , 割込みが
受け付けられるには , 現状の ILM の保持値より小さい値の要求でなければなりません。
割込みが受け付けられるとその割込みのレベル値が ILM にセットされ , これ以降の同
じかそれより低い優先順位の割込みは受け付けられなくなります。ILM はリセットに
よりすべて "0" に初期化されます。命令上では ILM に 8 ビットの即値を転送できます
が , 実際に使用されるのはそのデータの下位 3 ビットのみです。
図 2.7-9 インタラプトレベルマスクレジスタ (ILM)
初期値
CM44-10149-4
ILM2
ILM1
ILM0
0
0
0
: ILM
FUJITSU MICROELECTRONICS LIMITED
41
第 2 章 CPU
2.7 レジスタ
MB90990 シリーズ
表 2.7-1 インタラプトレベルマスクレジスタ (ILM) で示されるレベルの強弱
42
ILM2
ILM1
ILM0
レベル値
0
0
0
0
割込み禁止
0
0
1
1
1 より小さい値のレベル (0 のみ )
0
1
0
2
2 より小さい値のレベル (0, 1)
0
1
1
3
3 より小さい値のレベル (0, 1, 2)
1
0
0
4
4 より小さい値のレベル (0, 1, 2, 3)
1
0
1
5
5 より小さい値のレベル (0, 1, 2, 3 , 4)
1
1
0
6
6 より小さい値のレベル (0, 1, 2, 3, 4, 5)
1
1
1
7
7 より小さい値のレベル (0, 1, 2, 3, 4, 5, 6)
許可される割込みレベル
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 2 章 CPU
2.7 レジスタ
MB90990 シリーズ
プログラムカウンタ (PC)
2.7.4
プログラムカウンタ (PC) は , 16 ビットのカウンタであり , CPU が実行すべき命令
コードのメモリアドレスの下位 16 ビットを示します。上位 8 ビットアドレスは
PCB により示されます。PC は条件分岐命令 , サブルーチンコール命令 , 割込み , リ
セットなどにより内容が更新されます。また , オペランドアクセス時のベースポイン
タとして使用することもできます。
■ プログラムカウンタ (PC)
図 2.7-10 に , プログラムカウンタを示します。
図 2.7-10 プログラムカウンタ
PCB
FEH
PC
ABCDH
次に実行する命令
FEABCDH
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
43
第 2 章 CPU
2.8 レジスタバンク
2.8
MB90990 シリーズ
レジスタバンク
レジスタバンクは 8 ワードで構成され , バイトレジスタ R0 ∼ R7, ワードレジスタ
RW0 ∼ RW7, ロングワードレジスタ RL0 ∼ RL3 の汎用レジスタとして各種演算 ,
ポインタとして各種命令に使用でき , RL0 ∼ RL3 は全空間を直接アクセスするリニ
アポインタとしても使用できます。
■ レジスタバンク
表 2.8-1 に各レジスタの機能を , 表 2.8-2 に各レジスタの関係を示します。
レジスタバンクの内容は , 通常の RAM 同様にリセットでは初期化されず , リセット前
の状態が保持されます。ただし , パワーオン時は不定値になります。
表 2.8-1 各レジスタの機能
各種命令のオペランドとして使用
R0 ∼ R7
( 注意事項 ) R0 はバレルシフトのカウンタおよびノーマライズ
命令のカウンタとしても使用
ポインタ , 各種命令のオペランドとして使用
RW0 ∼ RW7
( 注意事項 ) RW0 はストリング命令のカウンタとしても使用
RL0 ∼ RL3
ロングポインタ , 各種命令のオペランドとして使用
表 2.8-2 各レジスタの関係
RW0
RL0
RW1
RW2
RL1
RW3
R0
RW4
R1
RL2
R2
RW5
R3
R4
RW6
R5
RL3
R6
RW7
R7
44
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 2 章 CPU
2.8 レジスタバンク
MB90990 シリーズ
● ダイレクトページレジスタ (DPR) <初期値 :01H >
ダイレクトページレジスタ (DPR) は , ダイレクトアドレッシングの命令時のオペラン
ドの addr8 ∼ addr15 を指定します。図 2.8-1 に示すように , DPR は 8 ビット長であり ,
リセットにより "01H" に初期化されます。
図 2.8-1 ダイレクトアドレッシングによる物理アドレスの生成
DTB レジスタ
DPR レジスタ
MSB
命令中のダイレクトアドレス
LSB
24 ビット 物理アドレス
● プログラムカウンタバンクレジスタ (PCB) <初期値 : リセットベクタ中の値>
● データバンクレジスタ (DTB) <初期値 :00H >
● ユーザスタックバンクレジスタ (USB) <初期値 :00H >
● システムスタックバンクレジスタ (SSB) <初期値 :00H >
● アディショナルデータバンクレジスタ (ADB) <初期値 :00H >
各々のバンクレジスタはそれぞれ PC 空間 , DT 空間 , SP 空間 ( ユーザ ), SP 空間 ( シス
テム ) AD 空間の配置されるメモリバンクを示します。すべてのバンクレジスタはバイ
ト長であり , リセットが発生すると PCB はリセットベクタにより "00H" に初期化され
ます。PCB 以外のバンクレジスタは読出し / 書込みができます。PCB は読出しは可能
ですが書き込むことはできません。
16M バイト全空間に分岐する JMPP, CALLP, RETP, RETIQ, RETF 命令実行時および割
込み時に PCB は書き換わります。各レジスタの動作は ,「2.2 メモリ空間」を参照して
ください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
45
第 2 章 CPU
2.9 プリフィックスコード
2.9
MB90990 シリーズ
プリフィックスコード
命令の前にプリフィックスコードを置くことで , 命令動作の一部を変更することが可
能です。プリフィックスコードには , バンクセレクトプリフィックス , コモンレジス
タバンクプリフィックス , フラグ変化抑止プリフィックスの 3 種類があります。
■ バンクセレクトプリフィックス
データアクセスの際に使用されるメモリ空間はアドレッシングごとに定められていま
す。バンクセレクトプリフィックスを命令前に置くことで , 命令によるデータアクセス
のメモリ空間をアドレッシングモードとは無関係に任意に選択することが可能となり
ます。
表 2.9-1 に , バンクセレクトプリフィックスと対応するメモリ空間を示します。
表 2.9-1 バンクセレクトプリフィックス
バンクセレクト
プリフィックス
選択される空間
PCB
PC 空間
DTB
データ空間
ADB
AD 空間
SPB
そのときのスタックフラグの内容により SSP 空間 , USP 空間の
どちらかが用いられます。
ただし , 以下に示す命令に対しては注意してください。
● ストリング命令〔MOVS, MOVSW, SCEQ, SCWEQ, FILS, FILSW〕
プリフィックスの有無にかかわらず,オペランド指定されたバンクレジスタを使用しま
す。
● スタック操作命令〔PUSHW, POPW〕
プリフィックスの有無にかかわらず , S フラグに応じて SSB または USB を使用します。
● I/O アクセス命令
MOV A,io/MOV io,A/MOVX A,io/MOVW A,io/MOVW io,A/MOV io,#imm8
MOVW io,#imm16/MOVB A,io:bp/MOVB io:bp,A/SETB io:bp/CLRB io:bp
BBC io:bp,rel/BBS io:bp,rel/WBTC,WBTS
プリフィックスの有無にかかわらず , バンクの I/O 空間が使用されます。
● フラグ変更命令〔AND CCR, #imm8, OR CCR, #imm8〕
命令動作は正常ですが , プリフィックスの効果が次の命令まで及びます。
● POPW PS
プリフィックスの有無にかかわらず , S フラグに応じて SSB または USB が使用されま
す。プリフィックスの効果が次の命令まで及びます。
46
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 2 章 CPU
2.9 プリフィックスコード
● MOV ILM, #imm8
命令動作は正常ですが , プリフィックスの効果が次の命令まで及びます。
● RETI
プリフィックスの有無にかかわらず , SSB が使用されます。
■ コモンレジスタバンクプリフィックス (CMR)
複数のタスク間でのデータ交換を容易にするためには , そのときの RP がどのような値
でも比較的簡単に定められた同一のレジスタバンクをアクセスする手段が必要です。
コモンレジスタバンクプリフィックス (CMR) をレジスタバンクがアクセスする命令の
前に置くことで , 現在の RP の値に関係なくその命令のレジスタアクセスをすべて
"000180H"∼"00018FH"にあるコモンバンク(RP=0のときに選択されるレジスタバンク)
に変更できます。ただし , 以下に示す命令に対しては注意してください。
● ストリング命令〔MOVS, MOVSW, SCEQ, SCWEQ, FILS, FILSW〕
プリフィックスコードを付加したストリング命令実行中に割込み要求が発生すると,割
込み復帰後のストリング命令に対してはプリフィックスが無効であるため誤動作とな
ります。上記のストリング命令に対しては CMR プリフィックスを付加しないでくださ
い。
● フラグ変更命令〔AND CCR, #imm8, OR CCR, #imm8, POPW PS〕
命令動作は正常ですが , プリフィックスの効果が次の命令まで及びます。
● MOV ILM, #imm8
命令動作は正常ですが , プリフィックスの効果が次の命令まで及びます。
■ フラグ変化抑止プリフィックス (NCC)
フラグ変化を抑止するためには , フラグ変化抑止プリフィックスコード (NCC) を用い
ます。不要フラグ変化を抑止する命令の前に置くことで , 命令実行に伴うフラグ変化を
抑止可能です。ただし , 以下に示す命令に対しては注意してください。
● ストリング命令〔MOVS, MOVSW, SCEQ, SCWEQ, FILS, FILSW〕
プリフィックスコードを付加したストリング命令の実行中に割込み要求が発生すると,
割込み復帰後のストリング命令に対してはプリフィックスが無効であるために誤動作
となります。上記のストリング命令には NCC プリフィックスを付加しないでください。
● フラグ変更命令〔AND CCR, #imm8, OR CCR, #imm8, POPW PS〕
命令動作は正常ですが , プリフィックスの効果が次の命令まで及びます。
● 割込み命令〔INT #vct8, INT9, INT addr16, INTP addr24, RETI〕
プリフィックスの有無にかかわらず CCR は命令の仕様どおり変化します。
● [email protected]
プリフィックスの有無にかかわらず CCR は命令の仕様どおり変化します。
● MOV ILM,imm8
命令動作は正常ですが , プリフィックスの効果が次の命令まで及びます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
47
第 2 章 CPU
2.10 割込み抑止命令
MB90990 シリーズ
割込み抑止命令
2.10
以下に示す 10 種類の命令については , 割込み要求はサンプリングされません。
MOV
AND
ILM, #imm8
CCR, #imm8
PCB
ADB
SPB
CMR
OR CCR, #imm8
POPW
PS
NCC
DTB
■ 割込み抑止命令
図 2.10-1 に示すように , この命令実行中に有効なハードウェア割込み要求が発生して
も,割込み処理が行われるのはこの命令以降にこの種類以外の命令が実行された後にな
ります。
図 2.10-1 割込み抑止命令
割込み抑止命令
• • • • • • • •
• • •
(a)
割込み要求発生
(a) 普通の命令
割込み受付け
■ 割込み抑止命令とプリフィックス命令に関する制約
図 2.10-2 に示すように , 割込み抑止命令の前にプリフィックスコードを付加した場合 ,
プリフィックスコードの効果はプリフィックスコード後の最初の〔割込み抑止命令以
外の命令〕まで及びます。
図 2.10-2 割込み抑止命令とプリフィックスコード
割込み抑止命令
MOV A, FFH
NCC
• • • •
MOV ILM,#imm8
ADD A,01H
CCR:XXX10XXB
CCR:XXX10XXB
NCC により CCR は変化しません。
■ プリフィックスコードが連続している場合
図 2.10-3 に示すように , 競合するプリフィックスコードが連続していた場合 , 後方のも
のが有効になります。
なお , 競合するプリフィックスコードとはここでいう PCB, ADB, DTB のことを意味し
ます。
図 2.10-3 プリフィックスコードの連続
プリフィックスコード
• • • • •
ADB
DTB
PCB
ADD A,01H
• • • • •
プリフィックスコードは
PCB が有効になります。
48
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第3章
割込み
割込み , 拡張インテリジェント I/O サービス
(EI2OS) の機能と動作について説明します。
3.1 割込みの概要
3.2 割込みベクタ
3.3 割込み制御レジスタ (ICR00 ∼ ICR15)
3.4 割込みフロー
3.5 ハードウェア割込み
3.6 ソフトウェア割込み
3.7 拡張インテリジェント I/O サービス (EI2OS)
3.8 拡張インテリジェント I/O サービス (EI2OS) の動作フ
ローと使用手順
3.9 例外
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
49
第 3 章 割込み
3.1 割込みの概要
3.1
MB90990 シリーズ
割込みの概要
F2MC-16LX には , イベントなどの発生により現在実行中の処理を中断して , 別に定
義したプログラムへ制御を移す割込み機能があります。割込み機能は以下の 4 つに
分けることができます。
• ハードウェア割込み : 内蔵リソースのイベント発生による割込み処理
• ソフトウェア割込み : ソフトウェアのイベント発生命令による割込み処理
• 拡張インテリジェント I/O サービス (EI2OS) : 内蔵リソースのイベント発生によ
る転送処理
• 例外 : 動作例外事項の発生による中断処理
■ ハードウェア割込み
ハードウェア割込みを , 内部リソースからの割込み要求によって起動します。ハード
ウェア割込み要求は,内部リソース内の割込み要求フラグと割込み許可フラグがセット
された場合に発生します。したがって , ハードウェア要求を発生させるためには , 内部
リソース内に割込み要求フラグと割込み許可フラグを持っていなければなりません。
● 割込みレベルの指定
ハードウェア割込みは , 割込みレベルを指定することができます。割込みレベルを指定
するには割込みコントローラのレベル設定ビット (IL0, IL1, IL2) を使用します。
● ハードウェア割込み要求マスク
ハードウェア割込み要求は , CPU 内のプロセッサステータスレジスタ (PS) 中の I フラ
グおよび ILM ビット (ILM0, ILM1, ILM2) を使用してマスクすることができます。マス
クのかかっていない割込み要求が発生すると , CPU は PS, PC, PCB, DTB, ADB, DPR,
AH, AL の各レジスタからなる 12 バイトのデータを SSB と SSP レジスタが示すメモリ
領域に退避します。
図 3.1-1 ハードウェア割込みの概要
PS
F2MC-16LXバス
レジスタファイル
マイクロコード
チェック
ILM
比較器
PS
I
ILM
IR
: プロセッサステータス
: 割込み許可フラグ
: 割込みレベルマスクレジスタ
: インストラクションレジスタ
F2MC-16LX CPU
周辺
許可 FF
AND
要因 FF
50
IR
I
レ
ベ
ル
比
較
器
割
込
み
レ
ベ
ル
IL
割込み
コントローラ
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 3 章 割込み
3.1 割込みの概要
MB90990 シリーズ
■ ソフトウェア割込み
ソフトウェア割込みは , CPU がそれまで実行していたプログラムの実行からユーザの
定義した割込み処理用プログラムへ制御を移行する機能です。
ソフトウェア割込みは , INT 命令実行により要求されます。INT 命令により要求される
割込みには , 割込み要求フラグと割込み許可フラグはありません。INT 命令の実行によ
り常に割込み要求が発生します。
INT 命令には割込みレベルの割当てもありません。このため , INT 命令使用時には ILM
の更新は行われません。代わりに , I フラグをクリアして , 継続する割込み要求を保留
状態にします。
図 3.1-2 ソフトウェア割込みの概要
F2MC-16LXバス
レジスタ
ファイル
PS
I
S
B ユニット
マイクロ
コード
IR
キュー
フェッチ
F2MC-16LX CPU
: プロセッサステータス
: 割込み許可フラグ
: スタックフラグ
: インストラクション
レジスタ
B ユニット : バスインタフェース
ユニット
PS
I
S
IR
退避
命令系バス
RAM
■ 拡張インテリジェント I/O サービス (EI2OS)
拡張インテリジェント I/O サービスは , 内蔵リソースとメモリの間でデータを自動的に
転送します。この種の処理には従来 , 割込み処理プログラムが使用されていましたが ,
EI2OS はデータ転送を DMA( ダイレクトメモリアクセス ) のように実行できます。
拡張インテリジェント I/O サービス機能を内部リソースから発生させるためには , 割込
みコントローラの割込み制御レジスタ (ICR) 中に拡張インテリジェント I/O サービス許
可フラグ (ISE) を持っていなければなりません。
拡張インテリジェント I/O サービスは ISE フラグが "1" で割込み要求が発生した場合に
起動されます。
なお , ハードウェア割込み要求によって通常の割込みを発生させるには , ISE フラグを
"0" にクリアします。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
51
第 3 章 割込み
3.1 割込みの概要
MB90990 シリーズ
図 3.1-3 拡張インテリジェント I/O サービス (EI2OS) の概要
メモリ空間
IOA
I/O レジスタ
I/O レジスタ
CPU
周辺
割込み要求
③
ISD
③
①
ICS
②
割込み制御レジスタ
割込みコントローラ
BAP
④
バッファ
DCT
①I/Oが転送を要求します。
②割込みコントローラがディスクリプリタを
選択します。
③転送元/転送先をディスクリプタから読み出し
ます。
④I/Oとメモリ間で転送が行われます。
■ 例外処理
例外処理は , 基本的には割込みと同じものであり , 命令の境目で例外事項が発生したこ
とを検出した段階で通常処理を中断して例外処理を行います。一般的に , 例外処理は予
想外の動作を行った結果で発生するもので,デバッグ時や緊急時の復旧ソフトウェアの
起動などに使用することを推奨します。
52
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 3 章 割込み
3.2 割込みベクタ
MB90990 シリーズ
割込みベクタ
3.2
割込みベクタは , ハードウェア割込みとソフトウェア割込みについて同じ領域を使用
します。例えば , 割込み要求番号 INT42 が遅延ハードウェア割込みとソフトウェア
割込み INT#42 に使用されます。したがって , 遅延割込みと INT#42 が同じ割込み処
理ルーチンを呼び出します。割込みベクタは , 表 3.2-1 に示すようにアドレス
"FFFC00H" と "FFFFFFH" の間に配置されます。
■ 割込みベクタ
表 3.2-1 割込みベクタ (1 / 2)
割込み
要求
INT 0
*
INT 1
.
.
.
*
割込み制御
レジスタ
割込み要因
―
―
INT 7 *
番号
アドレス
ベクタ
アドレス
下位
―
―
FFFFFCH
FFFFFDH
FFFFFEH
未使用
―
FFFFF8H
FFFFF9H
FFFFFAH
.
.
.
.
.
.
未使用
.
.
.
―
ベクタ
アドレス
中位
ベクタ
アドレス
上位
モード
レジスタ
―
―
―
.
.
.
―
―
―
FFFFE0H
FFFFE1H
FFFFE2H
未使用
INT 8
リセット
―
―
FFFFDCH
FFFFDDH
FFFFDEH
FFFFDFH
INT 9
INT9 命令
―
―
FFFFD8H
FFFFD9H
FFFFDAH
未使用
INT 10
例外処理
―
―
FFFFD4H
FFFFD5H
FFFFD6H
未使用
INT 11
予約
FFFFD1H
FFFFD2H
未使用
予約
0000B0H
FFFFD0H
INT 12
ICR00
FFFFCCH
FFFFCDH
FFFFCEH
未使用
INT 13
CAN1 受信
FFFFC8H
FFFFC9H
FFFFCAH
未使用
FFFFC4H
FFFFC5H
FFFFC6H
未使用
FFFFC0H
FFFFC1H
FFFFC2H
未使用
FFFFBCH
FFFFBDH
FFFFBEH
未使用
FFFFB8H
FFFFB9H
FFFFBAH
未使用
FFFFB4H
FFFFB5H
FFFFB6H
未使用
FFFFB0H
FFFFB1H
FFFFB2H
未使用
FFFFACH
FFFFADH
FFFFAEH
未使用
FFFFA8H
FFFFA9H
FFFFAAH
未使用
FFFFA4H
FFFFA5H
FFFFA6H
未使用
FFFFA0H
FFFFA1H
FFFFA2H
未使用
FFFF9CH
FFFF9DH
FFFF9EH
未使用
CAN1 送信 /
ノードステータス
予約
ICR01
INT 17
クロック補正
ユニット
予約
ICR02
INT 18
予約
INT 19
16 ビット
リロードタイマ 2
INT 14
INT 15
INT 16
ICR03
INT 20
16 ビット
リロードタイマ 3
INT 21
予約
INT 22
INT 23
予約
PPG C/D
INT 24
PPG E/F
CM44-10149-4
ICR04
ICR05
ICR06
0000B1H
0000B2H
0000B3H
0000B4H
0000B5H
0000B6H
FUJITSU MICROELECTRONICS LIMITED
53
第 3 章 割込み
3.2 割込みベクタ
MB90990 シリーズ
表 3.2-1 割込みベクタ (2 / 2)
割込み
要求
INT 25
INT 26
INT 27
割込み制御
レジスタ
割込み要因
番号
タイムベース
タイマ
外部割込み
8 ∼ 11
ICR07
ICR08
外部割込み
12 ∼ 15
INT 29
A/D コンバータ
INT 30
I/O タイマ 0
INT 31
予約
INT 32
予約
INT 33
インプット
キャプチャ 0 ∼ 3
INT 34
予約
INT 35
UART 0 受信
INT 36
UART 0 送信
INT 37
UART 1 受信
INT 38
UART 1 送信
INT 39
UART 2 受信
INT 40
UART 2 送信
INT 42
INT 43
.
.
.
INT 254
INT 255
ベクタ
アドレス
中位
ベクタ
アドレス
上位
モード
レジスタ
FFFF98H
FFFF99H
FFFF9AH
未使用
FFFF94H
FFFF95H
FFFF96H
未使用
FFFF90H
FFFF91H
FFFF92H
未使用
FFFF8CH
FFFF8DH
FFFF8EH
未使用
FFFF88H
FFFF89H
FFFF8AH
未使用
FFFF84H
FFFF85H
FFFF86H
未使用
FFFF80H
FFFF81H
FFFF82H
未使用
FFFF7CH
FFFF7DH
FFFF7EH
未使用
FFFF78H
FFFF79H
FFFF7AH
未使用
FFFF74H
FFFF75H
FFFF76H
未使用
FFFF70H
FFFF71H
FFFF72H
未使用
FFFF6CH
FFFF6DH
FFFF6EH
未使用
FFFF68H
FFFF69H
FFFF6AH
未使用
FFFF64H
FFFF65H
FFFF66H
未使用
FFFF60H
FFFF61H
FFFF62H
未使用
FFFF5CH
FFFF5DH
FFFF5EH
未使用
FFFF58H
FFFF59H
FFFF5AH
未使用
FFFF54H
FFFF55H
FFFF56H
未使用
―
FFFF50H
FFFF51H
FFFF52H
.
.
.
.
.
.
未使用
.
.
.
アドレス
0000B7H
時計タイマ
INT 28
INT 41
ベクタ
アドレス
下位
ICR09
ICR10
ICR11
ICR12
ICR13
ICR14
0000B8H
0000B9H
0000BAH
0000BBH
0000BCH
0000BDH
0000BEH
フラッシュメモリ
遅延割込み発生
ICR15
0000BFH
モジュール
―
―
―
―
―
.
.
.
―
―
―
FFFC04H
FFFC05H
FFFC06H
未使用
―
FFFC00H
FFFC01H
FFFC02H
未使用
―
―
*: PCB が "FFH" である場合 , CALLV 命令のベクタ領域は INT #vct8 (#0 to #7) のベクタ領域と重なり
ます。CALLV 命令を使う際にはご注意願います。
54
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 3 章 割込み
3.3 割込み制御レジスタ (ICR00 ∼ ICR15)
MB90990 シリーズ
割込み制御レジスタ (ICR00 ∼ ICR15)
3.3
割込み制御レジスタは割込みコントローラ内にあり , 割込み機能を持つすべての I/O
に対応して存在します。このレジスタには以下に示す 3 つの機能があります。
• 対応する周辺の割込みレベルの設定
• 対応する周辺の割込みを通常割込みにするか , 拡張インテリジェント I/O サービス
にするかの選択
• 拡張インテリジェント I/O サービスのチャネルの選択
このレジスタに対するリードモディファイライト (RMW) 系命令でのアクセスは誤動
作を引き起こしますので行わないでください。
■ 割込み制御レジスタ (ICR00 ∼ ICR15)
図 3.3-1 に , 割込み制御レジスタのビット構成図を示します。
図 3.3-1 割込み制御レジスタ (ICR)
bit
15/7
14/6
ICS3
ICS2
W
W
13/5
12/4
ICS0
ICS1
または または
S1
S0
*
*
11/3
10/2
9/1
8/0
割込み制御レジスタリセット時
ISE
IL2
IL1
IL0
00000111B
R/W
R/W
R/W
R/W
*: 読出しは常に "1" です。ICS1 と ICS0 は書込みのみ , S1 と S0 は読出しのみに , それぞれ有効です。
<補足>
拡張インテリジェント I/O サービスチャネルセレクトビット (ICR:ICS3 ∼ ICS0) は書込み時のみ , 拡
張インテリジェント I/O サービスステータスビット (ICR:S1,S0) は読出し時のみ , それぞれ有効とな
ります。読出し時には , bit6,bit7/bit14,bit15(ICS2,ICS3) からは , "1" が読み出されます。
<注意事項>
ICS3 ∼ ICS0 は EI2OS を起動する場合にのみ有効となります。EI2OS を起動する場合は
ISE を "1" に設定し , 起動しない場合は "0" に設定してください。EI2OS を起動しない場
合 , ICS3 ∼ ICS0 には何を設定してもかまいません。
[bit10 ∼ bit8, bit2 ∼ bit0] IL2,IL1,IL0 ( 割込みレベル設定ビット )
割込みレベル設定ビットです。対応する内蔵リソースの割込みレベルを指定しま
す。読み書きができます。リセットによりレベル 7( 割込みなし ) に初期化されます。
表 3.3-1 に , 割込みレベル設定ビットと割込みレベルとの関係を示します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
55
第 3 章 割込み
3.3 割込み制御レジスタ (ICR00 ∼ ICR15)
MB90990 シリーズ
表 3.3-1 割込みレベル設定ビットと割込みレベル
IL2
IL1
IL0
0
0
0
0( 最強割込み )
0
0
1
1
0
1
0
2
0
1
1
3
1
0
0
4
1
0
1
5
1
1
0
6( 最弱割込み )
1
1
1
7( 割込みなし )
割込みレベル値
[bit11, bit3] ISE( 拡張インテリジェント I/O サービスイネーブルビット )
EI2OS 許可ビットです。割込み要求の発生時にこのビットが "1" であると EI2OS が
起動され , "0" のときは割込みシーケンスが起動されます。また , EI2OS が終了 ( カ
ウント終了による場合と内蔵リソースからの要求による場合 ) したとき , ISE ビッ
トは "0" になります。対応する内蔵リソースに EI2OS の機能がないときには , ソフ
トウェアで ISE を "0" にしておく必要があります。読み書き可能なビットです。
リセットにより "0" に初期化されます。
56
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 3 章 割込み
3.3 割込み制御レジスタ (ICR00 ∼ ICR15)
MB90990 シリーズ
[bit15 ∼ bit12, bit7 ∼ bit4] ICS3 ∼ ICS0 ( 拡張インテリジェント I/O サービスチャネル
セレクトビット )
EI2OS チャネル選択ビットです。書込み専用のビットで , このビットにより EI2OS
のチャネルを指定します。ここで設定された値によりメモリ上の拡張インテリジェ
ント I/O サービスディスクリプタのアドレスが決定します。ICS3 ∼ ICS0 はリセッ
トにより "0000B" に初期化されます。
表 3.3-2 に , ICS ビット , チャネル番号 , ディスクリプタアドレスの対応関係を示します。
表 3.3-2 ICS ビット , チャネル番号 , ディスクリプタアドレス
CM44-10149-4
ICS3
ICS2
ICS1
ICS0
0
0
0
0
0
000100H
0
0
0
1
1
000108H
0
0
1
0
2
000110H
0
0
1
1
3
000118H
0
1
0
0
4
000120H
0
1
0
1
5
000128H
0
1
1
0
6
000130H
0
1
1
1
7
000138H
1
0
0
0
8
000140H
1
0
0
1
9
000148H
1
0
1
0
10
000150H
1
0
1
1
11
000158H
1
1
0
0
12
000160H
1
1
0
1
13
000168H
1
1
1
0
14
000170H
1
1
1
1
15
000178H
セレクトされるチャネル ディスクリプタアドレス
FUJITSU MICROELECTRONICS LIMITED
57
第 3 章 割込み
3.3 割込み制御レジスタ (ICR00 ∼ ICR15)
MB90990 シリーズ
[bit13, bit12, bit5, bit4] S1, S0( 拡張インテリジェント I/O サービスステータスビット )
EI2OS 終了ステータスビットです。読出し専用のビットで , EI2OS 終了時にこのビッ
トの値を調べることにより , 終了条件が何であったかを判別できます。
リセットにより "00B" に初期化されます。
表 3.3-3 に , S ビットと終了条件との関係を示します。
表 3.3-3 S ビットと終了条件
58
S1
S0
0
0
EI2OS 動作中または非起動時
0
1
カウント終了による停止状態
1
0
予約
1
1
内蔵リソースからの要求による停止状態
終了条件
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 3 章 割込み
3.4 割込みフロー
MB90990 シリーズ
3.4
割込みフロー
図 3.4-1 に , 割込みフローを示します。
■ 割込みフロー
図 3.4-1 割込みフロー
I
: CCR 中のフラグ
ILM : インタラプトレベルマスクレジスタのレベル
IF : 内蔵リソースの割込み要求
IE : 内蔵リソースの割込み
イネーブルフラグ
ISE : EI2OS のイネーブルフラグ
IL : 内蔵リソースの割込み要求レベル
S : CCR 中のフラグ
START
YES
I & IF & IE = 1
AND
ILM > IL
YES
NO
ISE = 1
次の命令の取込みとデコード
NO
PS, PC, PCB, DTB, DPR,
AH, AL を SSP のスタックへ
退避その後 , ILM=IL
INT 命令
拡張インテリジェント I/O
サービス処理
YES
NO
通常命令実行
NO
ストリング系
命令繰返し完了
YES
PC の更新
CM44-10149-4
PS, PC, PCB, DTB, ADB,
DPR, AH, AL を SSP の
スタックへ退避 , その後 , I=0,
ILM=IL
S←1
割込みベクタ取込み
FUJITSU MICROELECTRONICS LIMITED
59
第 3 章 割込み
3.4 割込みフロー
MB90990 シリーズ
図 3.4-2 割込み処理中のレジスタ退避
ワード (16ビット)
"H"
MSB
LSB
SSP(割込み発生前のSSPの値)
AH
AL
DPR
ADB
DTB
PCB
PC
PS
SSP(割込み発生後のSSPの値)
"L"
60
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
3.5
第 3 章 割込み
3.5 ハードウェア割込み
ハードウェア割込み
ハードウェア割込みは , 内蔵リソースからの割込み要求信号に対応して , CPU がそ
れまで実行していたプログラムの実行を一時中断し , ユーザの定義した割込み処理用
プログラムへ制御を移行する機能です。
■ ハードウェア割込み
ハードウェア割込みの起動は , 割込み要求がもつ割込みレベルと CPU の PS がもつイ
ンタラプトレベルマスクレジスタ (ILM) の比較および PS 内の I フラグの内容をハード
ウェアで参照した後 , 発生条件に合致すれば発生します。
ハードウェア割込みが発生するときに CPU が行う処理には , 以下のものがあります。
• CPU 内部の PC, PS, AH, AL, PCB, DTB, ADB, DPR レジスタのシステムスタックへの
退避
• PS レジスタ内の ILM の設定。自動的に現在要求している割込みレベルと同じになる
• 対応する割込みベクタの内容の取込みとそこへの分岐
■ ハードウェア割込みの構造
ハードウェア割込みに関連する機構は , 以下の 3 つの部分に分かれて存在します。
● 内蔵リソース
割込み許可ビット , 割込み要求ビット : リソースからの割込み要求の制御
● 割込みコントローラ
ICR: 割込みのレベル付け , 同時要求割込みの優先度判定
● CPU
I, ILM: 要求割込みレベルと現レベルの比較 , 割込み許可状態の識別
マイクロコード : 割込み処理用ステップ
各機構は , 内蔵リソースではリソースの制御レジスタに , 割込みコントローラでは ICR
に , CPU では CCR の内容などとして現れます。ハードウェア割込みを使用する場合に
は , あらかじめソフトウェアでこの 3 箇所の設定を行う必要があります。
割込み処理の際に参照する割込みベクタのテーブルはメモリ領域の "FFFC00H" ∼
"FFFFFFH" に割り当ててあり , ソフトウェア割込みと共通で使用しています。付表 C-2
に , MB90990 シリーズの割当てを示します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
61
第 3 章 割込み
3.5 ハードウェア割込み
3.5.1
MB90990 シリーズ
ハードウェア割込みの動作
ハードウェア割込み要求の機能を持つ内蔵リソースには , 割込みの要求の有無を示す
「割込み要求フラグ」と CPU への自分の割込み要求の許可・禁止を選択する「割込
み許可フラグ」があります。割込み要求フラグは内蔵リソース固有のイベントの発
生によりセットされ , 割込み許可フラグが「許可」であったときに , リソースは割込
みコントローラへ割込み要求を発生します。
■ ハードウェア割込みの動作
割込みコントローラは , 同時に受け取った各割込み要求に対する ICR 内の割込みレベ
ル (IL) どうしを比較し , 最も高いレベルの要求 (IL の値の最も小さいもの ) を採択して
CPU へ通知します。同一レベルの要求が複数あった場合には , 割込み番号が少ないも
のを優先します。各割込み要求と各 ICR の関係はハードウェアで決まっています。
CPU は受け取った割込みレベル (IL) と PS レジスタ内の ILM とを比較し , 割込みレベ
ル (IL)<(ILM) であり , PS レジスタ内の I ビットが "1" であるときに , 現在実行中の命令
が終了した後で割込み処理用マイクロコードを起動します。割込み処理マイクロコー
ドの先頭で割込みコントローラの ICR 中の ISE ビットを参照し , "0"( すなわち割込み )
であることを確認して割込み処理の本体を起動します。
割込み処理の本体では SSB と SSP の示すメモリ中へ PS と PC, PCB, DTB, ADB, DPR,
AH, AL の 12 バイトを退避した後 , 割込みベクタを 3 バイト読み出して PC と PCB へ
ロード , PS 中の ILM を受け付けた割込み要求のレベル値に更新 , S フラグを "1" に設
定して分岐処理を行います。その結果 , 次に実行する命令はユーザの定義した割込み処
理プログラムになります。
62
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 3 章 割込み
3.5 ハードウェア割込み
MB90990 シリーズ
ハードウェア割込みの発生と解除
3.5.2
図 3.5-1 に , ハードウェア割込みの発生から割込み処理プログラムに割込み要求がな
くなるまでのフローを示します。
■ ハードウェア割込みの発生と解除
図 3.5-1 ハードウェア割込みの発生と解除まで
PS
レジスタファイル
I
PS
I
ILM
IR
ILM
IR
⑥
F2MC-16LX
AND
②
①
割込みレベル
⑦
④
③
•
•
•
要因FF
プロセッサステータス
割込み許可フラグ
割込みレベルマスクレジスタ
インストラクションレジスタ
比較器
⑤
CPU
周辺
許可FF
チェック
レベル比較器
F2MC-16LX バス
マイクロコード
:
:
:
:
IL
割込み
コントローラ
①周辺の内部で割込み要因が発生します。
②周辺内の割込み許可ビットを参照して割込み許可になっていれば,周辺から割込みコ
ントローラへ割込み要求を発生します。
③割込み要求を受け取った割込みコントローラは,同時に要求のあった割込みの優先順
位を判定した上で該当する割込みに対応する割込みレベルを CPU へ転送します。
④ CPU は割込みコントローラから要求のあった割込みレベルをプロセッサステータス
レジスタ内の ILM ビットと比較します。
⑤比較の結果が現在の割込み処理レベルより優先順位が高い場合のみ,同じプロセッサ
ステータスレジスタ内の I フラグの内容をチェックします。
⑥⑤のチェックの結果 , I フラグが割込み許可状態である場合のみ , ILM ビットの内容
を要求されたレベルに設定し , 現在実行中の命令の実行が終了し次第 , 割込み処理を
行い , 制御を割込み処理ルーチンへ移します。
⑦ユーザの割込み処理ルーチン内のソフトウェアで①で発生した割込み要因をクリア
することで割込み要求が終了します。
⑥および⑦で , CPU が行う割込み処理の実行時間の計算式を以下に示します。
なお , サイクル数の補正値は , 表 3.5-1 を参照してください。
割込み起動 :24+6 ×サイクル数の補正値
割込み復帰 :15+6 ×サイクル数の補正値 (RETI 命令 )
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
63
第 3 章 割込み
3.5 ハードウェア割込み
MB90990 シリーズ
表 3.5-1 割込み処理時のサイクル数の補正値
スタックポインタが示しているアドレス
64
サイクル数の補正値
内部領域偶数アドレスの場合
0
内部領域奇数アドレスの場合
+2
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 3 章 割込み
3.5 ハードウェア割込み
MB90990 シリーズ
多重割込み
3.5.3
特殊な場合として , データの入出力領域への書込み中はハードウェア割込み要求を受
け付けません。これは各リソースの割込み制御レジスタ関係の書換えを行っている
最中の割込み要求に対して , CPU が割込み関係で誤動作を起こすことを避けるため
です。また , 割込み処理の実行中に割込みが発生した場合は , 割込みレベルの強い方
の処理が優先されます。
■ 多重割込み
F2MC-16LX CPU は多重割込みをサポートしています。そのため , 割込み処理の実行中
にその割込みのもつ割込みレベルより強いレベルの割込みが発生すると,現在実行中の
命令を終了した後でそちらに制御が移ります。強いレベルでの割込みが終了すると , 元
の割込み処理に戻ります。割込み処理実行中に , その割込みと同等かより弱いレベルの
割込み処理が発生した場合は , ILM の内容や I フラグの命令による変更を施さない限り
現在の割込み処理の終了まで新しい割込み要求は保留されます。
なお , 拡張インテリジェント I/O サービスは多重に起動されることはなく , 1 つの拡張
インテリジェント I/O サービスの処理中は , ほかの割込み要求および拡張インテリジェ
ント I/O サービス要求はすべて保留されます。
図 3.5-2 に , スタック内に退避されるレジスタの順番を示します。
図 3.5-2 スタック内に退避されたレジスタ
ワード(16ビット)
MSB
LSB
"H"
SSP(割込み発生前のSSPの値)
AH
AL
DPR
ADB
DTB
PCB
PC
PS
SSP(割込み発生後のSSPの値)
"L"
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
65
第 3 章 割込み
3.6 ソフトウェア割込み
3.6
MB90990 シリーズ
ソフトウェア割込み
ソフトウェア割込みは専用の命令の実行に対応して , CPU が実行中のプログラムか
らユーザの定義した割込み処理用プログラムへ制御を移行する機能です。ソフト
ウェア割込みの起動は , ソフトウェア割込み命令の実行で常に発生します。
■ ソフトウェア割込み
ソフトウェア割込みが発生するときに CPU が行う処理には以下のものがあります。
• CPU 内部の PC, PS, AH, AL, PCB, DTB, ADB, DPR レジスタのシステムスタックへの
退避
• PS の CCR レジスタの割込み許可フラグ (I) を "1" に設定。自動的に割込み禁止になる
• 対応する割込みベクタの内容の取込みとそこへの分岐
ソフトウェア割込みである INT 命令の実行による割込み要求には割込み要求フラグお
よび許可フラグはなく , INT 命令の実行により常に割込み要求が発生します。
INT 命令には割込みレベルはありません。したがって , INT 命令では ILM の更新は行
われず , I フラグに "0" を設定して継続する割込み要求を保留状態にします。
■ ソフトウェア割込みの構造
ソフトウェア割込みに関連する機構は , すべて CPU の内部に存在します。
CPU…………………マイクロコード : 割込み処理用ステップ
■ 割込みベクタ一覧表
付表 C-1 に , MB90990 シリーズの割込みベクタ一覧表を示します。
ソフトウェア割込みはハードウェア割込みと同じ割込みベクタ領域を共有していま
す。例えば , 割込み要求番号の INT12 は , ソフトウェア割込みの INT#12 で使用される
と同時にハードウェア割込みの外部割込みでも使用されます。したがって , 外部割込み
と INT#12 は同じ割込み処理ルーチンを呼び出します。
■ ソフトウェア割込みの動作
CPU がソフトウェア割込み命令の取込みを実行すると , ソフトウェア割込み処理用マ
イクロコードを起動します。ソフトウェア割込み処理マイクロコードでは SSB と SSP
の示すメモリ中へ PS と PC, PCB, DTB, ADB, DPR, AH, AL の 12 バイトを退避した後 ,
割込みベクタを 3 バイト読み出して PC と PCB へ格納 , I フラグを "0" に , S フラグを
"1" にして分岐処理を行います。その結果 , 次に実行する命令はユーザの定義した割込
み処理プログラムになります。
図 3.6-1 に , ソフトウェア割込みの発生から割込み処理プログラムに割込み要求がなく
なるまでのフローを示します。
66
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 3 章 割込み
3.6 ソフトウェア割込み
MB90990 シリーズ
図 3.6-1 ソフトウェア割込みの発生と解除まで
①
PS
レジスタファイル
I
F2MC-16LX バス
②
マイクロコード
Bユニット
IR
キュー
F2MC-16LX CPU
S
フェッチ
PS
:
I
:
S
:
IR
:
Bユニット :
プロセッサステータス
割込み許可フラグ
スタックフラグ
インストラクションレジスタ
バスインタフェースユニット
退避
命令系バス
RAM
①ソフトウェア割込み命令を実行します。
②ソフトウェア割込み命令に対応したマイクロコードに従ってレジスタファイル中の
CPU 内専用レジスタの退避を行います。
③ユーザの割込み処理ルーチン内の RETI 命令で割込み処理が終了します。
■ その他
プログラムカウンタバンクレジスタ (PCB) が "FFH" であるとき , CALLV 命令のベクタ
領域は INT#vct8 命令のテーブルと重なります。ソフトウェアを作成する際に同一アド
レスを使用するような CALLV 命令と INT#vct8 命令を使用しないように注意してくだ
さい。
付表 C-2 に , MB90990 シリーズの割込み要因 , 割込みベクタ , 割込み制御レジスタの関
係を示します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
67
第 3 章 割込み
3.7 拡張インテリジェント I/O サービス (EI2OS)
3.7
MB90990 シリーズ
拡張インテリジェント I/O サービス (EI2OS)
拡張インテリジェント I/O サービス (EI2OS) とはハードウェア割込み動作の一種で ,
I/O とメモリとの間での自動データ転送機能があります。従来 , 割込み処理プログラ
ムで行っていた I/O とのデータのやりとりを DMA のように行えます。
■ 拡張インテリジェント I/O サービス (EI2OS)
従来の割込み処理で行っていた方式と比べると以下に示すような利点があります。
• 転送のためのプログラムを記述する必要がないため , プログラムサイズを小さくす
ることができる。
• 転送の際に内部レジスタを使用しないので , レジスタの退避が不要になり転送速度
が速い。
• I/O が都合により転送を停止することができ , 不要データの転送がない。
• バッファアドレスのインクリメント , 更新なしの選択ができる。
• I/O レジスタアドレスのインクリメント , 更新なしの選択ができる ( バッファアドレ
ス更新ありの場合 )。
また , EI2OS が終了したときには , 終了条件を設定した後に自動的に割込み処理ルーチ
ンへ分岐しますので , ユーザは終了条件の種類を判別できます。
EI2OS を実現するために , 2 箇所の部分にハードウェアが分散して存在し , それぞれの
ブロックの中に以下に示すようなレジスタやディスクリプタがあります。
● 割込み制御レジスタ
割込みコントローラ内にあり , ISD のアドレスを示します。
● 拡張インテリジェント I/O サービスディスクリプタ
RAM 上にあり転送モード , I/O のアドレスや転送数 , バッファアドレスを保持します。
<注意事項>
REALOS を使用する場合 , 拡張インテリジェント I/O サービス (EI2OS) は使用できません。
図 3.7-1 に , EI2OS の概要を示します。
68
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 3 章 割込み
3.7 拡張インテリジェント I/O サービス (EI2OS)
MB90990 シリーズ
図 3.7-1 拡張インテリジェント I/O サービスの概要
メモリ空間
by IOA
I/Oレジスタ
CPU
. . . . . . . . . . . . I/Oレジスタ
割込み要求
③
①
by ICS
ISD
③
周辺
②
割込み制御レジスタ
割込みコントローラ
by BAP
④
バッファ
by
DCT
① I/O が転送を要求します。
② 割込みコントローラがディスクリプタを選択します。
③ 転送元 / 転送先をディスクリプタから読み出します。
④ I/O とメモリ間で転送が行われます。
<注意事項>
• IOA で指定できる領域は , "000000H" ∼ "00FFFFH" です。
• BAP で指定できる領域は , "000000H" ∼ "FFFFFFH" です。
• DCT で指定できる最大転送数は , 65536 個です。
■ 拡張インテリジェント I/O サービス (EI2OS) の構造
EI2OS に関連する機構は , 以下の 4 つの部分に分かれて存在します。
• 内蔵リソース…………割込み許可ビット , 割込み要求ビット :
リソースからの割込み要求の制御
• 割込みコントローラ…………ICR: 割込みのレベル付け , 同時要求割込みの優先度判
定 , EI2OS 動作の選択
• CPU………… I, ILM: 要求割込みレベルと現レベルの比較 , 割込み許可状態の識別
マイクロコード : EI2OS 処理用ステップ
• RAM…………ディスクリプタ : EI2OS の転送情報を記述する
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
69
第 3 章 割込み
3.7 拡張インテリジェント I/O サービス (EI2OS)
MB90990 シリーズ
拡張インテリジェント I/O サービスディスクリプタ
(ISD)
3.7.1
拡張インテリジェント I/O サービスディスクリプタは , 内部 RAM 中の "000100H" ∼
"00017FH" に存在し , 以下に示すものから構成されます。
データカウンタ
I/O アドレスポインタ
ステータスデータ
バッファアドレスポインタ
•
•
•
•
■ 拡張インテリジェント I/O サービスディスクリプタ (ISD)
図 3.7-2 に , 拡張インテリジェント I/O サービスディスクリプタの構成を示します。
図 3.7-2 拡張インテリジェント I/O サービスディスクリプタの構成
"H"
データカウンタ上位 8 ビット (DCTH)
データカウンタ下位 8 ビット (DCTL)
I/O アドレスポインタ上位 8 ビット (IOAH)
I/O アドレスポインタ下位 8 ビット (IOAL)
EI2OS ステータス (ISCS)
バッファアドレスポインタ上位 8 ビット (BAPH)
バッファアドレスポインタ中位 8 ビット (BAPM)
000100H + 8 × ICS
ISD 先頭アドレス
"L"
バッファアドレスポインタ下位 8 ビット (BAPL)
■ データカウンタ (DCT)
データカウンタ (DCT) は , 16 ビット長のレジスタで転送データ数に対応したカウンタ
となります。データ転送後 , カウンタは 1 個デクリメントされます。このカウンタがゼ
ロになると EI2OS は終了します。
図 3.7-3 に , データカウンタの構成を示します。
図 3.7-3 データカウンタの構成
bit
15
14
13
12
11
10
9
8
7
6
B15 B14 B13 B12 B11 B10 B09 B08 B07 B06
70
5
4
3
2
1
0
B05
B04
B03
B02
B01
B00
FUJITSU MICROELECTRONICS LIMITED
DCT
( リセット時不定 )
CM44-10149-4
第 3 章 割込み
3.7 拡張インテリジェント I/O サービス (EI2OS)
MB90990 シリーズ
■ I/O レジスタアドレスポインタ (IOA)
I/O レジスタアドレスポインタ (IOA) は , 16 ビット長のレジスタで , I/O レジスタアド
レスポインタの 16 ビットによりバッファとデータ転送する I/O レジスタの下位アドレ
ス (A15 ∼ A00) を示します。上位アドレス (A23 ∼ A16) はすべて "0" であり , "000000H"
から "00FFFFH" 番地までの任意の I/O を指定できます。図 3.7-4 に , IOA の構成図を示
します。
図 3.7-4 I/O レジスタアドレスポインタの構成
bit
15
14
13
12
11
10
9
8
7
6
A15 A14 A13 A12 A11 A10 A09 A08 A07 A06
5
4
3
2
1
0
A05
A04
A03
A02
A01
A00
IOA
( リセット時不定 )
■ バッファアドレスポインタ (BAP)
24 ビットのレジスタで次に EI2OS による転送で使用するアドレスを保持します。BAP
は EI2OS の各チャネルに対してそれぞれ独立に存在しますので , EI2OS の各チャネルは
16M バイトの任意の空間へ転送できます。
ISCS の BF ビットが "0" に設定した場合 ( 更
新可能 ), BAP の下位 16 ビットのみ変化し , BAPH は変化しません。
■ EI2OS ステータスレジスタ (ISCS)
EI2OS ステータスレジスタ (ISCS) は , 8 ビット長のレジスタで , バッファアドレスポイ
ンタ , I/O レジスタアドレスポインタの更新 / 固定 , 転送データ長 ( バイト / ワー ド ), 転
送方向を示します。図 3.7-5 に , ISCS の構成を示します。
ISCS の bit7 ∼ bit5 には必ず "0" を書き込んでください。
図 3.7-5 ISCS の構成
bit
7
6
5
4
3
2
1
0
予約
予約
予約
IF
BW
BF
DIR
SE
ISCS
( リセット時不定 )
以下に各ビットの説明を示します。
[bit4] IF
I/O レジスタアドレスポインタの更新 / 固定を指定します。
0: データ転送後 I/O レジスタアドレスポインタは更新 ( インクリメント ) される。
1: データ転送後 I/O レジスタアドレスポインタは固定される。
<注意事項>
インクリメントのみ許可されます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
71
第 3 章 割込み
3.7 拡張インテリジェント I/O サービス (EI2OS)
MB90990 シリーズ
[bit3] BW
転送データ長を指定します。
0: バイト
1: ワード
[bit2] BF
バッファアドレスポインタの更新 / 固定を指定します。
0: データ転送後バッファアドレスポインタは更新 ( インクリメント ) される。
1: データ転送後バッファアドレスポインタは固定される。
<注意事項>
更新する場合 , バッファアドレスポインタは下位 16 ビットのみ変化します。
[bit1] DIR
データの転送方向を指定します。
0: I/O アドレスポインタ→バッファアドレスポインタ
1: バッファアドレスポインタ→ I/O アドレスポインタ
[bit0] SE
内蔵リソースからの要求での拡張インテリジェント I/O サービスの終了を制御しま
す。
0: 内蔵リソースからの要求により終了しない。
1: 内蔵リソースからの要求により終了する。
72
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 3 章 割込み
3.8 拡張インテリジェント I/O サービス (EI2OS) の動作フロー
と使用手順
MB90990 シリーズ
3.8
拡張インテリジェント I/O サービス (EI2OS) の動作フ
ローと使用手順
図 3.8-1 に拡張インテリジェント I/O サービス (EI2OS) の動作フローを , 図 3.8-2 に
拡張インテリジェント I/O サービス (EI2OS) の使用手順を示します。
■ 拡張インテリジェント I/O サービス (EI2OS) の動作フロー
図 3.8-1 拡張インテリジェント I/O サービス (EI2OS) の動作フロー
BAP
:
:
:
ISCS
:
DCT
:
ISE
:
S1 and S0 :
IOA
ISD
内部リソースより
割込み要求発生
ISE = 1
バッファアドレスポインタ
I/Oアドレスポインタ
EI2OSディスクリプタ
EI2OSステータス
データカウンタ
EI2OSイネーブルビット
EI2OS終了ステータス
NO
YES
割込みシーケンス
ISD/ISCS読出し
YES
リソースからの終了要求
SE = 1
NO
DIR = 1
YES
NO
IOAで示されるデータ
⇓ (データ転送)
BAPで示されるメモリ
BAPで転送されるデータ
⇓ (データ転送)
IOAで示されるメモリ
YES
IF = 0
NO
更新値は,
BWによる
IOA更新
更新値は,
BWによる
BAP更新
YES
BF = 0
NO
DCTデクリメント
DCT = 00B
NO
YES
S1,S0に"01B"を設定
S1,S0に"11B"を設定
S1,S0に"00B"を設定
リソース割込み要求
のクリア
CPU動作復帰
CM44-10149-4
ISEを"0"にクリア
割込みシーケンス
FUJITSU MICROELECTRONICS LIMITED
73
第 3 章 割込み
3.8 拡張インテリジェント I/O サービス (EI2OS) の動作フロー
と使用手順
図 3.8-2 拡張インテリジェント I/O サービス (EI2OS) の使用手順フロー
MB90990 シリーズ
CPUによる処理
EI2OSによる処理
EI2OSの初期化
正常終了
ジョブ実行
(割込み要求)
AND(ISE=1)
データ転送
カウントアウトまたは
リソースからの終了要
求による割込みの発生
拡張インテリジェント
I/Oサービスの設定
(チャネルの切換え)
バッファ中のデータの処理
各フローでの拡張 EI2OS の実行時間を以下に示します。
● データ転送継続時 ( 停止条件が成立しない場合 )
( 表 3.8-1 + 表 3.8-2) マシンサイクル
● リソースからの停止要求時
(36+6 ×表 3.8-3) マシンサイクル
● カウント終了時
( 表 3.8-1 + 表 3.8-2 +(21+6 ×表 3.8-3)) マシンサイクル
表 3.8-1 EI2OS の継続時の実行時間
ISCS・SE ビット
"0" に設定
I/O アドレスポインタ
"1" に設定
固定
更新
固定
更新
固定
32
34
33
35
更新
34
36
35
37
バッファアドレスポインタ
表 3.8-2 EI2OS の実行時間のデータ転送の補正値
内部アクセス
I/O アドレスポインタ
バッファアドレス
ポインタ
内部
アクセス
B/ 偶
奇
B/ 偶
0
+2
奇
+2
+4
B : バイトデータ転送
偶 : 偶数アドレス・ワード転送
奇 : 奇数アドレス・ワード転送
74
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 3 章 割込み
3.8 拡張インテリジェント I/O サービス (EI2OS) の動作フロー
と使用手順
表 3.8-3 割込みハンドリング時間の補正値
MB90990 シリーズ
スタックポインタが指しているアドレス
CM44-10149-4
補正値 [ サイクル ]
外部 8 ビットの場合
+4
外部 偶数アドレスの場合
+1
外部 奇数アドレスの場合
+4
内部 偶数アドレスの場合
0
内部 奇数アドレスの場合
+2
FUJITSU MICROELECTRONICS LIMITED
75
第 3 章 割込み
3.9 例外
3.9
MB90990 シリーズ
例外
F2MC-16LX では , 以下の要因により例外が発生し , 例外処理が行われます。
■ 未定義命令の実行
例外処理は , 基本的に割込みと同じものであり , 命令の境目で例外事項が発生したこと
を検出した段階で通常処理から離れて例外処理を行います。一般的に , 例外処理は予想
外の動作を行った結果で発生するものですので,デバッグ時だけの使用や緊急時の復旧
ソフトウェアの起動などに使用することをお勧め致します。
■ 未定義命令の実行による例外発生
F2MC-16LX では , 命令マップで定義していないコードはすべて未定義命令として扱い
ます。未定義命令を実行すると , ソフトウェア割込み命令の「INT10」と等価な処理を
行います。すなわち , AL, AH, DPR, DTB, ADB, PCB, PC, PS の内容をシステムスタック
に退避した後に , I フラグを "0" に設定し , S フラグを "1" に設定し , 割込み番号 10 の
ベクタで示されるルーチンへ分岐します。スタックへ退避した PC の値は未定義命令を
格納しているアドレスそのものです。2 バイト以上の命令コードでは , 未定義であるこ
とが識別できたコードを格納しているアドレスになります。このため , RETI 命令で復
帰させることは可能ですが , 再び例外を発生するため意味がありません。
76
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第4章
遅延割込み発生モジュール
遅延割込み発生モジュールの機能と動作について
説明します。
4.1 遅延割込み発生モジュールの概要
4.2 遅延割込み発生モジュールのブロックダイヤグラム
4.3 遅延割込み発生モジュールの構成
4.4 遅延割込み発生モジュールの動作説明
4.5 遅延割込み発生モジュールの使用上の注意
4.6 遅延割込み発生モジュールのプログラム例
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
77
第 4 章 遅延割込み発生モジュール
4.1 遅延割込み発生モジュールの概要
4.1
MB90990 シリーズ
遅延割込み発生モジュールの概要
遅延割込み発生モジュールは , タスク切換え用の割込みを発生するためのモジュール
です。
ソフトウェアでハードウェア割込み要求を発生することができます。
■ 遅延割込み発生モジュールの概要
遅延割込み発生モジュールを使用することにより,ソフトウェアでハードウェア割込み
要求の発生または解除ができます。
表 4.1-1 に , 遅延割込み発生モジュールの概要を示します。
表 4.1-1 遅延割込み発生モジュールの概要
機能と制御
78
割込み要因
遅延割込み要求発生 / 解除レジスタの R0 ビットに "1" を設定
(DIRR: R0=1) で割込み要求を発生
遅延割込み要求発生 / 解除レジスタの R0 ビットに "0" を設定
(DIRR: R0=0) で割込み要求を解除
割込み番号
#42(2AH)
割込み制御
レジスタによる許可設定はありません
割込みフラグ
DIRR: R0 ビットに保持されています
EI2OS
拡張インテリジェント I/O サービスには対応していません
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 4 章 遅延割込み発生モジュール
4.2 遅延割込み発生モジュールのブロックダイヤグラム
MB90990 シリーズ
遅延割込み発生モジュールのブロックダイヤグラム
4.2
遅延割込み発生モジュールは , 次のブロックで構成されています。
• 割込み要求ラッチ
• 遅延割込み要求発生 / 解除レジスタ (DIRR)
■ 遅延割込み発生モジュールのブロックダイヤグラム
図 4.2-1 遅延割込み発生モジュールのブロックダイヤグラム
内部データバス
-
-
-
-
-
-
-
R0
遅延割込み要求発生 / 解除レジスタ (DIRR)
S 割込み要求
R ラッチ
割込み要求
信号
- : 未定義
● 割込み要求ラッチ
遅延割込み要求発生 / 解除レジスタでの設定内容 ( 遅延割込み要求の発生または解除 )
を保持するラッチです。
● 遅延割込み要求発生 / 解除レジスタ (DIRR)
遅延割込み要求の発生または解除を行います。
■ 割込み番号
遅延割込み発生モジュールで使用する割込み番号を次に示します。
割込み番号 #42(2AH)
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
79
第 4 章 遅延割込み発生モジュール
4.3 遅延割込み発生モジュールの構成
4.3
MB90990 シリーズ
遅延割込み発生モジュールの構成
遅延割込み発生モジュールのレジスタの一覧および詳細を説明します。
■ レジスタと初期値の一覧
図 4.3-1 遅延割込み発生モジュールのレジスタと初期値の一覧
遅延割込み要求発生 / 解除レジスタ (DIRR)
アドレス : 00009FH
80
bit
15
14
13
12
11
10
9
8
1
1
1
1
1
1
1
0
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 4 章 遅延割込み発生モジュール
4.3 遅延割込み発生モジュールの構成
MB90990 シリーズ
遅延割込み要求発生 / 解除レジスタ (DIRR)
4.3.1
遅延割込み要求発生 / 解除レジスタ (DIRR) は , 遅延割込み要求の発生や解除を行い
ます。
■ 遅延割込み要求発生 / 解除レジスタ (DIRR)
図 4.3-2 遅延割込み要求発生 / 解除レジスタ (DIRR)
bit 15
14
13
12
11
10
9
8
−
−
−
−
−
−
−
R0
−
−
−
−
−
−
−
R/W
アドレス
00009FH
−
: 未定義
R/W
初期値
11111110B
bit8
: リード / ライト可能
: 初期値
R0
遅延割込み要求発生ビット
0
遅延割込み要求を解除
1
遅延割込み要求を発生
表 4.3-1 遅延割込み要求発生 / 解除レジスタ (DIRR) の機能
ビット名
CM44-10149-4
機 能
bit15
∼
bit9
未定義ビット
読み込んだ場合 : 常に "1" が読み出されます。
書き込んだ場合 : 影響しません。
bit8
R0:
遅延割込み要求発生
ビット
遅延割込み要求の発生または解除を行います。
"0" に設定した場合 : 遅延割込み要求を解除します。
"1" に設定した場合 : 遅延割込み要求を発生します。
FUJITSU MICROELECTRONICS LIMITED
81
第 4 章 遅延割込み発生モジュール
4.4 遅延割込み発生モジュールの動作説明
MB90990 シリーズ
遅延割込み発生モジュールの動作説明
4.4
遅延割込み発生モジュールには , ソフトウェアで割込み要求を発生または解除する機
能があります。
■ 遅延割込み発生モジュールの動作説明
遅延割込み発生モジュールを使用するには , 図 4.4-1 の設定が必要です。
図 4.4-1 遅延割込み発生モジュールの設定
bit
DIRR
15
14
13
12
11
10
9
8
−
−
−
−
−
−
−
R0
◎
−
: 未定義ビット
◎
: 使用ビット
遅延割込み要求発生 / 解除レジスタの R0 ビットに "1" を設定した場合 (DIRR: R0=1), 割
込み要求を発生します。割込み要求の許可ビットはありません。
● 遅延割込み発生モジュールの動作
• 遅延割込み要求発生 / 解除レジスタの R0 ビットに "1" を設定した場合 , 割込み要求
ラッチが "1" にセットされ , 割込みコントローラに対して割込み要求を発生します。
• 割込みコントローラで , ほかの割込み要求よりも割込み優先順位が高いと判定され
た場合は , CPU に対して割込み要求が発生します。
• CPU 側では , コンディションコードレジスタの割込みレベルマスクビット (CCR:
ILM) と割込み要求のレベル (ICR: IL) が比較され , 割込み要求レベルが ILM より高
かった場合は , 現在実行中の命令の終了後に遅延割込み処理が実行されます。
• 割込み処理内で , ユーザプログラムで R0 ビットに "0" を設定して , 割込み要求を解
除し , タスクの切換えを行います。
図 4.4-2 に遅延割込み発生モジュールの動作を示します。
図 4.4-2 遅延割込み発生モジュールの動作
遅延割込み発生モジュール
ほかの要求
DIRR
割込みコントローラ
ICR YY
IL
CMP
CMP
ICR XX
82
CPU
ILM
FUJITSU MICROELECTRONICS LIMITED
割込み
処理
CM44-10149-4
MB90990 シリーズ
4.5
第 4 章 遅延割込み発生モジュール
4.5 遅延割込み発生モジュールの使用上の注意
遅延割込み発生モジュールの使用上の注意
遅延割込み発生モジュールを使用する場合は , 以下の点に注意してください。
■ 遅延割込み発生モジュールの使用上の注意
• 割込み処理ルーチン内で遅延割込み要求発生 / 解除レジスタの R0 ビットを "0" に設
定せずに割込み処理から復帰した場合は , 再度 , 割込み処理を起動します。
• 遅延割込み発生モジュールでの割込みには , ソフトウェア割込みとは異なり遅延を
伴います。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
83
第 4 章 遅延割込み発生モジュール
4.6 遅延割込み発生モジュールのプログラム例
4.6
MB90990 シリーズ
遅延割込み発生モジュールのプログラム例
遅延割込み発生モジュールのプログラム例を示します。
■ 遅延割込み発生モジュールのプログラム例
● 処理仕様
メインプログラムで遅延割込み要因発生 / 解除レジスタ (DIRR) の R0 ビットに "1" を
書き込み , 遅延割込み要求を発生させてタスク切換え処理をします。
● コーディング例
ICR15
EQU
0000BFH
; 割込み制御レジスタ
DIRR
EQU
00009FH
; 遅延割込み要因発生 / 解除レジスタ
DIRR:0
; 遅延割込み要求発生ビット
DIRR_R0 EQU
;--------- メインプログラム -----------------------------------CODE
CSEG
; スタックポインタ (SP) などは
START:
; 初期化済みとする
LOOP:
AND
CCR,#0BFH
; 割込み禁止
MOV
I:ICR15,#00H
; 割込みレベル 0( 最強 )
MOV
ILM,#07H
;PS 内 ILM をレベル 7 に設定
OR
CCR,#40H
; 割込み許可
SETB
I:DIRR_R0
; 遅延割込み要求発生
MOV
MOV
BRA
A,#00H
A,#01H
LOOP
; 無限ループ
;--------- 割込みプログラム ------------------------------------WARI:
CLRB
:
I:DIRR_R0
;
;
ユーザ処理
:
CODE
RETI
ENDS
; 割込み要求フラグをクリア
; 割込みから復帰
;--------- ベクタ設定 ----------------------------------------VECT
CSEG
ABS=0FFH
VECT
84
; 割込み #42(2AH) にベクタを設定
ORG
0FF54H
DSL
WARI
ORG
DSL
0FFDCH
START
; リセットベクタ設定
DB
ENDS
END
00H
; シングルチップモードに設定
START
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第5章
クロック
クロックについて説明します。
5.1 クロック
5.2 クロック発生部のブロックダイヤグラム
5.3 クロック選択レジスタ (CKSCR)
5.4 PLL/ サブクロック制御レジスタ (PSCCR)
5.5 クロックモード
5.6 発振安定待ち時間
5.7 振動子の接続
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
85
第 5 章 クロック
5.1 クロック
5.1
MB90990 シリーズ
クロック
クロック発生部は , CPU や周辺機能の動作クロックである内部クロックを制御しま
す。クロック発生部で生成されたクロックをマシンクロックとよび , マシンクロック
の 1 周期をマシンサイクルとしています。また , 高速振動子から供給されるクロッ
クを発振クロックとよび , 発振クロックの 2 分周をメインクロックとよびます。CR
発振から供給されるクロックの 4 分周または 8 分周をサブクロック , PLL 発振によ
るクロックを PLL クロックとよびます。
■ クロック
クロック発生部には発振回路が内蔵されており , 発振端子に振動子を接続することに
よって発振クロックを発生します。また , PLL クロック逓倍回路を内蔵しており , 発振
クロックの逓倍クロックを 6 種類発生できます。クロック発生部では , 発振安定待ち時
間の制御 , PLL クロック逓倍制御 , クロックセレクタによる内部クロックの切換え動作
を行います。
● 発振クロック (HCLK)
高速発振端子 (X0, X1) に振動子を接続して発生させたクロックです。
● メインクロック (MCLK)
発振クロックを 2 分周したクロックです。タイムベースタイマとクロックセレクタへ
の入力クロックとなります。
● サブクロック (SCLK)
CR 発振クロックを 4 分周または 8 分周したクロックです。サブクロックの分周比は
PLL/ サブクロック制御レジスタ (PSCCR) の SCDS ビットで設定されます。時計タイマ
の動作クロックまたは低速のマシンクロックとしても使用できます。
● PLL クロック (PCLK)
発振クロックを PLL クロック逓倍回路 (PLL 発振回路 ) によって逓倍したクロックで
す。
逓倍率選択ビット (CKSCR: CS1, CS0, PSCCR: CS2) の設定によって 6 種類のクロッ
クから選択できます。
86
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 5 章 クロック
5.1 クロック
● マシンクロック
CPU と周辺の動作クロックです。マシンクロックの 1 周期をマシンサイクル (1/φ) とし
ています。メインクロック , サブクロック , 6 種類の PLL クロックから 1 種類を選択で
きます。
<注意事項>
動作電圧が 5 V の場合 , 発振クロックは 3 MHz ∼ 16 MHz の発振ができます。CPU およ
び周辺機能の最大動作周波数は 32 MHz なので , 最大動作周波数を超える逓倍率を設定し
た場合はデバイスは正常に動作しません。PLL 発振は 4 MHz ∼ 32 MHz の範囲で発振し
ますが , PLL 発振範囲は動作電圧および逓倍率によって異なります。詳細は「データシー
ト」を参照してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
87
第 5 章 クロック
5.1 クロック
MB90990 シリーズ
■ クロック供給マップ
CPU や周辺機能の動作クロックとしてクロック発生部で生成したマシンクロックを供
給しています。CPU と周辺機能の動作は , メインクロックとサブクロックおよび PLL
クロックの切換え ( クロックモード ) や PLL クロックの逓倍率の切換えの影響を受け
ます。一部の周辺機能にはタイムベースタイマの分周出力が供給されており , 各周辺で
動作クロックを選択できるようになっています。
クロック供給マップを図 5.1-1 に示します。
図 5.1-1 クロック供給マップ
周辺機能
4
時計タイマ
4
ウォッチドッグ
タイマ
タイムベースタイマ
1
クロック発生部
2
3
4
6
8/16ビット
PPGタイマA~F
端子 PPGA~PPGF
16ビット
リロードタイマ2, 3
端子 TIN2,TIN3
8
PLL逓倍回路
PCLK(PLLクロック)
クロック
セレクタ
4/2分周
クロックセレクタ
CAN1
φc
2分周
X0
端子
X1
端子
A/Dコンバータ
(16チャネル)
(サブクロック)
クロック
発生回路
SCLK
クロック
2分周
クロックセレクタ
セレクタ HCLK
φ
MCLK
(発振クロック) (メインクロック) (マシンクロック)
端子 TOT2,TOT3
端子 RX1
端子 TX1
端子 AN0~AN15
端子 SCK0~SCK2
LIN-UART
内蔵CR
発振クロック
端子 SIN0~SIN2
端子 SOT0~SOT2
入出力タイマ
フリーランタイマ0
CPU
インプット
キャプチャ0~3
クロックスーパバイザ
HCLK
MCLK
PCLK
SCLK
φ
φc
88
:発振クロック
:メインクロック
:PLLクロック
:サブクロック
:マシンクロック
:CAN1クロック
4
端子 IN0~IN3
発振安定待ち制御
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 5 章 クロック
5.2 クロック発生部のブロックダイヤグラム
MB90990 シリーズ
クロック発生部のブロックダイヤグラム
5.2
クロック発生部は , 次のブロックで構成されています。
• 発振クロック発生回路 / サブクロック発生回路
• PLL 逓倍回路
• クロックセレクタ
• クロック選択レジスタ (CKSCR)
• PLL/ サブクロック制御レジスタ (PSCCR)
• 発振安定待ち時間セレクタ
■ クロック発生部のブロックダイヤグラム
クロック発生部のブロックダイヤグラムを図 5.2-1 に示します。
なお , スタンバイ制御回路 , タイムベースタイマの回路も含まれます。
図 5.2-1 クロック発生部のブロックダイヤグラム
低消費電力モード制御レジスタ(LPMCR)
STP
SLP
SPL
RST
TMD
CG1
CG0 予約
RST 端子
端子ハイインピー
ダンス制御回路
端子Hi-Z制御
内部リセット
発生回路
内部リセット
CPU間欠動作
サイクル
セレクタ
間欠サイクル選択
CPUクロック
制御回路
リセット(解除)
時計,スリープ,ストップ信号
スタンバイ
制御回路
2
CPU動作
クロック
時計,ストップ信号
割込み(解除)
周辺クロック
制御回路
周辺機能
動作クロック
サブクロック発振安定待ち解除
メインクロック発振安定待ち解除
クロック
発生部
動作クロック
セレクタ
マシン
クロック
2
CS2
PLL/サブクロック
制御レジスタ
(PSCCR):bit8
発振安定
待ち時間
セレクタ
2
PLL逓倍回路
SCM
MCM
WS1
WS0
SCS
MCS
CS1
CS0
クロック選択レジスタ(CKSCR)
クロック
セレクタ
X0 端子
発振クロック
(HCLK)
X1 端子
メインクロック
発振回路
2分周
2分周
4分周
2分周
2分周
タイムベースタイマ
クロック
セレクタ
4分周/
2分周
内蔵CR
発振クロック
クロックスーパバイザ
1024分周
2分周
2分周
2分周
4分周
ウォッチドッグタイマへ
サブクロック
(SCLK)
SCDS
CM44-10149-4
512分周
メイン
クロック
8分周
2分周
2分周
時計タイマ
PLL/サブクロック
制御レジスタ
(PSCCR):bit10
FUJITSU MICROELECTRONICS LIMITED
89
第 5 章 クロック
5.2 クロック発生部のブロックダイヤグラム
MB90990 シリーズ
● メインクロック発振回路
高速発振端子に振動子を接続して発振クロック (HCLK) を発生します。
● PLL 逓倍回路
PLL 発振で発振クロックを逓倍して , PLL クロック (PCLK) としてクロックセレクタに
供給します。
● クロックセレクタ
メインクロック , サブクロック , 6 種類の PLL クロックから CPU および周辺機能に供
給するクロックを選択します。
● クロック選択レジスタ (CKSCR)
発振クロックと PLL クロックの切換え , メインクロックとサブクロックの切換え , 発
振安定待ち時間の選択および PLL クロックの逓倍率の選択を行います。
● PLL/ サブクロック制御レジスタ (PSCCR)
PLL クロックの逓倍率の選択 ( クロック選択レジスタの CS0 ビット , CS1 ビットと本
レジスタの CS2 ビットの設定によって選択されます ), およびサブクロック分周比の設
定 (4 分周 /2 分周 ) を行います。
● 発振安定待ち時間セレクタ
発振クロックの発振安定待ち時間を選択します。4 種類のタイムベースタイマ出力から
選択します。
90
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 5 章 クロック
5.2 クロック発生部のブロックダイヤグラム
MB90990 シリーズ
5.2.1
クロック発生部のレジスタ
クロック発生部のレジスタを説明します。
■ クロック発生部のレジスタと初期値の一覧
図 5.2-2 クロック選択レジスタと初期値の一覧
クロック選択レジスタ (CKSCR)
bit
アドレス
0000A1H
15
14
13
12
11
10
9
8
1
1
1
1
1
1
0
0
1
1
0
0
0
0
PLL/ サブクロック制御レジスタ (PSCCR)
アドレス
0000CFH
CM44-10149-4
1
1
FUJITSU MICROELECTRONICS LIMITED
91
第 5 章 クロック
5.3 クロック選択レジスタ (CKSCR)
5.3
MB90990 シリーズ
クロック選択レジスタ (CKSCR)
クロック選択レジスタ (CKSCR) は , メインクロック , サブクロック , PLL クロック
の切換え , 発振安定待ち時間の選択および PLL クロックの逓倍率の選択を行います。
■ クロック選択レジスタ (CKSCR)
図 5.3-1 クロック選択レジスタ (CKSCR)
bit 15
14
13
12
11
10
9
8
初期値
アドレス SCM MCM WS1 WS0 SCS MCS CS1 CS0 11111100B
0000A1H
R
R R/W R/W R/W R/W R/W R/W
CS2(PSCCR レジスタ : bit8)
bit9
bit8
CS2
CS1
CS0
0
0
0
1 × HCLK (4 MHz)
0
0
1
2 × HCLK (8 MHz)
0
1
0
3 × HCLK (12 MHz)
0
1
1
4 × HCLK (16 MHz)
1
1
0
6 × HCLK (24 MHz)
1
bit10
1
1
8 × HCLK (32 MHz)
PLL クロック選択ビット
MCS
0
逓倍率選択ビット
() 内は発振クロック (HCLK) 周波数
4 MHz 時の算出例
PLL クロックを選択
1 メインクロックを選択
bit11
SCS
0
サブクロック選択ビット
サブクロックを選択
1 メインクロックを選択
bit13 bit12
WS1 WS0
発振安定待ち時間選択ビット
( ) 内は発振クロック (HCLK) 周波数 4MHz 時の算出例
0
0
210/HCLK( 約 256μs)
0
1
213/HCLK( 約 2.05ms)
1
0
217/HCLK( 約 32.77ms)
[ パワーオンリセット以外 ]
1
1
216/HCLK( 約 16.38ms)
[ パワーオンリセットのみ ]
212/HCLK+216/HCLK( 約 17.4ms)
bit14
MCM
0
HCLK
R/W
R
: 発振クロック
PLL クロック動作フラグビット
PLL クロックで動作中
1 メインクロックまたはサブクロックで動作中
bit15
SCM
サブクロック動作フラグビット
: リード / ライト可能
0
サブクロックで動作中
: リードオンリ
1
メインクロックまたは PLL クロックで動作中
: 初期値
92
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 5 章 クロック
5.3 クロック選択レジスタ (CKSCR)
表 5.3-1 クロック選択レジスタ (CKSCR) の機能 (1 / 3)
ビット名
bit15
bit14
機 能
SCM:
サブクロック動作
フラグビット
マシンクロックとしてメインクロックまたはサブクロックのど
ちらが選択されているかを表示します。 サブクロック動作フラグビット (CKSCR: SCM) が "0", サブク
ロック選択ビット (CKSCR: SCS) が "1" の場合は , サブクロック
からメインクロックへの移行期間中であることを示します。ま
た , サブクロック動作フラグビット (CKSCR:SCM) が "1", サブ
クロック選択ビット (CKSCR:SCS) が "0" の場合は , メインク
ロックからサブクロックへの移行期間中であることを示しま
す。書込みは , 動作に影響しません。
MCM:
PLL クロック動作
フラグビット
マシンクロックとしてメインクロックまたは PLL クロックのど
ちらが選択されているかを示します。 PLL クロック動作フラグビット (CKSCR: MCM) が "1" で , PLL
クロック選択ビット (CKSCR: MCS) が "0" の場合は , PLL ク
ロック発振安定待ち時間中であることを示します。書込みは ,
動作に影響しません。
ストップモード解除時 , サブクロックモードからメインクロッ
クモードへの移行時およびサブクロックモードから PLL クロッ
クモードへの移行時の発振クロックの発振安定待ち時間を選択
します。
4 種類のタイムベースタイマ出力から選択します。 すべてのリセットにより初期値に戻ります。
bit13,
bit12
CM44-10149-4
WS1, WS0:
発振安定待ち時間
選択ビット
( 注意事項 )
発振安定待ち時間は , 使用されている振動子に合わせて適切
な時間を設定してください。詳しくは ,「7.2 リセット要因
と発振安定待ち時間」を参照してください。 メインクロックモードから PLL クロックモードに切り換え
た場合の発振安定待ち時間は , 214/HCLK( 発振クロック周波
数 4 MHz で動作している場合 : 約 4.1 ms) 固定です。サブク
ロックモードから PLL クロックモードに切り換えた場合 , お
よび PLL ストップモードから PLL クロックモードに復帰す
る場合の発振安定待ち時間は , 本ビットに設定された値に従
います。
PLL クロック発振安定待ち時間は 214/HCLK 以上必要ですの
で , サブクロックモードから PLL クロックモードに切り換え
る場合および PLL ストップモードに移行する場合は , 本ビッ
トには "10B" または "11B" を設定してください。
FUJITSU MICROELECTRONICS LIMITED
93
第 5 章 クロック
5.3 クロック選択レジスタ (CKSCR)
MB90990 シリーズ
表 5.3-1 クロック選択レジスタ (CKSCR) の機能 (2 / 3)
ビット名
機 能
マシンクロックとして , メインクロックまたはサブクロックの
どちらを選択するかを設定します。 • メインクロックからサブクロックに切り換えた場合は
(CKSCR: SCS=1 → 0), サブクロックに同期をとって
1/SCLK( 発振クロック周波数 100kHz, 8 分周設定で動作して
いる場合 : 約 80 μs) サブクロックモードに切り換わります。
• サブクロックからメインクロックに切り換えた場合は
(CKSCR: SCS=0 → 1), メインクロックの発振安定待ち時間が
発生した後 , メインクロックモードに切り換わります。タイ
ムベースタイマは自動的にクリアされます。
すべてのリセットにより初期値に戻ります。
bit11
bit10
SCS:
サブクロック選択
ビット
MCS:
PLL クロック選択
ビット
( 注意事項 )
• MCS ビット , SCS ビットがともに "0" の場合は , SCS ビット
が優先され , サブクロックモードに設定されます。
• サブクロック選択ビット (CKSCR: MCS) および PLL クロッ
ク選択ビット (CKSCR: SCS) ともに "0" の場合は , サブク
ロックが優先されます。
• メインクロックからサブクロックに切り換える場合は
(CKSCR: SCS=1 → 0), タイムベースタイマの割込み許可ビッ
ト (TBTC: TBIE), またはインタラプトレベルマスクレジスタ
(ILM: ILM2 ∼ ILM0) により , タイムベースタイマ割込みを
禁止してから書き込んでください。
• 電源投入時 , またはストップモードからの解除時は , サブク
ロックの発振安定待ち時間 214/SCLK( 発振クロック周波数
100 kHz, 8 分周設定で動作している場合 :1.3 秒 ) が発生しま
す。したがって , その間にメインクロックモードからサブク
ロックモードに切り換えた場合は , 発振安定待ち時間が発生
します。
マシンクロックとしてメインクロックまたは PLL クロックのど
ちらを選択するかを設定します。 メインクロックから PLL クロックに切り換えた場合は
(CKSCR: MCS=1 → 0), PLL クロックの発振安定待ち時間が発生
した後 , PLL クロックモードに移行します。タイムベースタイ
マは自動的にクリアされます。メインクロックモードから PLL
クロックモードに切り換えた場合の発振安定待ち時間は , 214/
HCLK( 発振クロック周波数 4MHz で動作している場合 : 約
4.1ms) 固定です。サブクロックモードから PLL クロックモード
に切り換えた場合の発振安定待ち時間は , 発振安定待ち時間選
択ビット (CKSCR: WS1, WS0) に設定された値に従います。
すべてのリセットにより初期値に戻ります。 ( 注意事項 )
• MCS ビット , SCS ビットがともに "0" の場合は , SCS ビット
が優先され , サブクロックモードに設定されます。
• メインクロックから PLL クロックに切り換える場合は
(CKSCR: MCS=1 → 0), タイムベースタイマの割込み許可
ビット (TBTC: TBIE), またはインタラプトレベルマスクレジ
スタ (ILM: ILM2 ∼ ILM0) によりタイムベースタイマ割込み
を禁止してから書き込んでください。
94
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 5 章 クロック
5.3 クロック選択レジスタ (CKSCR)
MB90990 シリーズ
表 5.3-1 クロック選択レジスタ (CKSCR) の機能 (3 / 3)
ビット名
機 能
•
•
•
bit9,
bit8
CS1, CS0:
逓倍率選択ビット
PLL/ サブクロック制御レジスタ (PSCCR) の CS2 ビットとと
もに PLL クロックの逓倍率を選択するビットです。
PLL クロックの逓倍率は 6 種類から選択できます。
すべてのリセットにより初期値に戻ります。
CS0, CS1 および CS2 の設定
CS2
CS1
CS0
PLL クロック逓倍率
0
0
0
×1
0
0
1
×2
0
1
0
×3
0
1
1
×4
1
1
0
×6
1
1
1
×8
( 注意事項 )
PLL クロックが選択されている場合 (CKSCR: MCS=0) は , 書
込みが抑止されます。逓倍率を書き換える場合は , いったん
PLL クロック選択ビット (CKSCR: MCS) に "1" を書き込んだ
後 , 逓倍率選択ビット (CKSCR: CS1, CS0) を書き換えてから
PLL クロック選択ビット (CKSCR: MCS) を "0" に戻してくだ
さい。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
95
第 5 章 クロック
5.4 PLL/ サブクロック制御レジスタ (PSCCR)
MB90990 シリーズ
PLL/ サブクロック制御レジスタ (PSCCR)
5.4
PLL/ サブクロック制御レジスタは , PLL の逓倍率およびサブクロックの分周比を選
択します。本レジスタは書込み専用です。読出し値は全ビット "1" となります。
■ PLL/ サブクロック制御レジスタ (PSCCR)
図 5.4-1 に PLL/ サブクロック制御レジスタ (PSCCR) の構成を , 表 5.4-1 に PLL/ サブク
ロック制御レジスタ (PSCCR) の各ビットの機能について説明します。
図 5.4-1 PLL/ サブクロック制御レジスタ (PSCCR) の構成
bit
アドレス
0000CFH
15
14
13
12
11
10
9
8
−
−
−
−
予約
SCDS
予約
CS2
−
−
−
−
W
W
W
W
初期値
11110000B
bit8
CS2
0
1
逓倍率選択ビット
クロック選択レジスタ (CKSCR) 参照
bit9
予約
0
予約ビット
常に "0" を書いてください。
読出し値は常に "1" です。
bit10
SCDS
W
: ライトオンリ
−
: 未使用
: 初期値
96
サブクロック分周選択ビット
0
8 分周
1
4 分周
bit11
予約
0
予約ビット
常に "0" を書いてください。
読出し値は常に "1" です。
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 5 章 クロック
5.4 PLL/ サブクロック制御レジスタ (PSCCR)
MB90990 シリーズ
表 5.4-1 PLL/ サブクロックコントロールレジスタ (PSCCR) の各ビットの機能説明
ビット名
機
能
これらのビットは使用しません。
bit15
∼
bit12
未使用ビット
bit11
予約ビット
•
•
これらのビットへの書込みは動作に影響しません。
読出し値は常に "1" です。
•
•
常に "0" を書き込んでください。
読出し値は常に "1" です。
サブクロックの分周比を選択します。
bit10
SCDS:
サブクロック
分周選択ビット
• "0" を書き込むと 8 分周が選択されます。
• "1" を書き込むと 4 分周が選択されます。
• 読出し値は常に "1" です。
• すべてのリセット要因で "0" に初期化されます。
( 注意事項 )
サブクロック動作時にこのビットを書き換えないでくださ
い。
bit9
bit8
予約ビット
•
•
常に "0" を書き込んでください。
読出し値は常に "1" です。
•
このビットとクロック選択レジスタ (CKSCR) の CS1, CS0 ビッ
トで PLL の逓倍率を決めます。
CS2:
逓倍率選択
ビット
•
•
CS2
CS1
CS0
PLL クロック逓倍率
0
0
0
×1
0
0
1
×2
0
1
0
×3
0
1
1
×4
1
1
0
×6
1
1
1
×8
読出し値は常に "1" です。
すべてのリセット要因で "0" に初期化されます。
( 注意事項 )
MCS または MCM ビットが "0" のとき , このビットの値を変え
ることは禁止です。メインクロックモード時に変更を行ってく
ださい。
<注意事項>
PSCCR は書込み専用レジスタです。読出し値は書込み値とは異なります。
リードモディファイライト (RMW) 系命令 (SETB/CLRB 命令など ) は使用しないでくださ
い。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
97
第 5 章 クロック
5.5 クロックモード
5.5
MB90990 シリーズ
クロックモード
クロックモードには , メインクロックモード , サブクロックモード , PLL クロック
モードがあります。
■ クロックモード
● メインクロックモード
メインクロックモードは ,CPU および周辺リソースの動作クロックとして , 高速発振端
子 (X0,X1) に振動子を接続して発生させたクロック ( 発振クロック ) を 2 分周したク
ロックを使用します。
● サブクロックモード
サブクロックモードは ,CPU および周辺リソースの動作クロックとして CR 発振クロッ
クを 8/4 分周したクロックを使用します。サブクロックの分周比は PLL/ サブクロック
制御レジスタ (PSCCR) の SCDS ビットで選択できます。
● PLL クロックモード
PLL クロックモードは , CPU および周辺リソースの動作クロックとして発振クロック
を PLL クロック逓倍回路 (PLL 発振回路 ) によって逓倍したクロックを使用します。
PLL クロックの逓倍率はクロック選択レジスタ (CKSCR: CS1, CS0) および PLL/ サブク
ロック制御レジスタ (PSCCR: CS2) で設定します。
■ クロックモードの移行
クロックモードは PLL クロック選択ビット (CKSCR: MCS) およびサブクロック選択
ビット (CKSCR: SCS) の設定によって , メインクロックモード , サブクロックモード ,
PLL クロックモードに移行します。
● メインクロックモードから PLL クロックモードへの移行
PLL クロック選択ビット (CKSCR: MCS) を "1" から "0" に書き換えた場合は , PLL 発振
安定待ち時間 (214/HCLK) の後 , メインクロックから PLL クロックに移行します。
● PLL クロックモードからメインクロックモードへの移行
PLL クロック選択ビット (CKSCR: MCS) を "0" から "1" に書き換えた場合は , PLL ク
ロックとメインクロックのエッジが一致するタイミング (1 ∼ 12PLL クロック後 ) で
PLL クロックからメインクロックに切り換わります。
● メインクロックモードからサブクロックモードへの移行
サブクロック選択ビット (CKSCR: SCS) を "1" から "0" に書き換えた場合は , サブクロッ
クのエッジが検出されたタイミングでメインクロックからサブクロックに移行しま
す。
98
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 5 章 クロック
5.5 クロックモード
● サブクロックモードからメインクロックモードへの移行
サブクロック選択ビット (CKSCR: SCS) を "0" から "1" に書き換えた場合は , メインク
ロック発振安定待ち時間後 , サブクロックからメインクロックに移行します。
● PLL クロックモードからサブクロックモードへの移行
サブクロック選択ビット (CKSCR: SCS) を "1" から "0" に書き換えた場合は , PLL クロッ
クからサブクロックに移行します。
● サブクロックモードから PLL クロックモードへの移行
サブクロック選択ビット (CKSCR: SCS) を "0" から "1" に書き換えた場合は , メインク
ロック発振安定待ち時間後 , サブクロックから PLL クロックに移行します。
■ PLL クロック逓倍率の選択
逓倍率選択ビット (CKSCR: CS1, CS0, PSCCR: CS2) に "000B" ∼ "011B","110B","111B" の
値を書き込むことによって , 6 種類 (1 倍∼ 4 倍 , 6 倍 , および 8 倍 ) の PLL クロック逓
倍率を設定できます。
■ マシンクロック
PLL 逓倍回路から出力される PLL クロック , メインクロック , サブクロックがマシン
クロックとなります。このマシンクロックが CPU および周辺機能に供給されます。メ
インクロック , PLL クロック , サブクロックはサブクロック選択ビット (CKSCR:SCS)
および PLL クロック選択ビット (CKSCR:MCS) への書込みによりいずれかを選択でき
ます。
<注意事項>
• マシンクロックは , PLL クロック選択ビット (CKSCR: MCS) およびサブクロック選択
ビット (CKSCR: SCS) を書き換えても即座には切り換わりません。マシンクロックに
依存する周辺機能を操作する場合は , マシンクロックを切り換えた後 , PLL クロック動
作フラグビット (CKSCR: MCM) またはサブクロック動作フラグビット (CKSCR: SCM)
の値を参照して,マシンクロックが確実に切り換わったことを確認してから操作してく
ださい。
• PLL クロック選択ビット (CKSCR: MCS) が "0"(PLL クロックモード ) で , サブクロッ
ク選択ビット (CKSCR: SCS) が "0"( サブクロックモード ) の場合は , SCS ビットが優
先され , サブクロックモードとなります。
• クロックモードを切り換えた場合 , 切換えが完了するまでは , ほかのクロックモードお
よび低消費電力モードへの切換えを行わないでください。切換えの完了はクロック選
択レジスタ (CKSCR) の MCM ビットおよび SCM ビットを参照して確認してください。
切換えが完了する前に , ほかのクロックモードおよび低消費電力モードへの切換えを
行った場合 , 切り換わらない場合があります。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
99
第 5 章 クロック
5.5 クロックモード
MB90990 シリーズ
図 5.5-1 に , マシンクロックの切換えによる状態遷移図を示します。
図 5.5-1 マシンクロック選択の状態遷移図
Main
MCS = 1
MCM = 1
SCS = 1
SCM = 1
CS1, CS0 = XXB
CS2 = X
(10)
(12)
(1)
(11)
(20)
(13)
(8)
(2)
Main → PLLx
(3)
MCS = 0
(4)
MCM = 1
(5)
SCS = 1
SCM = 1
(6)
CS1, CS0 = XXB
(7)
CS2 = X
100
Main → Sub
MCS = 1
MCM = 1
SCKS = 1
SCS = 0
SCM = 1
CS1, CS0 = XXB
CS2 = X
Sub → Main
MCS = 1
MCM = 1
SCKS = 1
SCS = 1
SCM = 0
CS1, CS0 = XXB
CS2 = X
PLL1 → Main
(9) MCS = 1
MCM = 0
SCS = 1
SCM = 1
CS1, CS0 = 00B
CS2 = 0
PLL1 : Multiplied
MCS = 0
MCM = 0
SCS = 1
SCM = 1
(8) CS1, CS0 = 00
B
CS2 = 0
PLL2 → Main
(9) MCS = 1
MCM = 0
SCS = 1
SCM = 1
CS1, CS0 = 01B
CS2 = 0
PLL2 : Multiplied
MCS = 0
MCM = 0
SCS = 1
(8) SCM = 1
CS1, CS0 = 01B
CS2 = 0
PLL3 → Main
(9) MCS = 1
MCM = 0
SCS = 1
SCM = 1
CS1, CS0 = 10B
CS2 = 0
PLL3 : Multiplied
MCS = 0
MCM = 0
SCS = 1
SCM = 1
(8) CS1, CS0 = 10B
CS2 = 0
PLL4 → Main
(9) MCS = 1
MCM = 0
SCS = 1
SCM = 1
CS1, CS0 = 11B
CS2 = 0
PLL4 : Multiplied
MCS = 0
MCM = 0
SCS = 1
SCM = 1
(8) CS1, CS0 = 11
B
CS2 = 0
PLL6 → Main
(9) MCS = 1
MCM = 0
SCS = 1
SCM = 1
CS1, CS0 = 10B
CS2 = 1
PLL6 : Multiplied
MCS = 0
MCM = 0
SCS = 1
SCM = 1
(8) CS1, CS0 = 10B
CS2 = 1
PLL8 → Main
MCS = 1
(9) MCM = 0
SCS = 1
SCM = 1
CS1, CS0 = 11B
CS2 = 1
PLL8 : Multiplied
MCS = 0
(8) MCM = 0
SCS = 1
SCM = 1
CS1, CS0 = 11B
CS2 = 1
(12)
(11)
(14)
(15)
(16)
(17)
(18)
(19)
(10)
(10)
(10)
(10)
(10)
(10)
Sub
MCS = X
MCM = 1
SCKS = 1
SCS = 0
SCM = 0
CS1, CS0 = XXB
CS2 = X
(10)
Sub → PLL
MCS = 0
MCM = 1
SCKS = 1
SCS = 1
SCM = 0
CS1, CS0 = XXB
CS2 = 0
PLL1 → Sub
MCS = 1
MCM = 0
SCKS = 1
SCS = 0
SCM = 1
CS1, CS = 00B
CS2 = 0
(21)
PLL2 → Sub
(21)
MCS = 1
MCM = 0
SCKS = 1
SCS = 0
SCM = 1
CS1, CS0 = 01B
CS2 = 0
PLL3 → Sub
(21)
MCS = 1
MCM = 0
SCKS = 1
SCS = 0
SCM = 1
CS1, CS0 = 10B
CS2 = 0
PLL4 → Sub
(21)
MCS = 1
MCM = 0
SCKS = 1
SCS = 0
SCM = 1
CS1, CS0 = 11B
CS2 = 0
PLL6 → Sub
(21)
MCS = 1
MCM = 0
SCKS = 1
SCS = 0
SCM = 1
CS1, CS0 = 10B
CS2 = 1
(21)
PLL8 → Sub
MCS = 1
MCM = 0
SCKS = 1
SCS = 0
SCM = 1
CS1, CS0 = 11B
CS2 = 1
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 5 章 クロック
5.5 クロックモード
(1) MCS ビット "0" 書込み
(2) PLL クロック発振安定待ち終了 & CS1, CS0= 00B& CS2= 0
(3) PLL クロック発振安定待ち終了 & CS1, CS0= 01B& CS2= 0
(4) PLL クロック発振安定待ち終了 & CS1, CS0= 10B& CS2= 0
(5) PLL クロック発振安定待ち終了 & CS1, CS0= 11B& CS2= 0
(6) PLL クロック発振安定待ち終了 & CS1, CS0= 10B& CS2= 1
(7) PLL クロック発振安定待ち終了 & CS1, CS0= 11B& CS2= 1
(8) MCS ビット "1" 書込み ( リセットを含む )
(9) PLL クロックとメインクロックの同期タイミング
(10) SCS ビット "0" 書込み
(11) メインクロックとサブクロックの同期タイミング
(12) SCS ビット "1" 書込み (MCS=1)
(13) メインクロック発振安定待ち終了
(14) メインクロック発振安定待ち終了 & CS1, CS0= 00B& CS2= 0
(15) メインクロック発振安定待ち終了 & CS1, CS0= 01B& CS2= 0
(16) メインクロック発振安定待ち終了 & CS1, CS0= 10B& CS2= 0
(17) メインクロック発振安定待ち終了 & CS1, CS0= 11B& CS2= 0
(18) メインクロック発振安定待ち終了 & CS1, CS0= 10B& CS2= 1
(19) メインクロック発振安定待ち終了 & CS1, CS0= 11B& CS2= 1
(20) SCS ビット "1" 書込み (MCS=0)
(21) PLL クロックとサブクロックの同期タイミング
MCS
: クロック選択レジスタ (CKSCR) の PLL クロック選択ビット
MCM
: クロック選択レジスタ (CKSCR) の PLL クロック動作フラグビット
SCS
: クロック選択レジスタ (CKSCR) のサブクロック選択ビット
SCM
: クロック選択レジスタ (CKSCR) のサブクロック動作フラグビット
CS1, CS0
: クロック選択レジスタ (CKSCR) の逓倍率選択ビット
CS2
: PLL/ サブクロック制御レジスタ (PSCCR) の逓倍率選択ビット
SCKS
: クロックスーパバイザ制御レジスタ (CSVCR) のサブクロック選択ビット
<注意事項>
• マシンクロックの初期値はメインクロック (CKSCR: MCS=1, SCS=1) です。
• SCS, MCS ともに "0" のときは SCS が優先され , サブクロックが選択されます。
• サブクロックモードからPLLクロックモードに切り換えるときは, CKSCR: WS1, WS0
を "10B" または "11B" に設定してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
101
第 5 章 クロック
5.6 発振安定待ち時間
MB90990 シリーズ
発振安定待ち時間
5.6
発振クロックが停止している電源投入時 , あるいはストップモードからの復帰時には ,
発振開始後 , 発振クロックが安定するまでの時間 ( 発振安定待ち時間 ) が必要となり
ます。また , クロックモードをメインクロックモードから PLL クロックモード , メイ
ンクロックモードからサブクロックモード , サブクロックモードからメインクロック
モード , サブクロックモードから PLL クロックモードに切り換えた場合にも発振安定
待ち時間が必要です。
■ 発振安定待ち時間の動作
セラミックや水晶などの振動子は , 発振を開始してから安定した固有の振動数 ( 発振周
波数 ) になるまでに数 ms から数十 ms の時間を要します。したがって , 発振開始直後
は , いったん CPU の動作を禁止して発振安定待ち時間経過して発振が安定した時点で
CPU にマシンクロックを供給させます。ただし , 振動子の種類 ( セラミック , 水晶など )
によって発振安定待ち時間は異なります。使用する振動子に合わせて適切な発振安定
待ち時間を選択する必要があります。発振安定待ち時間は , クロック選択レジスタ
(CKSCR) で設定できます。
クロックモードをメインクロックから PLL クロック , メインクロックからサブクロッ
ク , サブクロックからメインクロック , サブクロックから PLL クロックに切り換えた
場合 , 発振安定待ち時間の間 CPU は切換え前のクロックで動作しています。発振安定
待ち時間が経過すると各クロックモードに切り換わります。発振開始直後の発振動作
を図 5.6-1 に示します。
図 5.6-1 発振安定待ち時間直後の動作
振動子の発振時間
発振安定待ち時間
通常動作開始または
PLL クロック / サブクロック
への切換え
X1
発振開始
102
発振安定
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 5 章 クロック
5.7 振動子の接続
MB90990 シリーズ
5.7
振動子の接続
MB90990 シリーズはシステムクロック発生回路を内蔵しており , 発振端子に振動子
を接続することによって内部クロックを発生します。
■ 振動子の接続
● 水晶振動子またはセラミック振動子の接続例
図 5.7-1 水晶振動子またはセラミック振動子の接続例
X0
MB90990 シリーズ
X1
C1
CM44-10149-4
C2
FUJITSU MICROELECTRONICS LIMITED
103
第 5 章 クロック
5.7 振動子の接続
104
MB90990 シリーズ
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第6章
クロックスーパバイザ
クロックスーパバイザの機能と動作について説明
します。本機能は "J" サフィックスのある製品に
のみ使用できます。
6.1 クロックスーパバイザの概要
6.2 クロックスーパバイザの構成
6.3 クロックスーパバイザのレジスタ
6.4 クロックスーパバイザの動作説明
6.5 クロックスーパバイザ使用上の注意
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
105
第 6 章 クロックスーパバイザ
6.1 クロックスーパバイザの概要
6.1
MB90990 シリーズ
クロックスーパバイザの概要
クロックスーパバイザは , 発振クロックの発振を監視して発振停止となった場合に ,
内蔵の CR 発振回路で生成される CR クロックに切り換わることによって暴走する
ことを防止します。
■ クロックスーパバイザの概要
• 発振クロック発振を監視して , 発振が停止したことを検出すると内部リセットを発
生し , 内蔵の CR クロックに切り換えます 。
リセット要因が , クロックスーパバイザのリセットなのか , あるいはほかのリセッ
ト要因によるものかはウォッチドッグタイマ制御レジスタ (WDTC) のリセット要因
ビットにて確認できます。
• メインクロックの発振停止が検出されるのは , 発振クロックの立上りエッジが , CR
クロックで 4 サイクルの間検出されなかった場合です。したがって , 発振クロック
の周期が CR クロックの 4 サイクル以上の場合 , 発振クロックの発振停止を検出し
てしまう可能性があります。
• ストップモード時はクロック停止となりますが , その間クロックの監視は禁止状態
( 監視禁止 ) となります。
• 発振の停止をいったん検出後 , 発振が復帰した場合でも CR クロック動作を継続し
ます。
<注意事項>
CR クロックの周期などはデータシートを参照してください。
106
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 6 章 クロックスーパバイザ
6.2 クロックスーパバイザの構成
MB90990 シリーズ
6.2
クロックスーパバイザの構成
クロックスーパバイザは , 以下のブロックで構成されています。
• 制御回路
• CR 発振回路
• 発振クロック監視
• メインクロック選択
• サブクロック選択
• CSV 制御レジスタ (CSVCR)
■ クロックスーパバイザのブロックダイヤグラム
クロックスーパバイザのブロックダイヤグラムを図 6.2-1 に示します。
図 6.2-1 クロックスーパバイザのブロックダイヤグラム
内部バス
CSV制御レジスタ(CSVCR)
制御回路
許可
許可
CR発振回路
内部リセット
サブ
選択
検出
発振
クロック監視
メイン
クロック
選択
CRクロック
発振クロック
(X0/X1より)
内部メイン
クロック
PLL回路
セレクタ
1/2
CM44-10149-4
メイン
選択
サブ
クロック
選択
FUJITSU MICROELECTRONICS LIMITED
内部サブ
クロック
107
第 6 章 クロックスーパバイザ
6.2 クロックスーパバイザの構成
MB90990 シリーズ
● 制御回路
CSV 制御レジスタ (CSVCR) の情報により , 各種クロックおよびリセットなどの制御を
行います。
● CR 発振回路
内蔵 CR 発振回路です。制御回路の制御信号により発振 ON/OFF の制御が可能です。
クロック停止検出後の内部クロックとしても使用します。
● 発振クロック監視
発振クロックの停止を監視します。
● メインクロック選択
発振クロックの停止を検出したときに , CR クロックを内部メインクロックとして出力
します。
● サブクロック選択
CR クロックを分周したクロックを内部サブクロックとして出力します。
● CSV 制御レジスタ (CSVCR)
クロックの監視および CR クロックの制御や停止検出の情報を確認します。
108
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 6 章 クロックスーパバイザ
6.3 クロックスーパバイザのレジスタ
MB90990 シリーズ
6.3
クロックスーパバイザのレジスタ
クロックスーパバイザのレジスタについて説明します。
■ クロックスーパバイザのレジスタ一覧
クロックスーパバイザのレジスタを図 6.3-1 に示します。
図 6.3-1 クロックスーパバイザのレジスタ
クロックスーパバイザ制御レジスタ (CSVCR)
bit
アドレス
0007960H
7
6
5
4
3
2
1
0
SCKS
MM
予約
RCE
MSVE
予約
予約
予約
R/W
R
R
R/W
R/W
R/W
R/W
R/W
初期値
00011100B
R/W : リード / ライト可能
R
: リードオンリ
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
109
第 6 章 クロックスーパバイザ
6.3 クロックスーパバイザのレジスタ
6.3.1
MB90990 シリーズ
クロックスーパバイザ制御レジスタ (CSVCR)
クロックスーパバイザ制御レジスタ (CSVCR) は , 各機能の許可および状態の確認を
行うレジスタです。
■ クロックスーパバイザ制御レジスタ (CSVCR)
図 6.3-2 クロックスーパバイザ制御レジスタ (CSVCR)
bit
7
アドレス
SCKS
007960H
R/W
6
5
4
3
2
1
0
MM
予約
RCE
MSVE
予約
予約
予約
R
R
R/W
R/W
R/W
R/W
R/W
予約
0
予約ビット
必ず“0”に設定してください。
予約
0
予約ビット
必ず“0”に設定してください。
予約
1
予約ビット
必ず“1”に設定してください。
MSVE
0
1
初期値
00011100B
発振クロック監視許可ビット
発振クロック監視禁止
発振クロック監視許可
RCE
0
1
CRクロック発振許可
CRクロック発振停止
CRクロック発振許可
予約
−
予約ビット
読出し値は不定です。
MM
0
1
発振クロック停止検出ビット
発振クロックの停止を未検出
発振クロックの停止を未検出
SCKS
サブクロック選択ビット
0
CR発振クロックをサブクロックとして使用しません。
1
CR発振クロックをサブクロックとして使用します。
R/W:リード/ライト可能
R :リードオンリ
予約:予約ビット
:初期値
110
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 6 章 クロックスーパバイザ
6.3 クロックスーパバイザのレジスタ
表 6.3-1 クロックスーパバイザ制御レジスタ (CSVCR) の各ビットの機能説明
ビット名
機 能
内蔵 CR 発振クロックをサブクロックとして使用することを許可するビットです。
"0" に設定した場合 : サブクロックに遷移できません。
"1" に設定した場合 : 内蔵 CR 発振クロックを使用してサブクロックに遷移可能です。
このビットはパワーオンリセット , 外部リセットまたは低電圧検出リセットにより "0"
に初期化されます。
サブクロックモード中に "0" クリアした場合 , サブクロックの供給が停止するため , プ
ログラム実行が停止します。この場合 , パワーオンリセット , 外部リセットもしくは低
電圧検出リセットにより復帰させることができます。
bit7
SCKS:
サブクロック
選択ビット
bit6
読出し専用のビットで発振クロック発振の停止を検出したことを示すビットです。
"0" に設定された場合 : 発振クロック発振の停止を検出していない状態。
MM :
"1"
に設定された場合 : 発振クロック発振の停止を検出した状態。
発振クロック
停止検出ビット このビットはパワーオンリセット , 外部リセットまたは低電圧検出リセットにより "0"
に初期化されます。
bit5
予約ビット
予約ビットです。読出し専用のビットです。読出し値は不定です。
bit4
RCE:
CR 発振許可
ビット
CR 発振を許可するビットです。
"0" に設定した場合 : 発振禁止
"1" に設定した場合 : 発振許可
このビットに "0" を書き込む際は , あらかじめクロック監視機能が禁止となっており ,
かつ MM ビットが "0" であることを確認してください。
このビットはパワーオンリセット , 外部リセットまたは低電圧検出リセットにより "0"
に初期化されます。
bit3
発振クロック発振の監視を許可するビットです。
"0" に設定した場合 : 発振クロック監視の禁止。
MSVE:
"1" に設定した場合 : 発振クロック監視の許可。
発振クロック
このビットは , "J" サフィックス品ではパワーオンリセットまたは低電圧検出リセット
監視許可ビット
により "1" に初期化されます。"M" サフィックス品ではパワーオンリセットまたは外
部リセットにより "1" に初期化されます。
bit2
予約ビット
予約ビットです。このビットへは必ず "1" を書込んでください。読出し値は常に "1"
です。
bit1
予約ビット
予約ビットです。このビットへは必ず "0" を書込んでください。読出し値は常に "0"
です。
bit0
予約ビット
予約ビットです。
このビットへは必ず "0" を書き込んでください。また , 読出し値は常に "0" です。
<注意事項>
電源投入時 , クロックスーパバイザは発振クロックの発振安定待ち時間を経過した後 , 監
視を開始します。したがって , 発振クロックの発振安定待ち時間以上動作していないとク
ロックスーパバイザは動作しません。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
111
第 6 章 クロックスーパバイザ
6.4 クロックスーパバイザの動作説明
6.4
MB90990 シリーズ
クロックスーパバイザの動作説明
クロックスーパバイザの動作を説明します。
■ クロックスーパバイザの動作
クロックスーパバイザは発振クロックの発振を監視し , 一定期間のクロック停止を検
出すると , 動作クロックを CR クロックに切り換え , リセットを発生します。
以下に , 各クロックモード時の動作について説明します。
●メインクロックモード時の発振クロック発振停止
メインクロックモード中に発振クロックの発振が停止と判断される条件は , 発振ク
ロックの立上りが CR クロックで 4 サイクルの期間検出されなかった場合です。
発振クロックの停止を検出するとリセットを発生し , メインクロックは CR クロックに
切り換わります。
発振クロックの発振停止の検出を CR クロックで行っているため , 発振クロックが低速
(CR クロックの 4 サイクル以上 ) になると発振クロックの停止を検出してしまう可能性
があります。
また , ストップモード時は発振クロックの検出は行いません。
●サブクロックモード時の発振クロック発振停止
サブクロックモード時は , 発振クロックの発振は常に停止しているため , 発振クロック
の検出は行いません。
112
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 6 章 クロックスーパバイザ
6.4 クロックスーパバイザの動作説明
MB90990 シリーズ
■クロックスーパバイザの動作フロー例
図 6.4-1 クロックスーパバイザの動作フロー例
メインクロック
クロックソース
メインクロック
電源投入
①
発振安定待ち
( 216 / HCLK )
②
メインクロック
動作
メイン
発振停止?
NO
YES
CRクロック
CSVCR:MM
ビットセット
CSVリセット
発生
③
CRクロック動作
外部リセット
低電圧検出リセット
電源再投入
ソフトリセット
ウォッチドッグリセット
CPU動作検出リセット
③へ
メインクロック
CSVCR:MM
ビットクリア
(初期化)
CSVCR:MM
ビットクリア
(初期化)
②へ
①へ
メイン発振再開
③へ
CSV:クロックスーパバイザ
CSVCR:クロックスーパバイザ制御レジスタ
・ 電源投入後は , 発振クロックの発振による発振安定待ち時間が経過すると , メイン
クロック動作を開始します。
・ 電源投入時に発振クロックが停止している場合は , リセット状態 ( 発振安定待ち状
態 ) で待機します。さらに , 発振が再開して発振安定待ち時間が経過後すると , メイ
ンクロック動作に遷移します。
・ メインクロック動作中に発振停止を検出した場合は , 動作クロックを CR クロック
に切り換え , リセットを発生します。
・ メイン発振が継続している ( 発振が停止していない ) 場合は , メインクロック動作
を継続します。
・ CRクロック動作中に外部リセットが発生した場合は, メインクロック動作に遷移し
ます。
ただし , このときに発振が停止していると , 再度 CSV リセットを発生して CR
クロック動作に戻ります。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
113
第 6 章 クロックスーパバイザ
6.4 クロックスーパバイザの動作説明
MB90990 シリーズ
■クロックスーパバイザ使用時のスタートアップフロー例
ユーザプログラムの先頭に , メインクロック停止検出ビット (CSVCR: MM) の判定を入
れることにより , ユーザプログラムでの Fail Safe ルーチン制御が可能となります。
図 6.4-2 に , クロックスーパバイザ使用時のスタートアップフロー例を示します。
図 6.4-2 クロックスーパバイザ使用時のスタートアップフロー例
リセット発生
CSVCR:MM=1 ?
NO
YES
YES
Fail Safeルーチン
(PLLは使用禁止)
PLLを使う?
NO
Mainルーチン
(PLLクロック)
114
Mainルーチン
(メインクロック)
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
6.5
第 6 章 クロックスーパバイザ
6.5 クロックスーパバイザ使用上の注意
クロックスーパバイザ使用上の注意
クロックスーパバイザを使用する際の注意事項を説明します。
■クロックスーパバイザ使用上の注意
クロックスーパバイザを使用する場合は , 以下の点にご注意ください。
• 電源投入時のクロックスーパバイザの動作について
電源投入後 , クロックスーパバイザは発振クロックの発振安定待ち時間が経過する
と監視を開始します。したがって , 発振クロックの発振安定待ち時間以上動作して
いないとクロックスーパバイザは動作しません。
• CR クロックモードの遷移後について
CR クロックモード遷移後 , PLL を "ON" にしないでください。
PLL 回路の入力周波数の下限値を下回るため , PLL の動作は保証されません。
• CR 発振禁止の設定について
CR クロックモード中では , CR 発振許可ビット (CSVCR: RCE) による CR 発振禁止
の設定はしないでください。
内部クロックが停止するため , デッドロックを発生するおそれがあります。
• 発振クロック停止検出ビットの初期化について
発振クロック停止検出ビット (CSVCR: MM) は , パワーオンリセット , 低電圧検出リ
セット , または外部リセットのみで初期化されます。
ウォッチドッグリセット / ソフトウェアリセット /CPU 動作検出リセット /CSV リ
セットでは初期化されません。そのため , CR クロックモードでこれらのリセットが
発生しても , CR クロックモードを継続します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
115
第 6 章 クロックスーパバイザ
6.5 クロックスーパバイザ使用上の注意
116
MB90990 シリーズ
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第7章
リセット
リセットについて説明します。
7.1 リセットの概要
7.2 リセット要因と発振安定待ち時間
7.3 外部リセット端子
7.4 リセット動作
7.5 リセット要因ビット
7.6 リセットによる各端子の状態
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
117
第 7 章 リセット
7.1 リセットの概要
7.1
MB90990 シリーズ
リセットの概要
リセット要因が発生すると , CPU は直ちに現在実行中の処理を中断し , リセット解
除待ち状態になります。リセット解除後は , リセットベクタで示されたアドレスから
処理を開始します。
リセットには , 次の 7 種類の要因があります。
• 電源投入 ( パワーオン )
• RST 端子からの外部リセット要求
• ソフトウェアリセット要求
• ウォッチドッグタイマのオーバフロー
• 低電圧検出リセット要求
• CPU 動作検出リセット要求
• クロックスーパバイザリセット要求
■ リセット要因
リセットの要因について 表 7.1-1 に示します。
表 7.1-1 リセット要因
マシンクロック
ウォッチ
ドッグタイマ
発振安定
待ち
電源投入時
メインクロック
(MCLK)
停止
あり
外部端子
RST 端子への "L" レベル入力
メインクロック
(MCLK)
停止
なし
ソフトウェア
低消費電力モード制御レジス
タ (LPMCR) の内部リセット信
号発生ビット (RST) に "0" を書
き込む
メインクロック
(MCLK)
停止
なし
ウォッチ
ドッグタイマ
ウォッチドッグタイマ
オーバフロー
メインクロック
(MCLK)
停止
なし
低電圧検出
リセット
低電圧 * を検出した場合
メインクロック
(MCLK)
停止
なし
CPU 動作検出
リセット
CPU 動作検出カウンタが
オーバフローした場合
メインクロック
(MCLK)
停止
なし
内蔵 CR
発振クロック
停止
なし
リセット
パワーオン
クロックスーパ
バイザリセット
発生要因
発振クロックの故障を検出し
た場合
MCLK : メインクロック ( 発振クロックの 2 分周クロック )
*
: 詳細は , 「第 19 章 低電圧検出 /CPU 動作検出リセット」を参照ください。
118
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 7 章 リセット
7.1 リセットの概要
● パワーオンリセット
パワーオンリセットは , 電源投入時に発生するリセットです。発振安定待ち時間は
212+216 発振クロックサイクル (212/HCLK+216/HCLK) です ( 約 17.4 ms : 4 MHz 発振時 )。
発振安定待ち時間が経過した後 , リセット動作を行います。
● 外部リセット
外部リセットは , 外部リセット端子 (RST 端子 ) に "L" レベルを入力することでリセッ
トを発生します。RST 端子への "L" レベル入力時間は , 500 ns 以上必要です。外部リ
セットでは発振安定待ち時間をとりません。
<注意事項>
• RST 端子によるリセット要求の発生の場合に限り , 書込み動作中にリセット要因が発
生した場合 , 命令の終了後にリセット解除待ち状態になります。そのため , 書込み中に
リセットが入力されても正常に書込みを終了します。ただし , 以下の 2 点に注意してく
ださい。
・ストリング系命令は , 指定したカウンタ分の転送が完了する前にリセットを受け付け
るので , すべてのデータが転送されることはありません。
・外バスアクセス時 , RDY 入力によりサイクルが一定以上に延ばされると , 命令終了を
待たずに強制的にリセットが受け付けられます。
強制リセット受理は , 16 マシンサイクルで行われます。
• ストップモード , サブクロックモード , サブスリープモードおよび時計モードから外部
リセット端子 (RST 端子 ) にてメインクロックモードへ復帰する場合は ,
振動子の発振時間 *+100 μs
以上 "L" レベルを入力してください。
*: 振動子の発振時間は , 振幅が 90% に達する時間です。水晶発振子は数 ms ∼数十 ms,
セラミック発振子は数百 μs ∼数 ms となります。
• タイムベースタイマモードから外部リセット端子 (RST 端子 ) にてメインクロックモー
ドへ復帰する場合は 100 μs 以上 "L" レベルを入力してください。
● ソフトウェアリセット
ソフトウェアリセットは低消費電力モード制御レジスタ (LPMCR) の内部リセット信号
発生ビット (RST) に "0" を書き込むことによって内部リセットを発生します。ソフト
ウェアリセットでは , 発振安定待ち時間を確保しません。
● ウォッチドッグリセット
ウォッチドッグリセットはウォッチドッグタイマの起動後,定められた時間内にウォッ
チドッグタイマ制御レジスタ (WDTC) のウォッチドッグ制御ビット (WTE) に "0" の書
込みがない場合 , ウォッチドッグタイマのオーバフローによってリセットを発生しま
す。ウォッチドッグリセットでは , 発振安定待ち時間を確保しません。
● 低電圧検出リセット
低電圧検出リセットは , 低電圧 *1 を検出するとリセットを発生します。
低電圧検出リセットは発振安定待ち時間の経過を待ちません。
*1: 詳細は , 「第 19 章 低電圧検出 /CPU 動作検出リセット」を参照ください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
119
第 7 章 リセット
7.1 リセットの概要
MB90990 シリーズ
● CPU 動作検出リセット
CPU 動作検出リセットは発振クロックをカウントクロックとする 20 ビットのカウンタ
で , 起動後一定時間内に低電圧 /CPU 動作検出リセット制御レジスタ (LVRC) の CL ビッ
トをクリアしない場合 , リセットを発生します。
CPU 動作検出リセットは発振安定待ち時間の経過を待ちません。
● クロックスーパバイザリセット
発振クロックの故障を検出するとリセットを発生します。クロックスーパバイザリ
セットは発振安定待ち時間の経過を待ちません。
クロックの定義
HCLK : 発振クロック周波数
MCLK : メインクロック周波数
SCLK : サブクロック周波数
φ
: マシンクロック (CPU 動作クロック ) 周波数
1/ φ
: マシンサイクル (CPU 動作クロック周期 )
詳細は , 「5.1 クロック」を参照してください。
<注意事項>
ストップモードまたはサブクロックモードでリセットが発生した場合は , 216/HCLK
( 約 16.28 ms, HCLK = 4 MHz 発振使用時 ) の発振安定待ち時間を確保します。
詳細は , 「5.6 発振安定待ち時間」を参照してください。
120
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
7.2
第 7 章 リセット
7.2 リセット要因と発振安定待ち時間
リセット要因と発振安定待ち時間
MB90990 シリーズには 7 種類のリセット要因があり , リセット時の発振安定待ち時
間がリセット要因によってそれぞれ異なります。
■ リセット要因と発振安定待ち時間
表 7.2-1 にリセット要因と発振安定待ち時間について示します。
表 7.2-1 リセット要因と発振安定待ち時間
リセット
リセット要因
発振安定待ち時間
( ) 内は発振クロック周波数 4MHz 時
パワーオン
電源立上げ
212/HCLK+216/HCLK( 約 17.4 ms)
ウォッチドッグ
ウォッチドッグタイマのオーバフロー
なし
( 注意事項 ) ただし , WS1, WS0 ビットは "11B" に
初期化されます。
外部
RST 端子からの "L" 入力
なし
( 注意事項 ) ただし , WS1, WS0 ビットは "11B" に
初期化されます。
ソフトウェア
低電圧検出
低消費電力モード制御レジスタ
(LPMCR) の RST ビットへの "0" 書込み
低電圧を検出した場合
なし
( 注意事項 ) ただし , WS1, WS0 ビットは "11B" に
初期化されます。
なし
( 注意事項 ) ただし , WS1, WS0 ビットは "11B" に
初期化されます。
CPU 動作検出
CPU動作検出カウンタがオーバフロー
した場合
クロックスーパ
バイザリセット
発振クロックの故障を検出した場合
なし
( 注意事項 ) ただし , WS1, WS0 ビットは "11B" に
初期化されます。
なし
( 注意事項 ) ただし , WS1, WS0 ビットは "11B" に
初期化されます。
HCLK
: 発振クロック周波数
WS1, WS0 : クロック選択レジスタ CKSCR の発振安定待ち時間選択ビット
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
121
第 7 章 リセット
7.2 リセット要因と発振安定待ち時間
MB90990 シリーズ
図 7.2-1 に , パワーオンリセット時の発振安定待ち時間について示します。
図 7.2-1 パワーオンリセット時の発振安定待ち時間
VCC
212/HCLK
216/HCLK
CLK
CPU 動作
降圧回路の
安定待ち時間
発振安定
待ち時間
<注意事項>
セラミックや水晶などの振動子は , 発振を開始してから固有の振動数に安定するまで ,
一般に数 ms から十数 ms の発振安定待ち時間が必要です。そのため , 使用する振動子に
合わせた値を設定してください。詳細は , 「5.6 発振安定待ち時間」を参照してください。
■ 発振安定待ちリセット状態
電源投入時のリセット,ストップモードおよびサブクロックモード中のリセットに対す
るリセット動作は,タイムベースタイマによって作られる発振安定待ち時間が経過して
からとなります。このとき , 外部リセット入力が解除されていない場合は , 外部リセッ
ト解除後にリセット動作を行います。
122
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 7 章 リセット
7.3 外部リセット端子
MB90990 シリーズ
7.3
外部リセット端子
外部リセット端子 (RST 端子 ) は , リセット入力専用端子で , "L" レベルの入力に
よって内部リセットを発生します。MB90990 シリーズは , CPU 動作クロックに同期
してリセットがかかりますが , 外部端子のみ非同期でリセットがかかります。
■ 外部リセット端子のブロックダイヤグラム
図 7.3-1 外部リセット端子のブロックダイヤグラム
CPU 動作クロック
RST
P-ch
端子
同期化回路
CPU
周辺機能
N-ch 入力バッファ
HCLK : 発振クロック
<注意事項>
書込み動作中のリセットによるメモリ破壊を防ぐため, RST端子入力の受付けをメモリが
破壊されないサイクルで行います。また , 内部回路の初期化にはクロックが必要です。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
123
第 7 章 リセット
7.4 リセット動作
7.4
MB90990 シリーズ
リセット動作
リセットが解除されると , モード端子の設定でモードデータとリセットベクタの読出
し先を選択し , モードフェッチを行います。このモードフェッチで , CPU の動作
モードとリセット動作終了後の実行開始アドレスが決定されます。電源投入時 , サブ
クロックモードおよびストップモードからのリセットによる復帰では , 発振安定待ち
時間が経過してからモードフェッチを行います。
■ リセット動作の概要
図 7.4-1 に , リセット動作フローを示します。
図 7.4-1 リセット動作フロー
パワーオンリセット
ストップモード
サブクロックモード
リセット中
外部リセット
ソフトウェアリセット
ウォッチドッグタイマリセット
低電圧検出リセット
CPU 動作検出リセット
クロックスーパバイザリセット
発振安定待ちリセット状態
モードフェッチ
( リセット動作 )
リセットベクタ取込み
モードデータ取込み
通常動作
(RUN 状態 )
リセットベクタが示す
アドレスから命令コードを
取り込んで命令を実行
■ モード端子
モード端子 (MD0 ∼ MD2) は , リセットベクタとモードデータの取込み方法を指定しま
す。リセットベクタとモードデータの取込みはリセットシーケンスで行います。モー
ド端子の詳細は , 「9.1.1 モード端子」を参照してください。
124
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 7 章 リセット
7.4 リセット動作
MB90990 シリーズ
■ モードフェッチ
リセットが解除されると , CPU はリセットベクタとモードデータを CPU コア内の該当
レジスタ内にハードウェア転送します。リセットベクタとモードデータは ,
"FFFFDCH" ∼ "FFFFDFH" の 4 バイトに割り当てられています。CPU は , リセット解除
で直ちにこれらのアドレスをバスに出力し,リセットベクタとモードデータを取り込み
ます。このモードフェッチで , CPU はリセットベクタが指すアドレスから処理を開始
します。
図 7.4-2 に , リセットベクタとモードデータの転送を示します。
図 7.4-2 リセットベクタとモードデータの転送
F2MC-16LX CPU コア
メモリ空間
FFFFDFH
モードデータ
FFFFDEH
リセットベクタビット (23 ∼ 16)
FFFFDDH
リセットベクタビット (15 ∼ 8)
FFFFDCH
リセットベクタビット (7 ∼ 0)
モードレジスタ
マイクロ ROM
リセットシーケンス
PCB
PC
● モードデータ ( アドレス :FFFFDFH)
モードレジスタの内容を変更できるのはリセット動作だけで,モードレジスタの設定は
リセット動作以降に有効となります。モードデータの詳細は , 「9.1.2 モードデータ」
を参照してください。
● リセットベクタ ( アドレス :FFFFDCH ∼ FFFFDEH)
リセット動作終了後の実行開始アドレスを書き込んでおきます。この内容のアドレス
から実行を開始します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
125
第 7 章 リセット
7.5 リセット要因ビット
7.5
MB90990 シリーズ
リセット要因ビット
リセット発生要因は , ウォッチドッグタイマ制御レジスタ (WDTC) を読み出すこと
で識別できます。
■ リセット要因ビット
図 7.5-1 に示すように , それぞれのリセット要因には対応したフリップフロップがあり
ます。これらの内容はウォッチドッグタイマ制御レジスタ (WDTC) を読み出すと得ら
れます。リセット解除後にリセット発生要因を識別する必要がある場合には , ウォッチ
ドッグタイマ制御レジスタ (WDTC) の読出し値をソフトウェアで処理した上で適切な
プログラムへ分岐するようにしてください。
図 7.5-1 リセット要因ビットブロックダイヤグラム
RST端子
定期的なクリアなし
電源電圧低下
CPU動作検出
リセット
要求検出回路
低電圧
検出回路
クロック
スーパバイザ
回路
定期的な
クリアなし
電源投入
RST="L"
ウォッチドッグ
タイマリセット
発生検出回路
パワーオン
発生検出回路
外部リセット
要求検出回路
RSTビットセット
LPMCR,RSTビット
書込み検出回路
クリア
ウォッチドッグ
タイマ制御
レジスタ
(WDTC)
S
R
S
Q
R
S
F/F
F/F
Q
R
S
F/F
Q
R
F/F
遅延回路
Q
ウォッチドッグタイマ
制御レジスタ
(WDTC)読出し
内部データバス
S :設定
R :リセット
Q :出力
F/F:フリップフロップ
126
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 7 章 リセット
7.5 リセット要因ビット
MB90990 シリーズ
■ リセット要因ビットとリセット要因の対応
ウォッチドッグタイマ制御レジスタ (WDTC) のリセット要因ビットの構成を図 7.5-2
に , リセット要因ビットの内容とリセット要因の対応を 表 7.5-1 に示します。詳細は ,
「12.3.1 ウォッチドッグタイマ制御レジスタ (WDTC)」を参照してください。
図 7.5-2 リセット要因ビットの構成 ( ウォッチドッグタイマ制御レジスタ )
ウォッチドッグタイマ制御レジスタ (WDTC)
アドレス bit15 ........ bit8
0000A8H
(TBTC)
bit7
bit6
R
R
: リードオンリ
W
: ライトオンリ
X
: 不定
bit5
bit4
bit3
PONR 予約 WRST ERST SRST
R
R
R
R
bit2
bit1
bit0
WTE
WT1
WT0
W
W
W
初期値
X1XXX111B
表 7.5-1 リセット要因ビットの内容とリセット要因の対応
LVRC
PONR
リセット要因
WRST
ERST
CSVCR
SRST
LVRF
CPUF
MM
パワーオンリセット要求の発生
1
X
X
X
△
△
0
ウォッチドッグタイマオーバフロー
によるリセット要求の発生
△
1
△
△
△
△
△
RST 端子からの外部リセット要求
△
△
1
△
0
0
0
低電圧検出リセット
△
△
1
△
1
△
0
CPU 動作検出リセット
△
△
1
△
△
1
△
クロックスーパバイザ
( 発振クロック停止 )
△
△
1
△
△
△
1
ソフトウェアリセット要求の発生
△
△
△
1
△
△
△
△ : 前の状態を保持
X : 不定
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
127
第 7 章 リセット
7.5 リセット要因ビット
MB90990 シリーズ
■ リセット要因ビットと低電圧検出ビットの状態
図 7.5-3 リセット要因ビットと低電圧検出ビットの状態
電源投入時の
フラグの状態
低電圧検出
ビット
ビット
(4 V)時の
クリア フラグの状態 クリア
VCC=4V
VCC
①
PONRビット
(パワーオン)
ERSTビット
(外部リセット入力, CPU
動作検出またはLVRF=1)
LVRFビット*
(低電圧検出 4V ± 0.2V)
1
②
③
④
→
0
→
0
→
0
→
0
→
1
→
0
→
0
→
1
→
0
1
または
0
1
または
0
* : LVRFビットは低電圧/CPU動作検出リセット制御レジスタ(LVRC)にあります。
①電源投入時
電源投入によりパワーオンリセットビット (PONR) および ERST, LVRF が "1" になりま
す。ただし , 電源立上りが急峻な場合 , ERST, LVRF が "0" になる場合があります。
②ビットクリア
WDTC レジスタ読出し , LVRF への "0" 書込みでクリアされます。
③低電圧検出 (4.0 V ± 0.2 V) 時
VCC = 4.0 V ± 0.2 V の低電圧検出で LVRF ビットと ERST ビットが "1" になります。
④ビットクリア
WDTC レジスタ読出し , LVRF への "0" 書込みでクリアされます。
128
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 7 章 リセット
7.5 リセット要因ビット
■ リセット要因ビットの注意事項
● 複数のリセット要因が発生した場合
リセット要因が複数発生する場合は , ウォッチドッグタイマ制御レジスタ (WDTC) の
対応するそれぞれのリセット要因ビットが "1" にセットされます。例えば , RST 端子か
らの外部リセット要求の発生とウォッチドッグタイマのオーバフローが同時に発生し
た場合 , ERST ビットと WRST ビットの両方が "1" になります。
● パワーオンリセットの場合
パワーオンリセットの場合には PONR ビットが "1" にセットされますが , PONR ビット
以外のリセット要因ビットは不定となります。このため , PONR ビットが "1" の場合は
PONR ビット以外のリセット要因ビットを無視するようにソフトウェアを作成してく
ださい。
● リセット要因ビットのクリア
リセット要因ビットは , ウォッチドッグタイマ制御レジスタ (WDTC) を読み出したと
きにのみクリアされます。それぞれのリセット要因に対応するビットに生じたフラグ
はその後 , ほかの要因でリセットが発生してもクリアされず "1" のままとなります。
<注意事項>
パワーオンリセットが発生しない条件で電源を立ち上げた場合は , このレジスタの値は保
証されません。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
129
第 7 章 リセット
7.6 リセットによる各端子の状態
7.6
MB90990 シリーズ
リセットによる各端子の状態
リセットによる各端子の状態について説明します。
■ リセット中の端子の状態
リセット中の端子の状態は , モード端子 (MD2 ∼ MD0) の設定によって決定されます。
リセット中の各端子の状態は「8.7 スタンバイモードとリセット時の端子状態」を参照
してください。
● 内部ベクタモード設定時 (MD2 ∼ MD0=011B)
I/O 端子 ( 周辺機能端子 ) はすべてハイインピーダンスになり , モードデータの読出し
先は内部 ROM になります。
■ モードデータ読出し後の端子の状態
モードデータ読出し後の端子の状態は,モードデータ(M1, M0)によって決定されます。
● シングルチップモード選択時 (M1, M0=00B)
I/O 端子 ( 周辺機能端子 ) はすべてハイインピーダンスになり , モードデータの読出し
先は内部 ROM になります。
<注意事項>
リセット要因が発生したときにハイインピーダンスとなる端子は , その端子に接続した機
器が誤動作しないように配慮してください。
130
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第8章
低消費電力モード
低消費電力モードについて説明します。
8.1 低消費電力モードの概要
8.2 低消費電力回路のブロックダイヤグラム
8.3 低消費電力モード制御レジスタ (LPMCR)
8.4 CPU 間欠動作モード
8.5 スタンバイモード
8.6 スタンバイモードの状態遷移
8.7 スタンバイモードとリセット時の端子状態
8.8 低消費電力モード使用上の注意
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
131
第 8 章 低消費電力モード
8.1 低消費電力モードの概要
8.1
MB90990 シリーズ
低消費電力モードの概要
CPU 動作モードは , 動作クロックの選択とクロックの発振制御によって次の動作
モードに分類されます。PLL クロックモードを除く動作モードが低消費電力モード
に属します。
• クロックモード
: メインクロックモード , PLL クロックモード ,
サブクロックモード
• CPU 間欠動作モード : メインクロック間欠動作モード , PLL クロック間欠動作
モード , サブクロック間欠動作モード
• スタンバイモード
: スリープモード , ストップモード , 時計モード , タイム
ベースタイマモード
■ CPU 動作モードと消費電流
CPU 動作モードと消費電流の関係を図 8.1-1 に示します。
図 8.1-1 CPU 動作モードと消費電流
消費電流
数十mA
CPU
動作モード
PLLクロックモード
8逓倍クロック
6逓倍クロック
4逓倍クロック
3逓倍クロック
2逓倍クロック
1逓倍クロック
PLLクロック間欠動作モード
8逓倍クロック
6逓倍クロック
4逓倍クロック
3逓倍クロック
2逓倍クロック
1逓倍クロック
メインクロックモード(1/2HCLK)
メインクロック間欠動作モード
サブクロックモード(CR発振周波数の1/8または1/4)
サブクロック間欠動作モード
数mA
スタンバイモード
スリープモード
タイムベースタイマモード
時計モード
数μA
ストップモード
低消費電力モード
この図は,動作モードのイメージを示した図で,実際の消費電流とは異なる部分があります。
132
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 8 章 低消費電力モード
8.1 低消費電力モードの概要
■ クロックモード
● PLL クロックモード
発振クロック (HCLK) の PLL 逓倍クロックで , CPU および周辺機能を動作させるモー
ドです。
● メインクロックモード
発振クロック (HCLK) の 2 分周クロックで CPU および周辺機能を動作させるモードで
す。メインクロックモード時には , PLL 逓倍回路が停止します。
● サブクロックモード
サブクロック (SCLK) で CPU および周辺機能を動作させるモードです。サブクロック
は CR 発振からのクロックの 8 分周または 4 分周を選択できます。サブクロックモー
ド時には , メインクロックおよび PLL 逓倍回路が停止します。電源投入時またはストッ
プモードからの解除時は , サブクロックの発振安定待ち時間 214/SCLK ( 発振クロック
周波数 100 kHz, 8 分周設定で動作している場合 : 約 1.3 秒 ) が発生します。したがって ,
その間にメインクロックモードからサブクロックモードに切り換えた場合は,発振安定
待ち時間が発生します。
<参考>
クロックモードについては ,「第 5 章 クロック」を参照してください。
■ CPU 間欠動作モード
周辺機能には高速クロックを供給したまま CPU を間欠動作させ , 消費電力を低減する
モードです。CPU 間欠動作モードは , CPU がレジスタ , 内蔵メモリ周辺機能および外
部アクセスを行う場合 , CPU にだけ間欠クロックを入力するモードです。
■ スタンバイモード
スタンバイモードでは , スタンバイ制御回路によって CPU または周辺機能への動作ク
ロックの供給の停止や,発振クロック(HCLK)の停止によって消費電力を低減できます。
● スリープモード
スリープモードは,各クロックモード動作中にCPUへの動作クロックを停止させるモー
ドです。CPU は停止し , 周辺機能はスリープモード移行前のクロックで動作します。ス
リープモードに移行する際のクロックモードによって , メインスリープモード , PLL ス
リープモード , サブスリープモードに分かれます。
● 時計モード
時計モードは , サブクロック (SCLK) と時計タイマと低電圧検出回路だけを動作させる
モードです。メインクロック , PLL クロックは停止します。時計タイマと低電圧検出
回路以外の周辺機能は停止します。時計タイマ制御レジスタ (WTC) の WDCS ビット
が "0" のとき , ウォッチドッグタイマは動作を継続します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
133
第 8 章 低消費電力モード
8.1 低消費電力モードの概要
MB90990 シリーズ
● タイムベースタイマモード
タイムベースタイマモードは , 発振クロック (HCLK) とサブクロック (SCLK), ウォッチ
ドッグタイマ , タイムベースタイマ , 時計タイマと低電圧検出回路だけを動作させる
モードです。タイムベースタイマ , ウォッチドッグタイマ , 時計タイマと低電圧検出回
路以外の周辺機能は停止します。
● ストップモード
ストップモードは , 各クロックモード動作中に発振クロック (HCLK) とサブクロック
(SCLK) を停止させるモードで , 低電圧検出回路以外の機能が停止します。最も消費電
力が少ない状態でデータを保持できます。
<注意事項>
クロックモードを切り換えた場合 , 切換えが完了するまでは , ほかのクロックモードおよ
び低消費電力モードへの切換えを行わないでください。切換えの完了はクロック選択レジ
スタ (CKSCR) の MCM ビットおよび SCM ビットを参照して確認してください。切換え
が完了する前に,ほかのクロックモードおよび低消費電力モードへの切換えを行った場合,
切り換わらない場合があります。
134
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 8 章 低消費電力モード
8.2 低消費電力回路のブロックダイヤグラム
MB90990 シリーズ
低消費電力回路のブロックダイヤグラム
8.2
低消費電力回路のブロックダイヤグラムを示します。
■ 低消費電力回路のブロックダイヤグラム
図 8.2-1 低消費電力回路のブロックダイヤグラム
低消費電力モード制御レジスタ(LPMCR)
STP
RST
SLP
SPL
RST
TMD
CG1
CG0 予約
端子
端子ハイインピー
ダンス制御回路
端子Hi-Z制御
内部リセット
発生回路
内部リセット
CPU間欠動作
サイクルセレクタ
間欠サイクル選択
CPUクロック
制御回路
リセット(解除)
時計,スリープ,ストップ信号
スタンバイ
制御回路
2
CPU動作
クロック
時計,ストップ信号
割込み(解除)
周辺クロック
制御回路
周辺機能
動作クロック
サブクロック発振安定待ち解除
メインクロック発振安定待ち解除
クロック
発生部
動作クロック
セレクタ
マシン
クロック
2
CS2
PLL/サブクロック
制御レジスタ
(PSCCR):bit8
発振安定
待ち時間
セレクタ
2
PLL逓倍回路
SCM
MCM
WS1
WS0
SCS
MCS
CS1
CS0
クロック選択レジスタ(CKSCR)
クロック
セレクタ
X0 端子
2分周
発振クロック
(HCLK)
X1 端子
メインクロック
発振回路
2分周
クロック
セレクタ
サブクロック
(SCLK)
4分周/
2分周
4分周
512分周
2分周
メイン
クロック
タイムベースタイマ
1024分周
2分周
2分周
2分周
2分周
4分周
ウォッチドッグタイマへ
8分周
2分周
2分周
時計タイマ
SCDS
内蔵CR
発振クロック
クロックスーパバイザ
CM44-10149-4
PLL/サブクロック
制御レジスタ
(PSCCR):bit10
FUJITSU MICROELECTRONICS LIMITED
135
第 8 章 低消費電力モード
8.2 低消費電力回路のブロックダイヤグラム
MB90990 シリーズ
● CPU 間欠動作サイクルセレクタ
CPU 間欠動作モードでの CPU クロックの一時停止サイクル数を選択します。
● スタンバイ制御回路
CPU クロック制御回路と周辺クロック制御回路によって , CPU 動作クロックと周辺機
能動作クロックを切り換え , スタンバイモードへの移行と解除を行います。
● CPU クロック制御回路
CPU に動作クロックを供給する回路です。
● 端子ハイインピーダンス制御回路
時計モード , タイムベースタイマモード , ストップモードの場合に入出力端子をハイイ
ンピーダンスにします。
● 内部リセット発生回路
内部リセット信号を発生します。
● 低消費電力モード制御レジスタ (LPMCR)
スタンバイモードへの移行と解除 , CPU 間欠動作モードの設定などを行います。
136
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 8 章 低消費電力モード
8.3 低消費電力モード制御レジスタ (LPMCR)
MB90990 シリーズ
8.3
低消費電力モード制御レジスタ (LPMCR)
低消費電力モード制御レジスタ (LPMCR) は , 低消費電力モードへの移行と解除 , 内
部リセット信号の発生 , CPU 間欠動作モードの一時停止サイクル数の設定などを行
います。
■ 低消費電力モード制御レジスタ (LPMCR)
図 8.3-1 低消費電力モード制御レジスタ (LPMCR)
bit 7
アドレス
0000A0H
6
5
4
3
2
1
0
初期値
STP SLP SPL RST TMD CG1 CG0 予約
W
W
R/W
W
W
00011000B
R/W R/W R/W
bit0
予約
0
予約ビット
必ず"0"に設定してください
bit2 bit1
CG1 CG0
CPU一時停止サイクル数選択ビット
0
0
0サイクル(CPUクロック=周辺クロック)
0
1
8サイクル(CPUクロック:周辺クロック=1:約3~4)
1
0
16サイクル(CPUクロック:周辺クロック=1:約5~6)
1
1
32サイクル(CPUクロック:周辺クロック=1:約9~10)
bit3
TMD
0
1
時計モードビット
時計モードまたはタイムベースタイマモードに遷移
影響なし
bit4
RST
0
1
内部リセット信号発生ビット
3マシンサイクルの内部リセット信号を発生
bit5
SPL
0
1
端子状態設定ビット
入出力端子の状態を保持
影響なし
ハイインピーダンス
タイムベースタイマ・時計・ストップモードの場合のみ有効
bit6
SLP
0
1
スリープモードビット
影響なし
スリープモードに遷移
bit7
STP
R/W
W
CM44-10149-4
:リード/ライト可能
:ライトオンリ
:初期値
ストップモードビット
0
影響なし
1
ストップモードに遷移
FUJITSU MICROELECTRONICS LIMITED
137
第 8 章 低消費電力モード
8.3 低消費電力モード制御レジスタ (LPMCR)
MB90990 シリーズ
表 8.3-1 低消費電力モード制御レジスタ (LPMCR) の機能
ビット名
STP:
ストップモードビット
ストップモードに移行します。
"0" に設定した場合 : 影響しません。
"1" に設定した場合 : ストップモードに移行します。
読み込んだ場合 : 常に "0" が読み出されます。
リセットあるいは外部割込み発生で "0"
に初期化されます。
SLP:
スリープモードビット
スリープモードに移行します。
"0" に設定した場合 : 影響しません。
"1" に設定した場合 : スリープモードに移行します。
読み込んだ場合 : 常に "0" が読み出されます。
• リセットあるいは外部割込み発生で "0" に初期化され
ます。
• STP ビットと SLP ビットに同時に "1" をセットした場
合は , STP ビットが優先され , ストップモードに移行
します。
bit5
SPL:
端子状態設定ビット
ストップモード , 時計モード , タイムベースタイマモード
に移行した場合の入出力端子の状態を設定します。
"0" に設定した場合 : 入出力端子の現在のレベルを保持し
ます。
"1" に設定した場合 : 入出力端子をハイインピーダンスに
します。
リセットで "0" に初期化されます。
bit4
RST:
内部リセット信号発生
ビット
ソフトウェアリセットを発生します。
"0" に設定した場合 : 3 マシンサイクルの内部リセット信
号が発生されます。
"1" に設定した場合 : 影響しません。
読み込んだ場合 : 常に "1" が読み出されます。
bit3
TMD:
時計モードビット
時計モードまたはタイムベースタイマモードに移行しま
す。
"0" に設定した場合 : メインクロックモードまたは PLL ク
ロックモードであればタイムベー
スタイマモードに移行します。サ
ブクロックモードであれば時計
モードに移行します。
"1" に設定した場合 : 影響しません。
リセットや割込みにより "1" がセットされます。
読み込んだ場合 : 常に "1" が読み出されます。
bit2,
bit1
CG1, CG0:
CPU 一時停止
サイクル数選択
ビット
CPU 間欠動作モードでの CPU クロックの一時停止サイ
クル数を設定します。
すべてのリセットにより初期値に戻ります。
bit0
予約 : 予約ビット
必ず "0" に設定してください。
bit7
bit6
138
機 能
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 8 章 低消費電力モード
8.3 低消費電力モード制御レジスタ (LPMCR)
MB90990 シリーズ
<注意事項>
• 低消費電力モード制御レジスタ (LPMCR) において , 低消費電力モードに移行する設定
を行う場合は , 表 8.3-2 の命令を使用してください。下記の一覧以外の命令を使用して
低電力消費モードに移行した場合の動作保証はできません。
• 表 8.3-2 の命令によるスタンバイモード遷移命令の直後には必ず下記
内の命令列
を配置してください。
MOV LPMCR, #H’ xx
; 表 8.3-2 の低消費電力モード遷移命令
NOP
NOP
JMP $+3
; 次の命令へのジャンプ
MOV A, #H’ 10
; 任意の命令
内の命令列以外が配置されるとスタンバイモード解除後の動作は保証されませ
ん。
• C 言語を使用して低消費電力モード制御レジスタをアクセスする場合は ,「8.8 低消費
電力モード使用上の注意」の「■スタンバイモード遷移のための低消費電力モード制
御レジスタ (LPMCR) へアクセスする際の注意事項」を参照してください。
• 低消費電力モード制御レジスタ (LPMCR) にワード単位で書込みを行う場合は , 偶数ア
ドレスで書込みを行ってください。奇数アドレスで書込みを行うと誤動作の原因にな
ることがあるのでご注意ください。
• ストップモード , 時計モード , タイムベースタイマモード時に周辺機能とポートを兼用
している端子をハイインピーダンスに設定する場合は,周辺機能の出力を禁止に設定し
た後 , 低消費電力モード制御レジスタ (LPMCR) の STP ビットを "1" または TMD ビッ
トを "0" に設定してください。
表 8.3-2 低消費電力モードに遷移する場合に使用する命令一覧
MOV
io,#imm8
MOV
dir,#imm8
MOV
eam,#imm8
MOV
eam,Ri
MOV
io,A
MOV
dir,A
MOV
addr16,A
MOV
eam,A
MOV
@RLi+disp8,A
MOVW
io,#imm16
MOVW
dir,#imm16
MOVW
eam,#imm16
MOVW eam,RWi
MOVW
io,A
MOVW
dir,A
MOVW
addr16,A
MOVW eam,A
[email protected]+disp8,A
CM44-10149-4
SETB
io:bp
SETB
dir:bp
SETB
addr16:bp
CLRB
io:bp
CLRB
dir:bp
CLRB
addr16:bp
FUJITSU MICROELECTRONICS LIMITED
139
第 8 章 低消費電力モード
8.4 CPU 間欠動作モード
8.4
MB90990 シリーズ
CPU 間欠動作モード
CPU 間欠動作モードは , CPU と周辺機能に動作クロックを供給したまま , CPU を間
欠動作させることによって消費電力を低減する動作モードです。
■ CPU 間欠動作モードの動作
CPU 間欠動作モードでは , レジスタや内蔵メモリ , I/O, 周辺機能および外部バスに CPU
がアクセスする際に CPU に供給されるクロックを 1 命令実行するごとに一時停止させ
て内部バスの起動を遅らせます。周辺機能には高速のクロックを供給しながら , CPU
の実行速度を下げることによって消費電力を低減できます。
• CPU へのクロック供給を一時停止するマシンサイクル数は , 低消費電力モード制御
レジスタ (LPMCR) の CG1, CG0 ビットで設定します。
• CPU 間欠動作モードの命令実行時間は , レジスタ , 内蔵メモリ , 周辺機能にアクセス
を行う回数に一時停止サイクル数を掛けた補正値と通常の実行時間を加算するこ
とによって求められます。
CPU 間欠動作モードのクロック動作を , 図 8.4-1 に示します。
図 8.4-1 CPU 間欠動作モードのクロック動作
周辺クロック
CPUクロック
一時停止サイクル
1命令実行
サイクル
内部バス起動
140
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 8 章 低消費電力モード
8.5 スタンバイモード
MB90990 シリーズ
スタンバイモード
8.5
スタンバイモードでは , スタンバイ制御回路によって CPU または周辺機能への動作
クロックの供給を停止したり , 発振クロックを停止することによって消費電力を低減
します。
■ スタンバイモードの種類と動作状態
スタンバイモードの種類と動作状態を , 表 8.5-1 に示します。
表 8.5-1 スタンバイモードの種類と動作状態 (1 / 2)
モード名
スリープ
モード
タイム
ベース
タイマ
モード
発振
サブ
ウォッチ
マシン CPU
遷移条件 クロック クロック
ドッグ
(HCLK) (SCLK) クロック
タイマ
周辺
機能
端子
解除方法
MCS=1
メイン
スリープ SCS=1
SLP=1
モード
○
○
○
×
○ *1
○
○
外部リセット
または
割込み
SCKS=1
MCS=X
サブ
スリープ SCS=0
SLP=1
モード
WDCS=0
×
○
○
×
○ *1
○
○
外部リセット
または
割込み
SCKS=1
MCS=X
サブ
スリープ SCS=0
SLP=1
モード
WDCS=1
×
○
○
×
― *2
○
○
外部リセット
または
割込み
PLL
MCS=0
スリープ SCS=1
SLP=1
モード
○
○
○
×
○ *1
○
○
外部リセット
または
割込み
○
*1
×
◇
外部リセット
または
割込み *4
○
*1
× *3
SPL=0
MCS=X
SCS=1
TMD=0
○
○
×
×
SPL=1
MCS=X
SCS=1
TMD=0
○
○
×
×
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
*3
外部リセット
Hi-Z*5 または
割込み *4
141
第 8 章 低消費電力モード
8.5 スタンバイモード
MB90990 シリーズ
表 8.5-1 スタンバイモードの種類と動作状態 (2 / 2)
発振
サブ
ウォッチ
マシン CPU
遷移条件 クロック クロック
ドッグ
(HCLK) (SCLK) クロック
タイマ
周辺
機能
端子
解除方法
SPL=0
SCKS=1
MCS=X
SCS=0
TMD=0
WDCS=0
×
○
×
×
○ *1
× *6
◇
外部リセット
または
割込み *7
SPL=1
SCKS=1
MCS=X
SCS=0
TMD=0
WDCS=0
×
○
×
×
○
*1
*6
SPL=0
SCKS=1
MCS=X
SCS=0
TMD=0
WDCS=1
×
○
×
×
― *2
× *6
SPL=1
SCKS=1
MCS=X
SCS=0
TMD=0
WDCS=1
×
○
×
×
―*2
× *6
SPL=0
STP=1
×
×
×
×
×
×
SPL=1
STP=1
×
×
×
×
×
×
モード名
時計
モード
×
ストップ
モード
外部リセット
Hi-Z*5 または
割込み *7
◇
外部リセット
または
割込み *7
外部リセット
Hi-Z*5 または
割込み *7
◇
外部リセット
または
割込み *8
外部リセット
Hi-Z*5 または
割込み *8
○
: 動作 × : 停止 ◇ : 移行前の状態を保持 Hi-Z : ハイインピーダンス
*1
: モード遷移時 , ウォッチドッグタイマはいったんクリアされます。
*2
: ウォッチドッグタイマは使用できません。
*3
: タイムベースタイマ , 時計タイマと低電圧検出機能は動作します。
*4
: 時計タイマ , タイムベースタイマおよび外部割込み
*5
:DTP/ 外部割込みの入力端子は動作します。
*6
: 時計タイマは動作します。
*7
: 時計タイマおよび外部割込み
*8
: 外部割込み
MCS : クロック選択レジスタ (CKSCR) の PLL クロック選択ビット
SCS : クロック選択レジスタ (CKSCR) のサブクロック選択ビット
SPL : 低消費電力モード制御レジスタ (LPMCR) の端子状態設定ビット
SLP : 低消費電力モード制御レジスタ (LPMCR) のスリープモードビット
STP : 低消費電力モード制御レジスタ (LPMCR) のストップモードビット
TMD : 低消費電力モード制御レジスタ (LPMCR) の時計モードビット
SCKS : クロックスーパバイザ制御レジスタ (CSVCR) のサブクロック選択ビット
<注意事項>
ストップモード , 時計モード , タイムベースタイマモード時に周辺機能とポートを兼用している端
子をハイインピーダンスに設定する場合は , 周辺機能の出力を禁止に設定した後 , 低消費電力モー
ド制御レジスタ (LPMCR) の STP ビットを "1" または TMD ビットを "0" に設定してください。
142
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 8 章 低消費電力モード
8.5 スタンバイモード
MB90990 シリーズ
スリープモード
8.5.1
スリープモードは , 各クロックモード動作中に CPU への動作クロックを停止させる
動作モードです。CPU は停止し周辺機能は動作します。
■ スリープモードへの移行
低 消費 電 力 モー ド 制御 レ ジス タ の設 定 によ り ス リー プ モー ド に移 行 した 場 合 は
(LPMCR: SLP=1, STP=0), クロック選択レジスタ (CKSCR) の MCS ビット , SCS ビット
の設定に従ってスリープモードに移行します。
クロック選択レジスタ (CKSCR) の MCS ビット , SCS ビットの設定とスリープモード
の対応を表 8.5-2 に示します。
表 8.5-2 クロック選択レジスタ (CKSCR) の設定とスリープモード
クロック選択レジスタ (CKSCR)
移行するスリープモード
MCS
SCS
1
1
メインスリープモード
0
1
PLL スリープモード
1
0
0
0
サブスリープモード
<注意事項>
低消費電力モード制御レジスタ (LPMCR) の STP ビットと SLP ビットに同時に "1" をセッ
トした場合は , STP ビットが優先され , ストップモードに移行します。また , SLP ビット
に "1", TMD ビットに "0" を同時に設定した場合は , TMD ビットが優先され , タイムベー
スタイマモードまたは時計モードに移行します。
● データ保持機能
スリープモード中は , アキュムレータなどの専用レジスタと内部 RAM の内容が保持さ
れます。
● 割込み要求が発生している場合の動作
低消費電力モード制御レジスタ (LPMCR) の SLP ビットに "1" を設定した場合に割込み
要求が発生しているとスリープモードには移行しません。CPU が割込み要求を受け付
けない状態であれば現在実行されている命令の次の命令を実行します。逆に , CPU が
割込み要求を受け付けられる状態であれば , 直ちに割込み処理ルーチンに分岐します。
● 端子状態
スリープモード中は , スリープモードに移行する前の状態を保持します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
143
第 8 章 低消費電力モード
8.5 スタンバイモード
MB90990 シリーズ
■ スリープモードからの復帰
スリープモードは , リセット要因または割込みの発生によって解除されます。
● リセット要因による復帰
リセット要因によってスリープモードが解除された場合は,スリープモード解除後にメ
インクロックモードに移行し , リセットシーケンスに移行します。
<注意事項>
外部リセット端子 (RST 端子 ) により , サブスリープモードからメインクロックモードへ
復帰するには , 振動子の発振時間 *+100μs+16 マシンサイクル ( メインクロック ) 以上の
期間 "L" レベルを入力してください。
*: 振動子の発振時間は , 振幅が 90% に達する時間です。水晶振動子は数 ms ∼数十 ms, セ
ラミック振動子は数百 μs ∼数 ms となります。
● 割込みによる復帰
スリープモード中に , 周辺機能などから割込みレベル (IL) が 7 より強い割込み要求が
発生した場合はスリープモードが解除されます。発生した割込み要求は , スリープモー
ド解除後 , 通常の割込み処理と同様にコンディションコードレジスタ (CCR) の I フラグ ,
割込みレベルマスクレジスタ (ILM), 割込み制御レジスタ (ICR) の設定に従って , 割込
み要求の判定が行われます。
• CPU が割込み要求を受け付けない状態の場合は , 現在実行されている命令の次の命
令を実行します。
• CPU が割込み要求を受け付けられる状態の場合は , 直ちに割込み処理ルーチンに分
岐します。
割込み発生によるスリープモードの解除を図 8.5-1 に示します。
図 8.5-1 割込み発生によるスリープモードの解除
周辺機能の割込みフラグ設定
INT発生(IL<7)
NO
スリープ解除しない
スリープ解除しない
YES
I = 0
YES
スリープ解除する
次の命令を実行
NO
ILM<IL
YES
NO
割込み処理の実行
<注意事項>
割込み処理を実行する場合 , 通常はスリープモードを指定した命令の次の命令を実行した
後に割込み処理に移行します。
144
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 8 章 低消費電力モード
8.5 スタンバイモード
時計モード
8.5.2
時計モードは , サブクロック (SCLK) のみを動作させ , 時計タイマと低電圧検出回路
だけを動作させるモードです。メインクロック , PLL クロックは停止します。
時計タイマ制御レジスタ (WTC) の WDCS ビットが "0" のとき , ウォッチドッグタ
イマは動作を継続します。
■ 時計モードへの移行
低消費電力モード制御レジスタ (LPMCR) の設定によりサブクロックモードの状態で
LPMCR の TMD ビットに "0" を書き込んだ場合は , 時計モードに移行します。
● データ保持機能
時計モード中は , アキュムレータなどの専用レジスタと内部 RAM の内容が保持されま
す。
● 割込み要求が発生している場合の動作
低消費電力モード制御レジスタ (LPMCR) の TMD ビットに "0" を設定した場合に , 割
込み要求が発生していると時計モードには移行しません。CPU が割込み要求を受け付
けない状態であれば現在実行されている命令の次の命令を実行します。逆に CPU が割
込み要求を受け付けられる状態であれば , 直ちに割込み処理ルーチンに分岐します。
● 端子状態
時計モード中の入出力端子の状態は , 低消費電力モード制御レジスタ (LPMCR) の SPL
ビットによって,ハイインピーダンス状態にするか時計モード移行前の状態を保持する
かを設定できます。
<注意事項>
時計モード時に , 周辺機能とポートを兼用している端子をハイインピーダンスに設定する
場合は , 周辺機能の出力を禁止に設定した後 , 低消費電力モード制御レジスタ (LPMCR) の
TMD ビットを "0" に設定してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
145
第 8 章 低消費電力モード
8.5 スタンバイモード
MB90990 シリーズ
■ 時計モードからの復帰
時計モードはリセット要因または割込みの発生によって解除されます。
● リセット要因による復帰
リセット要因によって時計モードが解除された場合は , 時計モード解除後にメインク
ロックモードに移行し , リセットシーケンスに移行します。
● 割込みによる復帰
時計モード中に , 時計タイマおよび外部割込みから割込みレベル (IL) が 7 より強い割
込み要求が発生した場合は , 時計モードが解除されます。時計モード解除後は , 通常の
割込み処理と同様にコンディションコードレジスタ (CCR) の I フラグ , 割込みレベルマ
スクレジスタ (ILM), 割込み制御レジスタ (ICR) の設定に従って割込み要求の判定が行
われます。サブクロックモードの場合は , 発振安定待ち時間はないので時計モード復帰
後 , 直ちに発生した割込み要求の判定が行われます。
• CPU が割込み要求を受け付けない状態の場合は , 現在実行されている命令の次の命
令を実行します。
• CPU が割込み要求を受け付けられる状態の場合は , 直ちに割込み処理ルーチンに分
岐します。
<注意事項>
割込み処理を実行する場合 , 通常は時計モードを指定した命令の次の命令を実行した後に
割込み処理に移行します。
146
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 8 章 低消費電力モード
8.5 スタンバイモード
タイムベースタイマモード
8.5.3
タイムベースタイマモードは , 発振クロック (HCLK) とサブクロック (SCLK), タイ
ムベースタイマ , ウォッチドッグタイマ , 時計タイマと低電圧検出回路だけを動作さ
せるモードです。タイムベースタイマ , ウォッチドッグタイマ , 時計タイマと低電圧
検出回路以外の周辺機能は停止します。
■ タイムベースタイマモードへの移行
PLL クロックモードまたはメインクロックモードの動作中に (CKSCR: SCM=1), 低消費
電力モード制御レジスタ (LPMCR) の TMD ビットに "0" を書き込んだ場合はタイムベー
スタイマモードに移行します。
● データ保持機能
タイムベースタイマモード中は , アキュムレータなどの専用レジスタと内部 RAM の内
容が保持されます。
● 割込み要求が発生している場合の動作
低消費電力モード制御レジスタ (LPMCR) の TMD ビットに "0" を設定した場合に , 割
込み要求が発生しているとタイムベースタイマモードには移行しません。CPU が割込
み要求を受け付けない状態であれば現在実行されている命令の次の命令を実行しま
す。逆に CPU が割込み要求を受け付けられる状態であれば , 直ちに割込み処理ルーチ
ンに分岐します。
● 端子状態
タイムベースタイマモード中の入出力端子の状態は低消費電力モード制御レジスタ
(LPMCR) の SPL ビットによって , ハイインピーダンス状態にするかタイムベースタイ
マモード移行前の状態を保持するかを設定できます。
<注意事項>
タイムベースタイマモード時に周辺機能とポートを兼用している端子をハイインピーダ
ンスに設定する場合は , 周辺機能の出力を禁止に設定した後 , 低消費電力モード制御レジ
スタ (LPMCR) の TMD ビットを "0" に設定してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
147
第 8 章 低消費電力モード
8.5 スタンバイモード
MB90990 シリーズ
■ タイムベースタイマモードからの復帰
タイムベースタイマモードは , リセット要因または割込みの発生によって解除されま
す。
● リセット要因による復帰
リセット要因によってタイムベースタイマモードが解除された場合は,タイムベースタ
イマモード解除後にメインクロックモードに移行し , リセットシーケンスに移行しま
す。
● 割込みによる復帰
タイムベースタイマモード中に時計タイマ,タイムベースタイマおよび外部割込みから
割込みレベル (IL) が 7 より強い割込み要求が発生した場合は , タイムベースタイマモー
ドが解除されます。発生した割込み要求は , タイムベースタイマモード解除後 , 通常の
割込み処理と同様にコンディションコードレジスタ (CCR) の I フラグ , 割込みレベルマ
スクレジスタ (ILM), 割込み制御レジスタ (ICR) の設定に従って割込み要求の判定が行
われます。
• CPU が割込み要求を受け付けない状態の場合は , 現在実行されている命令の次の命
令を実行します。
• CPU が割込み要求を受け付けられる状態の場合は , 直ちに割込み処理ルーチンに分
岐します。
• タイムベースタイマモードには次の 2 種類があります。
- メインクロック←→タイムベースタイマモード
- PLL クロック←→タイムベースタイマモード
<注意事項>
割込み処理を実行する場合 , 通常はタイムベースタイマモードを指定した命令の次の命令
を実行した後に割込み処理に移行します。
148
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 8 章 低消費電力モード
8.5 スタンバイモード
MB90990 シリーズ
ストップモード
8.5.4
ストップモードは , 各クロックモード動作中に発振クロック (HCLK) とサブクロック
(SCLK) を停止させるモードです。最も消費電力が少ない状態でデータを保持できま
す。
■ ストップモード
PLLクロックモード動作中に(CKSCR: MCS=1, SCS=0),低消費電力モード制御レジスタ
(LPMCR) の STP ビットに "1" を書き込んだ場合は , クロック選択レジスタ (CKSCR) の
MCS ビット , SCS ビットの設定に従ってストップモードに移行します。
クロック選択レジスタ (CKSCR) の MCS ビット , SCS ビットの設定とストップモード
の対応を表 8.5-3 に示します。
表 8.5-3 クロック選択レジスタ (CKSCR) の設定とストップモード
クロック選択レジスタ (CKSCR)
移行するストップモード
MCS
SCS
1
1
メインストップモード
0
1
PLL ストップモード
1
0
0
0
サブストップモード
<注意事項>
低消費電力モード制御レジスタ (LPMCR) の STP ビットと SLP ビットに同時に "1" をセッ
トした場合は , STP ビットが優先され , ストップモードに移行します。
● データ保持機能
ストップモード中は , アキュムレータなどの専用レジスタと内部 RAM の内容が保持さ
れます。
● 割込み要求が発生している場合の動作
低消費電力モード制御レジスタ (LPMCR) の STP ビットに "1" を設定した場合に割込み
要求が発生しているとストップモードには移行しません。CPU が割込み要求を受け付
けない状態であれば現在実行されている命令の次の命令を実行します。逆に , CPU が
割込み要求を受け付けられる状態であれば , 直ちに割込み処理ルーチンに分岐します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
149
第 8 章 低消費電力モード
8.5 スタンバイモード
MB90990 シリーズ
● 端子状態
ストップモード中の入出力端子の状態は , 低消費電力モード制御レジスタ (LPMCR) の
SPL ビットによって,ハイインピーダンス状態にするかストップモード移行前の状態を
保持するかを設定できます。
<注意事項>
ストップモード時に周辺機能とポートを兼用している端子をハイインピーダンスに設定
する場合は , 周辺機能の出力を禁止に設定した後 , 低消費電力モード制御レジスタ
(LPMCR) の STP ビットを "1" に設定してください。
■ ストップモードからの復帰
ストップモードは , リセット要因または割込みの発生によって解除されます。ストップ
モードから復帰する場合は発振クロック (HCLK) およびサブクロック (SCLK) が停止し
ているため,メインクロック発振安定待ち時間またはサブクロック発振安定待ち時間を
経てストップモードが解除されます。
● リセット要因による復帰
リセット要因によってストップモードが解除された場合は,メインクロック発振安定待
ち時間が発生します。メインクロック発振安定待ち時間終了後 , ストップモードが解除
されてリセットシーケンスに移行します。
サブストップモードからの外部リセットによる復帰動作を , 図 8.5-2 に示します。
図 8.5-2 サブストップモードからの外部リセットによる復帰動作
RST端子
ストップモード
メインクロック
発振安定待ち
発振中
サブクロック
発振安定待ち
発振中
PLLクロック
発振安定待ち
CPU動作クロック
CPU動作
メインクロック
停止中
リセットシーケンス
発振中
PLLクロック
通常処理
ストップモード解除
リセット解除
150
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 8 章 低消費電力モード
8.5 スタンバイモード
● 割込みによる復帰
ストップモード中に外部割込みから割込みレベル (IL) が 7 より強い割込み要求が発生
した場合はストップモードが解除されます。ストップモードの場合は , ストップモード
解除後にメインクロック発振安定待ち時間またはサブクロック発振安定待ち時間が発
生します。発生した割込み要求は , メインクロック発振安定待ち時間またはサブクロッ
ク発振安定待ち時間終了後,通常の割込み処理と同様にコンディションコードレジスタ
(CCR) の I フラグ , 割込みレベルマスクレジスタ (ILM), 割込み制御レジスタ (ICR) の設
定に従って割込み要求の判定が行われます。
• CPU が割込み要求を受け付けない状態の場合は , 現在実行されている命令の次の命
令を実行します。
• CPU が割込み要求を受け付けられる状態の場合は , 直ちに割込み処理ルーチンに分
岐します。
<注意事項>
• 割込み処理を実行する場合,通常はストップモードを指定した命令の次の命令を実行し
た後に割込み処理に移行します。
PLL ストップモードに移行する場合は , クロック選択レジスタの発振安定待ち時間選択
ビット (CKSCR: WS1, WS0) を "10B" または "11B" に設定してください。
• PLL ストップモード中は , メインクロックおよび PLL 逓倍回路が停止しているため ,
PLL ストップモードから復帰する場合はメインクロック発振安定待ち時間および PLL
クロック発振安定待ち時間を確保する必要があります。この場合の発振安定待ち時間
は , クロック選択レジスタの発振安定待ち時間選択ビット (CKSCR:WS1, WS0) に設定
された値に従い , メインクロック発振安定待ち時間および PLL クロック発振安定待ち
時間を同時にカウントしますので, CKSCR:WS1, WS0 ビットには発振安定待ち時間の
長い方に合わせて値を設定してください。ただし , PLL クロック発振安定待ち時間は
214/HCLK 以上必要ですので , CKSCR:WS1, WS0 ビットには "10B" または "11B" を設
定してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
151
第 8 章 低消費電力モード
8.6 スタンバイモードの状態遷移
8.6
MB90990 シリーズ
スタンバイモードの状態遷移
MB90990 シリーズのクロックモードおよびスタンバイモードの動作状態と遷移を
チャートに示します。
■ 状態遷移図
図 8.6-1 状態遷移図
電源電圧低下
(4.0 V)
外部リセット,
ウォッチドッグタイマリセット,
ソフトウェアリセット,
CPU動作検出リセット
電源投入
低電圧検出リセット
リセット
パワーオンリセット
SCKS=1
SCS=0
SCS=1
発振安定待ち終了
SCKS=1
メインクロックモード MCS=0
PLLクロックモード
割込み
メインスリープモード
TMD=0
割込み
SLP=1
TMD=0
割込み
TMD=0
割込み
時計モード
STP =1
PLLストップモード
割込み
割込み
サブスリープモード
PLL
タイムベース
タイマモード
発振安定待ち終了
メインクロック
発振安定待ち
152
割込み
STP=1
メインストップモード
SLP=1
割込み
PLLスリープモード
メイン
タイムベース
タイマモード
STP=1
サブクロックモード
SCS=1
MCS=1
SLP=1
SCS=0
サブストップモード
発振安定待ち終了
PLLクロック
発振安定待ち
FUJITSU MICROELECTRONICS LIMITED
割込み
発振安定待ち終了
サブクロック
発振安定待ち
CM44-10149-4
第 8 章 低消費電力モード
8.7 スタンバイモードとリセット時の端子状態
MB90990 シリーズ
8.7
スタンバイモードとリセット時の端子状態
スタンバイモードとリセット時の各入出力端子の状態をアクセスモードごとに示し
ます。
■ 入出力端子の状態 ( シングルチップモード )
表 8.7-1 入出力端子の状態 ( シングルチップモード )
端子名
スリープ時
ストップ / 時計 /
タイムベースタイマ時 *6
SPL=0
P27 ∼ P20
P44, P43, P41, P40
P53 ∼ P50
P67 ∼ P60
P87 ∼ P85, P83
P42*7
P54 ∼ P57
P80, P82, P84*7
直前の状態を
保持 *2
入力遮断 *4/
直前の状態を
保持 *2
リセット時
SPL=1
入力遮断 *4/
出力 Hi-Z*5
入力不可 *3/
出力 Hi-Z*5
入力可能 *1
*1: 入力可能とは , 入力機能が使用可能であることを意味しています。端子が入力ポートとして設定されてい
る場合は , プルアップ / プルダウン処理をするか外部信号を入力してください。端子が出力ポートに設定
されている場合は , ほかの端子と同じ状態になります。
*2: 各スタンバイモードになる直前に出力していた状態をそのまま出力または入力であれば入力不可を意味し
ます。出力していた状態をそのまま出力する , とは出力のある周辺機能が動作中であれば周辺機能の状態
に従い出力を行い , 出力端子として出力している場合にはその出力を保持するということを意味します。
*3: 入力不可とは , 端子の入力ゲートの動作は許可されているが , 内部回路が停止しているので端子の内容が内
部で受け付けられない状態を意味します。
*4: 入力遮断状態では , 入力はマスクされ , CMOS/Automotive 選択時は "L" レベルが , TTL 選択時は "H" レベル
が内部に伝わります。
*5: 出力 Hi-Z は端子駆動用トランジスタを駆動禁止状態にして , 端子をハイインピーダンスにすることを意味
します。
*6: これらのモードではポート 2 のプルアップ機能は無効になります。
*7: ストップ / 時計 / タイムベースタイマモードでは , 外部割込み要因選択レジスタ EISSR の INTxR ビットが
"1" でかつ DTP/ 外部割込みが許可されているとき (ENIR:EN=1) に入力可能となります。これ以外の設定の
場合入力がマスクされ , CMOS/Automotive 選択時は "L" レベルが , TTL 選択時は "H" レベルが内部に伝わ
ります。
<注意事項>
ストップモード , 時計モード , タイムベースタイマモード時に周辺機能とポートを兼用し
ている端子をハイインピーダンスに設定する場合は,周辺機能の出力を禁止に設定した後,
低消費電力モード制御レジスタ (LPMCR) の STP ビットを "1" または TMD ビットを "0" に
設定してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
153
第 8 章 低消費電力モード
8.8 低消費電力モード使用上の注意
8.8
MB90990 シリーズ
低消費電力モード使用上の注意
低消費電力モードを使用する際には , 以下の点にご注意ください。
■ スタンバイモードへの移行
周辺装置から CPU に対して割込み要求が発生している場合は低消費電力モード制御レ
ジスタ (LPMCR) の STP ビット , SLP ビットに "1" を設定しても TMD ビットに "0" を
設定しても各スタンバイモードには移行しません ( 割込み処理後にも , 各スタンバイ
モードに移行しません )。
CPU が割込み処理中の場合は , 割込み処理中の割込み要求フラグがクリアされて , ほか
に割込み要求が発生していなければスタンバイモードに移行できます。
■ スタンバイモードへ移行する場合の注意
ストップモード , 時計モード , タイムベースタイマモード時に周辺機能とポートを兼用
している端子をハイインピーダンスにするときは以下の手順に従って設定してくださ
い。
1) 周辺機能の出力を禁止します。
2) 低消費電力モード制御レジスタ (LPMCR) の SPL ビットを "1", STP ビットを "1" また
は TMD ビットを "0" に設定します。
■ スタンバイモードの割込みによる解除
スリープモード , 時計モード , タイムベースタイマモード , ストップモード中に , 動作
している周辺機能および外部割込みから割込みレベルが 7 よりも強い割込み要求が発
生した場合 , スタンバイモードは解除されます。割込みによるスタンバイモードの解除
は CPU が割込みを受け付けるかどうかには関係ありません。
<注意事項>
スタンバイモードからの復帰直後に割込み処理に分岐させない場合は , スタンバイモード
設定の前に割込みを禁止するなどの対策を行ってください。
■ スタンバイモードを解除する場合の注意
ストップモードに入る前に外部割込みの入力要因の設定に従った入力により解除でき
ます。入力要因としては "H" レベル , "L" レベル , 立上りエッジ , 立下りエッジが選択
できます。
154
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 8 章 低消費電力モード
8.8 低消費電力モード使用上の注意
■ 発振安定待ち時間
● メインクロック発振安定待ち時間
サブクロックモード , 時計モード , ストップモード中はメインクロックの発振が停止し
ているため , メインクロック発振安定待ち時間を確保する必要があります。発振安定待
ち時間は , クロック選択レジスタ (CKSCR) の WS1, WS0 ビットで設定します。
● サブクロック発振安定待ち時間
サブストップモード中はサブクロック (SCLK) の発振が停止しているため , サブクロッ
ク発振安定待ち時間を確保する必要があります。発振安定待ち時間は , 214/SCLK
(SCLK: サブクロック ) に固定されています。
● PLL クロック発振安定待ち時間
メインクロックモード中は PLL 逓倍回路が停止しているため , PLL クロックモードに
移行する場合は , PLL クロック発振安定待ち時間を確保する必要があります。PLL ク
ロック発振安定待ち時間中は , メインクロックで動作します。メインクロックモードか
ら PLL クロックモードに切り換えた場合の PLL クロック発振安定待ち時間は , 214/
HCLK(HCLK: 発振クロック ) に固定されています。
サブクロックモード中はメインクロックおよびPLL逓倍回路が停止しているため, PLL
クロックモードに移行する場合はメインクロック発振安定待ち時間および PLL クロッ
ク発振安定待ち時間を確保する必要があります。この場合の発振安定待ち時間はク
ロック選択レジスタの発振安定待ち時間選択ビット (CKSCR: WS1, WS0) に設定された
値に従い , メインクロック発振安定待ち時間および PLL クロック発振安定待ち時間を
同時にカウントしますので , CKSCR:WS1, WS0 ビットには発振安定待ち時間の長い方
に合わせて値を設定してください。ただし, PLLクロック発振安定待ち時間は214/HCLK
以上必要ですので , CKSCR: WS1, WS0 ビットには "10B" または "11B" を設定してくだ
さい。
PLL ストップモード中はメインクロックおよび PLL 逓倍回路が停止しているため , PLL
ストップモードから復帰する場合は , メインクロック発振安定待ち時間および PLL ク
ロック発振安定待ち時間を確保する必要があります。この場合の発振安定待ち時間は
クロック選択レジスタの発振安定待ち時間選択ビット (CKSCR: WS1, WS0) に設定され
た値に従い , メインクロック発振安定待ち時間および PLL クロック発振安定待ち時間
を同時にカウントしますので , CKSCR:WS1, WS0 ビットには発振安定待ち時間の長い
方に合わせて値を設定してください。ただし , PLL クロック発振安定待ち時間は 214/
HCLK 以上必要ですので , CKSCR: WS1, WS0 ビットには "10B" または "11B" を設定し
てください。
■ クロックモードの切換え
クロックモードを切り換えた場合,切換えが完了するまでは低消費電力モードへの切換
えおよびほかのクロックモードへの切換えを行わないようにしてください。切換えの
完了はクロック選択レジスタ (CKSCR) の MCM ビットおよび SCM ビットを参照して
確認してください。切換えが完了する前に , ほかのクロックモードおよび低消費電力
モードへの切換えを行った場合 , 切り換わらない場合があります。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
155
第 8 章 低消費電力モード
8.8 低消費電力モード使用上の注意
MB90990 シリーズ
■ スタンバイモード遷移のための低消費電力モード制御レジスタ (LPMCR) へアクセ
スする際の注意事項
● アセンブラ言語を使用して低消費電力モード制御レジスタ (LPMCR) にアクセスする場合
低消費電力モード制御レジスタ (LPMCR) においてスタンバイモードに移行する設定を
行う場合は , 表 8.3-2 の命令を使用してください。
表 8.3-2 の命令によるスタンバイモード遷移命令の直後には必ず下記
内の命令列
を配置してください。
MOV LPMCR, #H’ xx ; 表 8.3-2 の低消費電力モード遷移命令
NOP
NOP
JMP $+3
; 次の命令へのジャンプ
MOV A, #H’ 10
; 任意の命令
内の命令列以外が配置されるとスタンバイモード解除後の動作は保証されませ
ん。
● C 言語を使用して低消費電力モード制御レジスタ (LPMCR) にアクセスする場合
低消費電力モード制御レジスタ (LPMCR) においてスタンバイモードに移行する設定を
行う場合は , 以下の 1 から 3 のいずれかの方法でアクセスしてください。
1. スタンバイモードに遷移させる命令を関数化し , スタンバイモード遷移命令の後に
__wait_nop() のビルトイン関数を 2 個挿入してください。関数内でスタンバイ復帰
の割込み以外の割込みが発生する可能性がある場合は , コンパイル時に最適化を実
施し , LINK/UNLINK 命令の発生を抑止してください。
例 時計モードまたはタイムベースタイマモード遷移関数の場合
void enter_watch(){
IO_LPMCR.byte = 0x10; /* LPMCR の TMD ビットに "0" を設定 */
__wait_nop();
__wait_nop();
}
2. スタンバイモードに遷移させる命令を __asm 文で記述し , スタンバイモード遷移命
令の後に 2 個の NOP と JMP 命令を挿入してください。
例 スリープモード遷移の場合
__asm(" MOV I:_IO_LPMCR, #H’ 58);
__asm(" NOP");
__asm(" NOP");
__asm("
JMP $+3");
/* LPMCR の SLP ビットに "1" をセット */
/* 次の命令へのジャンプ
*/
3. スタンバイモードに遷移させる命令を #pragma asm ∼ #pragma endasm 間に記述し ,
スタンバイモード遷移命令の後に 2 個の NOP と JMP 命令を挿入してください。
例 ストップモード遷移の場合
#pragma asm
MOV I:_IO_LPMCR, #H’ 98
NOP
NOP
JMP $+3
#pragma endasm
156
/* LPMCR の STP ビットに "1" をセット */
/* 次の命令へのジャンプ
FUJITSU MICROELECTRONICS LIMITED
*/
CM44-10149-4
第9章
メモリアクセスモード
メモリアクセスモードの機能と動作について説明
します。
9.1 メモリアクセスモードの概要
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
157
第 9 章 メモリアクセスモード
9.1 メモリアクセスモードの概要
9.1
MB90990 シリーズ
メモリアクセスモードの概要
F2MC-16LX では , アクセス方式 , アクセス領域について各種のモードがあります。
■ メモリアクセスモードの概要
表 9.1-1 モード端子とモード
動作モード
RUN モード
バスモード
シングルチップ
フラッシュプログラミング
−
● 動作モード
動作モードとは , デバイスの動作状態を制御するモードを示すもので , MD2 ∼ MD0
モード設定用端子とモードデータ内の M1, M0 ビットで指定します。動作モードを選
択することで , 通常動作の起動やフラッシュメモリの書込みを行うことができます。
● バスモード
バスモードとは , 内部 ROM の動作と外部アクセス機能の動作を制御するモードを示す
もので , モード設定用端子 (MD2 ∼ MD0) とモードデータ内の M1, M0 ビットの内容で
指定します。モード設定用端子 (MD2 ∼ MD0) は , リセットベクタおよびモードデータ
を読み出すときのバスモードを指定するもので , モードデータ内の M1, M0 ビットは通
常動作時のバスモードを指定するものです。
● RUN モード
RUN モードは , CPU 動作モードのことをいいます。RUN モードにはメインクロック
モードや PLL ロックモードのほかに各種の低消費電力モードがあります。詳細は「第
8 章 低消費電力モード」を参照してください。
158
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 9 章 メモリアクセスモード
9.1 メモリアクセスモードの概要
MB90990 シリーズ
モード端子
9.1.1
MD2 ∼ MD0 の 3 本の外部端子を組み合せて , 表 9.1-2 の動作を指定できます。
■ モード端子
表 9.1-2 モード端子とモード
モード端子設定
モード名
リセットベクタ
アクセス領域
外部データ
バス幅
備考
MD2
MD1
MD0
0
0
0
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
フラッシュ
シリアル書込み*
−
−
−
1
1
1
フラッシュ
メモリ
−
−
パラレルライタ使用時の
モード
指定禁止
内部ベクタ
モード
内部
( モードデータ )
リセットシーケンス以降は
モードデータで制御
指定禁止
*: フラッシュメモリのシリアル書込みは , モード端子の設定だけでは書き込めません。ほかの端子の設定も必
要です。詳細は ,「第 25 章 フラッシュメモリ品の シリアル書込み接続例」を参照してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
159
第 9 章 メモリアクセスモード
9.1 メモリアクセスモードの概要
9.1.2
MB90990 シリーズ
モードデータ
モードデータは , 主記憶 "FFFFDFH" に置かれ , CPU の動作を制御するために使用し
ます。リセットシーケンス実行中にこのデータを取り込み , デバイス内部のモードレ
ジスタに格納します。モードレジスタの値を変更できるのはリセットシーケンスだ
けです。
本レジスタによる設定はリセットシーケンス以降に有効となります。
予約ビットは , 必ず "0" を設定してください。
■ モードデータ
図 9.1-1 モードデータ構成
bit
アドレス : FFFFDFH
7
6
5
4
3
2
1
0
M1
M0
予約
予約
予約
予約
予約
予約
[bit7, bit6] M1, M0( バスモード設定ビット )
M1, M0 は , リセットシーケンス終了後の動作モードを指定するビットです。M1, M0
ビットと機能の関係は , 表 9.1-3 のようになっています。
表 9.1-3 M1, M0( バスモード設定ビット ) の機能
160
M1
M0
0
0
0
1
1
0
1
1
機能
シングルチップモード
設定禁止
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 9 章 メモリアクセスモード
9.1 メモリアクセスモードの概要
MB90990 シリーズ
9.1.3
バスモード別メモリ空間
バスモードの指定によるアクセス領域と物理アドレスの対応を 図 9.1-2 に示します。
■ バスモード別メモリ空間
図 9.1-2 各バスモードにおけるアクセス領域と物理アドレスの関係
FFFFFFH
ROM領域
メイン
アドレス#1
F78000H
ROM領域
サテライト
F70000H
010000H
ROMミラー領域
008000H
拡張I/O領域
007900H
アドレス#2
RAM
000100H
0000F0H
000000H
汎用
レジスタ
I/O
:内部
:アクセス不可
シングルチップ
品種
MB90F997JBS, MB90F997MBS
MB90V950AJAS, MB90V950AMAS
CM44-10149-4
アドレス #1
FE0000H
F80000H
FUJITSU MICROELECTRONICS LIMITED
アドレス #2
0020FFH
007900H
161
第 9 章 メモリアクセスモード
9.1 メモリアクセスモードの概要
MB90990 シリーズ
■ 推奨設定
表 9.1-4 に , モード端子とモードデータの推奨設定例を示します。
表 9.1-4 モード端子とモードデータの推奨設定例
設定例
シングルチップ
162
MD2
MD1
MD0
M1
M0
0
1
1
0
0
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 10 章
I/O ポート
I/O ポートの機能について説明します。
10.1 I/O ポート
10.2 I/O ポートのレジスタ一覧
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
163
第 10 章 I/O ポート
10.1 I/O ポート
10.1
MB90990 シリーズ
I/O ポート
それぞれのポートの各端子は対応する周辺が端子を用いない設定となっている場合に ,
ポート方向レジスタ (DDR) の設定により入力 , 出力の指定を行うことができます。端
子が入力と指定されている場合は , 端子の論理レベルが読み出されます。端子が出力
と指定されている場合は , ポートデータレジスタ値が読み出されます。これは , リード
モディファイライト (RMW) 系命令の読出しでも同じです。
■ I/O ポートの概要
端子がほかの周辺機能の出力として使用されている場合は,ポートデータレジスタの値
に関係なく , 端子の論理レベルが読み出されます。
通常は , ポートを出力に設定するのに先立って , リードモディファイライト (RMW) 系
命令をポートデータレジスタの設定に使用しない,および周辺機能の出力を切ることを
お勧めします。これは , この場合のリードモディファイライト (RMW) 系命令がレジス
タ値ではなくポートの論理レベルを読み出すことになるからです。
図 10.1-1 に , I/O ポートのブロックダイヤグラムを示します。
図 10.1-1 I/O ポートのブロックダイヤグラム
内部データバス
ポートデータレジスタリード
ポートデータレジスタ
端子
ポートデータレジスタライト
ポート方向レジスタ
ポート方向レジスタライト
ポート方向レジスタリード
164
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 10 章 I/O ポート
10.2 I/O ポートのレジスタ一覧
MB90990 シリーズ
10.2
I/O ポートのレジスタ一覧
I/O ポートレジスタには 5 種類があります。
• ポートデータレジスタ (PDR2, PDR4 ∼ PDR6, PDR8)
• ポート方向レジスタ (DDR2, DDR4 ∼ DDR6, DDR8, DDRA)
• プルアップ制御レジスタ (PUCR2)
• アナログ入力許可レジスタ (ADER5, ADER6)
• 入力レベル選択レジスタ (ILSR0, ILSR1)
■ I/O ポートのレジスタ一覧
I/O ポートの各レジスタのビット構成を図 10.2-1 に示します。
図 10.2-1 I/O ポートのレジスタ一覧
bit
7
6
5
4
3
2
P27
P26
P25
P24
P23
P22
−
−
−
P44
P43
P42
P57
P56
P55
P54
P53
P52
P67
P66
P65
P64
P63
P62
P87
P86
P85
P84
P83
P82
7
6
5
4
3
2
D27
D26
D25
D24
D23
D22
−
−
−
D44
D43
D42
D57
D56
D55
D54
D53
D52
D67
D66
D65
D64
D63
D62
D87
D86
D85
D84
D83
D82
−
−
SIL2 SIL1 SIL0
−
bit
7
6
5
4
3
2
アドレス : 00001EH
PU27 PU26 PU25 PU24 PU23 PU22
bit 15/7 14/6 13/5 12/4 11/3 10/2
アドレス : 00000BH ADE15 ADE14 ADE13 ADE12 ADE11 ADE10
アドレス : 00000CH
ADE7 ADE6 ADE5 ADE4 ADE3 ADE2
bit 15/7 14/6 13/5 12/4 11/3 10/2
アドレス : 00000EH
−
IL6
IL5
IL4
−
IL2
アドレス : 00000FH
−
−
−
−
−
−
アドレス : 000002H
アドレス : 000004H
アドレス : 000005H
アドレス : 000006H
アドレス : 000008H
bit
アドレス : 000012H
アドレス : 000014H
アドレス : 000015H
アドレス : 000016H
アドレス : 000018H
アドレス : 00001AH
CM44-10149-4
1
0
P21
P20 ポート 2 データレジスタ (PDR2)
P41
P40 ポート 4 データレジスタ (PDR4)
P51
P50 ポート 5 データレジスタ (PDR5)
P61
P60 ポート 6 データレジスタ (PDR6)
−
P80 ポート 8 データレジスタ (PDR8)
1
0
D21
D20 ポート 2 方向レジスタ (DDR2)
D41
D40 ポート 4 方向レジスタ (DDR4)
D51
D50 ポート 5 方向レジスタ (DDR5)
D61
D60 ポート 6 方向レジスタ (DDR6)
−
D80 ポート 8 方向レジスタ (DDR8)
ポート A 方向レジスタ (DDRA)
−
−
1
0
PU21 PU20 ポート 2 プルアップ制御レジスタ (PUCR2)
9/1
8/0
ADE9 ADE8 ポート 5 アナログ入力許可レジスタ (ADER5)
ADE1 ADE0 ポート 6 アナログ入力許可レジスタ (ADER6)
9/1
8/0
−
−
入力レベル選択レジスタ (ILSR0)
−
IL8
入力レベル選択レジスタ (ILSR1)
FUJITSU MICROELECTRONICS LIMITED
165
第 10 章 I/O ポート
10.2 I/O ポートのレジスタ一覧
10.2.1
MB90990 シリーズ
ポートデータレジスタ (PDR)
入出力ポートの R/W はメモリへの R/W とは多少動作が異なり , 次のとおりになりま
すので注意してください。
• 入力モード
読出し時 : 対応する端子のレベルが読み出されます。
書込み時 : 出力用のラッチに書き込まれます。
• 出力モード
読出し時 : ポートデータレジスタラッチの値が読み出されます。
書込み時 : 出力用のラッチに書き込まれ , 対応する端子に出力されます。
ポートデータレジスタ (PDR) のビット構成の詳細を図 10.2-2 に示します。
■ ポートデータレジスタ (PDR)
図 10.2-2 ポートデータレジスタ (PDR)
bit
PDR2
アドレス : 000002H
bit
PDR4
アドレス : 000004H
bit
PDR5
アドレス : 000005H
bit
PDR6
アドレス : 000006H
bit
PDR8
アドレス : 000008H
166
7
6
5
4
3
2
1
0
初期値
アクセス
P27
P26
P25
P24
P23
P22
P21
P20
XXXXXXXXB
R/W
7
6
5
4
3
2
1
0
−
−
−
P44
P43
P42
P41
P40
XXXXXXXXB
R/W
7
6
5
4
3
2
1
0
P57
P56
P55
P54
P53
P52
P51
P50
XXXXXXXXB
R/W
7
6
5
4
3
2
1
0
P67
P66
P65
P64
P63
P62
P61
P60
XXXXXXXXB
R/W
7
6
5
4
3
2
1
0
P87
P86
P85
P84
P83
P82
−
P80
XXXXXXXXB
R/W
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 10 章 I/O ポート
10.2 I/O ポートのレジスタ一覧
MB90990 シリーズ
■ ポートデータレジスタの読出し
ポートデータレジスタ (PDR) を読み出したときに得られる値は , ポート方向レジスタ
(DDR) の状態と端子に接続される周辺機能の状態に依存します。
それぞれの組合せで得られる値を以下に示します。
DDR の値
周辺機能の出力状態
読出し値
0 ( 入力 )
許可
周辺機能からの出力値
1 ( 出力 )
許可
周辺機能からの出力値
0 ( 入力 )
禁止
端子状態
1 ( 出力 )
禁止
出力ラッチの値
なお , 周辺機能で入力として使用する場合には , 接続されている端子の DDR を "0" ( 入力 ) に
してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
167
第 10 章 I/O ポート
10.2 I/O ポートのレジスタ一覧
10.2.2
MB90990 シリーズ
ポート方向レジスタ (DDR)
ポート方向レジスタには次の機能があります。
• ポートとして使用されている各端子のデータ方向の設定
• SIN(LIN-UART のシリアル入力 ) 端子の入力レベルの設定
■ ポート方向レジスタ (DDR)
ポート方向レジスタ (DDR) のビット構成の詳細を図 10.2-3 に示します。
図 10.2-3 ポート方向レジスタ (DDR)
bit
DDR2
アドレス : 000012H
bit
DDR4
アドレス : 000014H
bit
DDR5
アドレス : 000015H
bit
DDR6
アドレス : 000016H
bit
DDR8
アドレス : 000018H
bit
DDRA
アドレス : 00001AH
7
6
5
4
3
2
1
0
初期値
アクセス
D27
D26
D25
D24
D23
D22
D21
D20
00000000B
R/W
7
6
5
4
3
2
1
0
−
−
−
D44
D43
D42
D41
D40
00000000B
R/W
7
6
5
4
3
2
1
0
D57
D56
D55
D54
D53
D52
D51
D50
00000000B
R/W
7
6
5
4
3
2
1
0
D67
D66
D65
D64
D63
D62
D61
D60
00000000B
R/W
7
6
5
4
3
2
1
0
D87
D86
D85
D84
D83
D82
−
D80
00000000B
R/W
7
6
5
4
3
2
1
0
−
−
−
−
−
00000111B
W
SIL2 SIL1 SIL0
● bit Dxx(DDR2, DDR4 ∼ DDR6, DDR8)
これらのビットはポートの入出力方向を設定します。各端子がポートとして使用され
ているときは , 対応する各端子を以下のように制御します。
"0" に設定した場合 : 対応する端子を入力モードに設定します。
"1" に設定した場合 : 対応する端子を出力モードに設定します。
168
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 10 章 I/O ポート
10.2 I/O ポートのレジスタ一覧
MB90990 シリーズ
● bit SIL0, bit SIL1, bit SIL2 (DDRA)
これらのビットは強制的に SIN(LIN-UART のシリアル入力 ) 端子の入力レベルを設定
します。SIL0, SIL1, SIL2 は SIN0(LIN-UART0), SIN1(LIN-UART1), SIN2(UART2) にそれ
ぞれ対応します。
"0" に設定した場合 : ILSR の対応する ILx ビットの設定によって入力レベルは CMOS
または Automotive が選択されます (ILSR については ,「10.2.5 入
力レベル選択レジスタ (ILSR0,ILSR1)」を参照 )。
"1" に設定した場合 : ILSR の対応する ILx ビットの設定によらず , 入力レベルは CMOS
が選択されます。
これらのビットの初期値は "0" です。
表 10.2-1 SIN0/SIN1 入力レベル設定
DDRA
ILSR1
SIL0/SIL1 ビット
IL8 ビット
SIN0(P82) / SIN1(P85)
入力レベル
0
0
Automotive レベル
0
1
CMOS レベル (0.8Vcc/0.2Vcc)
1
x
CMOS レベル (0.7Vcc/0.3Vcc)
表 10.2-2 SIN2 入力レベル設定
DDRA
ILSR0
SIL2 ビット
IL5 ビット
0
0
Automotive レベル
0
1
CMOS レベル (0.8Vcc/0.2Vcc)
1
x
CMOS レベル (0.7Vcc/0.3Vcc)
SIN2(P50) 入力レベル
<注意事項>
SIL0, SIL1, SIL2 は書込み専用です。読出しのとき , これらのビットからは常に "1" が読み
出されます。したがって , DDRA レジスタに対して INC/DEC 命令のようなリードモディ
ファイライト (RMW) 系命令を使用しないでください。
● DDRA: bit0 ∼ bit2, bit6, bit7( 未定義ビット )
本ビットからは常に "1" が読み出されます。
本ビットへの書込みは影響しません。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
169
第 10 章 I/O ポート
10.2 I/O ポートのレジスタ一覧
10.2.3
MB90990 シリーズ
プルアップ制御レジスタ (PUCR2)
ポート 2 の各端子にはプログラマブルなプルアップ抵抗があります。このレジスタ
の各ビットは , 対応するプルアップ抵抗の使用 / 不使用を制御します。
プルアップ制御レジスタ (PUCR2) のビット構成を図 10.2-4 に , ブロックダイヤグラ
ムを図 10.2-5 に示します。
■ プルアップ制御レジスタ (PUCR2)
図 10.2-4 プルアップ制御レジスタ (PUCR2) のビット構成
bit
7
アドレス : 00001EH
PU27
リード / ライト→ (R/W)
(0)
初期値→
6
5
4
3
2
1
0
PU26
(R/W)
(0)
PU25
(R/W)
(0)
PU24
(R/W)
(0)
PU23
(R/W)
(0)
PU22
(R/W)
(0)
PU21
(R/W)
(0)
PU20
(R/W)
(0)
PUCR2
R/W : リード / ライト可能
■ プルアップ制御レジスタ (PUCR2) のブロックダイヤグラム
図 10.2-5 プルアップ制御レジスタ (PUCR2) のブロックダイヤグラム
プルアップ抵抗 ( 約 50 kΩ)
ポートデータレジスタ
P-ch
ポート入出力
ポート方向レジスタ
プルアップ制御レジスタ
内部データバス
入力モード時のプルアップ抵抗制御を行います。
"0" に設定した場合 : 入力モード時プルアップ抵抗なし
"1" に設定した場合 : 入力モード時プルアップ抵抗あり
<注意事項>
出力モード時は意味がありません ( プルアップ抵抗なし )。
入出力モードはポート方向レジスタ (DDR) で決まります。
ストップモード時 (SPL=1) の場合は , プルアップ抵抗なしになります ( ハイインピーダン
ス )。
170
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 10 章 I/O ポート
10.2 I/O ポートのレジスタ一覧
MB90990 シリーズ
10.2.4
アナログ入力許可レジスタ (ADER)
アナログ入力許可レジスタ (ADER) のビット構成を , 図 10.2-6 に示します。
■ アナログ入力許可レジスタ (ADER)
図 10.2-6 アナログ入力許可レジスタ (ADER6/ADER5) のビット構成
ADER6
アドレス
00000CH
bit 7
ADE7
6
5
4
3
2
1
0
ADE6
ADE5
ADE4
ADE3
ADE2
ADE1
ADE0
14
13
12
11
10
初期値
アクセス
11111111B
R/W
ADER5
アドレス
00000BH
bit 15
ADE15 ADE14 ADE13 ADE12 ADE11 ADE10
9
8
ADE9
ADE8
初期値
アクセス
R/W
11111111B
R/W : リード / ライト可能
ADER6, ADER5 の各ビットは , ポート 6, ポート 5 の各端子のアナログ入力を許可 / 禁
止に設定します。ADER6, ADER5 はそれぞれポート 6, ポート 5 に対応しています。
"0" に設定した場合 : 対応する端子をアナログ入力禁止に設定します。アナログ入力禁止
に設定された端子は入出力ポート , および A/D コンバータ以外の周
辺機能の入出力端子として利用できます。
"1" に設定した場合 : 対応する端子をアナログ入力モードに設定します。アナログ入力
モードに設定された端子は , A/D コンバータのアナログ入力専用
端子となります。入出力ポートおよびほかの周辺機能の入出力端
子としての利用はできません。
<注意事項>
アナログ入力許可ビット (ADEx) を "1" に設定した場合 , ポート 6, ポート 5 の各端子は A/D
コンバータ用のアナログ入力端子となります。ADEx ビットは初期値が "1" ですので , 初
期状態ではポート 6, ポート 5 の各端子を入出力ポートおよび A/D コンバータ以外の周辺
機能の入出力端子として使用することはできません。入出力ポートまたはほかの周辺機器
の入出力端子として使用する場合は ADEx ビットを "0" に設定してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
171
第 10 章 I/O ポート
10.2 I/O ポートのレジスタ一覧
10.2.5
MB90990 シリーズ
入力レベル選択レジスタ (ILSR0,ILSR1)
入力レベル選択レジスタにより Automotive ヒステリシス入力レベルから CMOS ヒ
ステリシス入力レベルかまたは TTL 入力レベルに設定を変更できます。
■ 入力レベル選択レジスタ (ILSR0, ILSR1)
図 10.2-7 入力レベル選択レジスタ (ILSR0, ILSR1) のビット構成
ILSR1
アドレス bit 15
00000FH
−
14
13
12
11
10
9
8
−
−
−
−
−
−
IL8
−
X
−
X
−
X
−
X
−
X
−
X
−
X
R/W
0/1
アドレス bit 7
00000EH
−
6
5
4
3
2
1
0
IL6
IL5
IL4
−
IL2
−
−
−
X
R/W
0/1
R/W
0/1
R/W
0/1
−
X
R/W
0/1
−
X
−
X
ILSR0
R/W : リード / ライト可能
− : 未定義
X
: 不定
● bit2 , bit4 ∼ bit6, bit8 : IL2, IL4 ∼ IL6, IL8
これらのビットは , 対応するポートの入力レベルを選択するビットです。
IL2, IL4∼IL6, IL8は, ポート2,ポート4∼ポート6,ポート8 にそれぞれ対応しています。
"0" に設定した場合 : Automotive 入力レベルになります。
"1" に設定した場合 : CMOS ヒステリシス入力レベルになります。
これらのビットの初期値は , 動作モード ( モード端子 ) の設定に依存します。
• フラッシュメモリモード : 初期値 "1"(TTL 入力 )
• その他のモード : 初期値 "0"(Automotive)
● bit0, bit1, bit3, bit7, bit9 ∼ bit15 : 未定義ビット
これらのビットからは , 常に "0" が読み出されます。書込みは影響しません。
172
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 10 章 I/O ポート
10.2 I/O ポートのレジスタ一覧
MB90990 シリーズ
<注意事項>
入力レベル選択レジスタの設定を変更した直後は該当する入力端子のスレッショルドが
変化します。このため , 入力レベル選択レジスタの設定を変更後 , 2 マシンサイクル経過
するまでは該当端子からの読出し値を使用しないでください。
入力レベル選択レジスタの設定を変更する場合は , 必ず対応するリソースをディセーブル
にしてから行ってください。
■ 入力レベル選択レジスタ (ILSR0, ILSR1) の初期値
ILSR レジスタの各ビットの初期値は下表のように , 外部リセット入力解除後の MD2,
MD1, MD0 端子状態に依存します。
各動作モードについての詳細は「
, 第 9 章 メモリアクセスモード」
を参照してください。
表 10.2-3 モード端子と入力レベル選択レジスタ (ILSR) 初期値の関係
MD2
MD1
MD0
初期値
ポート入力レベル
ILx
ポート 2, ポート 4 ∼ポート 6,
ポート 8
動作モード
0
0
0
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
フラッシュシリアル書込み
0
Automotive
1
1
1
フラッシュメモリ
1
TTL
CM44-10149-4
予約
内部ベクタモード
0
Automotive
予約
FUJITSU MICROELECTRONICS LIMITED
173
第 10 章 I/O ポート
10.2 I/O ポートのレジスタ一覧
174
MB90990 シリーズ
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 11 章
タイムベースタイマ
タイムベースタイマの機能と動作について説明し
ます。
11.1 タイムベースタイマの概要
11.2 タイムベースタイマのブロックダイヤグラム
11.3 タイムベースタイマの構成
11.4 タイムベースタイマの割込み
11.5 タイムベースタイマの動作説明
11.6 タイムベースタイマ使用上の注意
11.7 タイムベースタイマのプログラム例
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
175
第 11 章 タイムベースタイマ
11.1 タイムベースタイマの概要
11.1
MB90990 シリーズ
タイムベースタイマの概要
タイムベースタイマは , メインクロック ( メイン発振クロックの 2 分周 ) に同期して
カウントアップする 18 ビットフリーランカウンタ ( タイムベースタイマカウンタ )
です。
• 4 種類のインターバル時間を選択でき , インターバル時間ごとに割込み要求を発生
できます。
• 発振安定待ち時間用タイマや周辺機能に動作クロックを供給します。
■ インターバルタイマ機能
• タイムベースタイマのカウンタがインターバル時間選択ビット (TBTC:TBC1, TBC0)
で設定したインターバル時間に達すると , オーバフロー ( 桁上り ) が発生し (TBTC:
TBOF=1), 割込み要求が発生します。
• オーバフロー発生による割込みが許可されている場合は (TBTC: TBIE = 1), オーバフ
ローが発生すると (TBTC: TBOF = 1) 割込みが発生します。
• タイムベースタイマのインターバル時間を , 次の 4 種類から選択できます。タイム
ベースタイマのインターバル時間を表 11.1-1 に示します。
表 11.1-1 タイムベースタイマのインターバル時間
カウントクロック
インターバル時間
212/HCLK( 約 1.0 ms)
2/HCLK(0.5 μs)
214/HCLK( 約 4.1 ms)
216/HCLK( 約 16.4 ms)
219/HCLK( 約 131.1 ms)
HCLK: 発振クロック
( ) 内は発振クロックが 4 MHz で動作している場合
176
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 11 章 タイムベースタイマ
11.1 タイムベースタイマの概要
■ クロック供給
発振安定待ち時間用のタイマや PPG タイマ , ウォッチドッグタイマなどの周辺機能へ
動作クロックを供給します。タイムベースタイマから各周辺に供給されるクロックの
周期を , 表 11.1-2 に示します。
表 11.1-2 タイムベースタイマから供給されるクロック周期
クロック供給先
クロック周期
210/HCLK( 約 256 μs)
213/HCLK( 約 2.0 ms)
発振安定待ち時間 *
216/HCLK( 約 16.4 ms)
217/HCLK( 約 32.8 ms)
212/HCLK( 約 1.0 ms)
214/HCLK( 約 4.1 ms)
ウォッチドッグタイマ
216/HCLK( 約 16.4 ms)
219/HCLK( 約 131.1 ms)
PPG タイマ
29/HCLK( 約 128 μs)
HCLK: 発振クロック
( ) 内は発振クロックが 4 MHz で動作している場合
*
: 発振開始直後の発振周期は不安定なため , 発振安定待ち時間は目安の値です。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
177
第 11 章 タイムベースタイマ
11.2 タイムベースタイマのブロックダイヤグラム
MB90990 シリーズ
タイムベースタイマのブロックダイヤグラム
11.2
タイムベースタイマは , 以下のブロックで構成されています。
• タイムベースタイマカウンタ
• カウンタクリア回路
• インターバルタイマセレクタ
• タイムベースタイマ制御レジスタ (TBTC)
■ タイムベースタイマのブロックダイヤグラム
図 11.2-1 タイムベースタイマのブロックダイヤグラム
ウォッチドッグ
タイマへ
PPG タイマへ
タイムベースタイマカウンタ
21/HCLK
× 21 × 22 × 23
⋅⋅⋅ ⋅⋅⋅
× 28 × 29 × 210 × 211 × 212 × 213 × 214 × 215 × 216 × 217 × 218
OF
OF
OF
OF
クロック制御部
発振安定待ち時間
セレクタへ
パワーオンリセット
ストップモード
CKSCR : MCS=1→0 *1
CKSCR : SCS=0→1 *2
カウンタ
クリア回路
インターバル
タイマセレクタ
TBOF クリア
タイムベースタイマ制御レジスタ
(TBTC)
予約
⎯
TBOF セット
⎯
TBIE TBOF
TBR
TBC1 TBC0
タイムベースタイマ割込み信号
OF
HCLK
*1
*2
: オーバフロー
: 発振クロック
: マシンクロックをメインクロックから PLL クロックへ切換え
: マシンクロックをサブクロックからメインクロックへ切換え
タイムベースタイマの実際の割込み要求番号は次のとおりです。
割込み要求番号 : #25(19H)
178
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 11 章 タイムベースタイマ
11.2 タイムベースタイマのブロックダイヤグラム
● タイムベースタイマカウンタ
発振クロック (HCLK) の 2 分周クロックをカウントクロックとする 18 ビットアップカ
ウンタです。
● カウンタクリア回路
タイムベースタイマカウンタの値は , 次の要因によってクリアされます。
• タイムベースタイマ制御レジスタのタイムベースタイマカウンタクリアビット
(TBTC: TBR=0)
• パワーオンリセット
• メインストップモード , PLL ストップモードへの遷移
(CKSCR:SCS=1, LPMCR: STP=1)
• クロックモードの切換え ( メインクロックモードから PLL クロックモード , サブク
ロックモードから PLL クロックモード , またはサブクロックモードからメインク
ロックモード )
● インターバルタイマセレクタ
タイムベースタイマカウンタの出力を 4 種類から選択します。選択したインターバル
時間のビットがカウントアップによってオーバフロー( 桁上り ) すると割込み要求が発
生します。
● タイムベースタイマ制御レジスタ (TBTC)
インターバル時間の選択 , タイムベースタイマカウンタのクリア , 割込みの許可または
禁止 , 割込み要求の状態確認とクリアを行います。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
179
第 11 章 タイムベースタイマ
11.3 タイムベースタイマの構成
11.3
MB90990 シリーズ
タイムベースタイマの構成
タイムベースタイマのレジスタ , 割込み要因を示します。
■ タイムベースタイマのレジスタ一覧と初期値の一覧
図 11.3-1 タイムベースタイマのレジスタと初期値の一覧
タイムベースタイマ制御レジスタ (TBTC)
bit
15
14
13
12
11
10
9
8
1
1
1
0
0
1
0
0
■ タイムベースタイマでの割込み要求の発生
タイムベースタイマは選択したインターバルタイマ用のカウンタビットがインターバ
ル時間に達すると,タイムベースタイマ制御レジスタのオーバフロー割込み要求フラグ
ビット (TBTC: TBOF) に "1" がセットされます。割込みが許可されている場合に (TBTC:
TBIE=1)オーバフロー割込み要求フラグビットがセットされると(TBTC: TBOF=1) 割込
み要求が発生します。
180
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 11 章 タイムベースタイマ
11.3 タイムベースタイマの構成
MB90990 シリーズ
タイムベースタイマ制御レジスタ (TBTC)
11.3.1
タイムベースタイマ制御レジスタ (TBTC) では , 次の設定ができます。
• タイムベースタイマのインターバル時間の選択
• タイムベースタイマのカウンタ値のクリア
• オーバフロー発生による割込み要求の許可または禁止
• オーバフロー発生による割込み要求フラグの状態確認とクリア
■ タイムベースタイマ制御レジスタ (TBTC)
図 11.3-2 タイムベースタイマ制御レジスタ (TBTC)
bit 15
アドレス
0000A9H
14
予約
13
12
11
10
9
8
初期値
TBIE TBOF TBR TBC1 TBC0
R/W
R/W R/W
W
R/W R/W
11100100B
bit9
bit8
TBC1 TBC0
インターバル時間選択ビット
0
0
212/HCLK( 約 1.0 ms)
0
1
214/HCLK( 約 4.1 ms)
1
0
216/HCLK( 約 16.4 ms)
1
1
219/HCLK( 約 131.1 ms)
HCLK : 発振クロック
( ) 内は発振クロック 4 MHz で動作した場合の値
bit10
TBR
0
タイムベースタイマカウンタクリアビット
読出し時
書込み時
タイムベースタイマカウンタを
クリアします。
常に "1" が読み出されます。TBOF ビットをクリアします。
1
影響なし
bit11
TBOF
オーバフロー割込み要求フラグビット
読出し時
書込み時
0
選択したカウントビットの
クリアされます。
オーバフローなし
1
選択したカウントビットの
影響なし
オーバフローあり
bit12
TBIE
オーバフロー割込み許可ビット
0
オーバフロー割込み要求の禁止
1
オーバフロー割込み要求の許可
bit15
R/W
W
CM44-10149-4
: リード / ライト可能
: ライトオンリ
: 初期値
: 未定義
予約ビット
予約
1 必ず "1" に設定してください。
FUJITSU MICROELECTRONICS LIMITED
181
第 11 章 タイムベースタイマ
11.3 タイムベースタイマの構成
MB90990 シリーズ
表 11.3-1 タイムベースタイマ制御レジスタ (TBTC) の機能
ビット名
機 能
bit15
予約 : 予約ビット
必ず "1" に設定してください。
bit14,
bit13
未定義ビット
読出し時 : 値は不定です。
書込み時 : 影響しません。
TBIE:
オーバフロー割込み
許可ビット
タイムベースタイマカウンタのインターバルタイマ用ビッ
トのオーバフローによる割込みを許可または禁止します。
"0" に設定した場合 : オーバフローが発生しても (TBOF=1)
割込み要求は発生しません。
"1" に設定した場合 : オーバフローが発生すると (TBOF=1)
割込み要求が発生します。
bit12
タイムベースタイマカウンタのインターバルタイマ用ビッ
トのオーバフロー ( 桁上り ) を示します。
割込みを許可している場合は (TBIE=1), オーバフロー ( 桁
上り ) が発生すると (TBOF=1) 割込み要求が発生します。
"0" に設定した場合 : クリアされます。
"1" に設定した場合 : 無効です。変化しません。
リードモディファイライト
(RMW) 系命令で読み出した場合 : "1" が読み出されます。
182
bit11
TBOF:
オーバフロー割込み
要求フラグビット
bit10
TBR:
タイムベースタイマ
カウンタクリア
ビット
タイムベースタイマカウンタの全ビットをクリアします。
"0" に設定した場合 : タイムベースタイマカウンタのすべ
てのビットが "0" にクリアされます。
TBOF ビットもクリアされます。
"1" に設定した場合 : 無効です。変化しません。
読出し時 : 常に "1" が読み出されます。
bit9,
bit8
TBC1, TBC0:
インターバル時間
選択ビット
タイムベースタイマカウンタのインターバルタイマの周期
を設定します。
• TBC1, TBC0 ビットの設定によって , タイムベースタイ
マのインターバル時間が設定されます。
• 4 種類のインターバル時間が選択できます。
( 注意事項 )
• TBOF ビットをクリアする場合は , 割込みを禁止するか
(TBIE=0), プロセッサステータスの割込みマスクレジス
タ (ILM) で割込みをマスクしてから行ってください。
• TBOF ビットは "0" の書込み , メインストップモードへ
の遷移 , PLL ストップモードへの遷移 , サブクロック
モードからメインクロックモードへの遷移 , サブクロッ
クモードから PLL クロックモードへの遷移 , メインク
ロックモードから PLL クロックモードへの遷移 , タイム
ベースタイマカウンタクリアビット (TBR) への "0" 書込
みおよびリセットによってクリアされます。
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
11.4
第 11 章 タイムベースタイマ
11.4 タイムベースタイマの割込み
タイムベースタイマの割込み
タイムベースタイマは , タイムベースタイマ制御レジスタで設定されたインターバル
時間に対応するタイムベースタイマカウンタのインターバル時間用ビットが桁上り
( オーバフロー ) することによって割込み要求を発生します ( インターバルタイマ機
能 )。
■ タイムベースタイマの割込み
• タイムベースタイマは , メインクロック ( 発振クロックの 2 分周 ) が入力されている
限りカウントアップし続けます。
• タイムベースタイマ制御レジスタの TBC1, TBC0 ビットで設定したインターバル時
間に達すると , タイムベースタイマカウンタにおいて選択したインターバル時間に
対応するインターバル時間選択ビットが桁上りしてオーバフローが発生します。
• インターバル時間選択ビットのオーバフローが発生すると , タイムベースタイマ制
御レジスタのオーバフロー割込み要求フラグビット (TBTC: TBOF) が "1" にセット
されます。
• 割込みが許可されている場合に (TBTC: TBIE=1), タイムベースタイマ制御レジスタ
のオーバフロー割込み要求フラグビットがセットされると (TBTC: TBOF=1) 割込み
要求が発生します。
• タイムベースタイマ制御レジスタのオーバフロー割込み要求フラグビット (TBTC: TBOF)
は割込みの許可または禁止にかかわらず (TBTC: TBIE), 設定したインターバル時間
に達するとセットされます。
• オーバフロー割込み要求フラグビット (TBTC: TBOF) のクリアは , 割込み処理でタ
イムベースタイマの割込みを禁止(TBTC: TBIE=0)するかプロセッサステータス(PS)
の ILM ビットでタイムベースタイマの割込みをマスクしてから TBOF ビットに "0"
を書き込んでクリアしてください。
<注意事項>
タイムベースタイマ制御レジスタのオーバフロー割込み要求フラグビットがセットされ
ている状態で (TBTC: TBOF=1) 割込みを許可した場合は (TBTC: TBIE=1), 直ちに割込み要
求が発生します。
■ タイムベースタイマの割込みと EI2OS の対応
• タイムベースタイマは , 拡張インテリジェント I/O サービス (EI2OS) には対応してい
ません。
• 割込み番号 , 割込み制御レジスタ , 割込みベクタアドレスについては ,「3.2 割込み
ベクタ」を参照してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
183
第 11 章 タイムベースタイマ
11.5 タイムベースタイマの動作説明
11.5
MB90990 シリーズ
タイムベースタイマの動作説明
タイムベースタイマは , インターバルタイマまたは発振安定待ち時間用タイマとして
動作します。また , 周辺機能へクロックを供給しています。
■ インターバルタイマ機能
インターバル時間ごとに割込みを発生させると,インターバルタイマとして使用できま
す。
タイムベースタイマをインターバルタイマとして動作させるには , 図 11.5-1 による設
定が必要です。
● タイムベースタイマの設定
図 11.5-1 タイムベースタイマの設定
タイムベースタイマ制御レジスタ (TBTC)
bit
アドレス : 0000A9H
15
14
13
12
11
10
9
8
予約
1
−
−
TBIE
TBOF
0
TBR
0
TBC1
TBC0
◎
◎
◎
− : 未定義ビット
◎ : 使用ビット
0 : "0" に設定
1 : "1" に設定
● インターバルタイマ機能の動作
タイムベースタイマは , 設定したインターバル時間ごとに割込みを発生させることに
よってインターバルタイマとして使用できます。
• タイムベースタイマは発振クロックが起動している限り , メインクロック ( 発振ク
ロックの 2 分周 ) に同期してカウントアップを続けます。
• タイムベースタイマ制御レジスタのインターバル時間選択ビット(TBTC : TBC1, TBC0)
で設定したインターバル時間に達すると , タイムベースタイマカウンタは桁上りに
よるオーバフローが発生してオーバフロー割込み要求フラグビット (TBTC: TBOF)
に "1" がセットされます。
• 割込みを許可している場合に (TBTC: TBIE=1) オーバフロー割込み要求フラグビッ
トがセットされると (TBTC: TBOF=1) 割込み要求が発生します。
<注意事項>
インターバル時間は , タイムベースタイマカウンタのクリア動作によって設定したイン
ターバル時間よりも長くなる場合があります。
184
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 11 章 タイムベースタイマ
11.5 タイムベースタイマの動作説明
MB90990 シリーズ
● タイムベースタイマの動作例
インターバルタイマ動作について , 次の状態の動作を図 11.5-2 に示します。
• パワーオンリセットが発生した場合
• インターバルタイマ機能動作中にスリープモードに移行した場合
• インターバルタイマ機能動作中にストップモードに移行した場合
• タイムベースタイマカウンタクリアの要求があった場合
ストップモードに移行するとタイムベースタイマカウンタはクリアされ,カウントアッ
プ動作を停止します。ストップモードから復帰するとタイムベースタイマはメインク
ロック発振安定待ち時間をカウントします。
図 11.5-2 タイムベースタイマの動作例
カウンタ値
ストップモードへの
移行によるクリア
"3FFFFH"
発振安定待ち
オーバフロー
"00000H"
CPU 動作開始 インターバル周期
(TBTC : TBC1, TBC0 = 11B)
パワーオンリセット
カウンタクリア
(TBTC : TBR = 0)
割込み処理でクリア
TBOF ビット
TBIE ビット
SLP ビット
(LPMCR レジスタ )
スリープ
タイムベースタイマのインターバル
割込みでスリープ解除
ストップ
STP ビット
(LPMCR レジスタ )
インターバル時間選択ビット (TBTC : TBC1, TBC0) に "11B" を設定した場合 (219/HCLK)
: 発振安定待ち時間
HCLK : 発振クロック
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
185
第 11 章 タイムベースタイマ
11.5 タイムベースタイマの動作説明
MB90990 シリーズ
■ 発振安定待ち時間用タイマの動作
タイムベースタイマは , メインクロックおよび PLL クロックの発振安定待ち時間用タ
イマとして使用できます。
発振安定待ち時間は , タイムベースタイマカウンタが "0" からカウントアップしていき ,
設定した発振安定待ち時間選択ビットがオーバフロー ( 桁上り ) するまでの時間となり
ます。
タイムベースタイマのクリア条件と発振安定待ち時間について , 表 11.5-1 に示します。
表 11.5-1 タイムベースタイマのクリア条件と発振安定待ち時間 (1/2)
動 作
カウンタ
クリア
TBOF
クリア
発振安定待ち時間
タイムベースタイマカウンタ
クリアビット (TBTC: TBR) への
"0" 書込み
○
○
−
パワーオンリセット
○
○
メインクロック発振安定待ち時間
終了後 , メインクロックモードへ
ウォッチドッグリセット
×
○
なし
外部リセット
低電圧検出リセット
CPU 動作検出リセット
クロックスーパバイザリセット
×
○
なし
ソフトウェアリセット
×
○
なし
メインクロック→ PLL クロック
(CKSCR: MCS=1 → 0)
○
○
PLL クロック発振安定待ち時間終
了後 , PLL クロックモードへ
メインクロック→サブクロック
(CKSCR: SCS=1 → 0)
×
×
サブクロック発振安定待ち時間終
了後 , サブクロックモードへ
サブクロック→メインクロック
(CKSCR: SCS=0 → 1)
○
○
メインクロック発振安定待ち時間
終了後 , メインクロックモードへ
サブクロック→ PLL クロック
(CKSCR: MCS=0, SCS=0 → 1)
○
○
メインクロック発振安定待ち時間
終了後 , PLL クロックモードへ
PLL クロック→メインクロック
(CKSCR: MCS=0 → 1)
×
×
なし
PLL クロック→サブクロック
(CKSCR: MCS=0, SCS=1 → 0)
×
×
なし
リセット
クロックモードの切換え
186
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 11 章 タイムベースタイマ
11.5 タイムベースタイマの動作説明
MB90990 シリーズ
表 11.5-1 タイムベースタイマのクリア条件と発振安定待ち時間 (2/2)
カウンタ
クリア
TBOF
クリア
発振安定待ち時間
メインストップモード解除
○
○
メインクロック発振安定待ち時間
終了後 , PLL クロックモードへ
PLL ストップモード解除
○
○
メインクロック発振安定待ち時間
終了後 , PLL クロックモードへ
サブストップモード解除
×
×
サブクロック発振安定待ち時間終
了後 , サブクロックモードへ
×
×
なし
メインクロックモードに復帰
×
×
なし
サブクロックモードに復帰
×
×
なし
PLL クロックモードに復帰
×
×
なし
メインスリープモード解除
×
×
なし
サブスリープモード解除
×
×
なし
PLL スリープモード解除
×
×
なし
動 作
ストップモードの解除
時計モードの解除
サブ時計モードの解除
タイムベースタイマモードの解除
スリープモードの解除
■ 動作クロック供給
タイムベースタイマは , PPG タイマおよびウォッチドッグタイマに動作クロックを供
給しています。
<注意事項>
タイムベースタイマカウンタをクリアする場合は , タイムベースタイマの出力を使用して
いるウォッチドッグタイマや PPG タイマなどの周辺機能の動作に影響があるのでご注意
ください。
<参考>
• PPG タイマについては「第 16 章 8/16 ビット PPG タイマ」を参照してください。
• ウォッチドッグタイマについては「第 12 章 ウォッチドッグタイマ」を参照してくだ
さい。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
187
第 11 章 タイムベースタイマ
11.6 タイムベースタイマ使用上の注意
MB90990 シリーズ
タイムベースタイマ使用上の注意
11.6
タイムベースタイマを使用するための注意点を示します。
■ タイムベースタイマ使用上の注意
● 割込み要求をクリアする場合
タイムベースタイマ制御レジスタのオーバフロー割込み要求フラグビットは (TBTC:
TBOF=0), 割込みを禁止するか (TBTC: TBIE=0) プロセッサステータスの割込みレベル
マスクレジスタでタイムベースタイマの割込みをマスクしてからクリアしてくださ
い。
● タイムベースタイマカウンタをクリアする場合
タイムベースタイマカウンタをクリアすると,次の動作に影響が出るのでご注意くださ
い。
• タイムベースタイマをインターバルタイマとして使用している場合 ( インターバル
割込み )
• ウォッチドッグタイマが使用されている場合
• PPG タイマの動作クロックとしてタイムベースタイマからの供給クロックを使用し
ている場合
● 発振安定待ち時間用タイマとして使用している場合
電源投入後またはメインストップモード , PLL ストップモード , サブクロックモードで
は発振クロックは停止しています。したがって , 発振動作を開始するとタイムベースタ
イマによってメインクロック発振安定待ち時間を確保します。高速発振入力端子に接
続する振動子の種類によって , 適切な発振安定待ち時間を選択する必要があります。
<参考>
発振安定待ち時間の詳細については ,「5.6 発振安定待ち時間」を参照してください。
● タイムベースタイマからクロック供給をしている周辺機能について
• 発振クロックが停止する動作モード (PLL ストップモード , サブクロックモード , メ
インストップモード ) に遷移すると , タイムベースタイマカウンタはクリアされ , タ
イムベースタイマの動作は停止します。
• タイムベースタイマカウンタがクリアされると , クリアからのインターバル時間が
必要となり , タイムベースタイマから供給されているクロックは "H" レベルが短く
なるか "L" レベルが 1/2 周期長くなる場合があります。
• ウォッチドッグタイマの場合 , ウォッチドッグタイマカウンタはタイムベースタイ
マカウンタのクリアと同時にクリアされるので正常にカウント動作します。
188
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 11 章 タイムベースタイマ
11.7 タイムベースタイマのプログラム例
MB90990 シリーズ
11.7
タイムベースタイマのプログラム例
タイムベースタイマのプログラム例を示します。
■ タイムベースタイマのプログラム例
● 処理内容
212/HCLK(HCLK: 発振クロック ) のインターバル割込みを繰り返して発生します。イン
ターバル時間は , 約 1.0 ms(4 MHz で動作している場合 ) となります。
● コーディング例
ICR07
EQU
0000B7H
; タイムベースタイマ割込み制御レジスタ
TBTC
EQU
0000A9H
; タイムベースタイマ制御レジスタ
TBOF
EQU
TBTC:3
; 割込み要求フラグビット
TBIE
EQU
TBTC:2
; 割込み許可ビット
;------- メインプログラム -----------------------------------CODE
CSEG
; スタックポインタ (SP) などは
START:
; 初期化済みとする
; 割込み禁止
AND
CCR,#0BFH
MOV
MOV
I:ICR07 #00H ; 割込みレベル 0( 最強 )
I:TBTC,#10000000B
; 上位 3 ビットは固定
;TBOF クリア ,
; カウンタクリアインターバル時間
;212/HCLK 選択
LOOP:
SETB
I:TBIE
; 割込み許可
MOV
ILM,#07H
;PS 内 ILM をレベル 7 に設定
OR
CCR,#40H
; 割込み許可
MOV
MOV
BRA
A,#00H
A,#01H
LOOP
; 無限ループ
;------- 割込みプログラム -----------------------------------WARI:
CLRB
I:TBIE
; 割込み許可ビットをクリア
CLRB
I:TBOF
; 割込み要求フラグをクリア
I:TBIE
; 割込み許可
・
ユーザ処理
・
SETB
CODE
; 割込み処理から復帰
RETI
ENDS
;------- ベクタ設定 ---------------------------------------VECT
CSEG
ABS=0FFH
ORG
CM44-10149-4
0FF98H
; 割込み番号 #25(19H) にベクタ設定
FUJITSU MICROELECTRONICS LIMITED
189
第 11 章 タイムベースタイマ
11.7 タイムベースタイマのプログラム例
VECT
190
MB90990 シリーズ
DSL
WARI
ORG
DSL
0FFDCH
START
; リセットベクタ設定
DB
ENDS
END
00H
; シングルチップモードに設定
START
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 12 章
ウォッチドッグタイマ
ウォッチドッグタイマの機能と動作について説明
します。
12.1 ウォッチドッグタイマの概要
12.2 ウォッチドッグタイマの構成
12.3 ウォッチドッグタイマのレジスタ
12.4 ウォッチドッグタイマの動作説明
12.5 ウォッチドッグタイマ使用上の注意
12.6 ウォッチドッグタイマのプログラム例
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
191
第 12 章 ウォッチドッグタイマ
12.1 ウォッチドッグタイマの概要
12.1
MB90990 シリーズ
ウォッチドッグタイマの概要
ウォッチドッグタイマは , タイムベースタイマまたは時計タイマをカウントクロック
とする 2 ビットのカウンタです。カウンタがインターバル時間内にクリアされない
場合は CPU をリセットします。
■ ウォッチドッグタイマ機能
• ウォッチドッグタイマは , プログラムの暴走を対策するためのタイマカウンタです。
ウォッチドッグタイマが起動されると , ウォッチドッグタイマのカウンタを設定し
たインターバル時間内にクリアし続ける必要があります。ウォッチドッグタイマの
カウンタがクリアされずに設定したインターバル時間に達すると , CPU がリセット
されます。これをウォッチドッグタイマとよびます。
• ウォッチドッグタイマのインターバル時間は , カウントクロックとして入力するク
ロック周期に起因し , 最小時間から最大時間の間にウォッチドッグリセットが発生
します。
• クロックソースの出力先は時計タイマ制御レジスタのウォッチドッグクロック選
択ビット (WTC: WDCS) で設定します。
• ウォッチドッグタイマのインターバル時間は , ウォッチドッグタイマ制御レジスタ
のタイムベースタイマ出力選択ビット / 時計タイマ出力選択ビット (WDTC: WT1,
WT0) で設定します。
ウォッチドッグタイマのインターバル時間を , 表 12.1-1 に示します。
192
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 12 章 ウォッチドッグタイマ
12.1 ウォッチドッグタイマの概要
MB90990 シリーズ
表 12.1-1 ウォッチドッグタイマのインターバル時間
メインクロック
算出例
外部クロック (@4 MHz)
クロック周期
最小
最大
(214 ± 211)/HCLK
約 3.58 ms
約 4.61 ms
(216 ± 213)/HCLK
約 14.33 ms
約 18.4 ms
(218 ± 215)/HCLK
約 57.34 ms
約 73.73 ms
(221 ± 218)/HCLK
約 458.75 ms
約 589.82 ms
サブクロック
算出例
クロック周期
外部クロック (@100 kHz, 8 分周 )
最小
最大
(212 ± 29)/SCLK
約 0.287 s
約 0.369 s
(215 ± 212)/SCLK
約 2.294 s
約 2.949 s
(216 ± 213)/SCLK
約 4.588 s
約 5.898 s
(217 ± 214)/SCLK
約 9.175 s
約 11.796 s
<注意事項>
• ウォッチドッグタイマのカウントクロックをタイムベースタイマ出力 ( 桁上り信号 ) と
している場合にタイムベースタイマがクリアされると,ウォッチドッグリセットの発生
時間が長くなる場合があります。
• マシンクロックとしてサブクロックを使用する場合は , 必ず時計タイマ制御レジスタ
(WTC) のウォッチドッグタイマクロックソース選択ビット (WDCS) を "0" に設定して ,
時計タイマの出力を選択するようにしてください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
193
第 12 章 ウォッチドッグタイマ
12.2 ウォッチドッグタイマの構成
12.2
MB90990 シリーズ
ウォッチドッグタイマの構成
ウォッチドッグタイマは , 以下の 5 種類のブロックで構成されています。
• カウントクロックセレクタ
• ウォッチドッグタイマカウンタ (2 ビットカウンタ )
• ウォッチドッグリセット発生回路
• カウンタクリア制御回路
• ウォッチドッグタイマ制御レジスタ (WDTC)
■ ウォッチドッグタイマのブロックダイヤグラム
図 12.2-1 ウォッチドッグタイマのブロックダイヤグラム
時計タイマ制御レジスタ (WTC)
ウォッチドッグタイマ制御レジスタ (WDTC)
PONR
予約
WRST ERST SRST
ウォッチドッグタイマ
WTE
WT1
WDCS
WT0
2
リセットの
発生
起動
リセットの発生
スリープモードに移行
タイムベースタイマ
モードに移行
カウント
クロック
セレクタ
カウンタ
クリア
制御回路
時計モードに移行
ストップモードに移行
2 ビット
カウンタ
ウォッチドッグ
リセット
発生回路
内部
リセット
発生回路へ
クリア
4
4
( タイムベースタイマカウンタ )
メインクロック
(HCLK の 2 分周 )
× 21 × 22
⋅⋅⋅
× 28 × 29 × 210 × 211 × 212 × 213 × 214 × 215 × 216 × 217 × 218
( 時計カウンタ )
サブクロック
SCLK*
× 21 × 22
⋅⋅⋅
× 25 × 26 × 27 × 28 × 29 × 210 × 211 × 212 × 213 × 214 × 215
HCLK : 発振クロック
SCLK : サブクロック
* : SCLK は CR 発振クロックの 8 分周または 4 分周となります。分周比の設定は PLL/ サブクロック制御
レジスタ (PSCCR) の SCDS ビットで行います (「第 5 章 クロック」を参照してください )。
194
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 12 章 ウォッチドッグタイマ
12.2 ウォッチドッグタイマの構成
● カウントクロックセレクタ
ウォッチドッグタイマに入力するカウントクロックをタイムベースタイマまたは時計
タイマから選択します。それぞれのタイマ出力から 4 種類のインターバル時間を設定
できます。
● ウォッチドッグタイマカウンタ (2 ビットカウンタ )
タイムベースタイマまたは時計タイマの出力をカウントクロックとする 2 ビットの
アップカウンタです。クロックソースの出力先は時計タイマ制御レジスタのウォッチ
ドッグクロック選択ビット (WTC: WDCS) で設定します。
● ウォッチドッグリセット発生回路
ウォッチドッグタイマのオーバフロー ( 桁上り ) によってリセット信号を発生します。
● カウンタクリア回路
ウォッチドッグタイマのカウンタをクリアします。
● ウォッチドッグタイマ制御レジスタ (WDTC)
ウォッチドッグタイマの起動とクリア,インターバル時間の設定およびリセット発生要
因の保持を行います。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
195
第 12 章 ウォッチドッグタイマ
12.3 ウォッチドッグタイマのレジスタ
MB90990 シリーズ
ウォッチドッグタイマのレジスタ
12.3
ウォッチドッグタイマの設定に使用するレジスタを説明します。
■ ウォッチドッグタイマのレジスタと初期値の一覧
図 12.3-1 ウォッチドッグタイマのレジスタと初期値の一覧
ウォッチドッグタイマ制御レジスタ (WDTC)
bit
アドレス
0000A8H
7
6
×
1
5
×
4
×
3
2
1
0
×
1
1
1
X : 不定
196
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 12 章 ウォッチドッグタイマ
12.3 ウォッチドッグタイマのレジスタ
MB90990 シリーズ
ウォッチドッグタイマ制御レジスタ (WDTC)
12.3.1
ウォッチドッグタイマの起動とクリア , インターバル時間の設定 , リセット発生要因
の保持を行います。
■ ウォッチドッグタイマ制御レジスタ (WDTC)
図 12.3-2 ウォッチドッグタイマ制御レジスタ (WDTC)
bit 7
6
5
4
3
2
アドレス
0000A8H PONR 予約 WRST ERST SRST WTE
R
R
R
R
R
W
1
0
WT1
WT0
W
W
初期値
X1XXX111 B
bit1 bit0
インターバル時間選択ビット ( タイムベースタイマ出力選択 )
WT1 WT0
インターバル時間
最小
0
0
クロック周期
最大
約 3.58 ms
約 4.61 ms
(2
14
11
± 2 )/HCLK
16
± 213)/HCLK
0
1
約 14.33 ms
約 18.3 ms
(2
1
0
約 57.23 ms
約 73.73 ms
(218 ± 215)/HCLK
1
1
約 458.75 ms 約 589.82 ms (221 ± 218)/HCLK
HCLK : 発振クロック
上記は HCLK 4 MHz で動作した場合のインターバル時間
bit1
bit0
インターバル時間選択ビット ( 時計タイマ出力選択 )
WT1 WT0
インターバル時間
最小
クロック周期
最大
0
0
約 0.287 s
約 0.369 s
(212 ± 29)/SCLK
0
1
約 2.294 s
約 2.949 s
(215 ± 212)/SCLK
1
0
約 4.588 s
約 5.898 s
(216 ± 213)/SCLK
1
1
約 9.175 s
約 11.796 s
(217 ± 214)/SCLK
SCLK : サブクロック *1
上記は SCLK 12.5 kHz で動作した場合のインターバル時間
bit2
WTE
0
ウォッチドッグタイマ制御ビット
リセット後 , 2 回目以降の書込み :
リセット後 , 最初の書込み :
ウォッチドッグタイマを起動 ウォッチドッグタイマをクリア
1
影響なし
bit7
bit5
bit4
bit3
リセット要因ビット
PONR WRST ERST SRST
R : リードオンリ
W : ライトオンリ
X : 不定
リセット要因ビット
1
X
X
X
パワーオンリセット
*2
1
*2
*2
ウォッチドッグリセット
*2
*2
1
*2
外部リセット (RST 端子に "L" レベル入力 )
*2
*2
*2
1
ソフトウェアリセット (RST ビットへの "1"
書込み )
*1: SCLK は CR 発振クロックの 8 分周または 4 分周となります。分周比の設定は PLL/ サブクロック制御
レジスタ (PSCCR) の SCDS ビットで行います (「第 5 章 クロック」を参照してください )。インター
バル時間については表 12.1-1 を参照してください。
*2: 前の状態を保持
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
197
第 12 章 ウォッチドッグタイマ
12.3 ウォッチドッグタイマのレジスタ
MB90990 シリーズ
表 12.3-1 ウォッチドッグタイマ制御レジスタ (WDTC) の機能
ビット名
bit7,
bit5
∼
bit3
PONR, WRST, ERST,
SRST:
リセット要因ビット
機 能
リセット要因を示します。
• リセットが発生すると , リセット要因に対応したビッ
トに "1" がセットされます。リセット後 , ウォッチ
ドッグタイマ制御レジスタ (WDTC) を読み出して , リ
セット要因を確認できます。
• リセット要因ビットは , ウォッチドッグタイマ制御レ
ジスタ (WDTC) を読出し後 , クリアされます。
( 注意事項 )
パワーオンリセット後の PONR ビット以外の内容は保
証されません。読み出した場合に PONR ビットがセッ
トされている場合は , その他のビット内容を無視する
ようにしてください。
bit6
予約ビット
読み出した場合 : 値は不定です。
書き込んだ場合 : 影響しません。
bit2
WTE:
ウォッチドッグタイマ
制御ビット
ウォッチドッグタイマを起動またはクリアします。
"0" に設定した場合 ( リセット後 1 回目 ):
起動します。
"0" に設定した場合 ( リセット後 2 回目以降 ):
クリアされます。
WT1, WT0:
インターバル時間選択
ビット
ウォッチドッグタイマのインターバル時間を設定します。
時計タイマ制御レジスタ (WTC) により , ウォッチドッグ
タイマのクロックソースが時計タイマになっている場合
( ウォッチドッグクロック選択ビット WDCS=0) と , ク
ロックモードとしてメインクロックモードまたは PLL ク
ロックモードが選択されていて , かつ WTC の WDCS
ビットが "1" の場合とでは , インターバル時間は図 12.3-2
のように異なります。
サブクロックモードの場合 , 必ず時計タイマ制御レジスタ
(WTC) のウォッチドッグクロック選択ビット (WDCS) を
"0" に設定して , 時計タイマの出力を選択してください。
• ウォッチドッグタイマ起動時のデータのみが有効で
す。
• ウォッチドッグタイマ起動後の書込みデータは無視さ
れます。
• これらのビットは書込み専用です。
bit1,
bit0
198
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 12 章 ウォッチドッグタイマ
12.4 ウォッチドッグタイマの動作説明
MB90990 シリーズ
12.4
ウォッチドッグタイマの動作説明
ウォッチドッグタイマは起動後 , カウンタがクリアされずにインターバル時間に達す
るとウォッチドッグリセットを発生します。
■ ウォッチドッグタイマの状態遷移図
ウォッチドッグタイマには以下の 4 つの状態が存在します。
無効
: 動作していません。
動作
: カウンタクリア状態からカウントを開始します。
停止
: カウンタクリア状態を継続します。
オーバフロー : ウォッチドッグリセットを発生します。
図 12.4-1 ウォッチドッグタイマ状態遷移図
無効
(初期状態)
WTEビットに
"0"書込み
リセット
リセット
割込みによるストップモード解除
動作
カウンタクリア状態から
カウント開始
カウンタ
オーバフロー
停止
カウンタクリア状態
ストップモードに移行
オーバフロー
常に
ウォッチドッグリセット
を発生
WTEビットに"0"書込み
スリープモードに移行
時計モードに移行
タイムベースタイマモードに移行
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
199
第 12 章 ウォッチドッグタイマ
12.4 ウォッチドッグタイマの動作説明
MB90990 シリーズ
■ ウォッチドッグタイマの動作
ウォッチドッグタイマの動作には , 図 12.4-2 に示す設定が必要です。
図 12.4-2 ウォッチドッグタイマの設定
ウォッチドッグタイマ制御レジスタ (WDTC)
bit
7
PONR
6
予約
5
4
WRST ERST
3
2
1
0
SRST
WTE
0
WT1
◎
WT0
◎
2
1
0
時計タイマ制御レジスタ (WTC)
bit
7
6
5
4
3
WDCS
◎
SCE
WTIE
WTOF
WTR
WTC2 WTC1 WTC0
◎ : 使用ビット
0 : "0" に設定
● クロック入力ソースの選択
• ウォッチドッグタイマのカウントクロックのクロック入力ソースには , タイムベー
スタイマまたは時計タイマを選択できます。ウォッチドッグクロック選択ビット
(WTC: WDCS) を "1" に設定するとタイムベースタイマが , "0" に設定すると時計タ
イマが設定されます。リセット後は "1"( タイムベースタイマ ) に戻ります。
• サブクロックモードで動作している場合は , WDCS ビットを "0" に設定して時計タ
イマを選択してください。
<注意事項>
1系統品でウォッチドッグタイマのクロック入力ソースとして時計タイマを設定した場合,
ウォッチドッグタイマは使用できません。
● インターバル時間の設定
• インターバル時間は , インターバル時間選択ビット (WDTC: WT1, WT0) を設定して
ウォッチドッグタイマのインターバル時間を選択します。
• インターバル時間は起動と同時に設定してください。ウォッチドッグタイマが起動
した後に書き込んだ場合は無視されます。
● ウォッチドッグタイマの起動
ウォッチドッグタイマは,リセット後,ウォッチドッグタイマ制御ビット(WDTC: WTE)
に "0" を書き込むと起動してカウントアップを開始します。
200
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 12 章 ウォッチドッグタイマ
12.4 ウォッチドッグタイマの動作説明
● ウォッチドッグタイマのクリア
• ウォッチドッグタイマを起動した後 , インターバル時間内にもう一度ウォッチドッ
グタイマ制御ビット (WDTC: WTE) に "0" を書き込むとクリアされます。インター
バル時間内にクリアされない場合は , ウォッチドッグタイマのオーバフローが発生
して CPU がリセットされます。
• リセットの発生 , スタンバイモード ( スリープモード , ストップモード , 時計モード ,
タイムベースタイマモード ) への移行によってウォッチドッグタイマはクリアされま
す。
• タイムベースタイマ動作中 , 時計モード動作中 , スリープモード状態では , ウォッチ
ドッグタイマのカウンタはクリアされますがウォッチドッグタイマは起動したま
まです。
• 図 12.4-3 にウォッチドッグタイマのクリアのタイミングとインターバル時間の関
係を示します。インターバル時間は , ウォッチドッグタイマをクリアするタイミン
グによって変化します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
201
第 12 章 ウォッチドッグタイマ
12.4 ウォッチドッグタイマの動作説明
MB90990 シリーズ
● リセット要因の確認
リセット後にウォッチドッグタイマ制御レジスタ (WDTC) のリセット要因ビット
(WDTC: PONR, WRST, ERST, SRST) を読み出すことによってリセット要因を調べるこ
とができます。
<参考>
リセット要因ビットは「第 7 章 リセット」を参照してください。
図 12.4-3 ウォッチドッグタイマのクリアタイミングとインターバル時間
・ウォッチドッグタイマブロックダイヤグラム
2 ビットカウンタ
クロック
セレクタ
a
WTE ビット
2 分周回路
カウント許可
出力回路
b
2 分周回路
c
リセット
回路
d
リセット
信号
カウント許可とクリア
・最小インターバル時間 ( カウントクロックの立上り直前に WTE ビットをクリアした場合 )
カウントスタート
カウンタクリア
カウントクロック a
2 分周値 b
2 分周値 c
カウント許可
リセット信号 d
7 ×( カウントクロック周期 /2)
ウォッチドッグリセット発生
WTE ビットクリア
・最大インターバル時間 ( カウントクロックの立上り直後に WTE ビットをクリアした場合 )
カウントスタート
カウンタクリア
カウントクロック a
2 分周値 b
2 分周値 c
カウント許可
リセット信号
WTE ビットクリア
202
9 ×( カウントクロック周期 /2)
ウォッチドッグリセット発生
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
12.5
第 12 章 ウォッチドッグタイマ
12.5 ウォッチドッグタイマ使用上の注意
ウォッチドッグタイマ使用上の注意
ウォッチドッグタイマを使用する場合は , 以下の点にご注意ください。
■ ウォッチドッグタイマ使用上の注意
● ウォッチドッグタイマの停止について
ウォッチドッグタイマはストップモードへの移行で停止します。
● インターバル時間について
• インターバル時間はタイムベースタイマまたは時計タイマの桁上り信号をカウン
トクロックにしているため , タイムベースタイマまたは時計タイマがクリアされる
とウォッチドッグタイマのインターバル時間が長くなる場合があります。タイム
ベースタイマは , タイムベースタイマ制御レジスタ (TBTC) のタイムベースタイマカ
ウンタクリアビット (TBR) への "0" 書込みのほか , メインクロックモードから PLL
クロックモードへの遷移 , サブクロックモードからメインクロックモードへの遷移 ,
サブクロックモードから PLL クロックモードへの遷移時にもクリアされますのでご
注意ください。
• インターバル時間はウォッチドッグタイマの起動と同時に設定してください。起動
時以外に設定すると無視されます。
● プログラム作成上の注意
メインループの中で , 繰り返しウォッチドッグタイマをクリアする場合 , 割込み処理を
含めたメインループの処理時間は,ウォッチドッグタイマのインターバル時間より短い
時間に設定してください。また , スリープモード , タイムベースタイマモードおよび時
計モードでもウォッチドッグタイマは動作中のため , 各モードでの動作時間につき , イ
ンターバル時間などユーザプログラムで考慮する必要があります。
● サブクロックモード時の注意
サブクロックモードの場合 , 必ず時計タイマ制御レジスタ (WTC) のウォッチドッグク
ロック選択ビット (WDCS) を "0" に設定して時計タイマの出力を選択してください。
● スリープモード , タイムベースタイマモードおよび時計モード中のウォッチドッグタイマ
動作
スリープモード , タイムベースタイマモードおよび時計モードに遷移するとウォッチ
ドッグタイマはクリアされ , 再度カウントを開始します ( 表 12.5-1 を参照してくださ
い )。
● ストップモード中のウォッチドッグタイマ動作
ストップモードに遷移するとウォッチドッグタイマはクリアされ停止します。ストッ
プモードが解除されると再度カウントを開始します ( 表 12.5-1 を参照してください )。
● リセット中のウォッチドッグタイマ動作
ウォッチドッグタイマはすべてのリセット要因で無効となります。リセット解除後も
ウォッチドッグタイマは無効状態です ( 表 12.5-1 を参照してください )。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
203
第 12 章 ウォッチドッグタイマ
12.5 ウォッチドッグタイマ使用上の注意
MB90990 シリーズ
表 12.5-1 ウォッチドッグタイマクリア条件
動作モード
リセット
WDTC
レジスタ
WTE=0
クリア
遷移時
書込み時
モード中の
ウォッチドッ
グタイマ状態
モード中の
ウォッチ
ドッグリ
セット
モード解除 /
復帰後の
ウォッチ
ドッグタイ
マ状態
204
ストップ
モード
スリープ
モード
タイムベー
ス
タイマモー
ド
時計
モード
遷移時
遷移時
遷移時
遷移時
動作
( クリア直
後からカウ
ント開始 )
動作
( クリア直
後からカウ
ント開始 )
動作
( クリア直
後からカウ
ント開始 )
発生する
発生する
無効
―
停止
( クリア状
態を維持 )
発生しない
―
発生しない
発生する
動作
動作
( クリア状
態からカウ
ント再開 )
動作
動作
動作
( カウントを ( カウントを ( カウントを
継続 )
継続 )
継続 )
無効
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 12 章 ウォッチドッグタイマ
12.6 ウォッチドッグタイマのプログラム例
MB90990 シリーズ
12.6
ウォッチドッグタイマのプログラム例
ウォッチドッグタイマのプログラム例を示します。
■ ウォッチドッグタイマのプログラム例
● 処理仕様
• メインプログラムのループの中で毎回ウォッチドッグタイマをクリアします。
• メインプログラムはウォッチドッグタイマの最小インターバル時間内に 1 周する必
要があります。
● コーディング例
WDTC
EQU
0000A8H
; ウォッチドッグタイマ制御レジスタ
WTE
;
EQU
WDTC:2
; ウォッチドッグ制御ビット
;--------- メインプログラム ------------------------------------CODE
CSEG
; スタックポインタ (SP) などは
START:
; 初期化済みとする
MOV
I:WDTC,#00000011B
; ウォッチドッグタイマの起動
; インターバル時間 221+218 サイクル
; を選択
LOOP:
CLRB
I:WTE
; ウォッチドッグタイマのクリア
・
ユーザ処理
・
BRA
LOOP
;--------- ベクタ設定 -----------------------------------------VECT
CSEG ABS=0FFH
VECT
CM44-10149-4
ORG
DSL
00FFDCH
START
; リセットベクタ設定
DB
ENDS
END
00H
; シングルチップモードに設定
START
FUJITSU MICROELECTRONICS LIMITED
205
第 12 章 ウォッチドッグタイマ
12.6 ウォッチドッグタイマのプログラム例
206
MB90990 シリーズ
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 13 章
16 ビット入出力タイマ
16 ビット入出力タイマの機能と動作について説明
します。
13.1 16 ビット入出力タイマの概要
13.2 16 ビット入出力タイマのブロックダイヤグラム
13.3 16 ビット入出力タイマの構成
13.4 16 ビット入出力タイマの割込み
13.5 16 ビットフリーランタイマの動作説明
13.6 インプットキャプチャの動作説明
13.7 16 ビット入出力タイマの使用上の注意
13.8 16 ビット入出力タイマのプログラム例
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
207
第 13 章 16 ビット入出力タイマ
13.1 16 ビット入出力タイマの概要
13.1
MB90990 シリーズ
16 ビット入出力タイマの概要
16 ビット入出力タイマは , 16 ビットフリーランタイマ 1 本 , インプットキャプチャ
4 本によって構成されています。
16 ビットフリーランタイマをベースに , 入力パルス測定や外部クロック周期の測定
を行うことができます。
■ 16 ビット入出力タイマのモジュール構成
16 ビット入出力タイマは , 以下のモジュールで構成されています。
● 16 ビットフリーランタイマ× 1
16 ビットフリーランタイマ 0(ch.0)
● インプットキャプチャ× 4
インプットキャプチャユニット 0: 16 ビットフリーランタイマ 0 をキャプチャ
- インプットキャプチャ 0(ch.0)
- インプットキャプチャ 1(ch.1)
- インプットキャプチャ 2(ch.2)
- インプットキャプチャ 3(ch.3)
208
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 13 章 16 ビット入出力タイマ
13.1 16 ビット入出力タイマの概要
■ 16 ビット入出力タイマの機能
● 16 ビットフリーランタイマの機能
16 ビットフリーランタイマは , 16 ビットのアップカウンタ , プリスケーラ , 制御レジス
タにより構成されています。
16 ビットフリーランタイマのカウント値をインプットキャプチャの基準時間として使
用します。
• カウントクロック周期は 8 種類から選択して設定できます。
• カウンタのオーバフローによって割込み要求を発生することができます。
• 16 ビットフリーランタイマのカウンタは , リセット , タイマクリア (TCCSL0:
CLR=1) により "0000H" にクリアされます。
● インプットキャプチャの機能
インプットキャプチャは , 外部入力用端子に対応した 4 本の 16 ビットキャプチャレジ
スタと制御レジスタ , エッジ検出回路で構成されています。
外部入力用端子にトリガエッジが入力された時点で 16 ビットフリーランタイマのカウ
ンタ値を保持し , 同時に割込み要求を発生します。
• 各チャネルで独立にキャプチャ割込みを発生することができます。
• 拡張インテリジェント I/O サービス (EI2OS) を起動できます。
• トリガエッジは , 立上りエッジ / 立下りエッジ / 両エッジから選択できます。
• 各チャネルは独立して動作するため , 最大 4 入力の計測が行えます。
• 入力信号を LIN-UART に設定した場合 , LIN スレーブ動作時のボーレート測定を行
うことができます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
209
第 13 章 16 ビット入出力タイマ
13.2 16 ビット入出力タイマのブロックダイヤグラム
13.2
MB90990 シリーズ
16 ビット入出力タイマのブロックダイヤグラム
16 ビット入出力タイマは , 以下のモジュールで構成されています。
• 16 ビットフリーランタイマ
• インプットキャプチャ
■ 16 ビット入出力タイマのブロックダイヤグラム
図 13.2-1 16 ビット入出力タイマのブロックダイヤグラム
内部データバス
インプット
キャプチャ
専用バス
16 ビット
フリーラン
タイマ
● 16 ビットフリーランタイマ
16 ビットフリーランタイマのカウント値をインプットキャプチャの基準時間として使
用します。
● インプットキャプチャ
外部入力用端子にトリガエッジが入力された時点 , もしくは LIN-UART から LIN スレー
ブボーレート測定用のトリガエッジが入力された時点で 16 ビットフリーランタイマの
カウンタ値を保持し , 同時に割込み要求を発生します。
■ 端子の詳細と割込み番号
16 ビット入出力タイマで使用する端子 , 割込みの詳細を表 13.2-1 に示します。
表 13.2-1 端子の詳細と割込み番号
専用
端子
端子名
インプットキャプチャ ch.0(16 ビットフリーランタイマ ch.0 使用 )
IN0
P24/IN0
インプットキャプチャ ch.1(16 ビットフリーランタイマ ch.0 使用 )
IN1
P25/IN1
インプットキャプチャ ch.2(16 ビットフリーランタイマ ch.0 使用 )
IN2
P26/IN2
インプットキャプチャ ch.3(16 ビットフリーランタイマ ch.0 使用 )
IN3
P27/IN3
FRCK0
P44/FRCK0
チャネル
16 ビットフリーランタイマ ch.0( オーバフロー割込み )
210
FUJITSU MICROELECTRONICS LIMITED
割込み
番号
EI2OS
対応
#33
(21H)
○
#30
(1EH)
×
CM44-10149-4
第 13 章 16 ビット入出力タイマ
13.2 16 ビット入出力タイマのブロックダイヤグラム
MB90990 シリーズ
13.2.1
16 ビットフリーランタイマのブロックダイヤグラム
MB90990 シリーズは 16 ビットフリーランタイマを 1 チャネル内蔵し , それぞれ以
下のブロックで構成されています。
■ 16 ビットフリーランタイマのブロックダイヤグラム
図 13.2-2 16 ビットフリーランタイマのブロックダイヤグラム
タイマデータレジスタ
(TCDT0)
OF
インプットキャプチャへ
カウント値出力
16 ビットカウンタ
CLK
STOP
CLR
外部クロック
(FRCK0)
内
部
デ
|
タ
バ
ス
プリスケーラ
3
タイマ制御ステータス
レジスタ ( 下位 )
(TCCSL0)
タイマ制御ステータス
レジスタ ( 上位 )
(TCCSH0)
IVF IVFE STOP MODE CLR
CLK2 CLK1 CLK0
フリーランタイマ
オーバフロー割込み要求
ECKE
φ : マシンクロック
OF : オーバフロー
● プリスケーラ
マシンクロックを分周し , 16 ビットカウンタにカウントクロックを供給します。タイ
マ制御ステータスレジスタの設定により (TCCSL0: CLK2 ∼ CLK0), カウントクロック
の周期を 8 種類から選択できます。
● タイマデータレジスタ (TCDT0)
タイマデータレジスタは , 16 ビットフリーランタイマのカウンタ値を読み出すことの
できるレジスタです。16 ビットフリーランタイマの停止中は , TCDT0 にカウンタ値を
書き込むことによりカウンタ値を設定できます。
● タイマ制御ステータスレジスタ (TCCSH0, TCCSL0)
タイマ制御ステータスレジスタ ( 上位 , 下位 ) は , カウントクロックの選択やカウンタ
クリアの条件の選択 , カウンタのクリア , カウント動作の許可 , 割込み要求の許可 , オー
バフロー発生フラグの確認などを設定できます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
211
第 13 章 16 ビット入出力タイマ
13.2 16 ビット入出力タイマのブロックダイヤグラム
13.2.2
MB90990 シリーズ
インプットキャプチャのブロックダイヤグラム
インプットキャプチャは , 以下のブロックで構成されています。
■ インプットキャプチャのブロックダイヤグラム
図 13.2-3 インプットキャプチャユニット 0 のブロックダイヤグラム
16 ビットフリーランタイマ
エッジ検出回路
IN3
端子
インプットキャプチャデータレジスタ 3 (IPCP3)
IN2
端子
インプットキャプチャデータレジスタ 2 (IPCP2)
インプットキャプチャ
エッジレジスタ (ICE23)
IEI3 IEI2
2
2
インプットキャプチャ
制御ステータスレジスタ
(ICS23)
ICP3 ICP2 ICE3 ICE2 EG31 EG30 EG21 EG20
インプットキャプチャ
割込み要求
インプットキャプチャ
制御ステータスレジスタ
(ICS01)
内
部
デ
|
タ
バ
ス
ICP1 ICP0 ICE1 ICE0 EG11 EG10 EG01 EG00
2
2
インプットキャプチャエッジレジスタ (ICE01)
ICUS1
ICUS0 IEI1 IEI0
IN1
端子
インプットキャプチャデータレジスタ 1 (IPCP1)
LIN-UART1
IN0
端子
インプットキャプチャデータレジスタ 0 (IPCP0)
LIN-UART0
エッジ検出回路
212
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 13 章 16 ビット入出力タイマ
13.2 16 ビット入出力タイマのブロックダイヤグラム
MB90990 シリーズ
● インプットキャプチャデータレジスタ 0 ∼ 3(IPCP0 ∼ IPCP3)
• インプットキャプチャデータレジスタは , キャプチャ動作によって取り込まれた 16
ビットフリーランタイマのカウンタ値を保持するレジスタです。
• インプットキャプチャデータレジスタ 0 ∼ 3 は , 16 ビットフリーランタイマ 0 のカ
ウンタ値を保持します。
● インプットキャプチャ制御ステータスレジスタ 01, 23(ICS01, ICS23)
• インプットキャプチャ制御ステータスレジスタは , 各インプットキャプチャについ
てトリガエッジの選択やキャプチャ動作の許可 , キャプチャ割込み要求の許可と有
効エッジ検出フラグの確認などを設定できます。
• インプットキャプチャ制御ステータスレジスタは 2 本あり , 表 13.2-2 で示すように
対応するチャネルのインプットキャプチャ動作を制御します。
● インプットキャプチャエッジレジスタ 01, 23(ICE01, ICE23)
• インプットキャプチャエッジレジスタは , 各インプットキャプチャで検出された
エッジの極性を表示します。また , 入力信号の選択 ( 外部端子 INx/LIN-UART) を行
います。入力を LIN-UART に設定した場合は , LIN スレーブ動作時のボーレート測
定を行うことができます (「20.7.3 LIN 機能 ( 動作モード 3) の動作」を参照してく
ださい )。
• インプットキャプチャエッジレジスタは 2 本あり , 表 13.2-2 で示すように対応する
チャネルのインプットキャプチャ動作を制御します。
表 13.2-2 インプットキャプチャのレジスタと端子の対応関係
インプット
インプットキャプチャ
制御ステータス
レジスタ
インプットキャプチャ
エッジレジスタ
ICS01
ICE01
インプットキャプチャ
データレジスタ
入力
端子
LIN-UART
からの入力
IPCP0
IN0
UART0
IPCP1
IN1
UART1
IPCP2
IN2
―
IPCP3
IN3
―
キャプチャ
ユニット 0
ICS23
ICE23
● エッジ検出回路
エッジ検出回路は , 外部入力用端子に入力された信号のエッジを検出します。検出する
エッジは , 立上りエッジ / 立下りエッジ / 両エッジ / 検出なし ( キャプチャ停止 ) から選
択できます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
213
第 13 章 16 ビット入出力タイマ
13.3 16 ビット入出力タイマの構成
13.3
MB90990 シリーズ
16 ビット入出力タイマの構成
16 ビット入出力タイマの端子 , 割込み要因 , レジスタの詳細を説明します。
■ 16 ビット入出力タイマの端子
16 ビット入出力タイマで使用する端子は , 汎用入出力ポートと兼用しています。
端子の機能と 16 ビット入出力タイマで使用する場合の設定を表 13.3-1 に示します。
表 13.3-1 16 ビット入出力タイマの端子
チャネル
端子名
16 ビットフリーランタイマ 0
P44/
FRCK0
インプットキャプチャ 0
P24/IN0
インプットキャプチャ 1
P25/IN1
インプットキャプチャ 2
P26/IN2
インプットキャプチャ 3
P27/IN3
端子機能
汎用入出力ポート /
外部クロック入力
端子の使用に必要な設定
ポート方向レジスタ (DDR) で入力ポートに設定
ポート方向レジスタ (DDR) で入力ポートに設定
汎用入出力ポート /
キャプチャ入力
ポート方向レジスタ (DDR) で入力ポートに設定
ポート方向レジスタ (DDR) で入力ポートに設定
ポート方向レジスタ (DDR) で入力ポートに設定
■ 16 ビット入出力タイマでの割込み要求の発生
16 ビット入出力タイマは以下の割込み要求を発生することができます。
● タイマカウンタオーバフロー割込み
オーバフロー割込み要求を許可に設定している場合は (TCCSL0: IVFE=1), 次の要因に
より割込み要求を発生します。
・16 ビットフリーランタイマのオーバフロー
● インプットキャプチャ割込み
インプットキャプチャ割込み要求を許可に設定している場合は (ICS:ICE=1), インプッ
トキャプチャ端子でトリガエッジが検出された場合 , または LIN-UART から LIN スレー
ブボーレート測定用のトリガエッジが入力された場合に割込み要求を発生します。
214
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 13 章 16 ビット入出力タイマ
13.3 16 ビット入出力タイマの構成
MB90990 シリーズ
タイマ制御ステータスレジスタ ( 上位 )(TCCSH0)
13.3.1
タイマ制御ステータスレジスタ ( 上位 ) は , カウントクロックの選択やカウンタクリ
アの条件の選択 , カウンタのクリアやカウント動作の許可 , 割込みの許可 , 割込み要
求フラグの確認などを設定できます。
■ タイマ制御ステータスレジスタ ( 上位 )(TCCSH0)
図 13.3-1 タイマ制御ステータスレジスタ ( 上位 )(TCCSH0)
bit 15
アドレス
TCCSH0 : 007943H
14
13
12
11
10
9
8
ECKE
予約
予約 予約 予約 予約 予約
R/W
R/W
R/W R/W R/W R/W R/W
初期値
01100000B
bit15
R/W
ECKE
外部クロック入力許可ビット
0
内部クロック ( プリスケーラ出力 ) を使用します。
1
外部クロック (FRCK0 端子入力 ) を使用します。
: リード / ライト可能
: 未定義ビット
: 初期値
表 13.3-2 タイマ制御ステータスレジスタ ( 上位 )(TCCSH0) の機能
ビット名
bit15
機 能
ECKE :
外部クロック入力許可
ビット
16 ビットフリーランタイマのカウントクロックを選択します。
"1" に設定した場合 : 外部端子 FRCK0 から入力されたクロックを使
用します。
"0" に設定した場合 : 内部クロック ( プリスケーラから出力されたク
ロック ) を使用します。
( 注意事項 ) ECKE ビットの設定はフリーランタイマの停止中
(TCCSL:STOP=1) に行ってください。
FRCK よりクロックを入力する場合は ,
FRCK0(DDR4:bit4=0), に設定してください。
bit14
予約ビット
このビットは予約ビットです。
このビットには必ず "1" を書き込んでください。
bit13
未定義ビット
読み出した場合 : "1" が読み出されます。
書き込んだ場合 : 影響しません。
予約ビット
このビットは予約ビットです。
このビットには必ず "0" を書き込んでください。
bit12
∼
bit8
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
215
第 13 章 16 ビット入出力タイマ
13.3 16 ビット入出力タイマの構成
13.3.2
MB90990 シリーズ
タイマ制御ステータスレジスタ ( 下位 )(TCCSL0)
タイマ制御ステータスレジスタ ( 下位 ) は , カウントクロックの選択やカウンタクリ
アの条件の選択 , カウンタのクリアやカウント動作の許可 , 割込みの許可 , 割込み要
求フラグの確認などを設定できます。
■ タイマ制御ステータスレジスタ ( 下位 )(TCCSL0)
図 13.3-2 タイマ制御ステータスレジスタ ( 下位 )(TCCSL0)
6
bit 7
5
4
3
2
1
0
アドレス
TCCSL0:007942H IVF IVFE STOP MODE CLR CLK2 CLK1 CLK0
初期値
00000000B
R/W R/W R/W R/W R/W R/W R/W R/W
bit2
bit1
bit0
CLK2 CLK1 CLK0 カウントクロック周期選択ビット
0
0
0
1/φ
0
0
1
2/φ
0
1
0
4/φ
0
1
1
8/φ
1
0
0
16/φ
1
0
1
32/φ
1
1
0
64/φ
1
1
1
128/φ
φ : マシンクロック周波数
bit3
CLR
タイマクリアビット
0
影響なし
1
カウンタのクリア (TCDT = 0000H)
bit4
MODE
クリア条件選択ビット
0
リセット , クリアビットによるクリア
1
リセット , クリアビットによるクリア
bit5
STOP
タイマ動作ストップビット
0
タイマ動作許可
1
タイマ動作禁止 ( 停止 )
bit6
IVFE
タイマオーバフロー割込み許可ビット
0
タイマオーバフローの割込みの禁止
1
タイマオーバフローの割込みの許可
bit7
IVF
R/W
216
タイマオーバフロー発生フラグビット
読出し時
書込み時
: リード / ライト可能
0
タイマオーバフローなし この IVF ビットのクリア
: 初期値
1
タイマオーバフローあり 影響なし
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 13 章 16 ビット入出力タイマ
13.3 16 ビット入出力タイマの構成
MB90990 シリーズ
表 13.3-3 タイマ制御ステータスレジスタ ( 下位 )(TCCSL0) の機能
ビット名
機 能
bit7
IVF:
タイマオーバフロー発生
フラグビット
タイマオーバフローの発生を示します。
["1" にセットされる条件 ]
16 ビットフリーランタイマがオーバフローした場合セットされま
す。
["1" にセットされた場合 ]
タイマオーバフロー割込み要求を許可に設定している場合は
(TCCSL:IVFE=1), IVF ビットが "1" にセットされると割込み要求を発
生します。
"0" に設定した場合 : クリアされます。
"1" に設定した場合 : 影響しません。
リードモディファイライト (RMW) 系命令では常に "1" が読み出され
ます。
bit6
IVFE:
タイマオーバフロー割込み
許可ビット
タイマオーバフロー発生フラグビット (TCCSL:IVF) が "1" にセット
された場合の割込み要求を許可または禁止します。
"1" に設定した場合 : IVF ビットが "1" にセットされた場合に割込み
要求を発生します。
"0" に設定した場合 : 割込み要求の発生を禁止します。
STOP:
タイマ動作ストップビット
16 ビットフリーランタイマの動作の許可と禁止 ( 停止 ) を設定しま
す。
"0" に設定した場合 : タイマ動作を許可し , CLK2 ∼ CLK0 で設定し
たカウントクロックによりカウントアップを
行います。
"1" に設定した場合 : タイマ動作を停止します。
bit5
16 ビットフリーランタイマ (TCDT レジスタ ) のカウンタ値がクリア
される条件を設定します。
"0" に設定した場合 : 次の条件で TCDT カウンタ値がクリアされま
す。
bit4
MODE:
クリア条件選択ビット
•
リセット
•
タイマクリアビットへの "1" の設定 (TCCSL:CLR=1)
"1"に設定した場合: 次の条件でTCDTカウンタ値がクリアされます。
•
リセット
•
タイマクリアビットへの "1" の設定 (TCCSL:CLR=1)
16 ビットフリーランタイマのカウンタ (TCDT) をクリアします。ク
リアはカウンタの変化点に同期して行われます。
"1" に設定した場合 : TCDT が "0000H" にクリアされます。
bit3
"0" に設定した場合 : 影響しません。
読み出した場合 : 常に "0" が読み出されます。
CLR:
タイマクリアビット
( 注意事項 ) 16 ビットフリーランタイマの停止中 (TCCSL:STOP=1)
にクリアする場合は , TCDT に直接 "0000H" を書き込ん
でください。
16 ビットフリーランタイマのカウントクロック周期を設定します。
bit2
∼
bit0
CLK2, CLK1, CLK0:
カウントクロック周期選択
ビット
( 注意事項 ) カウントクロック周期の選択は , インプットキャプ
チャ動作が停止中に (ICSnm: EGn1, EGn0=00B または
ICSnm:EGm1, EGm0=00B) 設定してください。
n = 0, 2
m = n+1
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
217
第 13 章 16 ビット入出力タイマ
13.3 16 ビット入出力タイマの構成
MB90990 シリーズ
タイマデータレジスタ (TCDT0)
13.3.3
タイマデータレジスタは , 16 ビットのアップカウンタです。
• 16 ビットフリーランタイマのカウンタ値が読み出せます。
• 16 ビットフリーランタイマの停止中はカウンタ値を設定できます。
■ タイマデータレジスタ (TCDT0)
図 13.3-3 タイマデータレジスタ (TCDT0)
アドレス
TCDT0 上位 : 007941H
bit15
Tn15
R/W
アドレス
TCDT0 下位 : 007940H
bit14
Tn14
R/W
bit7
Tn7
R/W
bit6
Tn6
R/W
bit13
Tn13
R/W
bit2
Tn12
R/W
bit5
Tn5
R/W
bit4
Tn4
R/W
bit11
Tn11
R/W
bit3
Tn3
R/W
bit0
Tn10
R/W
bit9
Tn9
R/W
bit2
Tn2
R/W
R/W : リード / ライト可能
bit8
Tn8
R/W
bit1
Tn1
R/W
初期値
00000000B
bit0
Tn0
R/W
初期値
00000000B
n=0
16 ビットフリーランタイマのカウンタ値を読み出せるレジスタです。
[ カウンタ値がクリアされる条件 ]
カウンタ値は , 次の条件で "0000H" にクリアされます。
• オーバフローの発生
• タイマ制御ステータスレジスタのタイマクリアビットへの "1" の設定
(TCCSL0: CLR=1)
• 16 ビットフリーランタイマ停止中のタイマデータレジスタへの "0000H" の設定
• リセットの発生
[ カウンタ値の設定 ]
タイマデータレジスタ (TCDT0) にカウンタ値を書き込んでタイマを設定する場合は ,
タイマ動作の停止中 (TCCSL0:STOP=1) に行ってください。
<注意事項>
タイマデータレジスタの読出し・書込みは , 必ずワード命令 (MOVW) を使用してください。
218
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 13 章 16 ビット入出力タイマ
13.3 16 ビット入出力タイマの構成
MB90990 シリーズ
インプットキャプチャ制御ステータスレジスタ (ICS)
13.3.4
インプットキャプチャ制御ステータスレジスタの機能を以下に示します。
ICS01, ICS23 と入力端子の対応は下記のようになります。
ICS01 の場合 : IN0 IN1 インプットキャプチャ ch.0, ch.1
ICS23 の場合 : IN2 IN3 インプットキャプチャ ch.2, ch.3
■ インプットキャプチャ制御ステータスレジスタ (ICS)
図 13.3-4 インプットキャプチャ制御ステータスレジスタ (ICS)
bit 7
6
5
4
3
2
1
0
アドレス
ICPm ICPn ICEm ICEn EGm1 EGm0 EGn1 EGn0
ICS01 : 000050H
ICS23 : 000052H R/W R/W R/W R/W R/W R/W R/W R/W
初期値
00000000B
bit1
EGn1
bit0
EGn0
0
0
1
1
0
1
0
1
bit3
EGm1
bit2
EGm0
0
0
1
1
0
1
0
1
bit4
ICEn
エッジ選択ビット n
エッジ検出なし ( 動作停止状態 )
立上りエッジ検出
立下りエッジ検出
両エッジ検出
エッジ選択ビット m
エッジ検出なし ( 動作停止状態 )
立上りエッジ検出
立下りエッジ検出
両エッジ検出
キャプチャ割込み許可ビット n
0
インプットキャプチャ n の割込み禁止
1
インプットキャプチャ n の割込み許可
bit5
ICEm
キャプチャ割込み許可ビット m
0
インプットキャプチャ m の割込み禁止
1
インプットキャプチャ m の割込み許可
bit6
ICPn
0
1
有効エッジ検出フラグビット n
読出し時
書込み時
インプットキャプチャ n
この ICPn ビットのクリア
の有効エッジ検出なし
インプットキャプチャ n
影響なし
の有効エッジ検出あり
bit7
ICPm
0
R/W
: リード / ライト可能
: 初期値
CM44-10149-4
1
有効エッジ検出フラグビット m
読出し時
書込み時
インプットキャプチャ m この ICPm ビットのクリ
の有効エッジ検出なし
ア
インプットキャプチャ m
影響なし
の有効エッジ検出あり
n = 0, 2 m = n + 1
FUJITSU MICROELECTRONICS LIMITED
219
第 13 章 16 ビット入出力タイマ
13.3 16 ビット入出力タイマの構成
MB90990 シリーズ
表 13.3-4 インプットキャプチャ制御ステータスレジスタ (ICS) の機能
ビット名
機 能
ICPm:
有効エッジ検出フラグ
ビット m
INm 端子で有効エッジを検出すると "1" にセットされます。
インプットキャプチャ m の割込み要求を許可に設定している場合は
(ICSnm:ICEm=1), ICPm ビットがセットされると割込み要求を発生し
ます。
"0" に設定した場合 : クリアされます。
"1" に設定した場合 : 影響しません。
リードモディファイライト (RMW) 系命令では , "1" が読み出されま
す。"1" セットと "0" 書き込みが同時に発生した場合は "0" 書き込み
が優先されます。
bit6
ICPn:
有効エッジ検出フラグ
ビット n
INn 端子で有効エッジを検出した場合に "1" にセットされます。
インプットキャプチャ n の割込み要求を許可に設定している場合は
(ICSnm:ICEn=1), ICPn ビットがセットされると , 割込み要求を発生し
ます。
"0" に設定した場合 : クリアされます。
"1" に設定した場合 : 影響しません。
リードモディファイライト (RMW) 系命令では , "1" が読み出されま
す。"1" セットと "0" 書き込みが同時に発生した場合は "0" 書き込み
が優先されます。
bit5
ICEm:
キャプチャ割込み許可
ビット m
インプットキャプチャ m の割込み要求を許可または禁止します。
"1" に設定した場合 : 有効エッジ検出フラグビット m が "1" にセッ
トされた場合に (ICSnm: ICPm=1) 割込み要求
を発生します。
bit4
ICEn:
キャプチャ割込み許可
ビット n
インプットキャプチャ n の割込み要求を許可または禁止します。
"1" に設定した場合 : 有効エッジ検出フラグビット n が "1" にセット
された場合に (ICSnm: ICPn=1) 割込み要求を
発生します。
bit7
bit3
bit2
EGm1, EGm0:
エッジ選択ビット m
インプットキャプチャレジスタ m について , キャプチャ動作のトリ
ガエッジを設定します。
トリガエッジの設定は , 動作の許可と停止の設定を兼ねています。
"00B" に設定した場合 : エッジ検出は行われず , キャプチャ動作は
停止します。
bit1,
bit0
EGn1, EGn0:
エッジ選択ビット n
インプットキャプチャレジスタ n について , キャプチャ動作のトリ
ガエッジを設定します。
トリガエッジの設定は , 動作の許可と停止の設定を兼ねています。
"00B" に設定した場合 : エッジ検出は行われず , キャプチャ動作は
停止します。
n = 0, 2
m=n+1
<注意事項> インプットキャプチャを使用する時は , 兼用する汎用入出力ポートのポート方向レジ
スタ (DDRx) を入力ポートに設定してください。
220
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 13 章 16 ビット入出力タイマ
13.3 16 ビット入出力タイマの構成
MB90990 シリーズ
13.3.5
インプットキャプチャレジスタ (IPCP)
• インプットキャプチャレジスタは , キャプチャ動作により 16 ビットフリーランタ
イマから取り込まれたカウンタ値を格納します。
• 16 ビットの読出し専用のレジスタで , インプットキャプチャレジスタ 0 ∼
3(IPCP0 ∼ IPCP3) があります。
■ インプットキャプチャレジスタ (IPCP)
図 13.3-5 インプットキャプチャレジスタ (IPCP)
IPCP0 ( 上位 ) :
アドレス
007921H
bit15
CP15
R
IPCP0 ( 下位 ) :
アドレス
007920H
IPCP1 ( 上位 ) :
アドレス
007923H
bit7
CP07
R
bit15
CP15
R
IPCP1 ( 下位 ) :
アドレス
007922H
IPCP2 ( 上位 ) :
アドレス
007925H
bit15
CP15
R
bit15
CP15
R
IPCP3 ( 下位 ) :
アドレス
007926H
bit14
CP14
R
bit7
CP07
R
bit13
CP13
R
bit6
CP06
R
bit2
CP12
R
bit5
CP05
R
bit11
CP11
R
bit4
CP04
R
bit10
CP10
R
bit3
CP03
R
bit2
CP02
R
bit0
CP00
R
bit8
CP08
R
bit1
CP01
R
bit9
CP09
R
bit0
CP00
R
bit8
CP08
R
bit1
CP01
R
bit9
CP09
R
bit2
CP02
R
bit8
CP08
R
bit1
CP01
R
bit9
CP09
R
bit2
CP02
R
bit10
CP10
R
bit3
CP03
R
bit9
CP09
R
bit2
CP02
R
bit10
CP10
R
bit3
CP03
R
bit11
CP11
R
bit4
CP04
R
bit10
CP10
R
bit3
CP03
R
bit11
CP11
R
bit4
CP04
R
bit2
CP12
R
bit5
CP05
R
bit11
CP11
R
bit4
CP04
R
bit2
CP12
R
bit5
CP05
R
bit13
CP13
R
bit6
CP06
R
bit2
CP12
R
bit5
CP05
R
bit13
CP13
R
bit6
CP06
R
bit14
CP14
R
bit7
CP07
R
bit13
CP13
R
bit6
CP06
R
bit14
CP14
R
bit7
CP07
R
IPCP2 ( 下位 ) :
アドレス
007924H
IPCP3 ( 上位 ) :
アドレス
007927H
bit14
CP14
R
bit0
CP00
R
bit8
CP08
R
bit1
CP01
R
bit0
CP00
R
初期値
フラッシュ
評価用品
メモリ品
00000000B XXXXXXXXB
00000000B
XXXXXXXXB
00000000B
XXXXXXXXB
00000000B
XXXXXXXXB
00000000B
XXXXXXXXB
00000000B
XXXXXXXXB
00000000B
XXXXXXXXB
00000000B
XXXXXXXXB
R : リードオンリ
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
221
第 13 章 16 ビット入出力タイマ
13.3 16 ビット入出力タイマの構成
MB90990 シリーズ
キャプチャ動作のトリガエッジ (ICSnm:EGn1, EGn0 または EGm1, EGm0 で設定 ) が IN0 ∼
IN3 端子で検出された場合に , 各端子に対応するインプットキャプチャレジスタ 0 ∼ 3
に 16 ビットフリーランタイマのカウンタ値を格納します。ただし , インプットキャプ
チャレジスタ 0, 1はLIN-UARTからの信号を入力信号として選択可能です(ICE:IEIビッ
トで選択 )。詳細は「13.3.6 インプットキャプチャエッジレジスタ (ICE)」を参照して
ください。
インプットキャプチャレジスタは読出しのみ可能で書込みはできません。
n = 0, 2 m = n + 1
<注意事項>
インプットキャプチャレジスタの読出しは,必ずワード命令(MOVW)を使用してください。
222
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 13 章 16 ビット入出力タイマ
13.3 16 ビット入出力タイマの構成
MB90990 シリーズ
インプットキャプチャエッジレジスタ (ICE)
13.3.6
インプットキャプチャエッジレジスタには , 検出されたエッジの方向表示および 入
力信号を外部端子 /LIN-UART のどちらから入力するかを選択する機能があります。
LIN-UART と連携することで LIN スレーブ動作時のボーレート測定が可能です。
ICE01, ICE23 とチャネル名および入力端子 (UART) 名の対応を下記に示します。
ICE01 : インプットキャプチャ ch.0, ch.1 IN0 (/UART0)
IN1 (/UART1)
ICE23 : インプットキャプチャ ch.2, ch.3 IN2
IN3
■ インプットキャプチャエッジレジスタ (ICE)
図 13.3-6 インプットキャプチャエッジレジスタ (ICE)
アドレス
bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8
ICE01 : 000051H
ICUS1
ICUS0 IEI1 IEI0
R/W
R/W
R
R
初期値
111010XXB
bit10
ICUS0
0
入力信号選択ビット 0
外部端子 IN0 入力信号
1
UART0 からの信号
bit12
ICUS1
アドレス
bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8
ICE23 : 000053H
IEI3 IEI2
R
R/W
R
X
入力信号選択ビット 1
0
外部端子 IN1 入力信号
1
UART1 からの信号
初期値
111111XXB
R
: リード / ライト可能
: リードオンリ
: 未定義
: 不定
: 初期値
n = 0, 2
bit8
IEIn 検出エッジ表示ビット n
0 立下りエッジを検出
1 立上りエッジを検出
bit9
IEIm 検出エッジ表示ビット m
0 立下りエッジを検出
1 立上りエッジを検出
m = n+1
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
223
第 13 章 16 ビット入出力タイマ
13.3 16 ビット入出力タイマの構成
MB90990 シリーズ
表 13.3-5 インプットキャプチャエッジレジスタ 01(ICE01) の機能
ビット名
機 能
bit15
∼
bit13
未定義ビット
bit12
ICUS1:
入力信号選択ビット 1
インプットキャプチャ 1 のトリガとして使用される入力信号を選択
します。
"0" に設定した場合 : 外部端子 IN1 を選択します。
"1" に設定した場合 : LIN-UART1 を選択します。
bit11
未定義ビット
読み出した場合 : "1" が読み出されます。
書き込んだ場合 : 影響しません。
bit10
ICUS0:
入力信号選択ビット 0
インプットキャプチャ 0 のトリガとして使用される入力信号を選択
します。
"0" に設定した場合 : 外部端子 IN0 を選択します。
"1" に設定した場合 : LIN-UART0 を選択します。
読み出した場合 : "1" が読み出されます。
書き込んだ場合 : 影響しません。
インプットキャプチャ 1 が検出したエッジの種類 ( 立上り / 立下り )
を表します。
bit9
IEI1:
検出エッジ表示ビット 1
本ビットはリードオンリです。
"0": 立下りエッジが検出されたことを示します。
"1": 立上りエッジが検出されたことを示します。
( 注意事項 ) 本ビットの値はキャプチャ動作停止時 (ICS01 : EG11,
EG10=00B) には無効です。
インプットキャプチャ 0 が検出したエッジの種類 ( 立上り / 立下り )
を表します。
bit8
IEI0:
検出エッジ表示ビット 0
本ビットはリードオンリです。
"0": 立下りエッジが検出されたことを示します。
"1": 立上りエッジが検出されたことを示します。
( 注意事項 ) 本ビットの値はキャプチャ動作停止時 (ICS01 : EG01,
EG00=00B) には無効です。
224
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 13 章 16 ビット入出力タイマ
13.3 16 ビット入出力タイマの構成
表 13.3-6 インプットキャプチャエッジレジスタ 23(ICE23) の機能
ビット名
bit15
∼
bit10
bit9
機 能
未定義ビット
読み出した場合 : "1" が読み出されます。
書き込んだ場合 : 影響しません。
IEI3:
検出エッジ表示ビット 3
インプットキャプチャ 3 が検出したエッジの種類 ( 立上り / 立下り )
を表します。
本ビットはリードオンリです。
"0": 立下りエッジが検出されたことを示します。
"1": 立上りエッジが検出されたことを示します。
( 注意事項 ) 本ビットの値はキャプチャ動作停止時 (ICS23:EG31,
EG30=00B) には無効です。
bit8
IEI2 :
検出エッジ表示ビット 2
インプットキャプチャ 2 が検出したエッジの種類 ( 立上り / 立下り )
を表します。
本ビットはリードオンリです。
"0": 立下りエッジが検出されたことを示します。
"1": 立上りエッジが検出されたことを示します。
( 注意事項 ) 本ビットの値はキャプチャ動作停止時 (ICS23:EG21,
EG20=00B) には無効です。
<注意事項>
インプットキャプチャ 0, 1 において , 入力信号を LIN-UART に選択 (ICE01:ICUS) した場
合 , インプットキャプチャは LIN-UART が LIN スレーブ動作時のボーレート計算に使用さ
れます。この場合 , インプットキャプチャ割込みイネーブル (ICS01:ICE0=1 または
ICE1=1), 両エッジ検出 (ICS01:EG01, EG00=11B または EG11, EG10=11B) に設定する必
要があります。ボーレート計算の詳細については「20.7.3 LIN 機能 ( 動作モード 3) の動
作」を参照してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
225
第 13 章 16 ビット入出力タイマ
13.4 16 ビット入出力タイマの割込み
MB90990 シリーズ
16 ビット入出力タイマの割込み
13.4
• 16 ビット入出力タイマの割込み要因には 16 ビットフリーランタイマのカウンタ
値のオーバフローの発生 , インプットキャプチャ入力端子へのトリガエッジの入力
および LIN-UART からの LIN スレーブボーレート測定用トリガエッジの入力があ
ります。
• インプットキャプチャの割込みで , 拡張インテリジェント I/O サービス (EI2OS) を
起動できます。
■ 16 ビット入出力タイマの割込み
16 ビット入出力タイマの割込み制御ビットと割込み要因を , 表 13.4-1 に示します。
表 13.4-1 16 ビット入出力タイマの割込み
タイマカウンタ
オーバフロー割込み
インプットキャプチャ
割込み
割込み要求フラグ
TCCSL: IVF
ICSnm: ICPn, ICPm
割込み要求出力許可ビット
TCCSL: IVFE
ICSnm: ICEn, ICEm
割込み発生要因
16 ビットフリーラン
タイマのカウンタ
オーバフロー
インプットキャプチャ
入力端子への有効エッジの入力 ,
および LIN-UART からの LIN ス
レーブボーレート測定用トリガ
エッジの入力
n = 0, 2
m = n+1
● タイマカウンタオーバフロー割込み
タイマオーバフロー割込み要求フラグがセットされる場合
16 ビットフリーランタイマのカウントアップでオーバフロー ("FFFFH" → "0000H") が
発生した場合に , タイマ制御ステータスレジスタのタイマオーバフロー発生フラグが
セットされます (TCCSL: IVF=1)。
タイマオーバフロー割込み要求が発生する場合
タイマオーバフロー割込み要求を許可に設定していた場合は (TCCSL: IVFE=1), タイマ
オーバフロー発生フラグが "1" にセットされると (TCCSL: IVF=1) 割込み要求を発生し
ます。
226
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 13 章 16 ビット入出力タイマ
13.4 16 ビット入出力タイマの割込み
● インプットキャプチャ割込み
インプットキャプチャ端子で , 設定した有効エッジ (ICS: EG) が検出された場合 , また
は LIN-UART から LIN スレーブボーレート測定用トリガエッジが入力された場合 ( 有
効エッジは両エッジに設定する必要があります ) の割込みの発生動作を次に示します。
• 検出された時点の 16 ビットフリーランタイマのカウンタ値がインプットキャプ
チャレジスタに格納されます。
• インプットキャプチャ制御ステータスレジスタの有効エッジ検出フラグが "1" に
セットされます (ICS: ICP=1)。
• インプットキャプチャ割込み要求の出力を許可に設定している場合は (ICS: ICE=1),
割込み要求を発生します。
■ 16 ビット入出力タイマの割込みと EI2OS
<参考>
割込み番号 , 割込み制御レジスタ , 割込みベクタアドレスについては ,「第 3 章 割込み」
を参照してください。
■ EI2OS 機能への対応
インプットキャプチャは , EI2OS 機能に対応しています。ただし , EI2OS 機能を使用す
るには , 割込み制御レジスタ (ICR) を共有するほかの割込みを禁止に設定する必要があ
ります。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
227
第 13 章 16 ビット入出力タイマ
13.5 16 ビットフリーランタイマの動作説明
13.5
MB90990 シリーズ
16 ビットフリーランタイマの動作説明
16 ビットフリーランタイマは , リセット解除後のカウンタ値 "0000H" よりカウント
アップを行います。
16 ビットフリーランタイマのカウンタ値がインプットキャプチャの基準時間になり
ます。
■ 16 ビットフリーランタイマの動作説明
16 ビットフリーランタイマを動作させる場合には , 図 13.5-1 の設定が必要です。
図 13.5-1 16 ビットフリーランタイマの設定
bit15
14
TCCSH/
ECKE −
TCCSL
◎
×
TCDT
13
12
11
10
9
bit8
bit7
−
−
−
−
−
−
IVF
×
×
×
×
×
×
0
6
5
4
3
2
1
bit0
IVFE STOP MODE CLR CLK2 CLK1 CLK0
◎
◎
◎
◎
◎
◎
◎
16 ビットフリーランタイマのカウンタ値
◎ : 使用ビット
× : 未定義ビット
0 : "0" を設定
[16 ビットフリーランタイマのカウンタ値の設定 ]
• 16 ビットフリーランタイマは , リセット解除後にタイマ動作の許可が設定されるの
で (TCCSL: STOP=0), カウンタ値 "0000H" からカウントアップが行われます。
• 16 ビットフリーランタイマのカウンタ値を設定する場合は , 16 ビットフリーランタ
イマの動作を禁止に設定してから(TCCSL: STOP=1)タイマデータレジスタにカウン
トを開始する値を設定し , タイマ動作の許可 (TCCSL: STOP=0) を設定します。
[ タイマオーバフローの発生と割込み要求の発生 ]
• 16 ビットフリーランタイマでオーバフロー ("FFFFH" → "0000H") が発生した場合 ,
タイマオーバフロー発生フラグが "1" にセットされ (TCCSL: IVF) "0000H" からカウ
ントアップが行われます。
• タイマオーバフロー割込み要求の許可を設定していた場合は(TCCSL: IVFE=1),割込
み要求を発生します。
228
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 13 章 16 ビット入出力タイマ
13.5 16 ビットフリーランタイマの動作説明
MB90990 シリーズ
[ カウンタ値のクリア要因とクリアのタイミング ]
16 ビットフリーランタイマのクリア要因とクリアのタイミングを表 13.5-1 に示しま
す。
表 13.5-1 カウンタ値のクリア要因とクリアのタイミング
クリア要因
クリアのタイミング
タイマ制御ステータスレジスタのタイマクリアビットへの
"1" の書込み (TCCSL: CLR)
要因の発生に同期
停止中のタイマデータレジスタへの "0000H" の書込み
要因の発生に同期
リセットの発生
要因の発生に同期
タイマオーバフローの発生
カウントタイミングに同期
図 13.5-2 に , オーバフローによるカウンタのクリアを示します。
図 13.5-2 オーバフローによるカウンタのクリア
カウンタ値
オーバフロー
FFFFH
BFFFH
7FFFH
3FFFH
0000H
時間
リセット
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
229
第 13 章 16 ビット入出力タイマ
13.6 インプットキャプチャの動作説明
13.6
MB90990 シリーズ
インプットキャプチャの動作説明
インプットキャプチャは外部入力用端子からの有効エッジの入力信号を検出 , または
LIN-UART からの LIN スレーブボーレート測定用トリガエッジが入力されたタイミン
グで 16 ビットフリーランタイマのカウンタ値をインプットキャプチャレジスタに格
納し , 割込み要求を発生します。
■ インプットキャプチャの動作説明
インプットキャプチャを使用する場合は , 図 13.6-1 の設定が必要です。
図 13.6-1 インプットキャプチャ動作の設定
bit15 14
ICEnm/ICSnm
13
12
11
−
−
−
ICUS1
−
×
×
×
△
△
IPCP
10
9
ICUS0 IEIm
△
◎
bit8
bit7
6
5
IEIn
ICPm
ICPn
ICEm
◎
◎
◎
◎
4
3
2
1
bit0
ICEn EGm1 EGm0 EGn1 EGn0
◎
◎
◎
◎
◎
キャプチャカウンタ値を保持
DDR ポート方向レジスタ
キャプチャ入力端子として使用する端子に対
応するビットを "0" に設定
◎ : 使用ビット ( 使用するチャネルに対応するビットを設定 )
△ : 使用ビット (ICE01 のみビットが存在 , LIN スレーブのボーレート測定時にビットを設定 )
× : 未定義ビット
n : n = 0, 2
m :m=n+1
[ インプットキャプチャ動作 ]
インプットキャプチャ端子に , 設定した有効エッジ (ICS:EG) が検出された場合 , また
は LIN-UART からの LIN スレーブボーレート測定用トリガエッジが入力された場合に
次の動作を行います。
• 検出された時点の 16 ビットフリーランタイマのカウンタ値がインプットキャプチャ
レジスタに格納されます。
• 検出されたエッジの方向が検出エッジ表示ビットに格納されます ( 立上り : IEI = 1,
立下り : IEI = 0)。
• インプットキャプチャ制御ステータスレジスタの有効エッジ検出フラグが "1" に
セットされます (ICS:ICP=1)。
• インプットキャプチャ割込み要求を許可に設定している場合は (ICS:ICE=1) 割込み
要求を発生します。
• LIN スレーブ動作時のボーレート測定を行う場合は , 入力信号を LIN-UART に設定
し (ICE : ICUS), インプットキャプチャ割込み要求許可 (ICS : ICE = 1), 有効エッジを
両エッジ (ICS : EG1, EG0 = 11B) に設定する必要があります。ボーレートの計算に
ついては「20.7.3 LIN 機能 ( 動作モード 3) の動作」を参照してください。
インプットキャプチャのデータ取込みのタイミングを図 13.6-2 に , 有効エッジを立上
りエッジ / 立下りエッジに設定した場合の動作を図 13.6-3 に , 有効エッジを両エッジに
設定した場合の動作を図 13.6-4 に示します。
230
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 13 章 16 ビット入出力タイマ
13.6 インプットキャプチャの動作説明
MB90990 シリーズ
図 13.6-2 インプットキャプチャのデータの取込みタイミング
φ
カウンタ値
N
N+1
インプット
キャプチャ入力
有効エッジ
キャプチャ信号
キャプチャレジスタ
N+1
データ取込み
φ : マシンクロック
図 13.6-3 インプットキャプチャの動作 ( 立上りエッジ / 立下りエッジ )
カウンタ値
FFFFH
BFFFH
7FFFH
3FFFH
時間
0000H
リセット
INn( 立上りエッジ )
INm( 立下りエッジ )
キャプチャ n
不定
キャプチャ m
不定
3FFFH
7FFFH
n = 0, 2 m = n+1
図 13.6-4 インプットキャプチャの動作 ( 両エッジ )
カウンタ値
FFFFH
BFFFH
7FFFH
3FFFH
0000H
時間
リセット
INn( 両エッジ )
キャプチャ例
不定
BFFFH
3FFFH
n=0∼3
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
231
第 13 章 16 ビット入出力タイマ
13.7 16 ビット入出力タイマの使用上の注意
13.7
MB90990 シリーズ
16 ビット入出力タイマの使用上の注意
16 ビット入出力タイマを使用するにあたっては , 以下の点に注意してください。
■ 16 ビット入出力タイマの使用上の注意
● 16 ビットフリーランタイマの設定に関する注意
• 16 ビットフリーランタイマの動作中 (TCCSL: STOP=0) は , カウントクロック選択
ビット (TCCSL: CLK2 ∼ CLK0) を変更しないでください。
• 16 ビットフリーランタイマのカウンタ値は , リセットにより "0000H" に初期化され
ます。
• タイマデータレジスタ (TCDT) に直接カウンタ値を書き込んで設定する場合は , 16
ビットフリーランタイマを停止 (TCCSL: STOP=1) してから行ってください。
• TCDT への書込みは必ずワード命令を使用してください。
● 同期動作による動作遅れ
インプットキャプチャは動作クロックと同期しているために,動作時間の遅れが発生し
ます。インプットキャプチャは端子からのトリガ信号を検出した後に , マシンクロック
に同期して取込み動作が行われます。
232
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 13 章 16 ビット入出力タイマ
13.8 16 ビット入出力タイマのプログラム例
MB90990 シリーズ
13.8
16 ビット入出力タイマのプログラム例
16 ビット入出力タイマのプログラム例を示します。
■ 16 ビット入出力タイマのプログラム例
● 処理仕様
• IN0 端子に入力される信号の周期を測定します。
• 16 ビットフリーランタイマ 0 とインプットキャプチャ 0 を使用します。
• トリガ検出は , 立上りエッジに設定します。
• マシンクロック (φ) を 24 MHz とし , フリーランタイマのカウントクロックは 4/φ
(0.17 μs) を選択します。
• 割込みは , タイマオーバフロー割込みとインプットキャプチャ 0 のキャプチャ割込
みを使用します。
• フリーランタイマのオーバフロー割込みをカウントしておき , 周期計算に利用しま
す。
• 周期は , 以下の計算により求められます。
周期 = ( オーバフロー回数× 10000H+N 回目の IPCP0 の値 - (N-1) 回目の IPCP0 の値 ) ×
カウントクロック周期
= ( オーバフロー回数× 10000H+N 回目の IPCP0 の値 - (N-1) 回目の IPCP0 の値 ) ×
0.17 μs
● コーディング例
ICR09
ICR11
DDR2
TCCSL
TCDT
ICS01
IPCP0
IVF0
ICP0
DATA
EQU
EQU
EQU
EQU
EQU
EQU
0000B9H
0000BBH
000012H
007942H
007940H
000050H
; 割込み制御レジスタ
; 割込み制御レジスタ
; ポート 2 方向レジスタ
; タイマ制御ステータスレジスタ
; タイマデータレジスタ
; インプットキャプチャ制御
; ステータスレジスタ
; インプットキャプチャレジスタ 0
; タイマオーバフロー発生フラグビット
; 有効エッジ検出フラグビット
EQU
007920H
EQU
TCCSL:7
EQU
ICS01:6
DSEG ABS=00H
ORG
0100H
OV_CNT RW
1H
DATA
ENDS
; オーバフロー回数カウンタ
;
;--------- メインプログラム ------------------------------------------CODE
CSEG
START:
;
; スタックポインタ (SP) などは
; 初期化済みとする
AND
CCR,#0BFH
; 割込み禁止
MOV
I:ICR09,#00H
; 割込みレベル 0( 最強 )
MOV
I:ICR11,#00H
; 割込みレベル 0( 最強 )
MOV
I:DDR2,#00000000B ; ポート 2 方向設定
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
233
第 13 章 16 ビット入出力タイマ
13.8 16 ビット入出力タイマのプログラム例
MOV
MOV
MOV
OR
MB90990 シリーズ
I:TCCSL,#01001010B ; カウント許可 , カウンタクリア ,
; オーバフロー , 割込み許可 ,
; カウントクロック 4/φ 選択 , カウンタクリア
I:ICS01,#00010001B ;IN0 端子選択 , 外部トリガ ,
;IPCP0 を立上りエッジ
;IPCP1 をエッジ検出なし
; 各有効エッジ検出フラグクリア
; インプットキャプチャ割込み要求許可
ILM,#07H
;PS 内 ILM をレベル 7 に設定
CCR,#40H
; 割込み許可
LOOP:
・
ユーザ処理
・
BRA
LOOP
;--------- 割込みプログラム -------------------------------------------WARI0:
CLRB I:ICP0
; 有効エッジ検出フラグをクリア
・
;OV-CNT とインプットキャプチャ値のセーブ
ユーザ処理
・
MOV
A,0
; 次回周期計測のため
MOV
OV_CNT,A
; オーバフロー回数カウンタをクリア
RETI
; 割込み処理からの復帰
WARI1:
CLRB I:IVF0
; タイマオーバフロー発生フラグを
; クリア
INC
OV_CNT
; オーバフローカウンタをインクリメント
・
ユーザ処理
・
RETI
; 割込み処理からの復帰
CODE
ENDS
;--------- ベクタ設定 -----------------------------------------------VECT
CSEG ABS=0FFH
ORG
00FF78H
; 割込み番号 #33(21H) にベクタを設定
;( インプットキャプチャ )
DSL
ORG
WARI0
00FF84H
DSL
ORG
DSL
DB
ENDS
END
WARI1
00FFDCH
START
00H
; 割込み番号 #30(1EH) にベクタを設定
;( オーバフロー )
VECT
234
; リセットベクタ設定
; シングルチップモードに設定
START
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 14 章
16 ビットリロードタイマ
16 ビットリロードタイマの機能と動作について説
明します。
14.1 16 ビットリロードタイマの概要
14.2 16 ビットリロードタイマのブロックダイヤグラム
14.3 16 ビットリロードタイマの構成
14.4 16 ビットリロードタイマの割込み
14.5 16 ビットリロードタイマの動作説明
14.6 16 ビットリロードタイマの使用上の注意
14.7 16 ビットリロードタイマのプログラム例
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
235
第 14 章 16 ビットリロードタイマ
14.1 16 ビットリロードタイマの概要
14.1
MB90990 シリーズ
16 ビットリロードタイマの概要
16 ビットリロードタイマには , 以下の機能があります。
• カウントクロックは , 3 種類の内部クロックおよび外部イベントクロックから選択
できます。
• 起動トリガは , ソフトウェアトリガまたは外部トリガを選択できます。
• 16 ビットタイマレジスタのアンダフローが発生した場合に , CPU に割込みを発生
させることができます。割込みを利用してインターバルタイマとして利用するこ
ともできます。
• 16 ビットタイマレジスタ (TMR) のアンダフローが発生した場合に , TMR のカウ
ント動作を停止するワンショットモード , TMR へ 16 ビットリロードレジスタ値
をリロードして TMR のカウント動作を継続するリロードモードを選択できます。
• 拡張インテリジェント I/O サービス (EI2OS, 2 チャネルすべて対応 ) に対応してい
ます。
• MB90990 シリーズには , 16 ビットリロードタイマは 2 チャネル内蔵されていま
す。
■ 16 ビットリロードタイマの動作モード
16 ビットリロードタイマの動作モードを , 表 14.1-1 に示します。
表 14.1-1 16 ビットリロードタイマの動作モード
カウントクロック
起動トリガ
アンダフローした場合の動作
内部クロックモード
ソフトウェアトリガ
外部トリガ
ワンショットモード
リロードモード
イベントカウントモード
ソフトウェアトリガ
ワンショットモード
リロードモード
■ 内部クロックモード
• タイマ制御ステータスレジスタのカウントクロック選択ビット (TMCSR : CSL1, CSL0)
を "00B", "01B", "10B" に設定することによって , 16 ビットリロードタイマは内部ク
ロックモードに設定されます。
• 内部クロックモードでは , 内部クロックに同期してカウントダウンします。
• タイマ制御ステータスレジスタのカウントクロック選択ビット (TMCSR : CSL1, CSL0)
によって , 3 種類のカウントクロック周期を選択できます。
• 起動トリガは , ソフトウェアトリガまたは外部トリガのエッジ検出を設定します。
236
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 14 章 16 ビットリロードタイマ
14.1 16 ビットリロードタイマの概要
■ イベントカウントモード
• タイマ制御ステータスレジスタのカウントクロック選択ビット (TMCSR : CSL1, CSL0)
を"11B"に設定することによって, 16ビットリロードタイマはイベントカウントモー
ドに設定されます。
• イベントカウントモードでは , TIN 端子に入力された外部イベントクロックのエッ
ジ検出に同期してカウントダウンします。
• 起動トリガは , ソフトウェアトリガです。
• 一定周期の外部クロックを利用してインターバルタイマとして使用できます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
237
第 14 章 16 ビットリロードタイマ
14.1 16 ビットリロードタイマの概要
MB90990 シリーズ
■ アンダフローが発生した場合の動作
起動トリガが入力されると , 16 ビットリロードレジスタに設定した値が 16 ビットタイ
マレジスタにリロードされ , カウントクロックに同期してカウントダウンが始まりま
す。16 ビットタイマレジスタが "0000H" から "FFFFH" にカウントダウンされるとアン
ダフローが発生します。
• アンダフロー割込みが許可されている(TMCSR: INTE=1)場合にアンダフローが発生
するとアンダフロー割込みが発生します。
• アンダフローが発生した場合の 16 ビットリロードタイマの動作はタイマ制御ステ
ータスレジスタのリロード選択ビット (TMCSR: RELD) で設定します。
[ ワンショットモード (TMCSR: RELD=0)]
アンダフローが発生すると , 16 ビットタイマレジスタ (TMR) のカウント動作を停止し
ます。次の起動トリガが入力されると , 16 ビットリロードレジスタ (TMRLR) に設定し
た値が TMR にリロードされ , TMR のカウント動作を開始します。
• ワンショットモードでは , 16 ビットタイマレジスタのカウント動作中 , TOT 端子か
ら "H" または "L" レベルの矩形波が出力されます。
• タイマ制御ステータスレジスタの端子出力レベル選択ビット (TMCSR: OUTL) に
よって矩形波のレベル ("H" または "L") を設定できます。
[ リロードモード (TMCSR: RELD=1)]
アンダフローが発生すると , 16 ビットリロードレジスタに設定した値が 16 ビットタイ
マレジスタ (TMR) にリロードされ , TMR のカウント動作が継続されます。
• リロードモードでは , 16 ビットタイマレジスタ (TMR) のカウント動作中 , TMR の
アンダフローが発生するごとにTOT端子出力レベルを反転するトグル波が出力され
ます。
• タイマ制御ステータスレジスタの端子出力レベル選択ビット (TMCSR: OUTL) に
よってリロードタイマ起動時のトグル波のレベル ("H" または "L") を設定できます。
• アンダフロー割込みを利用してインターバルタイマとして使用できます。
表 14.1-2 16 ビットリロードタイマのインターバル時間
カウントクロック
内部クロックモード
イベントカウントモード
カウントクロック周期
インターバル時間例 *
21T (0.083 μs) *
0.083 μs ∼ 5.46 ms
23T (0.33 μs) *
0.33 μs ∼ 21.8 ms
25T (1.3 μs) *
1.3 μs ∼ 87.4 ms
23T 以上
0.33 μs 以上
T : マシンサイクル
* : インターバル時間例と ( ) 内はマシンクロックを 24 MHz とした場合の算出例
238
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 14 章 16 ビットリロードタイマ
14.2 16 ビットリロードタイマのブロックダイヤグラム
MB90990 シリーズ
14.2
16 ビットリロードタイマのブロックダイヤグラム
16 ビットリロードタイマ 2, 3 は , それぞれ次のブロックで構成されています。
• カウントクロック生成回路
• リロード制御回路
• 出力制御回路
• 動作制御回路
• 16 ビットタイマレジスタ (TMR)
• 16 ビットリロードレジスタ (TMRLR)
• タイマ制御ステータスレジスタ (TMCSR)
■ 16 ビットリロードタイマのブロックダイヤグラム
図 14.2-1 16 ビットリロードタイマのブロックダイヤグラム
内部データバス
TMRLR
16 ビットリロードレジスタ
リロード信号
TMR
16 ビットタイマレジスタ
カウンタクロック生成回路
マシン
クロック
φ
プリス
ケーラ
3
リロード
制御回路
UF
CLK
ゲート 有効
入力
クロック
判定回路
ウェイト信号
クリア
内部
クロック
端子
CLK
クロック
セレクタ
入力
制御回路
出力制御回路
出力信号
生成回路
TIN
端子
TOT
EN
外部クロック
3
2
セレクト
信号
機能選択
予約 予約
予約 CSL1 CSL0 MOD2 MOD1 MOD0 OUTE OUTL RELD INTE UF CNTE TRG
タイマ制御ステータスレジスタ (TMCSR)
CM44-10149-4
動作
制御回路
FUJITSU MICROELECTRONICS LIMITED
割込み要求出力
239
第 14 章 16 ビットリロードタイマ
14.2 16 ビットリロードタイマのブロックダイヤグラム
MB90990 シリーズ
● ブロックダイヤグラム中の端子などの詳細
16 ビットリロードタイマを 2 チャネル内蔵しています。
チャネルごとの実際の端子名 , 内蔵周辺機器への出力 , 割込み要求番号は次のとおりで
す。
表 14.2-1 16 ビットリロードタイマの端子名 , 内蔵周辺機器への出力 , 割込み番号
リロードタイマ 2
リロードタイマ 3
TIN 端子
P82
P53
TOT 端子
P83
P54
内蔵周辺機器への出力
―
―
#19(13H)
#20(14H)
割込み要求番号
● カウントクロック生成回路
マシンクロックまたは外部イベントクロックを基に , 16 ビットタイマレジスタ (TMR)
に供給するカウントクロックを生成します。
● リロード制御回路
16 ビットリロードタイマ動作を開始する場合または 16 ビットタイマレジスタ (TMR)
のアンダフローが発生した場合に , 16 ビットリロードレジスタに設定した値が TMR に
リロードされます。
● 出力制御回路
アンダフロー発生による TOT 端子の出力反転および TOT 端子出力の許可および禁止
を行います。
● 動作制御回路
16 ビットリロードタイマを起動または停止します。
● 16 ビットタイマレジスタ (TMR)
16 ビットのダウンカウンタです。読み出した場合はカウント中の値が読み出されます。
● 16 ビットリロードレジスタ (TMRLR)
16 ビットリロードタイマのインターバル時間を設定します。16 ビットリロードタイマ
動作を開始する場合 , または 16 ビットタイマレジスタ (TMR) のアンダフローが発生し
た場合に 16 ビットリロードレジスタに設定した値が TMR にリロードされます。
● タイマ制御ステータスレジスタ (TMCSR)
16 ビットリロードタイマ動作モードの選択 , 動作条件の設定 , 起動トリガの選択 , ソフト
ウェアトリガによる起動,リロード動作モードの選択,割込み要求の許可または禁止, TOT
端子出力レベルの設定 , TOT 出力端子の設定を行います。
240
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
14.3
第 14 章 16 ビットリロードタイマ
14.3 16 ビットリロードタイマの構成
16 ビットリロードタイマの構成
16 ビットリロードタイマの端子 , レジスタ , 割込み要因を示します。
■ 16 ビットリロードタイマの端子
16 ビットリロードタイマの端子は , 汎用入出力ポートと兼用になっています。16 ビッ
トリロードタイマとして使用する場合の端子機能と必要な設定を表 14.3-1 に示しま
す。
表 14.3-1 16 ビットリロードタイマの端子
端子名
端子機能
16 ビットリロードタイマ
の使用に必要な設定
P82 /
SIN0 /
INT14R /
TIN2
汎用入出力ポート /
UART 入力 0/
外部割込み 14/
16 ビットリロードタイマ入力 2
• ポート方向レジスタ
: 入力ポートに設定
(DDR8:D82=0)
• シリアル制御レジスタ : 受信禁止に設定
(SCR0:RXE=0)
• 外部割込みを禁止する ( 外部割込み許可レジスタ
ENIR1 : EN14 = 0)
P83 /
SOT0 /
TOT2
汎用入出力ポート /
UART 出力 0/
16 ビットリロードタイマ出力 2
• シリアル制御レジスタ : 送信禁止に設定
(SCR0:TXE=0)
• タイマ制御ステータスレジスタ :
タイマ出力許可 (TMCSR2: OUTE=1)
P53 /
AN11 /
TIN3
汎用入出力ポート /
A/D コンバータアナログ入力 11/
16 ビットリロードタイマ入力 3
: 入力ポートに設定
(DDR5:D53=0)
• アナログ入力許可レジスタ: 禁止に設定
(ADER5:ADE11=0)
P54 /
AN12 /
TOT3/
INT8
汎用入出力ポート /
A/D コンバータアナログ入力 12/
16 ビットリロードタイマ出力 3/
外部割込み 8
• アナログ入力許可レジスタ : 禁止に設定
(ADER5:ADE12=0)
• タイマ制御ステータスレジスタ :
タイマ出力許可 (TMCSR3: OUTE=1)
• 外部割込みを禁止する
( 外部割込み許可レジスタ ENIR1 : EN8 = 0)
CM44-10149-4
• ポート方向レジスタ
FUJITSU MICROELECTRONICS LIMITED
241
第 14 章 16 ビットリロードタイマ
14.3 16 ビットリロードタイマの構成
MB90990 シリーズ
■ 16 ビットリロードタイマのレジスタと初期値の一覧
● 16 ビットリロードタイマ 2 のレジスタ
図 14.3-1 16 ビットリロードタイマ 2 のレジスタと初期値の一覧
bit
タイマ制御ステータスレジスタ上位 (TMCSR2)
bit
タイマ制御ステータスレジスタ下位 (TMCSR2)
bit
16 ビットタイマレジスタ上位 (TMR2)
bit
16 ビットタイマレジスタ下位 (TMR2)
bit
16 ビットリロードレジスタ上位 (TMRLR2)
bit
16 ビットリロードレジスタ下位 (TMRLR2)
15
14
13
12
11
10
9
8
1
1
1
1
0
0
0
0
7
6
5
4
3
2
1
0
0
0
0
0
0
0
0
0
15
14
13
12
11
10
9
8
X
X
X
X
X
X
X
X
7
6
5
4
3
2
1
0
X
X
X
X
X
X
X
X
15
14
13
12
11
10
9
8
X
X
X
X
X
X
X
X
7
6
5
4
3
2
1
0
X
X
X
X
X
X
X
X
X : 不定
● 16 ビットリロードタイマ 3 のレジスタ
図 14.3-2 16 ビットリロードタイマ 3 のレジスタと初期値の一覧
bit
タイマ制御ステータスレジスタ上位 (TMCSR3)
bit
タイマ制御ステータスレジスタ下位 (TMCSR3)
bit
16 ビットタイマレジスタ上位 (TMR3)
bit
16 ビットタイマレジスタ下位 (TMR3)
bit
16 ビットリロードレジスタ上位 (TMRLR3)
bit
16 ビットリロードレジスタ下位 (TMRLR3)
15
14
13
12
11
10
9
8
1
1
1
1
0
0
0
0
7
6
5
4
3
2
1
0
0
0
0
0
0
0
0
0
15
14
13
12
11
10
9
8
X
X
X
X
X
X
X
X
7
6
5
4
3
2
1
0
X
X
X
X
X
X
X
X
15
14
13
12
11
10
9
8
X
X
X
X
X
X
X
X
7
6
5
4
3
2
1
0
X
X
X
X
X
X
X
X
X : 不定
242
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 14 章 16 ビットリロードタイマ
14.3 16 ビットリロードタイマの構成
■ 16 ビットリロードタイマでの割込み要求の発生
16 ビットリロードタイマが起動して, 16ビットタイマレジスタのカウント値が"0000H"
から "FFFFH" にカウントダウンされるとアンダフローが発生します。アンダフローが
発生すると , タイマ制御ステータスレジスタの UF ビットに "1" がセットされます
(TMCSR: UF)。アンダフロー割込みが許可されている場合は (TMCSR: INTE=1) 割込み
要求が発生します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
243
第 14 章 16 ビットリロードタイマ
14.3 16 ビットリロードタイマの構成
14.3.1
MB90990 シリーズ
タイマ制御ステータスレジスタ上位 (TMCSR: H)
タイマ制御ステータスレジスタ上位 (TMCSR: H) では , 動作モードやカウントク
ロックを設定します。
なお , タイマ制御ステータスレジスタ下位 (TMCSR: L) の bit7 についてもここで説
明します。
■ タイマ制御ステータスレジスタ上位 (TMCSR: H)
図 14.3-3 タイマ制御ステータスレジスタ上位 (TMCSR: H)
13
12
予約 予約
-
予約 CSL1 CSL0 MOD2 MOD1 MOD0
R/W
-
R/W R/W R/W R/W R/W R/W
アドレス : bit 15
TMCSR2 : 000065H
TMCSR3 : 000067H
R
14
11
10
9
8
7
初期値
11110000B
bit9
bit8
bit7
MOD2
MOD1
MOD0
動作モード選択ビット ( 内部クロックモード )
(CSL1, CSL0=00B, 01B, 10B)
有効エッジ , レベル
入力端子機能
0
0
0
0
0
1
0
1
0
0
1
1
1
X
0
1
X
1
bit9
bit8
bit7
MOD2
MOD1
MOD0
X
0
0
X
0
1
X
1
0
X
1
1
bit11
bit10
CSL1
CSL0
0
0
0
1
1
0
1
1
−
トリガ禁止
立上りエッジ
トリガ入力
立下りエッジ
両エッジ
"L" レベル
ゲート入力
"H" レベル
動作モード選択ビット
( イベントカウントモード ) (CSL1, CSL0=11B)
入力端子機能
−
有効エッジ
−
立上りエッジ
立下りエッジ
トリガ入力
両エッジ
カウントクロック選択ビット
カウントクロック
カウントクロック周期
21 T
23 T
内部クロックモード
25 T
イベントカウントモード
外部イベントクロック
T : マシンサイクル
bit12
R/W
R
−
244
: リード / ライト可能
: リードオンリ
: 未定義ビット
: 初期値
予約
bit14
書込み時は必ず "1" を書き込んで下さい。
予約
bit15
書込み時は必ず "1" を書き込んで下さい。
予約
読出し時は "1" が読めます。書込みは動作に影響しません。
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 14 章 16 ビットリロードタイマ
14.3 16 ビットリロードタイマの構成
表 14.3-2 タイマ制御ステータスレジスタ上位 (TMCSR: H) の機能
ビット名
機 能
bit15
予約ビット
読み出した場合 : "1" が読めます。
書き込んだ場合 : 影響しません。
bit14
予約ビット
書込み時は必ず "1" を書き込んでください。
bit13
未定義ビット
読み出した場合 : "1" が読めます。
書き込んだ場合 : 影響しません。
bit12
予約ビット
書込み時は必ず "1" を書き込んでください。
bit11
bit10
CSL1, CSL0:
カウントクロック選択
ビット
16 ビットリロードタイマのカウントクロックを選択しま
す。
"11B" 以外に設定した場合 :
内部クロックによってカウントします ( 内部クロック
モード )。
"11B" に設定した場合 :
外部イベントクロックのエッジをカウントします ( イベ
ントカウントモード )。
bit9
∼
bit7
CM44-10149-4
MOD2, MOD1, MOD0:
動作モード選択ビット
16 ビットリロードタイマの動作条件を設定します。
[ 内部クロックモードの場合 ]
MOD2 ビットで入力端子の機能を選択します。
MOD2 ビットが "0" の場合 :
入力端子はトリガ入力として機能します。
MOD1, MOD0 ビットで検出するエッジを選択します。
エッジが検出されると , 16 ビットリロードレジスタに設
定した値が 16 ビットタイマレジスタ (TMR) にリロード
され , TMR のカウント動作を開始します。
MOD2 ビットが "1" の場合 :
入力端子はゲート入力として機能します。
MOD1 ビットは使用しません。MOD0 ビットで検出する
信号レベル ("H", "L") を選択します。信号レベルが入力さ
れている間のみ , 16 ビットタイマレジスタのカウント動
作を行います。
[ イベントカウントモードの場合 ]
MOD2 ビットは使用しません。入力端子から外部イベン
トクロックを入力します。MOD1, MOD0 ビットで検出す
るエッジを選択します。
FUJITSU MICROELECTRONICS LIMITED
245
第 14 章 16 ビットリロードタイマ
14.3 16 ビットリロードタイマの構成
MB90990 シリーズ
タイマ制御ステータスレジスタ下位 (TMCSR: L)
14.3.2
タイマ制御ステータスレジスタ下位 (TMCSR:L) は , タイマ動作の許可または禁止 ,
ソフトウェアトリガ , アンダフロー発生の確認 , アンダフロー割込みの許可または禁
止 , リロードモードの選択 , TOT 端子出力を設定します。
■ タイマ制御ステータスレジスタ下位 (TMCSR: L)
図 14.3-4 タイマ制御ステータスレジスタ下位 (TMCSR: L)
アドレス : bit 7
TMCSR2 : 000064H
TMCSR3 : 000066H
6
5
4
3
OUTE OUTL RELD INTE
2
UF
1
0
CNTE TRG
初期値
00000000B
R/W R/W R/W R/W R/W R/W R/W
bit0
TRG
ソフトウェアトリガビット
0
影響なし
1
リロード後 , カウント動作開始
bit1
CNTE
タイマ動作許可ビット
0
タイマ動作禁止
1
タイマ動作許可 ( 起動トリガ待ち )
bit2
UF
アンダフロー発生フラグビット
読出し時
書込み時
0
アンダフローなし
UF ビットのクリア
1
アンダフローあり
影響なし
bit3
INTE
アンダフロー割込み許可ビット
0
アンダフロー割込みの禁止
1
アンダフロー割込みの許可
bit4
RELD
リロード選択ビット
0
ワンショットモード
1
リロードモード
bit5
OUTL
TOT 端子出力レベル選択ビット
ワンショットモード (RELD=0)
リロードモード (RELD=1)
0
カウント中 "H" の矩形波出力
リロードタイマ起動時 "L" のトグル出力
1
カウント中 "L" の矩形波出力
リロードタイマ起動時 "H" のトグル出力
bit6
TOT 端子出力許可ビット
OUTE
R/W
∗
246
端子機能
0
汎用入出力ポート
1
TOT 出力
: リード / ライト可能
: 初期値
: MOD0(bit7) については「14.3.1 タイマ制御ステータスレジスタ上位 (TMCSR: H)」を参照してください。
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 14 章 16 ビットリロードタイマ
14.3 16 ビットリロードタイマの構成
表 14.3-3 タイマ制御ステータスレジスタ下位 (TMCSR: L) の機能 (1 / 2)
ビット名
OUTE:
TOT 端子出力許可
ビット
16 ビットリロードタイマの TOT 端子の機能を設定します。
"0" に設定した場合 : 汎用入出力ポートとして機能します。
"1" に設定した場合 : 16 ビットリロードタイマの TOT 端
子として機能します。
OUTL:
TOT 端子出力レベル
選択ビット
16 ビットリロードタイマの出力端子の出力レベルを設定
します。
OUTL ビット値の切換えにより , CNTE ビットの値によら
ず常に端子レベルが反転します。
<ワンショットモードを選択した場合 (RELD=0) >
"0" に設定した場合 : タイマレジスタカウント中に "H" の
矩形波を出力
"1" に設定した場合 : タイマレジスタカウント中に "L" の
矩形波を出力
<リロードモードを選択した場合 (RELD=1) >
"0" に設定した場合 : リロードタイマ起動時 "L" のトグル
出力
"1" に設定した場合 : リロードタイマ起動時 "H" のトグル
出力
bit4
RELD:
リロード選択ビット
アンダフローが発生した場合のリロード動作を設定します。
"1" に設定した場合 : アンダフローが発生すると , 16 ビッ
トリロードレジスタに設定した値が
16 ビットタイマレジスタにリロード
され , カウント動作が継続されます
( リロードモード )。
"0" に設定した場合 : アンダフローが発生すると , カウン
ト動作は停止します ( ワンショット
モード )。
bi3
INTE:
アンダフロー割込み
許可ビット
アンダフロー割込みを許可または禁止します。
アンダフロー割込みが許可されている状態 (TMCSR:
INTE=1) でアンダフローが発生 (TMCSR: UF=1) した場合 ,
割込み要求が発生します。
bit2
UF:
アンダフロー発生
フラグビット
タイマレジスタのアンダフローが発生したことを示しま
す。
"0" に設定した場合 : クリアされます。
"1" に設定した場合 : 影響しません。
リードモディファイライト (RMW) 系命令でリードした
場合 : "1" が読み出されます。
bit1
CNTE:
タイマ動作許可
ビット
16 ビットリロードタイマの動作を許可または禁止します。
"1" に設定した場合 : 起動トリガ待ち状態になります。起
動トリガが入力されるとタイマレジ
スタのカウント動作を再開します。
"0" に設定した場合 : カウント動作を停止します。
bit6
bit5
CM44-10149-4
機 能
FUJITSU MICROELECTRONICS LIMITED
247
第 14 章 16 ビットリロードタイマ
14.3 16 ビットリロードタイマの構成
MB90990 シリーズ
表 14.3-3 タイマ制御ステータスレジスタ下位 (TMCSR: L) の機能 (2 / 2)
ビット名
bit0
248
TRG:
ソフトウェアトリガ
ビット
機 能
ソフトウェアで 16 ビットリロードタイマを起動します。
ソフトウェアトリガ機能は , タイマ動作が許可されている
場合 (CNTE=1) にのみ機能します。
"0" に設定した場合 : 無効です。変化しません。
"1" に設定した場合 : 16 ビットリロードレジスタに設定し
た値が 16 ビットタイマレジスタ
(TMR) にリロードされ , TMR のカウ
ント動作を開始します。
読み出した場合 : 常に "0" が読み出されます。
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 14 章 16 ビットリロードタイマ
14.3 16 ビットリロードタイマの構成
MB90990 シリーズ
16 ビットタイマレジスタ (TMR)
14.3.3
16 ビットタイマレジスタは 16 ビットダウンカウンタです。読み出した場合は , カウ
ント中の値を読み出せます。
■ 16 ビットタイマレジスタ (TMR)
図 14.3-5 16 ビットタイマレジスタ (TMR)
アドレス :
TMR2: 00794DH
TMR3: 00794FH
アドレス :
TMR2: 00794CH
TMR3: 00794EH
bit15
bit14
bit13
bit2
bit11
bit10
bit9
bit8
初期値
D15
D14
D13
D12
D11
D10
D9
D8
XXXXXXXXB
R
R
R
R
R
R
R
R
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
初期値
D7
D6
D5
D4
D3
D2
D1
D0
XXXXXXXXB
R
R
R
R
R
R
R
R
R : リードオンリ
X : 不定
タイマ動作を許可し (TMCSR:CNTE=1), 起動トリガが入力されると , 16 ビットリロード
レジスタ (TMRLR) に設定した値が 16 ビットタイマレジスタ (TMR) にリロードされ ,
TMR のカウント動作が開始されます。
タイマ動作を禁止 (TMCSR: CNTE=0) している場合は TMR の値は保持されます。
TMR のカウント中に TMR 値が "0000H" から "FFFFH" にカウントダウンされるとアン
ダフローが発生します。
[ リロードモードの場合 ]
16 ビットタイマレジスタ (TMR) のアンダフローが発生すると , 16 ビットリロードレジ
スタ (TMRLR) に設定した値が TMR にリロードされ , TMR のカウント動作が再開され
ます。
[ ワンショットモードの場合 ]
16 ビットタイマレジスタ (TMR) のアンダフローが発生すると TMR のカウント動作が
停止し , 起動トリガ入力待ち状態になります。
TMR 値は "FFFFH" のまま保持されます。
<注意事項>
• 16 ビットタイマレジスタ (TMR) のリードは TMR のカウント動作中でも可能ですが ,
必ずワード命令 (MOVW) を使用してください。
• 16 ビットタイマレジスタ (TMR) は , 16 ビットリロードレジスタ (TMRLR) と同一アド
レスに配置されています。書込みを行った場合は TMR へ影響を与えずに TMRLR に対
して設定値を書き込むことができます。読出しを行った場合は TMR のカウント中の
TMR 値を読み出せます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
249
第 14 章 16 ビットリロードタイマ
14.3 16 ビットリロードタイマの構成
MB90990 シリーズ
16 ビットリロードレジスタ (TMRLR)
14.3.4
16 ビットリロードレジスタは , 16 ビットタイマレジスタへのリロード値を設定しま
す。16 ビットリロードレジスタに設定した値は起動トリガが入力されると 16 ビッ
トタイマレジスタにリロードされ , 16 ビットタイマレジスタのカウント動作が開始
されます。
■ 16 ビットリロードレジスタ (TMRLR)
図 14.3-6 16 ビットリロードレジスタ (TMRLR)
アドレス :
TMRLR2: 00794DH
TMRLR3: 00794FH
アドレス :
TMRLR2: 00794CH
TMRLR3: 00794EH
bit15
bit14
bit13
bit2
bit11
bit10
bit9
bit8
初期値
D15
D14
D13
D12
D11
D10
D9
D8
XXXXXXXXB
W
W
W
W
W
W
W
W
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
初期値
D7
D6
D5
D4
D3
D2
D1
D0
XXXXXXXXB
W
W
W
W
W
W
W
W
W : ライトオンリ
X : 不定
16 ビットリロードレジスタを設定する場合は , タイマの動作を禁止 (TMCSR: CNTE=0)
してから行います。16 ビットリロードレジスタの設定が終了したら , タイマの動作を
許可 (TMCSR: CNTE=1) します。
起動トリガが入力されると 16 ビットリロードレジスタ (TMRLR) に設定した値が 16
ビットタイマレジスタ (TMR) にリロードされ , TMR のカウント動作が開始されます。
<注意事項>
• 16 ビットタイマレジスタの書込みは , 16 ビットリロードタイマの動作を禁止 (TMCSR:
CNTE=0) してから行ってください。必ずワード命令 (MOVW) で書き込んでください。
• 16 ビットリロードレジスタ (TMRLR) は , 16 ビットタイマレジスタ (TMR) と同一アド
レスに配置されています。書込みを行った場合は TMR へ影響を与えずに TMRLR に対
して設定値を書き込むことができます。読出しを行った場合はカウント中の TMR 値を
読み出せます。
• INC/DEC 命令などリードモディファイライト (RMW) 系命令は使用できません。
250
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 14 章 16 ビットリロードタイマ
14.4 16 ビットリロードタイマの割込み
MB90990 シリーズ
14.4
16 ビットリロードタイマの割込み
16 ビットリロードタイマは , 16 ビットタイマレジスタのアンダフローが発生すると
割込み要求を発生します。
■ 16 ビットタイマの割込み
16 ビットタイマレジスタ (TMR) のカウント中に TMR 値が "0000H" から "FFFFH" にカ
ウントダウンされるとアンダフローが発生します。アンダフローが発生すると , タイマ
制御ステータスレジスタのアンダフロー発生フラグビット (TMCSR: UF) に "1" がセッ
トされます。アンダフロー割込みが許可されている場合は (TMCSR: INTE=1) 割込み要
求が発生します。
UFビットの"1"セットと"0"書込みが同時に発生した場合は"0"書込みが優先されます。
表 14.4-1 16 ビットリロードタイマの割込み制御ビットと割込み要因
16 ビットリロードタイマ 2
16 ビットリロードタイマ 3
割込み要求フラグビット
TMCSR2: UF
TMCSR3: UF
割込み要求許可ビット
TMCSR2: INTE
TMCSR3: INTE
割込み要因
16 ビットタイマレジスタ
(TMR2) のアンダフロー
16 ビットタイマレジスタ
(TMR3) のアンダフロー
■ 16 ビットリロードタイマの割込みと EI2OS
割込み番号 , 割込み制御レジスタ , 割込みベクタアドレスについては「第 3 章 割込み」
を参照してください。
■ 16 ビットリロードタイマの EI2OS の機能
16 ビットリロードタイマ 2 と 3 は EI2OS 機能に対応しています。16 ビットタイマレジ
スタのアンダフロー発生で EI2OS を起動できます。ただし , EI2OS は割込み制御レジス
タ (ICR) を共有するほかの周辺機能が割込みを使用していない場合にのみ使用できま
す。16 ビットリロードタイマ 2 と 3 は ICR04 を共有しています。16 ビットリロードタ
イマ 2, 3 で EI2OS を使用する場合には , 割込み制御レジスタを共有する 16 ビットリ
ロードタイマの割込みを禁止する必要があります。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
251
第 14 章 16 ビットリロードタイマ
14.5 16 ビットリロードタイマの動作説明
MB90990 シリーズ
16 ビットリロードタイマの動作説明
14.5
16 ビットリロードタイマの設定とカウンタの動作状態について説明します。
■ 16 ビットリロードタイマの設定
● 内部クロックモードの設定
内部クロックをカウントするには , 図 14.5-1 の設定が必要です。
図 14.5-1 内部クロックモードの設定
bit15
14
TMCSR 予約 予約
1
13
−
12
11
10
9
予約 CSL1 CSL0 MOD2
1
◎
"11B" 以外
TMRLR
bit8
bit7
6
5
4
3
MOD1 MOD0 OUTE OUTL RELD INTE
◎
◎
◎
◎
◎
◎
2
UF
◎
1
bit0
CNTE TRG
1
◎
1
bit0
16 ビットタイマレジスタへのリロード値を設定
◎ : 使用ビット
1 : "1" を設定
● イベントカウントモードの設定
外部イベントの入力で動作させるには , 図 14.5-2 の設定が必要です。
図 14.5-2 イベントカウントモードの設定
bit15
14
TMCSR 予約 予約
1
TMRLR
13
−
12
11
10
予約 CSL1 CSL0
1
1
1
9
bit8
bit7
6
5
4
3
MOD2 MOD1 MOD0 OUTE OUTL RELD INTE
◎
◎
◎
◎
◎
◎
◎
2
UF
◎
CNTE TRG
1
◎
16 ビットタイマレジスタへのリロード値を設定
TIN 端子として使用する端子に該当する DDR( ポート方向レジスタ ) のビットに "0" を設定
◎ : 使用ビット
1 : "1" を設定
252
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 14 章 16 ビットリロードタイマ
14.5 16 ビットリロードタイマの動作説明
MB90990 シリーズ
■ 16 ビットタイマレジスタの動作状態
16 ビットタイマレジスタの動作状態は , タイマ制御ステータスレジスタのタイマ動作
許可ビット (TMCSR: CNTE) と WAIT 信号で決定されます。停止状態 (STOP 状態 ), 起
動トリガ入力待ち状態 (WAIT 状態 ), 実行状態 (RUN 状態 ) があります。
16 ビットタイマレジスタの動作状態の遷移図を図 14.5-3 に示します。
図 14.5-3 動作状態の遷移図
STOP 状態
リセット
CNTE=0, WAIT=1
TIN 端子 : 入力禁止
TOT 端子 : 汎用入出力ポート
16 ビットタイマレジスタ : 停止時の値を保持
リセット直後の値
は不定
CNTE=0
CNTE=0
CNTE=1
TRG=0
WAIT 状態
CNTE=1
TRG=1
CNTE=1, WAIT=1
RUN 状態
TOT 端子 : 16 ビットリロード
レジスタの値を出力
UF=1&
RELD=0
16 ビットタイマレジスタ : 停止時の値を保持 ( ワンショット
リセット直後の値 モード )
は不定
TOT 端子 : 16 ビットリロードタイマ
の出力端子として機能
UF=1&
RELD=1
16 ビットタイマレジスタ : 動作
( リロードモード )
TRG=1
( ソフトウェアトリガ )
TIN から外部トリガ
LOAD
CNTE=1, WAIT=0
TIN 端子 : 16 ビットリロードタイマ
の入力端子として機能
TIN 端子 : トリガ入力のみ有効
CNTE=1, WAIT=0
TRG=1
( ソフトウェアトリガ )
16 ビットリロードレジスタの内容を
16 ビットタイマレジスタへロード
TIN から外部トリガ
ロード終了
: ハードウェアによる状態遷移
: レジスタアクセスによる状態遷移
WAIT
TRG
CNTE
UF
RELD
: WAIT 信号 ( 内部信号 )
: ソフトウェアトリガビット (TMCSR)
: タイマ動作許可ビット (TMCSR)
: アンダフロー発生フラグビット (TMCSR)
: リロード選択ビット (TMCSR)
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
253
第 14 章 16 ビットリロードタイマ
14.5 16 ビットリロードタイマの動作説明
MB90990 シリーズ
内部クロックモードの動作
14.5.1
内部クロックモードでは , タイマ制御ステータスレジスタの動作モード選択ビット
(TMCSR: MOD2 ∼ MOD0) を設定することによって 3 種類の動作モードを選択でき
ます。動作モードの設定とリロードモードの設定により TOT 端子から矩形波または
トグル波が出力されます。
■ 内部クロックモードの設定
• タイマ制御ステータスレジスタのカウントクロック選択ビット(CSL1, CSL0)を"00B",
"01B", "10B" に設定することによって , 16ビットリロードタイマは内部クロックモー
ドに設定されます。
• 内部クロックモードでは , 16 ビットタイマレジスタは内部クロックに同期してカウ
ントダウンします。
• タイマ制御ステータスレジスタのカウントクロック選択ビット(CSL1, CSL0)を設定
することによって , 3 種類のカウントクロック周期を選択できます。
[16 ビットタイマレジスタへのリロード値の設定 ]
16 ビットリロードタイマ起動後 , 16 ビットリロードレジスタ (TMRLR) に設定した値
は 16 ビットタイマレジスタ (TMR) にリロードされます。
1. タイマの動作を禁止 (TMCSR: CNTE=0) します。
2. 16 ビットリロードレジスタに 16 ビットタイマレジスタへのリロード値を設定しま
す。
3. タイマの動作を許可 (TMCSR: CNTE=1) します。
<注意事項>
起動トリガが入力されて , 16 ビットリロードレジスタ (TMRLR) に設定した値が 16 ビッ
トタイマレジスタ (TMR) にリロードされるまでには 1T(T: マシンサイクル ) の時間がかか
ります。
254
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 14 章 16 ビットリロードタイマ
14.5 16 ビットリロードタイマの動作説明
■ 16 ビットタイマレジスタのアンダフローが発生した場合の動作
16 ビットタイマレジスタ (TMR) のカウント動作中 , TMR 値が "0000H" から "FFFFH" に
カウントダウンされるとアンダフローが発生します。
• アンダフローが発生すると , タイマ制御ステータスレジスタのアンダフロー発生フ
ラグビット (TMCSR: UF) に "1" がセットされます。
• タイマ制御ステータスレジスタのアンダフロー割込み許可ビット(TMCSR: INTE)が
"1" に設定されている場合は , アンダフロー割込みが発生します。
• アンダフローが発生した場合のリロード動作はタイマ制御ステータスレジスタの
リロード選択ビット (TMCSR: RELD) で設定します。
[ ワンショットモード (TMCSR: RELD=0) の場合 ]
アンダフローが発生すると , 16 ビットタイマレジスタ (TMR) は停止して , 起動トリガ
入力待ちの状態になります。次の起動トリガが入力されると TMR のカウント動作を再
開します。
ワンショットモードでは , TMR のカウント動作中に TOT 端子から矩形波が出力されま
す。タイマ制御ステータスレジスタの端子出力レベル選択ビット (TMCSR: OUTL) を設
定することによって矩形波のレベル ("H" または "L") を選択できます。
[ リロードモード (TMCSR: RELD=1) の場合 ]
アンダフローが発生すると , 16 ビットタイマレジスタ (TMR) に 16 ビットリロードレ
ジスタ (TMRLR) で設定した値がリロードされ , TMR のカウント動作は継続されます。
リロードモードでは , TMR のカウント動作中にアンダフローが発生するごとに TOT 端
子出力レベルを反転するトグル波が出力されます。タイマ制御ステータスレジスタの
端子出力レベル選択ビット (TMCSR: OUTL) を設定することによって , リロードタイマ
起動時のトグル波レベル ("H" または "L") を選択できます。
■ 内部クロックモードの動作
内部クロックモードでは , タイマ制御ステータスレジスタの動作モード選択ビット
(TMCSR: MOD2 ∼ MOD0) を設定することによって動作モードを選択できます。タイ
マ制御ステータスレジスタのタイマ動作許可ビット (TMCSR: CNTE) を "0" に設定して
タイマ動作を禁止に設定してください。
[ ソフトウェアトリガモード (MOD2 ∼ MOD0=000B)]
ソフトウェアトリガモードに設定した場合は,タイマ制御ステータスレジスタのソフト
ウェアトリガビット (TMCSR: TRG) を "1" に設定して 16 ビットリロードタイマを起動
します。16ビットリロードタイマが起動されると, 16ビットリロードレジスタ(TMRLR)
に設定した値が 16 ビットタイマレジスタ (TMR) にリロードされ , TMR のカウント動
作が開始されます。
<注意事項>
タイマ制御ステータスレジスタのタイマ動作許可ビット (TMCSR: CNTE)とソフトウェア
トリガビット (TMCSR: TRG) を同時に "1" に設定すると , 16 ビットリロードタイマの起
動と同時に 16 ビットタイマレジスタのカウント動作が開始されます。
ただし , ゲート入力動作時のタイマ起動はソフトトリガでのみ有効となります。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
255
第 14 章 16 ビットリロードタイマ
14.5 16 ビットリロードタイマの動作説明
MB90990 シリーズ
図 14.5-4 ソフトウェアトリガ動作モードのカウント動作 ( ワンショットモード )
カウンタクロック
カウンタ
リロードデータ
-1
0000H
FFFFH
リロードデータ
-1
0000H
FFFFH
データロード信号
UF ビットセット
CNTE ビット
TRG ビット
T*
TOT 端子
起動トリガ入力待ち
T : マシンサイクル
* : トリガ入力からリロードレジスタのデータをロードするまでには 1T の時間がかかります。
図 14.5-5 ソフトウェアトリガ動作モードのカウント動作 ( リロードモード )
カウンタクロック
カウンタ
-1
リロードデータ
データロード信号
0000H
-1
リロードデータ
0000H
-1
リロードデータ
0000H
-1
リロードデータ
UF ビットセット
CNTE ビット
TRG ビット
TOT 端子
T*
T : マシンサイクル
* : トリガ入力からリロードレジスタのデータをロードするまでには 1T の時間がかかります。
256
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 14 章 16 ビットリロードタイマ
14.5 16 ビットリロードタイマの動作説明
MB90990 シリーズ
[ 外部トリガモード (MOD2 ∼ MOD0=001B, 010B, 011B)]
外部トリガモードに設定した場合は , 外部から TIN 端子に有効エッジを入力して 16
ビットリロードタイマを起動します。16ビットリロードタイマが起動されると, 16ビッ
トリロードレジスタ (TMRLR) に設定した値が 16 ビットタイマレジスタ (TMR) にリ
ロードされ , TMR のカウント動作が開始されます。
タイマ制御ステータスレジスタの動作モード選択ビット (TMCSR: MOD2 ∼ MOD0) を
設定することによって , エッジ検出を立上りエッジ , 立下りエッジ , 両エッジから選択
できます。
<注意事項>
TIN 端子に入力するトリガパルス幅 , ゲート入力のパルス幅は , データシート規格をご確
認下さい。
図 14.5-6 外部トリガモードのカウント動作 ( ワンショットモード )
カウンタクロック
カウンタ
リロードデータ
-1
0000H
FFFFH
リロードデータ
-1
0000H
FFFFH
データロード信号
UF ビットセット
CNTE ビット
TIN 端子
2T~2.5T*
TOT 端子
起動トリガ入力待ち
T : マシンサイクル
* : 外部トリガ入力からリロードレジスタのデータをロードするまでには 2T ∼ 2.5T の時間がかかります。
図 14.5-7 外部トリガモードのカウント動作 ( リロードモード )
カウンタクロック
-1
カウンタ
リロードデータ
0000H
-1
リロードデータ
0000H
-1
リロードデータ
0000H
-1
リロードデータ
データロード信号
UF ビットセット
CNTE ビット
TIN 端子
TOT 端子
2T~2.5T*
T : マシンサイクル
* : 外部トリガ入力からリロードレジスタのデータをロードするまでには 2T ∼ 2.5T の時間がかかります。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
257
第 14 章 16 ビットリロードタイマ
14.5 16 ビットリロードタイマの動作説明
MB90990 シリーズ
[ 外部ゲート入力動作モード (MOD2 ∼ MOD0=1x0B, 1x1B)]
外部ゲート入力動作モードに設定した場合は,タイマ制御ステータスレジスタのソフト
ウェアトリガビット (TMCSR: TRG) を "1" に設定して , 16 ビットリロードタイマを起
動します。16ビットリロードタイマが起動されると, 16ビットリロードタイマ(TMRLR)
に設定した値が 16 ビットタイマレジスタ (TMR) にリロードされます。
• 16 ビットリロードタイマ起動後 , 設定したゲート入力のレベルが TIN 端子に入力さ
れている間は 16 ビットタイマレジスタのカウント動作を行います。
• タイマ制御ステータスレジスタの動作モード選択ビット (TMCSR: MOD2 ∼ MOD0)
を設定することによってゲート入力のレベル ("H" または "L") を選択できます。
図 14.5-8 外部ゲート入力動作モードのカウント動作 ( ワンショットモード )
カウンタクロック
カウンタ
-1
0000H
-1
リロードデータ
FFFFH
-1
-1
データロード信号
UF ビットセット
CNTE ビット
TRG ビット
T*
T*
TIN 端子
TOT 端子
起動トリガ入力待ち
T : マシンサイクル
* : トリガ入力からリロードレジスタのデータをロードするまでに , 1T の時間がかかります。
図 14.5-9 外部ゲート入力動作モードのカウント動作 ( リロードモード )
カウンタクロック
カウンタ
リロードデータ
-1
-1
-1
0000H
-1
-1
リロードデータ
データロード信号
UF ビットセット
CNTE ビット
TRG ビット
TIN 端子
T*
TOT 端子
T : マシンサイクル
* : トリガ入力からリロードレジスタのデータをロードするまでに , 1T の時間がかかります。
258
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 14 章 16 ビットリロードタイマ
14.5 16 ビットリロードタイマの動作説明
イベントカウントモードの動作
14.5.2
イベントカウントモードでは 16 ビットリロードタイマ起動後 , TIN 端子に入力され
た信号のエッジを検出して 16 ビットタイマレジスタのカウント動作を行います。動
作モードの設定とリロードモードの設定により TOT 端子から矩形波またはトグル波
が出力されます。
■ イベントカウントモードの設定
• タイマ制御ステータスレジスタのカウントクロック選択ビット (TMCSR:CSL1, CSL0)
を"11B"に設定することによって, 16ビットリロードタイマはイベントカウントモー
ドに設定されます。
• イベントカウントモードでは , TIN 端子に入力された外部イベントクロックのエッ
ジ検出に同期して 16 ビットタイマレジスタをカウントダウンします。
[ カウンタ初期値の設定 ]
16 ビットリロードタイマ起動後 , 16 ビットリロードレジスタ (TMRLR) に設定した値
は 16 ビットタイマレジスタ (TMR) にリロードされます。
1. 16 ビットリロードタイマの動作を禁止 (TMCSR: CNTE=0) します。
2. 16 ビットリロードレジスタに 16 ビットタイマレジスタへのリロード値を設定しま
す。
3. 16 ビットリロードタイマの動作を許可 (TMCSR: CNTE=1) します。
<注意事項>
起動トリガが入力されて , 16 ビットリロードレジスタ (TMRLR) に設定した値が 16 ビッ
トタイマレジスタ (TMR) にロードされるまでには 1T(T: マシンサイクル ) の時間がかかり
ます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
259
第 14 章 16 ビットリロードタイマ
14.5 16 ビットリロードタイマの動作説明
MB90990 シリーズ
■ 16 ビットタイマレジスタのアンダフローが発生した場合の動作
16 ビットタイマレジスタ (TMR) のカウント動作中 , TMR 値が "0000H" から "FFFFH" に
カウントダウンされるとアンダフローが発生します。
• アンダフローが発生するとタイマ制御ステータスレジスタのアンダフロー発生フ
ラグビット (TMCSR: UF) に "1" がセットされます。
• タイマ制御ステータスレジスタのアンダフロー割込み許可ビット(TMCSR: INTE)が
"1" に設定されている場合は , アンダフロー割込みが発生します。
• アンダフローが発生した場合のリロード動作は , タイマ制御ステータスレジスタの
リロード選択ビット (TMCSR: RELD) で設定します。
[ ワンショットモード (TMCSR: RELD=0) の場合 ]
アンダフローが発生すると 16 ビットタイマレジスタ (TMR) は停止して , 起動トリガ入
力待ちの状態になります。次の起動トリガが入力されると , TMR のカウント動作を再
開します。
ワンショットモードでは , TMR のカウント動作中に TOT 端子から矩形波が出力されま
す。タイマ制御ステータスレジスタの端子出力レベル選択ビット (TMCSR: OUTL) を設
定することによって矩形波のレベル ("H" または "L") を選択できます。
[ リロードモード (TMCSR: RELD=1) の場合 ]
アンダフローが発生すると 16 ビットタイマレジスタ (TMR) に 16 ビットリロードレジ
スタ (TMRLR) で設定した値がリロードされ , TMR のカウント動作は継続されます。
リロードモードでは , TMR のカウント動作中にアンダフローが発生するごとに TOT 端
子出力レベルを反転するトグル波が出力されます。タイマ制御ステータスレジスタの
端子出力レベル選択ビット (TMCSR: OUTL) を設定することによって , リロードタイマ
起動時のトグル波レベル ("H" または "L") を選択できます。
260
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 14 章 16 ビットリロードタイマ
14.5 16 ビットリロードタイマの動作説明
MB90990 シリーズ
■ イベントカウントモードの動作
タイマ制御ステータスレジスタのタイマ動作許可ビット (TMCSR: CNTE) を "1" に設定
して 16 ビットリロードタイマの動作を許可します。タイマ制御ステータスレジスタの
ソフトウェアトリガビット (TMCSR: TRG) を "1" に設定すると 16 ビットリロードタイ
マが起動します。16 ビットリロードタイマが起動されると 16 ビットリロードレジスタ
(TMRLR) に設定した値が 16 ビットタイマレジスタ (TMR) にロードされ , TMR のカウ
ント動作が開始されます。16 ビットリロードタイマ起動後 , TIN 端子に入力された外
部イベントクロックのエッジを検出して TMR のカウント動作が行われます。
イベントモードのタイマ起動はソフトトリガでのみ有効となります。
タイマ制御ステータスレジスタの動作モード選択ビット (TMCSR: MOD2 ∼ MOD0) を
設定することによって , 検出するエッジを立上りエッジ , 立下りエッジ , 両エッジから
選択できます。
<注意事項>
TIN 端子に入力されるクロックの "H" 幅および "L" 幅は , データシートの規格に従ってく
ださい。
図 14.5-10 イベントカウントモードのカウント動作 ( ワンショットモード )
TIN 端子
カウンタ
リロードデータ
-1
0000H
FFFFH
リロードデータ
-1
0000H
FFFFH
データロード信号
UF ビットセット
CNTE ビット
TRG ビット
T*
TOT 端子
起動トリガ入力待ち
T : マシンサイクル
* : トリガ入力からリロードレジスタのデータをロードするまでには 1T の時間がかかります。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
261
第 14 章 16 ビットリロードタイマ
14.5 16 ビットリロードタイマの動作説明
MB90990 シリーズ
図 14.5-11 イベントカウントモードのカウント動作 ( リロードモード )
TIN 端子
カウンタ
-1
リロードデータ
データロード信号
0000H
-1
リロードデータ
0000H
-1
リロードデータ
0000H
-1
リロードデータ
UF ビットセット
CNTE ビット
TRG ビット
TOT 端子
T*
T : マシンサイクル
* : トリガ入力からリロードレジスタのデータをロードするまでには 1T の時間がかかります。
262
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 14 章 16 ビットリロードタイマ
14.6 16 ビットリロードタイマの使用上の注意
MB90990 シリーズ
14.6
16 ビットリロードタイマの使用上の注意
16 ビットリロードタイマを使用するときは , 次の点に注意してください。
■ 16 ビットリロードタイマの使用上の注意
● プログラムで設定する場合の注意
• 16 ビットリロードレジスタ (TMRLR) の設定はタイマ動作を禁止 (TMCSR: CNTE=0)
してから行ってください。
• 16 ビットタイマレジスタ (TMR) のリードは TMR のカウント動作中でも可能ですが ,
必ずワード命令を使用してください。
• タイマ制御ステータスレジスタ (TMCSR) の CSL1, CSL0 ビットの変更は , タイマ動
作を禁止 (TMCSR: CNTE=0) してから行ってください。
● 割込みに関連する注意
• タイマ制御ステータスレジスタ (TMCSR) の UF ビットが "1" にセットされ , アンダ
フロー割込み出力を許可(TMCSR: INTE=1)している状態では割込み処理から復帰で
きません。UF ビットは必ずクリアしてください。ただし , EI2OS を使用した場合に
は UF ビットは自動的にクリアされます。
• 16 ビットリロードタイマで EI2OS を使用する場合は , 割込み制御レジスタ (ICR) を
共有する 16 ビットリロードタイマの割込みを禁止する必要があります。
● カウンタ動作中に RELD ビットを変更する場合のタイマ動作
カウンタ動作中 , RELD ビットの値を切り換えた場合 , カウンタ動作は継続され次の
アンダーフロー発生まで TOT 端子出力値が保持されます。
以下にカウンタ中 RELD ビットを切り換えた場合の動作例を示します。RELD ビッ
ト =1 はリロードモード , 0 はワンショットモードを示します。
図 14.6-1 カウンタ動作中 , OUTL=0, TOT="L" の状態で RELD ビット 1 → 0 切換え
( リロードデータ =0004H の場合 )
カウントクロック
カウンタ
xxxx
0004 H
0003 H
0002 H
0001H
0000 H
FFFF H
データロード信号
UF ビットセット
CNTE ビット
TRG ビット
RELD ビット
OUTL=0
"L"
OUTL=1
"H"
RELD ビット切換え時 ,
TOT 端子は値を保持します。
TOT 端子
ワンショットモード
リロードモード
カウンタ動作中
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
カウンタ停止
263
第 14 章 16 ビットリロードタイマ
14.6 16 ビットリロードタイマの使用上の注意
MB90990 シリーズ
図 14.6-2 カウンタ動作中 , OUTL=0, TOT="H" の状態で RELD ビット 1 → 0 切換え
( リロードデータ =0004H の場合 )
カウントクロック
xxxx
カウンタ
0004 H 0003 H 0002H 0001H 0000 H 0004 H 0003 H 0002 H 0001 H 0000 H
FFFF
H
データロード信号
UF ビットセット
CNTE ビット
TRG ビット
RELD ビット
RELD ビット切換え時 ,
TOT 端子は値を保持します
OUTL=0
TOT 端子
OUTL=1
リロードモード
ワンショットモード
カウンタ停止
カウンタ動作中
図 14.6-3 カウンタ動作中 RELD ビット 0 → 1 切換え
( リロードデータ =0004H の場合 )
カウントクロック
xxxx
カウンタ
0004 H
0003 H
0002 H
0001H
0000 H
0004 H
0003 H
データロード信号
UF ビットセット
CNTE ビット
TRG ビット
RELD ビット切換え時 ,
TOT 端子は値を保持します。
RELD ビット
OUTL=0
TOT 端子
OUTL=1
ワンショットモード
リロードモード
カウンタ動作中
カウンタの動作中 , アンダーフロー発生と同時に RELD ビットの値を切り換えた場合
には , カウンタ値および TOT 端子出力は以下の示す状態となります。
( 1 ) RELD ビット 1 → 0 切換え時 ( リロードモード→ワンショットモード )
カウンタ値は FFFFH, TOT 端子はカウンタ停止時の値 ( 初期値 ) でカウンタ停止
( 例 : 図 14.6-4)
( 2 ) RELD ビット 0 → 1 切換え時 ( ワンショットモード→リロードモード )
カウンタ値はリロードデータ値 , TOT 端子はカウンタ停止時の値 ( 初期値 ) でカ
ウンタ停止 ( 例 : 図 14.6-5)
264
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 14 章 16 ビットリロードタイマ
14.6 16 ビットリロードタイマの使用上の注意
MB90990 シリーズ
図 14.6-4 アンダーフロー発生と同時に RELD ビット 1 → 0 切換え
( リロードデータ =0002H の場合 )
カウントクロック
xxxx
カウンタ
0002H
0001H
0000 H
0002H
0001 H
0000H
FFFFH
データロード信号は未発生
データロード信号
UF ビットセット
CNTE ビット
TRG ビット
RELD ビット
TOT 端子出力はカウンタ停止時の値に変化
OUTL=0
TOT 端子
OUTL=1
リロードモード
ワンショットモード
カウンタ動作中
カウンタ停止
図 14.6-5 アンダーフロー発生と同時に RELD ビット 0 → 1 切換え
( リロードデータ =0004H の場合 )
カウントクロック
カウンタ
xxxx
0002 H
0001 H
0000 H
0002H
データロード信号は発生
データロード信号
UF ビットセット
CNTE ビット
TRG ビット
RELD ビット
TOT 端子出力はカウンタ停止時の値に変化
OUTL=0
TOT 端子
OUTL=1
ワンショットモード
リロードモード
カウンタ動作中
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
カウンタ停止
265
第 14 章 16 ビットリロードタイマ
14.7 16 ビットリロードタイマのプログラム例
14.7
MB90990 シリーズ
16 ビットリロードタイマのプログラム例
16 ビットリロードタイマの内部クロックモードとイベントカウントモードのプログ
ラム例を示します。
■ 内部クロックモードのプログラム例
● 処理仕様
• 16 ビットリロードタイマ 2 で , 24 ms のインターバルタイマ割込みを発生します。
• リロードモードで使用し , 繰り返して割込みを発生させます。
• 外部トリガ入力は使用せず , ソフトウェアトリガでタイマを起動します。
• EI2OS は使用しません。
• マシンクロック 24 MHz, カウントクロック 1.33 μs とします。
● コーディング例
ICR04 EQU
0000B4H
; 16 ビットリロードタイマ用
; 割込み制御レジスタ
TMCSR2 EQU
000064H
; タイマコントロールステータスレジスタ
TMR2
EQU
00794CH
; 16 ビットタイマレジスタ
TMRLR2 EQU
00794CH
; 16 ビットリロードレジスタ
UF2
EQU
TMCSR2:2
; 割込み要求フラグビット
CNTE2
EQU
TMCSR2:1
; カウンタ動作許可ビット
TRG2
EQU
TMCSR2:0
; ソフトウェアトリガビット
;-------- メインプログラム -----------------------------------CODE
CSEG
;
; スタックポインタ (SP) などは
:
; 初期化済みとする
AND
CCR,#0BFH
; 割込み禁止
MOV
I:ICR04,#00H
; 割込みレベル 0( 最強 )
CLRB I:CNTE2
; カウンタを一時停止
MOVW I:TMRLR2,#4650H ; 24 ms タイマのデータを設定
MOVW I:TMCSR2,#0000100000011011B
; インターバルタイマ動作 ,
クロック 1.33 μs
; 外部トリガ禁止 , 外部出力禁止
; リロードモード選択 , 割込み許可
; 割込みフラグクリア , カウントスタート
MOV
ILM,#07H
; PS 内 ILM をレベル 7 に設定
OR
CCR,#40H
; 割込み許可
LOOP:
・
ユーザ処理
・
BRA
266
LOOP
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 14 章 16 ビットリロードタイマ
14.7 16 ビットリロードタイマのプログラム例
MB90990 シリーズ
;--------- 割込みプログラム ----------------------------------WARI:
CLR
I:UF2
; 割込み要求フラグをクリア
・
・
ユーザ処理
・
・
; 割込みからの復帰
RETI
CODE
ENDS
;--------- ベクタ設定 ---------------------------------------VECT
CSEG ABS=0FFH
VECT
ORG
00FFB0H
DSL
WARI
ORG
DSL
00FFDCH
START
DB
00H
ENDS
END START
; 割込み #19(13H) にベクタを設定
; リセットベクタ設定
; シングルチップモードに設定
■ イベントカウントモードのプログラム例
● 処理仕様
• 16 ビットリロードタイマ 2 で , 外部イベント入力端子に入力されるパルスの立上り
エッジを 10,000 回カウントすると割込みを発生します。
• ワンショットモードで動作させます。
• 外部トリガ入力は , 立上りエッジを選択します。
• EI2OS は使用しません。
● コーディング例
ICR04 EQU
0000B4H
; 16 ビットリロードタイマ
; 割込み制御レジスタ
TMCSR2 EQU
000064H
; タイマコントロールステータスレジスタ
EQU
00794CH
; 16 ビットタイマレジスタ
TMRLR2 EQU
00794CH
; 16 ビットリロードレジスタ
DDR8
EQU
000018H
; ポートデータレジスタ
UF2
EQU
TMCSR2:2
; 割込み要求フラグビット
CNTE2
EQU
TMCSR2:1
; カウンタ動作許可ビット
TRG2
EQU
TMCSR2:0
; ソフトウェアトリガビット
TMR2
;--------- メインプログラム ----------------------------------CODE
CSEG
;
:
; スタックポインタ (SP) などは
; 初期化済みとする
; ソフトウェア起動モード (ADCS1 : STS1,
STS0 = 00B) で使用しているものとする。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
267
第 14 章 16 ビットリロードタイマ
14.7 16 ビットリロードタイマのプログラム例
MB90990 シリーズ
AND
CCR,#0BFH
; 割込み禁止
MOV
I:ICR04,#00H
; 割込みレベル 0( 最強 )
MOV
I:DDR8,00H
; P82/TIN2 端子を入力に設定
CLRB
I:CNTE0
; カウンタを一時停止
MOVW
MOVW
I:TMRLR2,#2710H; リロード値 10,000 回の設定
I:TMCSR2,#0000110001001011B
; カウンタ動作 , 立上りエッジ
; 外部出力禁止
; ワンショットモード選択 , 割込み許可
; 割込みフラグクリア , カウントスタート
MOV
ILM,#07H
; PS 内 ILM をレベル 7 に設定
OR
CCR,#40H
; 割込み許可
LOOP:
・
ユーザ処理
・
BRA
LOOP
;--------- 割込みプログラム ----------------------------------WARI:
CLR
I:UF2
; 割込み要求フラグをクリア
・
・
ユーザ処理
・
・
; 割込みからの復帰
RETI
CODE
ENDS
;--------- ベクタ設定 ---------------------------------------VECT CSEG ABS=0FFH
VECT
268
; 割込み #19(13H) にベクタを設定
ORG
00FFB0H
DSL
WARI
ORG
DSL
00FFDCH
START
; リセットベクタ設定
DB
ENDS
END
00H
; シングルチップモードに設定
START
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 15 章
時計タイマ
時計タイマの機能と動作について説明します。
15.1 時計タイマの概要
15.2 時計タイマのブロックダイヤグラム
15.3 時計タイマの構成
15.4 時計タイマの割込み
15.5 時計タイマの動作説明
15.6 時計タイマのプログラム例
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
269
第 15 章 時計タイマ
15.1 時計タイマの概要
15.1
MB90990 シリーズ
時計タイマの概要
時計タイマはサブクロックに同期してカウントアップする 15 ビットのフリーランカ
ウンタです。
• 8 種類のインターバル時間が選択でき , インターバル時間ごとに割込み要求を発生
できます。
• サブクロック発振安定待ち時間用タイマやウォッチドッグタイマに動作クロック
を供給します。
• クロック選択レジスタ (CKSCR) の設定にかかわらず , 常にサブクロックをカウン
トクロックとします。
■ インターバルタイマ機能
• 時計タイマはインターバル時間選択ビット (WTC: WTC2 ∼ WTC0) で設定したイン
ターバル時間に達すると , 時計タイマカウンタのインターバル時間に対応するビッ
トがオーバフロー ( 桁上り ) を起こし , オーバフローフラグビットがセット (WTC:
WTOF=1) されます。
• オーバフローの発生による割込みを許可に設定している場合は(WTC:WTIE=1),オー
バフローフラグビットがセットされると(WTC: WTOF=1)割込み要求が発生します。
• 時計タイマのインターバル時間を次の 8 種類から選択できます。時計タイマのイン
ターバル時間を表 15.1-1 に示します。
表 15.1-1 時計タイマのインターバル時間
サブクロック周期
インターバル時間
28/SCLK(20.48 ms)
29/SCLK(40.96 ms)
210/SCLK(81.92 ms)
1/SCLK(80 μs)
211/SCLK(163.84 ms)
212/SCLK(327.68 ms)
213/SCLK(655.36 ms)
214/SCLK(1310.72 ms)
215/SCLK(2621.44 ms)
SCLK: サブクロック周波数
( ) 内はサブクロック 12.5 kHz 動作時の算出例です。
270
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 15 章 時計タイマ
15.1 時計タイマの概要
MB90990 シリーズ
■ 供給するクロックの周期
時計タイマは,サブクロック発振安定待ち時間用のタイマとウォッチドッグタイマに動
作クロックを供給します。時計タイマから供給されるクロックの周期を , 表 15.1-2 に
示します。
表 15.1-2 時計タイマから供給されるクロック周期
クロック供給先
サブクロックの発振安定待ち時間用
クロック周期
214/SCLK ( 約 1.31 s)
210/SCLK ( 約 82 ms)
213/SCLK ( 約 655 ms)
ウォッチドッグタイマ
214/SCLK ( 約 1.31 s)
215/SCLK ( 約 2.62 s)
SCLK: サブクロック周波数
( ) 内はサブクロック 12.5 kHz 動作時の算出例です。
<注意事項>
サブクロック SCLK の周波数は ,CR 発振クロックを 8 分周 /4 分周した値になります。
分周比は PLL/ サブクロック制御レジスタ (PSCCR) の SCDS ビットで設定されます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
271
第 15 章 時計タイマ
15.2 時計タイマのブロックダイヤグラム
MB90990 シリーズ
時計タイマのブロックダイヤグラム
15.2
時計タイマは , 以下のブロックで構成されています。
• 時計タイマカウンタ
• カウンタクリア回路
• インターバルタイマセレクタ
• 時計タイマ制御レジスタ (WTC)
■ 時計タイマのブロックダイヤグラム
図 15.2-1 時計タイマのブロックダイヤグラム
ウォッチドッグ
タイマへ
時計タイマカウンタ
SCLK
× 21 × 22 × 23 × 24 × 25 × 26 × 27 × 28 × 29 × 210 × 211 × 212 × 213 × 214 × 215
OF
OF
OF
OF
パワーオンリセット
ハードウェアスタンバイ移行
ストップモード移行
OF
カウンタ
クリア回路
OF
OF
OF
サブクロック
発振安定待ち時間へ
インターバル
タイマセレクタ
時計タイマ割込み
OF
: オーバフロー
SCLK : サブクロック
WDCS
SCE
WTIE
WTOF
WTR
WTC2
WTC1
WTC0
時計タイマ制御レジスタ (WTC)
時計タイマの実際の割込み要求番号は次のとおりです。
割込み要求番号 : #27(1BH)
● 時計タイマカウンタ
サブクロック (SCLK) をカウントクロックとする 15 ビットのアップカウンタです。
● カウンタクリア回路
時計タイマカウンタをクリアする回路です。
● インターバルタイマセレクタ
時計タイマ制御レジスタ (WTC) に設定されているインターバル時間を参照し , 時計タ
イマカウンタがインターバル時間の値に達した場合にオーバフローフラグビットを
セットします。
272
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 15 章 時計タイマ
15.2 時計タイマのブロックダイヤグラム
● 時計タイマ制御レジスタ (WTC)
インターバル時間の選択,時計タイマカウンタのクリア,割込みの許可または禁止,オー
バフロー ( 桁上り ) の状態確認とオーバフローフラグビットのクリアを行います。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
273
第 15 章 時計タイマ
15.3 時計タイマの構成
15.3
MB90990 シリーズ
時計タイマの構成
時計タイマのレジスタと割込み要因を示します。
■ 時計タイマのレジスタ一覧と初期値の一覧
図 15.3-1 時計タイマのレジスタと初期値の一覧
時計タイマ制御レジスタ (WTC)
bit
7
6
5
4
3
2
1
0
アドレス : 0000AAH
1
×
0
0
1
0
0
0
× : 不定
■ 時計タイマでの割込み要求の発生
• インターバル時間選択ビット (WTC: WTC2 ∼ WTC0) で設定したインターバル時間
に達した場合 , オーバフローフラグビット (WTC: WTOF) に "1" がセットされます。
• 時計タイマカウンタのオーバフロー ( 桁上り ) による割込みを許可している場合は
(WTC: WTIE=1), オーバフローフラグビットがセットされると (WTC: WTOF=1) 割込
み要求が発生します。
274
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 15 章 時計タイマ
15.3 時計タイマの構成
MB90990 シリーズ
時計タイマ制御レジスタ (WTC)
15.3.1
時計タイマ制御レジスタ (WTC) の機能を以下に示します。
■ 時計タイマ制御レジスタ (WTC)
図 15.3-2 時計タイマ制御レジスタ (WTC)
bit
アドレス
0000AAH
7
6
WDCS SCE
R/W
R
5
4
3
WTIE WTOF
WTR
2
1
0
初期値
1X001000B
WTC2 WTC1 WTC0
R/W R/W R/W R/W R/W R/W
bit2
bit1
bit0
WTC2 WTC1 WTC0
インターバル時間選択ビット
0
0
0
28/SCLK(20.48 ms)
0
0
1
29/SCLK(40.96 ms)
0
1
0
210/SCLK(81.92 ms)
0
1
1
211/SCLK(163.84 ms)
1
0
0
212/SCLK(327.68 ms)
1
0
1
213/SCLK(655.36 ms)
1
1
0
214/SCLK(1310.72 ms)
1
1
1
215/SCLK(2621.44 ms)
bit3
WTR
0
1
時計タイマクリアビット
読出し時
書込み時
⎯
時計タイマカウンタのクリア
常に "1" が読み出されます 影響なし
bit4
WTOF
0
1
オーバフローフラグビット
読出し時
書込み時
設定したインターバル時間
に対応するビットのオーバ WTOF ビットのクリア
フローなし
設定したインターバル時間
に対応するビットのオーバ 影響なし
フローあり
bit5
WTIE
オーバフロー割込み許可ビット
0
割込み要求の禁止
1
割込み要求の許可
bit6
SCE
発振安定待ち時間終了ビット
0 発振安定待ち状態
1 発振安定待ち時間終了
R/W
R
X
SCLK
: リード / ライト可能
: リードオンリ
: 不定
: サブクロック
: 初期値
bit7
WDCS
0
1
ウォッチドッグクロック選択ビット
( ウォッチドッグタイマの入力クロック )
メインまたは
PLL クロックモードの場合
時計タイマ
タイムベースタイマ
サブクロックモードの場合
"0" を設定してください。
( ) 内はサブクロック 12.5 kHz 動作時の算出例です。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
275
第 15 章 時計タイマ
15.3 時計タイマの構成
MB90990 シリーズ
表 15.3-1 時計タイマ制御レジスタ (WTC) の機能 (1 / 2)
ビット名
bit7
WDCS:
ウォッチドッグ
クロック選択ビット
機 能
ウォッチドッグタイマの動作クロックを選択します。
メインクロックモードまたは PLL クロックモードの場合 :
"0" に設定した場合 : 時計タイマの出力をウォッチドッグ
タイマの動作クロックにします。
"1" に設定した場合 : タイムベースタイマの出力をウォッ
チドッグタイマの動作クロックにし
ます。
サブクロックモードの場合 :
必ず "0" に設定して , 時計タイマの出力を選択してくださ
い。
( 注意事項 )
時計タイマとタイムベースタイマは非同期に動作してい
るため , WDCS ビットを "0" → "1" に変更した場合には
ウォッチドッグタイマが進む可能性があります。変更の
前後で , ウォッチドッグタイマをクリアする必要があり
ます。
SCE:
発振安定待ち時間
終了ビット
サブクロックの発振安定待ち時間が終了したことを示しま
す。
"0" にクリアされた場合 : 発振安定待ち状態であることを
示します。
"1" にセットされた場合 : 発振安定待ち時間が終了したこ
とを示します。
サブクロック発振安定待ち時間は 214/SCLK 固定 (SCLK: サ
ブクロック周波数 ) です。
WTIE:
オーバフロー割込み
許可ビット
時計タイマカウンタのオーバフロー ( 桁上り ) による割込
み要求の発生を許可または禁止します。
"0" に設定した場合 : オーバフローが発生した場合でも
(WTOF=1) 割込み要求は発生しませ
ん。
"1" に設定した場合 : オーバフローが発生した場合に
(WTOF=1) 割込み要求が発生します。
bit4
WTOF:
オーバフローフラグ
ビット
時計タイマのカウンタ値がインターバル時間選択ビットで
設定した値に達した場合に "1" にセットされます。
割込み要求を許可に設定している場合は (WTIE=1), オーバ
フロー ( 桁上り ) が発生すると (WTOF=1) 割込み要求が発
生します。
"0" に設定した場合 : クリアされます。
"1" に設定した場合 : 影響しません。
オーバフローフラグビットが "1" にセットされるのは , イン
ターバル時間選択ビット (WTC2 ∼ WTC0) で設定したイン
ターバル時間に対応する時計タイマカウンタのビットの
オーバフロー ( 桁上り ) が発生した場合です。
リードモディファイライト系命令によるリード時には , 常
に "1" が読み出されます。
bit3
WTR:
時計タイマクリア
ビット
bit6
bit5
276
時計タイマカウンタをクリアします。
"0" に設定した場合 : 時計タイマカウンタが "0000H" にク
リアされます。
"1" に設定した場合 : 影響しません。
読み出した場合 : 常に "1" が読み出されます。
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 15 章 時計タイマ
15.3 時計タイマの構成
MB90990 シリーズ
表 15.3-1 時計タイマ制御レジスタ (WTC) の機能 (2 / 2)
ビット名
bit2
∼
bit0
CM44-10149-4
WTC2, WTC1,
WTC0:
インターバル時間
選択ビット
機 能
時計タイマのインターバル時間を設定します。
• WTC2 ∼ WTC0 ビットで設定したインターバル時間に
達すると , 時計タイマカウンタの対応するビットがオー
バフロー ( 桁上り ) を起こし , オーバフローフラグビッ
トがセット (WTC:WTOF=1) されます。
• WTC2 ∼ WTC0 を設定する場合は , WTOF ビットを同時
に "0" に設定してください。
FUJITSU MICROELECTRONICS LIMITED
277
第 15 章 時計タイマ
15.4 時計タイマの割込み
15.4
MB90990 シリーズ
時計タイマの割込み
時計タイマの割込みを許可している場合は , インターバル時間に達するとオーバフ
ローフラグビットが "1" にセットされ , 割込み要求が発生します。
■ 時計タイマの割込み
時計タイマの割込み制御ビットと割込み要因を , 表 15.4-1 に示します。
表 15.4-1 時計タイマの割込み制御ビット
時計タイマ
割込み要因
時計タイマカウンタのインターバル時間
割込み要求フラグビット
WTC: WTOF( オーバフローフラグビット )
割込み要因許可ビット
WTC: WTIE
• 時計タイマ制御レジスタ (WTC) のインターバル時間選択ビット (WTC2 ∼ WTC0) で
設定した値に達した場合に , WTC のオーバフローフラグビットに "1" がセットされ
ます (WTC: WTOF=1)。
• 時計タイマでの割込みを許可に設定している場合は (WTC: WTIE=1), オーバフロー
フラグビットがセット (WTC: WTOF=1) されると割込み要求が発生します。
• 割込み処理で WTOF ビットに "0" を設定し , 割込み要求を解除してください。
■ 時計タイマの割込みと EI2OS 転送機能
• 時計タイマは , 拡張インテリジェント I/O サービス (EI2OS) 機能に対応していません。
• 割込み番号 , 割込み制御レジスタ , 割込みベクタアドレスについては ,「第 3 章 割
込み」を参照してください。
278
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 15 章 時計タイマ
15.5 時計タイマの動作説明
MB90990 シリーズ
15.5
時計タイマの動作説明
時計タイマは , インターバルタイマまたはサブクロック発振安定待ち時間用タイマと
して動作します。また , ウォッチドッグタイマに動作クロックを供給します。
■ 時計タイマカウンタ
時計タイマカウンタは , サブクロック (SCLK) が動作している限り , サブクロックに同
期してカウントアップを続けます。
● 時計タイマカウンタのクリア
次の場合は , 時計タイマカウンタが "0000H" にクリアされます。
• パワーオンリセット
• ストップモードへの遷移
• 時計タイマ制御レジスタ (WTC) の時計タイマクリアビット (WTR) に "0" を設定
<注意事項>
時計タイマカウンタのクリアが発生した場合 , 時計タイマカウンタの出力を使用している
ウォッチドッグタイマとインターバルタイマ割込みは動作に影響を受けます。
時計タイマ制御レジスタ (WTC) の時計タイマクリアビット (WTR) に "0" を設定して時計
タイマをクリアする場合は , WTC のオーバフロー割込み許可ビット (WTIE) に "0" を設定
し , 時計タイマの割込みを禁止した状態で行ってください。また , 割込みを許可する前に ,
WTC のオーバフロービット (WTOF) への "0" 設定による割込み要求のクリアを行ってく
ださい。
■ インターバルタイマ機能
インターバル時間ごとに割込みを発生させて , インターバルタイマとして使用できます。
● インターバルタイマとして使用する場合の設定
時計タイマをインターバルタイマとして動作させるには , 図 15.5-1 の設定が必要です。
図 15.5-1 時計タイマの設定
bit
WTC
7
6
5
4
3
WDCS
SCE
WTIE
WTOF
WTR
×
×
◎
◎
◎
2
1
0
WTC2 WTC1 WTC0
◎
◎
◎
◎ : 使用ビット
× : 使用しないビット
• 時計タイマ制御レジスタ (WTC) のインターバル時間選択ビット (WTC1, WTC0) で
設定した値に達した場合に , WTC のオーバフローフラグビットに "1" がセットされ
ます (WTC: WTOF=1)。
• 時計タイマカウンタのオーバフローによる割込みを許可している場合は(WTC: WTIE=1),
オーバフローフラグビットがセットされると (WTC: WTOF=1) 割込み要求が発生し
ます。
• オーバフローフラグビット (WTC: WTOF) は , 最後に時計タイマがクリアされたタ
イミングを起点に , インターバル時間に達した時点でセットされます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
279
第 15 章 時計タイマ
15.5 時計タイマの動作説明
MB90990 シリーズ
● オーバフローフラグビット (WTC: WTOF) のクリア
ストップモードに遷移した場合,時計タイマはサブクロック発振安定待ち時間用タイマ
として使用されるため , モードの遷移と同時に WTOF がクリアされます。
■ ウォッチドッグタイマの動作クロックの設定
時計タイマ制御レジスタ (WTC) のウォッチドッグクロック選択ビット (WDCS) によっ
て , ウォッチドッグタイマのクロック入力ソースを設定できます。
マシンクロックとしてサブクロックを使用する場合は , 必ず WDCS ビットを "0" に設
定して時計タイマの出力を選択してください。
■ サブクロックの発振安定待ち時間用タイマ
パワーオンリセット , ストップモードから復帰した場合には , 時計タイマはサブクロッ
ク発振安定待ち用タイマとして機能します。
サブクロック発振安定待ち時間は , 214/SCLK(SCLK: サブクロック ) に固定されていま
す。
280
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 15 章 時計タイマ
15.6 時計タイマのプログラム例
MB90990 シリーズ
15.6
時計タイマのプログラム例
時計タイマのプログラム例を示します。
■ 時計タイマのプログラム例
● 処理仕様
213/SCLK(SCLK: サブクロック ) のインターバル割込みを繰り返して発生します。この
ときのインターバル時間は 655.36 ms ( サブクロック 12.5 kHz 動作の場合 ) となります。
● コーディング例
ICR08
EQU
0000B8H
; 割込み制御レジスタ
WTC
EQU
0000AAH
; 時計タイマ制御レジスタ
WTOF
;
EQU
WTC:4
; オーバフローフラグビット
;--------- メインプログラム ------------------------------------CODE
CSEG
START:
; スタックポインタ (SP) などは
;
; 初期化済みとする
AND
CCR,#0BFH
; 割込み禁止
MOV
I:ICR07,#00H
; 割込みレベル 0( 最強 )
MOV
I:WTC,#10100101B
; 割込み許可 ,
; オーバフローフラグクリア
; 時計タイマカウンタクリア ,
;213/SCLK(655.36ms)
MOV
ILM,#07H
;PS 内 ILM をレベル 7 に設定
OR
CCR,#40H
; 割込み許可
LOOP:
・
ユーザ処理
・
BRA
LOOP
;--------- 割込みプログラム -----------------------------------WARI:
CLRB
I:WTOF
; オーバフローフラグをクリア
・
ユーザ処理
・
CODE
; 割込み処理からの復帰
RETI
ENDS
;--------- ベクタ設定 ----------------------------------------VECT
CSEG ABS=0FFH
CM44-10149-4
ORG
00FF90H
DSL
WARI
; 割込み番号 #27(1BH) にベクタ設定
FUJITSU MICROELECTRONICS LIMITED
281
第 15 章 時計タイマ
15.6 時計タイマのプログラム例
VECT
282
MB90990 シリーズ
ORG
DSL
00FFDCH
START
; リセットベクタ設定
DB
ENDS
END
00H
; シングルチップモードに設定
START
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 16 章
8/16 ビット PPG タイマ
8/16 ビット PPG タイマの機能と動作について説明
します。
16.1 8/16 ビット PPG タイマの概要
16.2 8/16 ビット PPG タイマのブロックダイヤグラム
16.3 8/16 ビット PPG タイマの構成
16.4 8/16 ビット PPG タイマの割込み
16.5 8/16 ビット PPG タイマの動作説明
16.6 8/16 ビット PPG タイマ使用上の注意
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
283
第 16 章 8/16 ビット PPG タイマ
16.1 8/16 ビット PPG タイマの概要
16.1
MB90990 シリーズ
8/16 ビット PPG タイマの概要
8/16 ビット PPG タイマは , 任意の周期およびデューティ比のパルス出力が可能な 2
チャネルのリロードタイマモジュール (PPGC, PPGD) です。2 チャネルのモジュー
ルの組合せにより , 以下の動作が可能です。
• 8 ビット PPG 出力 2 チャネル独立動作モード
• 16 ビット PPG 出力動作モード
• 8+8 ビット PPG 出力動作モード
MB90990 シリーズでは , 3 つの 8/16 ビット PPG タイマを内蔵しています。ここで
は , PPGC/PPGD の機能について説明します。PPGA/PPGB,PPGE/PPGF は PPGC/
PPGD と同一機能です。
■ 8/16 ビット PPG タイマの機能
8/16 ビット PPG タイマは , 4 つの 8 ビットリロードレジスタ (PRLHC/PRLLC, PRLHD/
PRLLD) と , 2 つの PPG ダウンカウンタ (PCNTC, PCNTD) で構成されています。
• 出力パルスの "H" 幅 , "L" 幅を個別に設定できるので , 出力パルスの周期とデュー
ティ比を任意に設定できます。
• カウントクロックは 6 種類の内部クロックから選択できます。
• インターバル時間ごとに割込み要求を発生させて , インターバルタイマとして使用
できます。
• 外付け回路によって D/A コンバータとして使用できます。
284
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 16 章 8/16 ビット PPG タイマ
16.1 8/16 ビット PPG タイマの概要
MB90990 シリーズ
■ 8/16 ビット PPG タイマの動作モード
● 8 ビット PPG 出力 2 チャネル独立動作モード
2 チャネルのモジュール (PPGC, PPGD) をそれぞれ独立した 8 ビット PPG タイマとし
て動作させます。
8 ビット PPG 出力 2 チャネル独立動作モードのインターバル時間を表 16.1-1 に示しま
す。
表 16.1-1 8 ビット PPG 出力 2 チャネル独立動作モードのインターバル時間
PPGC, PPGD
カウントクロック周期
インターバル時間
出力パルス時間
1/φ (31.25 ns)
1/φ ∼ 28/φ
2/φ ∼ 29/φ
2/φ (62.5 ns)
2/φ ∼ 29/φ
22/φ ∼ 210/φ
22/φ (125 ns)
22/φ ∼ 210/φ
23/φ ∼ 211/φ
23/φ (250 ns)
23/φ ∼ 211/φ
24/φ ∼ 212/φ
24/φ (500 ns)
24/φ ∼ 212/φ
25/φ ∼ 213/φ
29/HCLK (128 μs)
29/HCLK ∼ 217/HCLK
210/HCLK ∼ 218/HCLK
HCLK : 発振クロック
φ
: マシンクロック周波数
( ) 内は HCLK=4 MHz, φ=32 MHz で動作した場合の値
● 16 ビット PPG 出力動作モード
2 チャネルのモジュール (PPGC, PPGD) を連結して , 16 ビット 1 チャネル PPG タイマ
として動作させます。PPGC+PPGD, PPGE+PPGF の組合せで使用します。
16 ビット PPG 出力動作モードのインターバル時間を表 16.1-2 に示します。
表 16.1-2 16 ビット PPG 出力動作モードのインターバル時間
カウントクロック周期
インターバル時間
出力パルス時間
1/φ (31.25 ns)
1/φ ∼ 216/φ
2/φ ∼ 217/φ
2/φ (62.5 ns)
2/φ ∼ 217/φ
22/φ ∼ 218/φ
22/φ (125 ns)
22/φ ∼ 218/φ
23/φ ∼ 219/φ
23/φ (250 ns)
23/φ ∼ 219/φ
24/φ ∼ 220/φ
24/φ (500 ns)
24/φ ∼ 220/φ
25/φ ∼ 221/φ
29/HCLK (128 μs)
29/HCLK ∼ 225/HCLK
210/HCLK ∼ 226/HCLK
HCLK : 発振クロック
φ
: マシンクロック周波数
( ) 内は HCLK=4 MHz, φ=32 MHz で動作した場合の値
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
285
第 16 章 8/16 ビット PPG タイマ
16.1 8/16 ビット PPG タイマの概要
MB90990 シリーズ
● 8+8PPG 出力動作モード
2 チャネルのモジュールのうち , PPGC を 8 ビットプリスケーラとして動作させ , PPGC
のアンダフロー出力を PPGD のカウントクロックとして入力して動作させます。
8+8 ビット PPG 出力動作モードのインターバル時間を表 16.1-3 に示します。
表 16.1-3 8+8 ビット PPG 出力動作モードのインターバル時間
PPGC
カウント
クロック周期
PPGD
インターバル
時間
出力パルス時間
インターバル
時間
出力パルス時間
1/φ (31.25 ns)
1/φ ∼ 28/φ
2/φ ∼ 29/φ
1/φ ∼ 216/φ
2/φ ∼ 217/φ
2/φ (62.5 ns)
2/φ ∼ 29/φ
22/φ ∼ 210/φ
2/φ ∼ 217/φ
22/φ ∼ 218/φ
22/φ (125 ns)
22/φ ∼ 210/φ
23/φ ∼ 211/φ
22/φ ∼ 218/φ
23/φ ∼ 219/φ
23/φ (250 ns)
23/φ ∼ 211/φ
24/φ ∼ 212/φ
23/φ ∼ 219/φ
24/φ ∼ 220/φ
24/φ (500 ns)
24/φ ∼ 212/φ
25/φ ∼ 213/φ
24/φ ∼ 220/φ
25/φ ∼ 221/φ
29/HCLK (128 μs)
29/HCLK ∼
217/HCLK
210/HCLK ∼
218/HCLK
29/HCLK ∼
225/HCLK
210/HCLK ∼
226/HCLK
HCLK : 発振クロック
φ
: マシンクロック周波数
( ) 内は HCLK=4 MHz, φ =32 MHz で動作した場合の値
286
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
16.2
第 16 章 8/16 ビット PPG タイマ
16.2 8/16 ビット PPG タイマのブロックダイヤグラム
8/16 ビット PPG タイマのブロックダイヤグラム
MB90990 シリーズでは , 3 つの 8/16 ビット PPG タイマ ( 各 2 チャネル ) を内蔵し
ています。
1 つの 8/16 ビット PPG タイマは , 2 チャネルの 8 ビット PPG タイマで構成されて
います。
ここでは , 8/16 ビット PPG タイマ C, および 8/16 ビット PPG タイマ D のブロック
ダイヤグラムを示します。PPGA,PPGE は PPGC と , PPGB,PPGF は PPGD と同機
能です。
■ PPG タイマのチャネルと PPG 端子
MB90990 シリーズの 8/16 ビット PPG タイマのチャネルと PPG 端子の関係を , 図 16.21 に示します。
図 16.2-1 PPG タイマのチャネルと PPG 端子
PPGA/PPGB
端子
PPGAB:REV
PPGA 出力端子
端子
PPGB 出力端子
PPGC/PPGD
端子
PPGCD:REV
PPGC 出力端子
端子
PPGD 出力端子
PPGE/PPGF
端子
PPGEF:REV
PPGE 出力端子
端子
PPGF 出力端子
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
287
第 16 章 8/16 ビット PPG タイマ
16.2 8/16 ビット PPG タイマのブロックダイヤグラム
16.2.1
MB90990 シリーズ
8/16 ビット PPG タイマ C のブロックダイヤグラム
8/16 ビット PPG タイマ C は , 以下のブロックで構成されています。
■ 8/16 ビット PPG タイマ C のブロックダイヤグラム
図 16.2-2 8/16 ビット PPG タイマ C のブロックダイヤグラム
"H" レベル側データバス
"L" レベル側データバス
PPGC
リロード
レジスタ
PRLHC
("H" レベル側 )
PPGC 動作モード制御レジスタ
(PPGCC)
PRLLC
("L" レベル側 )
PEN0
-
PE0
PIE0 PUF0
-
予約
割込み
要求出力*
R
PPGC テンポラリ
バッファ C(PRLBHC)
S
リロードレジスタ
"L"/"H" セレクタ
カウント開始値
-
2
セレクト信号
リロード
Q
クリア
動作モード制御信号
PPGD アンダフロー
PPGC アンダフロー
(PPGD へ )
パルスセレクタ
アンダフロー
PPGC ダウンカウンタ
(PCNTC)
CLK
反転
タイムベースタイマ出力
(512/HCLK)
周辺クロック (1/φ)
周辺クロック (2/φ)
周辺クロック (4/φ)
周辺クロック (8/φ)
周辺クロック (16/φ)
PPGC
出力ラッチ
端子
PPG 出力制御回路
PPGC
PPGD
出力
カウント
クロック
セレクタ
3
セレクト信号
PCS2 PCS1
PCS0 PCM2 PCM1 PCM0
-
REV
PPGC/PPGD カウントクロック選択レジスタ (PPGCD)
―
予約
HCLK
φ
*
288
: 未定義
: 予約ビット
: 発振クロック周波数
: マシンクロック周波数
: 8/16 ビット PPG タイマ C の割込み出力は , PPG タイマ D の割込み要求出力との OR 回路によって 1 つの
割込みに統合されています。
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 16 章 8/16 ビット PPG タイマ
16.2 8/16 ビット PPG タイマのブロックダイヤグラム
MB90990 シリーズ
● ブロックダイヤグラム中の端子などの詳細
8/16 ビット PPG タイマの実際の端子名および割込み要求番号を表 16.2-1 に示します。
表 16.2-1 ブロックダイヤグラムの端子および割込み要求番号
出力端子
チャネル
割込み要求番号
PPG:REV=0
PPG:REV=1
PPGA
P65 / PPGA
P21 / PPGB
PPGB
P21 / PPGB
P65 / PPGA
PPGC
P66 / PPGC
P22 / PPGD
PPGD
P22 / PPGD
P66 / PPGC
PPGE
P67/ PPGE
P23 / PPGF
PPGF
P23/ PPGF
P67 / PPGE
#24 (18H)
#23 (17H)
#24 (18H)
● PPG 動作モード制御レジスタ C(PPGCC)
8/16 ビット PPG タイマの動作 , 端子出力 , アンダフロー割込みを許可または禁止しま
す。また , アンダフローの発生を示します。
● PPGC/PPGD カウントクロック選択レジスタ (PPGCD)
8/16 ビット PPG タイマのカウントクロック , PPGC と PPGD の出力端子入替えを設定
します。
● PPGC リロードレジスタ (PRLHC, PRLLC)
出力パルスの "H" 幅 , "L" 幅を設定します。PPGC リロードレジスタに設定した値は , 8/
16ビットPPGタイマが起動するとPPGCダウンカウンタ(PCNTC)にリロードされます。
● PPGC ダウンカウンタ (PCNTC)
PPGCリロードレジスタ (PRLHC, PRLLC)の設定値を交互にリロードしてカウントダウ
ンする 8 ビットのダウンカウンタです。アンダフローが発生すると , 端子出力を反転し
ます。2 チャネルの PPG ダウンカウンタ (PPGC, PPGD) を連結して , 1 チャネルの 16
ビット PPG ダウンカウンタとして使用することもできます。
● PPGC テンポラリバッファ (PRLBHC)
PPG リロードレジスタ (PRLHC, PRLLC) への書込みのタイミングによって起こる出力
パルス幅のズレを防止するバッファです。PRLHC の値を一時的に記憶し , PRLLC への
書込みのタイミングに同期させて PRLHC の設定値を有効にします。
● リロードレジスタ L/H セレクタ
"L" 側および "H" 側のリロードレジスタ (PRLLC, PRLHC) のどちらを PPGC ダウンカウ
ンタにリロードするか , 現在の端子出力レベルを検出して選択します。
● カウントクロックセレクタ
5 種類のマシンクロックの分周クロック , またはタイムベースタイマの分周クロックか
ら PPGC ダウンカウンタに入力するカウントクロックを選択します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
289
第 16 章 8/16 ビット PPG タイマ
16.2 8/16 ビット PPG タイマのブロックダイヤグラム
MB90990 シリーズ
● PPG 出力制御回路
端子出力レベルおよびアンダフロー発生による出力反転を行います。
290
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 16 章 8/16 ビット PPG タイマ
16.2 8/16 ビット PPG タイマのブロックダイヤグラム
MB90990 シリーズ
8/16 ビット PPG タイマ D のブロックダイヤグラム
16.2.2
8/16 ビット PPG タイマ D は , 以下のブロックで構成されています。
■ 8/16 ビット PPG タイマ D のブロックダイヤグラム
図 16.2-3 8/16 ビット PPG タイマ D のブロックダイヤグラム
"H" 側データバス
"L" 側データバス
PPGD 動作モード制御レジスタ (PPGCD)
PPGD リロード
レジスタ
動作モード
制御信号
PRLHD
("H" 側 )
PRLLD
("L" 側 )
PEN1
-
PE1
PIE1 PUF1
MD1
MD0 予約
2
R
PPGD テンポラリ
バッファ (PRLBHD)
S
リロードセレクタ
"L"/"H" セレクタ
カウント開始値
セレクト信号
リロード
クリア
アンダ
PPGD ダウンカウンタ フロー
(PCNTD)
PPGD アンダフロー
(PPGC へ )
割込み
要求出力*
Q
反転
CLK
PPGD
出力ラッチ
PPG 出力制御回路
MD0
端子
PPGD
PPGC
出力
PPGC アンダフロー
(PPGC より )
タイムベースタイマ出力
(512/HCLK)
周辺クロック (1/φ)
周辺クロック (2/φ)
周辺クロック (4/φ)
周辺クロック (8/φ)
周辺クロック (16/φ)
カウント
クロック
セレクタ
3
セレクト信号
PCS2 PCS1 PCS0 PCM2 PCM1 PCM0
―
予約
HCLK
φ
*
-
REV
PPGC/PPGD カウントクロック選択レジスタ (PPGCD)
: 未定義
: 予約ビット
: 発振クロック周波数
: マシンクロック周波数
: 8/16 ビット PPG タイマ D の割込み出力は , PPG タイマ C の割込み要求出力との OR 回路によって 1 つの
割込みに統合されています。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
291
第 16 章 8/16 ビット PPG タイマ
16.2 8/16 ビット PPG タイマのブロックダイヤグラム
MB90990 シリーズ
● ブロックダイヤグラム中の端子などの詳細
8/16 ビット PPG タイマの実際の端子名および割込み要求番号を表 16.2-2 に示します。
表 16.2-2 ブロックダイヤグラムの端子および割込み要求番号
出力端子
チャネル
割込み要求番号
PPG:REV=0
PPG:REV=1
PPGA
P65 / PPGA
P21 / PPGB
PPGB
P21 / PPGB
P65 / PPGA
PPGC
P66 / PPGC
P22 / PPGD
PPGD
P22 / PPGD
P66 / PPGC
PPGE
P67/ PPGE
P23 / PPGF
PPGF
P23/ PPGF
P67 / PPGE
#24 (18H)
#23 (17H)
#24 (18H)
● PPG 動作モード制御レジスタ D(PPGCD)
8/16 ビット PPG タイマの動作モードを設定します。8/16 ビット PPG タイマ D の動作 ,
端子出力 , アンダフロー割込みを許可または禁止します。また , アンダフローの発生を
示します。
● PPGC/PPGD カウントクロック選択レジスタ (PPGCD)
8/16 ビット PPG タイマのカウントクロックを設定します。
● PPGD リロードレジスタ (PRLHD, PRLLD)
出力パルスの "H" 幅 , "L" 幅を設定します。PPGD リロードレジスタに設定した値は ,
8/16 ビット PPG タイマ D が起動すると PPGD ダウンカウンタ (PCNTD) にリロードさ
れます。
● PPGD ダウンカウンタ (PCNTD)
PPGD リロードレジスタ (PRLHD, PRLLD) の設定値を交互にリロードしてカウントダ
ウンする 8 ビットのダウンカウンタです。アンダフローが発生すると , 端子出力を反転
します。2 チャネルの PPG ダウンカウンタ (PPGC, PPGD) を連結して , 1 チャネルの 16
ビット PPG ダウンカウンタとして使用することもできます。
● PPGD テンポラリバッファ (PRLBHD)
PPG リロードレジスタ (PRLHD, PRLLD) への書込みのタイミングによって起こる出力
パルス幅のズレを防止するバッファです。PRLHD の値を一時的に記憶し , PRLLD への
書込みのタイミングに同期させて PRLHD の設定値を有効にします。
● リロードレジスタ "L"/"H" セレクタ
"L" 側および "H" 側のリロードレジスタ (PRLLD, PRLHD) のどちらを PPGD ダウンカ
ウンタにリロードするか , 現在の端子出力レベルを検出して選択します。
● カウントクロックセレクタ
5 種類のマシンクロックの分周クロック , またはタイムベースタイマの分周クロックか
ら PPGD ダウンカウンタに入力するカウントクロックを選択します。
292
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 16 章 8/16 ビット PPG タイマ
16.2 8/16 ビット PPG タイマのブロックダイヤグラム
● PPG 出力制御回路
端子出力レベルおよびアンダフロー発生による出力反転を行います。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
293
第 16 章 8/16 ビット PPG タイマ
16.3 8/16 ビット PPG タイマの構成
16.3
MB90990 シリーズ
8/16 ビット PPG タイマの構成
8/16 ビット PPG タイマの端子 , レジスタ , 割込み要因を示します。
■ 8/16 ビット PPG タイマの端子
8/16 ビット PPG タイマの端子は , 汎用入出力ポートと兼用です。端子の機能および 8/
16 ビット PPG タイマを使用する場合の設定を表 16.3-1 に示します。
表 16.3-1 8/16 ビット PPG タイマの端子
チャネル
294
端子名
端子機能
8 / 16 ビット PPG タイマの使用に
必要な設定
PPGA
P65 /
AN5/
PPGA
汎用入出力ポート /
A/D コンバータアナログ
入力 5/
PPG 出力 A
• アナログ入力許可レジスタ :
禁止に設定 (ADER6:ADE5=0)
• PPG 動作モード制御レジスタ :
端子出力許可 (PPGCA:PE0=1)
PPGB
P21 /
PPGB
汎用入出力ポート /
PPG 出力 B
PPG 動作モード制御レジスタ :
端子出力許可 (PPGCB:PE1=1)
PPGC
P66 /
AN6 /
PPGC
汎用入出力ポート /
A/D コンバータアナログ
入力 6/
PPG 出力 C
• アナログ入力許可レジスタ :
禁止に設定 (ADER6:ADE6=0)
• PPG 動作モード制御レジスタ :
端子出力許可 (PPGCC:PE0=1)
PPGD
P22 /
PPGD
汎用入出力ポート /
PPG 出力 D
PPG 動作モード制御レジスタ :
端子出力許可 (PPGCD:PE1=1)
PPGE
P67 /
AN7 /
PPGE
汎用入出力ポート /
A/D コンバータアナログ
入力 7/
PPG 出力 E
• アナログ入力許可レジスタ :
禁止に設定 (ADER6:ADE7=0)
• PPG 動作モード制御レジスタ :
端子出力許可 (PPGCE:PE0=1)
PPGF
P23 /
PPGF
汎用入出力ポート /
PPG 出力 F
PPG 動作モード制御レジスタ :
端子出力許可 (PPGCF:PE1=1)
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 16 章 8/16 ビット PPG タイマ
16.3 8/16 ビット PPG タイマの構成
MB90990 シリーズ
■ 8/16 ビット PPG タイマのレジスタと初期値の一覧
図 16.3-1 8/16 ビット PPG タイマのレジスタと初期値の一覧
PPGm 動作モード制御レジスタ : H (PPGCm)
bit
15
0
14
1
13
0
12
0
11
0
10
0
9
0
8
1
PPGn 動作モード制御レジスタ : L (PPGCn)
bit 15
14
13
0
1
0
12
0
11
0
10
1
9
1
8
1
PPGn/m カウントクロック選択レジスタ (PPGnm)
bit 15
14
13
12
0
0
0
0
11
0
10
0
9
1
8
0
PPGn リロードレジスタ : H (PRLHn)
bit
15
14
13
12
11
10
9
8
×
×
×
×
×
×
×
×
PPGn リロードレジスタ : L (PRLLn)
bit
15
14
13
12
11
10
9
8
×
×
×
×
×
×
×
×
PPGm リロードレジスタ : H (PRLHm)
bit
15
14
13
12
11
10
9
8
×
×
×
×
×
×
×
×
PPGm リロードレジスタ : L (PRLLm)
bit
15
14
13
12
11
10
9
8
×
×
×
×
×
×
×
×
X : 不定
n=A, C, E
m=B, D, F
■ 8/16 ビット PPG タイマでの割込みの発生
8/16 ビット PPG タイマではアンダフローが発生すると , PPG 動作モード制御レジスタ
のアンダフロー発生フラグビット (PPGCn: PUFn, PPGCm: PUFm) に "1" がセットされま
す。アンダフローが発生したチャネルのアンダフロー割込みが許可されている場合は
(PPGCn: PIE0=1, PPGCm: PIE1=1), 割込みコントローラにアンダフロー割込み要求が発
生します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
295
第 16 章 8/16 ビット PPG タイマ
16.3 8/16 ビット PPG タイマの構成
16.3.1
MB90990 シリーズ
PPGC 動作モード制御レジスタ (PPGCC)
PPGC 動作モード制御レジスタでは , 8/16 ビット PPG タイマ C の動作について次
の設定ができます。
• 8/16 ビット PPG タイマ C の動作の許可または禁止
• 端子機能の切換え ( パルス出力の許可または禁止 )
• アンダフロー割込みの許可または禁止
• アンダフロー発生による割込み要求フラグの設定
PPGCC の機能についてのみ説明します。PPGCA,PPGCE は PPGCC と同機能で ,
それぞれ 8/16 ビット PPG タイマ A,C, E の設定を行います。
■ PPGC 動作モード制御レジスタ (PPGCC)
図 16.3-2 PPGC 動作モード制御レジスタ (PPGCC)
ch.C PPGCC
bit 7
アドレス
000048H PEN0
ほかのチャネル :
ch.A PPGCA 000044H
ch.E PPGCE 00004CH
6
5
PE0
R/W
4
3
PIE0 PUF0
R/W R/W R/W
2
1
0
予約
W
初期値
01000111B
bit 0
予約
1
予約ビット
必ず "1" に設定してください。
bit 3
PUF0
0
1
アンダフロー発生フラグビット
読出し時
書込み時
PUF0 ビットの
アンダフロー
なし
クリア
アンダフロー
影響なし
あり
bit 4
PIE0
0
1
アンダフロー割込み許可ビット
割込み要求の禁止
割込み要求の許可
bit 5
PE0
PPG0 端子出力許可ビット
0
汎用入出力ポート
( パルス出力禁止 )
1
PPGC 出力 ( パルス出力許可 )
bit 7
PEN0
R/W
: リード / ライト可能
W
: ライトオンリ
−
: 未定義ビット
PPG0 動作許可ビット
0
カウント動作禁止
("L" レベル出力保持 )
1
カウント動作許可
: 初期値
296
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 16 章 8/16 ビット PPG タイマ
16.3 8/16 ビット PPG タイマの構成
表 16.3-2 PPGC 動作モード制御レジスタ (PPGCC) の機能
ビット名
機 能
bit7
PEN0:
PPG0 動作許可ビット
8/16 ビット PPG タイマ C のカウント動作を許可または禁
止します。
"0" に設定した場合 : カウント動作は禁止されます。
"1" に設定した場合 : カウント動作は許可されます。
カウント動作を禁止 (PEN0=0) して , パルス出力を許可
(PE0=1) した場合は "L" レベルの出力が保持されます。
bit6
未定義ビット
読み出した場合 : 値は不定です。
書き込んだ場合 : 影響しません。
bit5
PE0:
PPG0 端子出力許可
ビット
PPGC 端子の機能を切り換え , パルス出力を許可または禁
止します。
"0" に設定した場合 : 汎用入出力ポートとして機能しま
す。パルス出力は禁止されます。
"1" に設定した場合 : PPGC 出力端子として機能します。
パルス出力は許可されます。
bit4
PIE0:
アンダフロー割込み
許可ビット
割込みを許可または禁止します。
"0" に設定した場合 : アンダフローが発生しても (PUF0=1)
割込み要求は発生しません。
"1" に設定した場合 : アンダフローが発生すると (PUF0=1)
割込み要求が発生します。
8 ビット PPG 出力 2 チャネル独立動作モード , 8+8 ビット
PPG 出力動作モードの場合 :
PPGC ダウンカウンタの値が "00H" から "FFH" にカ
bit3
CM44-10149-4
PUF0:
アンダフロー発生
フラグビット
ウントダウンするとアンダフローが発生します
(PUF0=1)。
16 ビット PPG 出力動作モードの場合 :
PPGC+PPGD ダウンカウンタの値が "0000H" から
"FFFFH" にカウントダウンするとアンダフローが発
生します (PUF0=1)。
アンダフロー割込みを許可している場合に (PIE0=1) アン
ダフローが発生すると (PUF0=1) 割込み要求が発生します。
"0" に設定した場合 : クリアされます。
"1" に設定した場合 : 影響しません。
リードモディファイライト (RMW) 系の命令で読み出した
場合 : "1" が読み出されます。
bit2,
bit1
未定義ビット
書き込んだ場合 : 影響しません。
読み出した場合 : 値は不定です。
bit0
予約 : 予約ビット
必ず "1" に設定してください。
FUJITSU MICROELECTRONICS LIMITED
297
第 16 章 8/16 ビット PPG タイマ
16.3 8/16 ビット PPG タイマの構成
16.3.2
MB90990 シリーズ
PPGD 動作モード制御レジスタ (PPGCD)
PPGD 動作モード制御レジスタでは , 8/16 ビット PPG タイマ D の動作について次
の設定ができます。
• 8/16 ビット PPG タイマ D の動作の許可または禁止
• 端子機能の切換え ( パルス出力の許可または禁止 )
• アンダフロー割込みの許可または禁止
• アンダフロー発生による割込み要求フラグの設定
• 8/16 ビット PPG タイマ D および C の動作モードの設定
PPGCD の機能についてのみ説明します。PPGCF は PPGCB,PPGCD と同機能で ,
それぞれ 8/16 ビット PPG タイマ B,D,F の設定を行います。
■ PPGD 動作モード制御レジスタ (PPGCD)
図 16.3-3 PPGD 動作モード制御レジスタ (PPGCD)
ch.D PPGCD
bit 15
アドレス
000049H PEN1
ほかのチャネル :
ch.B PPGCB 000045H
ch.F PPGCF 00004DH
14
13
PE1
R/W
12
11
10
PIE1 PUF1 MD1
R/W R/W R/W
9
MD0
R/W R/W
8
予約
W
初期値
01000001B
bit 8
予約
1
予約ビット
必ず "1" に設定してください。
bit 10 bit 9
MD1
MD0
0
0
0
1
1
1
0
1
動作モード選択ビット
8ビットPPG出力2チャネル独立
動作モード
8+8 ビット PPG 出力動作モード
設定禁止
16 ビット PPG 出力動作モード
bit 11
PUF1
0
1
アンダフロー発生フラグビット
読出し時
書込み時
アンダフローなし PUF1 ビットのクリア
アンダフローあり 影響なし
bit 12
PIE1
0
1
アンダフロー割込み許可ビット
アンダフロー割込み要求の禁止
アンダフロー割込み要求の許可
bit 13
PE1
0
1
PPG1 端子出力許可ビット
汎用入出力ポート ( パルス出力禁止 )
PPG1 出力 ( パルス出力許可 )
bit 15
R/W
: リード / ライト可能
W
: ライトオンリ
−
: 未定義
PEN1
0
1
PPG1 動作許可ビット
カウント動作禁止 ("L" レベル出力保持 )
カウント動作許可
: 初期値
298
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 16 章 8/16 ビット PPG タイマ
16.3 8/16 ビット PPG タイマの構成
表 16.3-3 PPGD 動作モード制御レジスタ (PPGCD) の機能
ビット名
機 能
bit15
PEN1:
PPG1 動作許可ビット
8/16 ビット PPG タイマ D のカウント動作を許可または禁
止します。
"0" に設定した場合 : カウント動作は禁止されます。
"1" に設定した場合 : カウント動作は許可されます。
カウント動作を禁止 (PEN1 = 0) し , パルス出力を許可
(PE1 = 1) した場合は "L" レベルの出力が保持されます。
bit14
未定義ビット
読み出した場合 : 値は不定です。
書き込んだ場合 : 影響しません。
bit13
PE1:
PPG1 端子出力許可
ビット
PPGD 端子の機能を切り換え , パルス出力を許可または禁
止します。
"0" に設定した場合 : 汎用入出力ポートとして機能しま
す。パルス出力は禁止されます。
"1" に設定した場合 : PPGD 出力端子として機能します。
パルス出力は許可されます。
bit12
PIE1:
アンダフロー割込み
許可ビット
割込みを許可または禁止します。
"0" に設定した場合 : アンダフローが発生しても (PUF1=1)
割込み要求は発生しません。
"1" に設定した場合 : アンダフローが発生すると (PUF1=1)
割込み要求が発生します。
8 ビット PPG 出力 2 チャネル独立動作モード , 8+8 ビッ
ト PPG 出力動作モードの場合 :
PPGD ダウンカウンタの値が "00H" から "FFH" に
bit11
bit10,
bit9
PUF1:
アンダフロー発生
フラグビット
MD1, MD0:
動作モード選択ビット
カウントダウンするとアンダフローが発生します
(PUF1=1)。
16 ビット PPG 出力動作モードの場合 :
PPGC+PPGD ダウンカウンタの値が "0000H" から
"FFFFH" にカウントダウンするとアンダフローが
発生します (PUF1=1)。
アンダフロー割込み要求を許可している場合に (PIE1=1)
アンダフローが発生すると (PUF1=1) 割込み要求が発生し
ます。
"0" に設定した場合 : クリアされます。
"1" に設定した場合 : 影響しません。
リードモディファイライト (RMW) 系命令で読み出した
場合 : "1" が読み出されます。
8/16 ビット PPG タイマの動作モードを設定します。
[8 ビット PPG 出力 2 チャネル独立動作モード以外の
場合 ]
• PPG 動作許可ビット (PEN0, PEN1) は , ワード命令で 2
ビット同時に設定してください。
• 片側のチャネルのみを動作させる設定にはしないでく
ださい (PEN1=0/PEN0=1 または PEN1=1/PEN0=0)。
( 注意事項 ) MD1, MD0=10B には設定しないでください。
bit8
CM44-10149-4
予約 : 予約ビット
必ず "1" に設定してください。
FUJITSU MICROELECTRONICS LIMITED
299
第 16 章 8/16 ビット PPG タイマ
16.3 8/16 ビット PPG タイマの構成
16.3.3
MB90990 シリーズ
PPGC/PPGD カウントクロック選択レジスタ (PPGCD)
PPGC/PPGD カウントクロック選択レジスタでは , 8/16 ビット PPG タイマ C, D の
カウントクロックおよび出力端子の選択を行います。
PPGCD の機能についてのみ説明します。PPGAB,PPGEF は PPGCD と同機能で , 8/
16 ビット PPG タイマ A と B,C と D,E と F の設定を行います。
■ PPGC/PPGD カウントクロック選択レジスタ (PPGCD)
図 16.3-4 PPGC/PPGD カウントクロック選択レジスタ (PPGCD)
ch.D PPGCD
bit
アドレス
00004AH
ほかのチャネル :
ch.B PPGAB 000046H
ch.F PPGEF 00004EH
6
7
5
4
3
2
1
0
PCS2 PCS1 PCS0 PCM2 PCM1 PCM0
REV
R/W R/W R/W R/W R/W R/W
R/W
初期値
00000010B
bit 0
REV
0
1
PPG 出力端子選択ビット
標準の出力端子からパルスを出力
出力端子 PPGn↔PPGm を入替え
bit 4 bit 3 bit 2
0
0
0
0
0
1
PPGC カウント
クロック選択ビット
1/φ (31.25 ns)
2/φ (62.5 ns)
0
1
0
22/φ (125 ns)
0
1
1
23/φ (250 ns)
1
1
1
1
0
0
1
1
0
1
0
1
24/φ (500 ns)
設定禁止
設定禁止
PCM2 PCM1 PCM0
29/HCLK(128 μs)
bit 7 bit 6 bit 5
0
0
0
0
0
1
PPGD カウント
クロック選択ビット
1/φ (31.25 ns)
2/φ (62.5 ns)
PCS2 PCS1 PCS0
R/W
: リード / ライト可能
0
1
0
22/φ (125 ns)
−
: 未定義ビット
0
1
1
23/φ (250 ns)
: 初期値
1
1
1
1
0
0
1
1
0
1
0
1
24/φ (500 ns)
設定禁止
設定禁止
HCLK
: 発振クロック
φ
: マシンクロック周波数
29/HCLK(128 μs)
( ) 内は HCLK = 4 MHz, φ= 32 MHz で動作した場合の値
n = A, C, E
m = n+1
300
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 16 章 8/16 ビット PPG タイマ
16.3 8/16 ビット PPG タイマの構成
表 16.3-4 PPGC/D カウントクロック選択レジスタ (PPGCD) の機能
ビット名
bit7
∼
bit5
PCS2 ∼ PCS0:
PPGD カウント
クロック選択ビット
8/16 ビット PPG タイマ D のカウントクロックを設定しま
す。
• 5 種類のマシンクロックの分周クロック , またはタイム
ベースタイマの分周クロックからカウントクロックを
選択します。
• PPGD カウントクロック選択ビット (PCS2 ∼ PCS0) の
設定は 8 ビット PPG 出力 2 チャネル独立モード
(PPGCD: MD1, MD0=00B) でのみ有効です。
bit4
∼
bit2
PCM2 ∼ PCM0:
PPGC カウント
クロック選択ビット
8/16 ビット PPG タイマ C のカウントクロックを設定しま
す。
5 種類のマシンクロックの分周クロック , またはタイム
ベースタイマの分周クロックからカウントクロックを選
択します。
bit1
未定義ビット
読み出した場合 : 値は不定です。
書き込んだ場合 : 影響しません。
REV :
PPG 出力端子選択
ビット
8/16 ビット PPG タイマ C と D の出力端子を入れ替えま
す。
"0" に設定した場合 : 標準の出力端子から出力します。
PPGC → PPGC 出力端子
PPGD → PPGD 出力端子
"1" に設定した場合 : 出力端子を入れ替えます。
PPGC → PPGD 出力端子
PPGD → PPGC 出力端子
bit0
CM44-10149-4
機 能
FUJITSU MICROELECTRONICS LIMITED
301
第 16 章 8/16 ビット PPG タイマ
16.3 8/16 ビット PPG タイマの構成
16.3.4
MB90990 シリーズ
PPG リロードレジスタ (PRLLC/PRLHC, PRLLD/
PRLHD)
PPG リロードレジスタには , PPG ダウンカウンタがカウントを開始する値 ( リロー
ド値 ) を設定します。"L" レベル側 , "H" レベル側 , 各 8 ビットのレジスタです。
PRLLC/PRLHC, PRLLD/PRLHD の機能についてのみ説明します。PRLLA/
PRLHA,PRLLB/PRLHB,PRLLE/PRLHE, PRLLF/PRLHF は PRLLC/PRLHC と同機
能で , それぞれ 8/16 ビット PPG タイマ A , B, E, F の設定を行います。
■ PPG リロードレジスタ (PRLLC/PRLHC, PRLLD/PRLHD)
図 16.3-5 PPG リロードレジスタ (PRLLC/PRLHC, PRLLD/PRLHD)
アドレス
ch.C PRLHC 007919H
ch.D PRLHD 00791BH
ほかのチャネル :
ch.A PRLHA 007915H
ch.B PRLHB 007917H
ch.E PRLHE 00791DH
ch.F PRLHF 00791FH
アドレス
ch.C PRLLC 007918H
ch.D PRLLD 00791AH
ほかのチャネル :
ch.A PRLLA 007914H
ch.B PRLLB 007916H
ch.E PRLLE 00791CH
ch.F PRLLF 00791EH
R/W : リード / ライト可能
X
: 不定
bit15
bit14
bit13
bit2
bit11
bit0
bit9
bit8
初期値
D15
D14
D13
D12
D11
D10
D9
D8
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
初期値
D7
D6
D5
D4
D3
D2
D1
D0
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
PPG リロードレジスタの各レジスタの機能を表 16.3-5 に示します。
表 16.3-5 PPG リロードレジスタの機能
302
機 能
8/16 ビット PPG タイマ C
8/16 ビット PPG タイマ D
"L" レベル側のリロード値を保持
PRLLC
PRLLD
"H" レベル側のリロード値を保持
PRLHC
PRLHD
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 16 章 8/16 ビット PPG タイマ
16.3 8/16 ビット PPG タイマの構成
<注意事項>
• 16 ビット PPG 出力動作モードの場合は (PPGCD: MD1, MD0=11B), リロードレジスタ
の設定はロングワード命令で設定するか , ワード命令で PPGC → PPGD の順に設定し
てください。
• 8+8 ビット PPG 出力動作モードの場合は (PPGCD: MD1, MD0=01B), 8/16 ビット PPG
タイマ C の PPG リロードレジスタ (PRLLC/PRLHC) は "L" レベル側 , "H" レベル側と
も同じ値を設定してください。"L" レベル側 , "H" レベル側で異なる値を設定すると 8/
16 ビット PPG タイマ D の PPG 出力波形がクロック周期ごとに異なってしまうおそれ
があります。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
303
第 16 章 8/16 ビット PPG タイマ
16.4 8/16 ビット PPG タイマの割込み
16.4
MB90990 シリーズ
8/16 ビット PPG タイマの割込み
8/16 ビット PPG タイマは , PPG ダウンカウンタのアンダフロー発生によって割込
み要求を発生できます。また , 拡張インテリジェント I/O サービス (EI2OS) に対応し
ておりません。
■ 8/16 ビット PPG タイマの割込み
8/16 ビット PPG タイマの割込み制御ビットと割込み要因を表 16.4-1 に示します。
表 16.4-1 8/16 ビット PPG タイマの割込み制御ビット
PPGn
PPGm
割込み要求フラグビット
PPGCn: PUF0
PPGCm: PUF1
割込み要求許可ビット
PPGCn: PIE0
PPGCm: PIE1
割込み要因
PPGn ダウンカウンタの
アンダフロー発生
PPGm ダウンカウンタの
アンダフロー発生
n = A, C, E
m=n+1
[8 ビット PPG 出力 2 チャネル独立動作モード , 8+8 ビット PPG 出力動作モードの場合 ]
• 8 ビット PPG 出力 2 チャネル独立動作モードまたは 8+8 ビット PPG 出力動作モード
では , PPGn と PPGm それぞれ独立して割込みを発生できます。
• PPGn または PPGm のダウンカウンタのどちらかが "00H" から "FFH" にカウントダウ
ンするとアンダフローが発生します。アンダフローが発生すると , アンダフローが
発生したチャネル側のアンダフロー発生フラグビットがセットされます (PPGCn:
PUF0=1 または PPGCm: PUF1=1)。
• アンダフローが発生したチャネル側の割込み要求が許可されている場合は (PPGCn:
PIE0=1 または PPGCm: PIE1=1) 割込み要求が発生します。
[16 ビット PPG 出力動作モードの場合 ]
• 16 ビット PPG 出力動作モードでは , PPGn+PPGm ダウンカウンタが "0000H" から
"FFFFH" にカウントダウンするとアンダフローが発生します。アンダフローが発生
すると 2 チャネルのアンダフロー発生フラグビットが同時にセットされます
(PPGCn: PUF0=1 かつ PPGCm: PUF1=1)。
• 2 チャネルの割込み要求のうち , どちらかが許可されている場合は (PPGCn:PIE0=0,
PPGCm:PIE1=1 または PPGCn:PIE0=1, PPGCm:PIE1=0) アンダフローが発生すると割
込み要求が発生します。
• 割込み要求が重複して発生しないよう , 事前に 2 チャネルのアンダフロー割込み許
可ビットのうち , どちらか片方を禁止しておいてください (PPGCn: PIE0=0, PPGCm:
PIE1=1 または PPGCn: PIE0=1, PPGCm: PIE1=0)。
• 2 チャネルのアンダフロー発生フラグビットがセットされた場合は (PPGCn: PUF0=1
かつ PPGCm: PUF1=1) 2 チャネル同時にクリアしてください。
割込み番号 , 割込み制御レジスタ , 割込みベクタアドレスについては「第
,
3 章 割込み」
を参照してください。
304
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 16 章 8/16 ビット PPG タイマ
16.5 8/16 ビット PPG タイマの動作説明
MB90990 シリーズ
16.5
8/16 ビット PPG タイマの動作説明
8/16 ビット PPG タイマは , 任意の周波数およびデューティ比のパルス幅を連続して
出力します。
■ 8/16 ビット PPG タイマの動作
● 8/16 ビット PPG タイマの出力動作
• 8/16 ビット PPG タイマにはチャネルごとに 2 本 ("L" レベル側 , "H" レベル側 ), 各 8
ビットのリロードレジスタがあります (PRLLn/PRLHn, PRLLm/PRLHm)。
• リロードレジスタ (PRLLn/PRLHn, PRLLm/PRLHm) に設定された値が PPG ダウンカ
ウンタ (PCNTn, PCNTm) に交互にリロードされます。
• PPG ダウンカウンタへのリロード後 , PPG カウントクロック選択ビット (PPGnm:
PCM2 ∼ PCM0, PCS2 ∼ PCS0) で設定されたカウントクロックに同期してカウント
ダウンが開始されます。
• アンダフロー発生によってリロードレジスタの設定値が PPG ダウンカウンタにリ
ロードされた場合は , 端子出力が反転されます。
8/16 ビット PPG タイマの出力波形を図 16.5-1 に示します。
図 16.5-1 8/16 ビット PPG タイマの出力波形
動作停止
動作開始
PPG 動作許可ビット
(PEN)
PPG 出力端子
T × (L + 1)
T × (H + 1)
L : PPG リロードレジスタ (PRLL) の値
H : PPG リロードレジスタ (PRLH) の値
T : カウントクロック周期
● 8/16 ビット PPG タイマの動作モード
8/16 ビット PPG タイマ動作が許可されている間は (PPGCn: PEN0=1, PPGCm: PEN1=1),
PPG 出力端子からパルス波が連続して出力されます。パルス波の周波数 , デューティ
比は任意に設定できます。
8/16 ビット PPG タイマのパルス出力は , 8/16 ビット PPG タイマの動作が停止されるま
で (PPGCn: PEN0=0, PPGCm: PEN1=0) 停止しません。
• 8 ビット PPG 出力 2 チャネル独立動作モード
• 16 ビット PPG 出力動作モード
• 8+8 ビット PPG 出力動作モード
<注意事項>
n=A, C, E
CM44-10149-4
m=n+1
FUJITSU MICROELECTRONICS LIMITED
305
第 16 章 8/16 ビット PPG タイマ
16.5 8/16 ビット PPG タイマの動作説明
MB90990 シリーズ
8 ビット PPG 出力 2 チャネル独立動作モード
16.5.1
8 ビット PPG 出力 2 チャネル独立動作モードでは , 8/16 ビット PPG タイマを独立
した 2 チャネルの 8 ビット PPG タイマとして設定します。PPG 出力動作 , 割込み
要求の発生などを各チャネルで独立して行うことができます。
■ 8 ビット PPG 出力 2 チャネル独立動作モードの設定
8 ビット PPG 出力 2 チャネル独立動作モードで動作させるには , 図 16.5-2 の設定が必
要です。
図 16.5-2 8 ビット PPG 出力 2 チャネル独立動作モードの設定
bit15
PPGCm/
PEN1
PPGCn
1
PPGmn
14
13
−
PE1
◎
12
11
10
9
bit8
bit7
PIE1 PUF1 MD1 MD0 予約 PEN0
◎
◎
0
0
( 予約領域 )
1
6
5
−
PE0
1
◎
4
3
PIE0 PUF0
◎
2
1
bit0
−
−
予約
1
◎
PCS2 PCS1 PCS0 PCM2 PCM1 PCM0
◎
◎
◎
◎
◎
−
◎
REV
◎
PRLHn/
PRLLn
PPGn "H" レベル側リロード値を設定
PPGn "L" レベル側リロード値を設定
PRLHm/
PRLLm
PPGm "H" レベル側リロード値を設定
PPGm "L" レベル側リロード値を設定
◎ : 使用ビット
― : 未定義ビット
1 : "1" を設定
0 : "0" を設定
n = A, C, E
m=n+1
<注意事項>
PPG リロードレジスタ (PRLLn/PRLHn, PRLLm/PRLHm) は , ワード命令で "H" レベル側 ,
"L" レベル側を同時に設定してください。
306
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 16 章 8/16 ビット PPG タイマ
16.5 8/16 ビット PPG タイマの動作説明
● 8 ビット PPG 出力 2 チャネル独立動作モードの動作
• 2 チャネルの 8 ビット PPG タイマは , それぞれ独立した PPG 動作を行います。
• 端子出力が許可されている場合は (PPGCn: PE0=1, PPGCm: PE1=1) PPG 出力端子選
択が標準に設定されていれば (PPGnm : REV=0), PPGn 端子から PPGn のパルス波が ,
PPGm 端子から PPGm のパルス波が出力されます。PPG 出力端子入替え設定時は
(PPGnm : REV=1), PPGn 端子から PPGm のパルス波が , PPGm 端子から PPGn のパル
ス波が出力されます。
• PPGリロードレジスタ(PRLLn/PRLHn, PRLLm/PRLHm)にリロード値を設定してPPG
タイマの動作を許可すると (PPGCn: PEN0=1, PPGCm: PEN1=1), 動作を許可された
チャネルの PPG ダウンカウンタはカウント動作を開始します。
• PPG ダウンカウンタのカウント動作を停止する場合は , 停止するチャネルの PPG タ
イマの動作を禁止します (PPGCn: PEN0=0, PPGCm: PEN1=0)。PPG ダウンカウンタ
のカウント動作は停止し , PPG 出力端子は "L" レベルの出力を保持します。
• 各チャネルの PPG ダウンカウンタがアンダフローを発生した場合は , PPG リロード
レジスタ (PRLLn/PRLHn, PRLLm/PRLHm) に設定したリロード値がアンダフローを
発生した PPG ダウンカウンタにリロードされます。
• アンダフローを発生すると , アンダフローを発生したチャネルのアンダフロー発生
フラグビットがセットされます (PPGCn: PUF0=1, PPGCm: PUF1=1)。アンダフロー
を発生したチャネル側で割込み要求が許可されていると (PPGCn: PIE0=1, PPGCm:
PIE1=1) 割込み要求が発生します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
307
第 16 章 8/16 ビット PPG タイマ
16.5 8/16 ビット PPG タイマの動作説明
MB90990 シリーズ
● 8 ビット PPG 出力 2 チャネル独立動作モードの出力波形
出力されるパルス幅は , "L" 幅 , "H" 幅とも各チャネルの PPG リロードレジスタの値に
1 を加えてカウントクロック周期を掛けた値になります。例えば , PPG リロードレジス
タの値が "00H" の場合はカウントクロック 1 周期分のパルス幅になり , "FFH" の場合は
カウントクロック 256 周期分のパルス幅になります。
パルス幅の計算式を以下に示します。
PL=T × (L+1)
PH=T × (H+1)
PL: 出力パルスの "L" 幅
PH: 出力パルスの "H" 幅
L: PPG リロードレジスタ (PRLLn または PRLLm) の 8 ビット値
H: PPG リロードレジスタ (PRLHn または PRLHm) の 8 ビット値
T: カウントクロック周期
8 ビット PPG 出力 2 チャネル独立動作モードの出力波形を図 16.5-3 に示します。
図 16.5-3 8 ビット PPG 出力 2 チャネル独立動作モードの出力波形
動作開始
動作停止
PPG 動作許可ビット
(PEN)
PPG 出力端子
T × (L + 1)
T × (H + 1)
L : PPG リロードレジスタ (PRLL) の値
H : PPG リロードレジスタ (PRLH) の値
T : カウントクロック周期
n = A, C, E
m=n+1
308
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 16 章 8/16 ビット PPG タイマ
16.5 8/16 ビット PPG タイマの動作説明
MB90990 シリーズ
16 ビット PPG 出力動作モード
16.5.2
16 ビット PPG 出力動作モードでは , 8/16 ビット PPG タイマを 1 チャネルの 16
ビット PPG タイマとして設定します。
■ 16 ビット PPG 出力動作モードの設定
16 ビット PPG 出力動作モードで動作させるには , 図 16.5-4 の設定が必要です。
図 16.5-4 16 ビット PPG 出力動作モードの設定
bit15 14
PPGCm/
PEN1 −
PPGCn
1
PPGmn
13
PE1
◎
12
11
10
9
bit8
bit7
PIE1 PUF1 MD1 MD0 予約 PEN0
◎
◎
1
1
1
( 予約領域 )
6
5
−
PE0
1
◎
4
3
PIE0 PUF0
◎
2
1
bit0
−
−
予約
1
◎
PCS2 PCS1 PCS0 PCM2 PCM1 PCM0
×
×
×
◎
◎
◎
−
REV
×
PRLHn/
PRLLn
PPGn "H" レベル側リロード値下位 8 ビットを設定
PPGn "L" レベル側リロード値下位 8 ビットを設定
PRLHm/
PRLLm
PPGm "H" レベル側リロード値上位 8 ビットを設定
PPGm "L" レベル側リロード値上位 8 ビットを設定
◎ : 使用ビット
― : 未定義ビット
× : 未使用ビット
1 : "1" を設定
n = A, C, E
m=n+1
<注意事項>
PPG リロードレジスタの値はロングワード命令で設定するか , PPGn → PPGm(PRLLn →
PRLLm, PRLHn → PRLHm) の順にワード命令で設定してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
309
第 16 章 8/16 ビット PPG タイマ
16.5 8/16 ビット PPG タイマの動作説明
MB90990 シリーズ
● 16 ビット PPG 出力動作モードの動作
• PPGn 端子 , PPGm 端子どちらの端子出力を許可した場合でも (PPGCn:PE0=1,
PPGCm: PE1=1), PPGn 端子 , PPGm 端子とも同じ波形のパルス波が出力されます。
• PPG リロードレジスタ (PRLLn/PRLHn, PRLLm/PRLHm) にリロード値を設定して ,
PPG タイマの動作を同時に許可すると (PPGCn: PEN0=1 かつ PPGCm: PEN1=1), PPG
ダウンカウンタは 16 ビットのダウンカウンタ (PCNTn + PCNTm) としてカウント動
作を開始します。
• PPG ダウンカウンタのカウント動作を停止する場合は , 両チャネルの PPG タイマの
動作を同時に禁止します (PPGCn: PEN0=0 かつ PPGCm: PEN1=0)。PPG ダウンカウ
ンタのカウント動作は停止し , PPG 出力端子は "L" レベルの出力を保持します。
• PPGm のダウンカウンタがアンダフローを発生した場合は , PPGn および PPGm のリ
ロードレジスタ (PRLLn/PRLHn, PRLLm/PRLHm) に設定したリロード値が同時に
PPG ダウンカウンタ (PCNTn + PCNTm) にリロードされます。
• アンダフローを発生すると , 両チャネルのアンダフロー発生フラグビットが同時に
セットされます (PPGCn:PUF0=1, PPGCm:PUF1=1)。どちらかのチャネル側で割込み
要求が許可されていると (PPGCn: PIE0=1, PPGCm: PIE1=1) 割込み要求が発生しま
す。
<注意事項>
• 16 ビット PPG 出力動作モードでは , アンダフローが発生すると 2 チャネルのアンダフ
ロー発生フラグビットが同時にセットされます (PPGCn: PUF0=1 かつ PPGCm:
PUF1=1)。割込み要求が重複して発生しないよう , 2 チャネルのアンダフロー割込み許
可ビットのうち , どちらか片方を禁止しておいてください
(PPGCn:PIE0=0, PPGCm:PIE1=1 または PPGCn:PIE0=1, PPGCm:PIE1=0)。
• アンダフロー発生フラグビットがセットされた場合は 2 チャネル同時にクリアしてく
ださい (PPGCn: PUF0=0 かつ PPGCm: PUF1=0)。
• n = A, C, E
m = n+1
310
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 16 章 8/16 ビット PPG タイマ
16.5 8/16 ビット PPG タイマの動作説明
MB90990 シリーズ
● 16 ビット PPG 出力動作モードの出力波形
出力されるパルス幅は , "L" 幅 , "H" 幅とも各チャネルの PPG リロードレジスタの値に
1 を加えてカウントクロック周期を掛けた値になります。例えば , PPG リロードレジス
タの値が "0000H" の場合はカウントクロック 1 周期分のパルス幅になり , "FFFFH" の場
合はカウントクロック 65536 周期分のパルス幅になります。
パルス幅の計算式を以下に示します。
PL=T × (L+1)
PH=T × (H+1)
PL: 出力パルスの "L" 幅
PH: 出力パルスの "H" 幅
L: PPG リロードレジスタ (PRLLn+PRLLm) の 16 ビット値
H: PPG リロードレジスタ (PRLHn+PRLHm) の 16 ビット値
T: カウントクロック周期
16 ビット PPG 出力動作モードの出力波形を図 16.5-5 に示します。
図 16.5-5 16 ビット PPG 出力動作モードの出力波形
動作開始
動作停止
PPG 動作許可ビット
(PEN)
PPG 出力端子
T × (L + 1) T × (H + 1)
L : PPG リロードレジスタ (PRLLm + PRLLn) の 16 ビット値
H : PPG リロードレジスタ (PRLHm + PRLHn) の 16 ビット値
T : カウントクロック周期
n = A, C, E
m=n+1
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
311
第 16 章 8/16 ビット PPG タイマ
16.5 8/16 ビット PPG タイマの動作説明
MB90990 シリーズ
8+8 ビット PPG 出力動作モード
16.5.3
8+8 ビット PPG 出力動作モードでは , PPGC は 8 ビットプリスケーラとして動作し ,
PPGD は PPGC の PPG 出力をクロックソースとして動作する 8 ビット PPG タイマ
として設定されます。
■ 8+8 ビット PPG 出力動作モードの設定
8+8 ビット PPG 出力動作モードで動作させるには , 図 16.5-6 の設定が必要です。
図 16.5-6 8+8 ビット PPG 出力動作モードの設定
bit15 14
PPGCm/
PEN1 −
PPGCn
1
PPGmn
13
PE1
◎
12
11
10
9
bit8
bit7
PIE1 PUF1 MD1 MD0 予約 PEN0
◎
◎
0
1
( 予約領域 )
1
6
5
−
PE0
1
◎
4
3
PIE0 PUF0
◎
2
1
bit0
−
−
予約
1
◎
PCS2 PCS1 PCS0 PCM2 PCM1 PCM0
×
×
×
◎
◎
−
REV
◎
PRLHn/
PRLLn
PPGn "H" レベル側リロード値を設定
PPGn "L" レベル側リロード値を設定
PRLHm/
PRLLm
PPGm "H" レベル側リロード値を設定
PPGm "L" レベル側リロード値を設定
◎ : 使用ビット
― : 未定義ビット
× : 未使用ビット
1 : "1" を設定
0 : "0" を設定
n = A, C, E
m=n+1
<注意事項>
PPG リロードレジスタ (PRLLn/PRLHn, PRLLm/PRLHm) は , ワード命令で "H" レベル側 ,
"L" レベル側を同時に設定してください。
312
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 16 章 8/16 ビット PPG タイマ
16.5 8/16 ビット PPG タイマの動作説明
● 8+8 ビット PPG 出力動作モードの動作
• PPGn は PPGm タイマのプリスケーラとして動作し , PPGm は PPGn の出力をカウン
トクロックとして PPG 動作を行います。
• 端子出力を許可されている場合は (PPGCn: PE0=1, PPGCm: PE1=1) PPG 出力端子選
択が標準に設定されていると (PPGnm : REV=0) PPGn 端子から PPGn のパルス波が ,
PPGm 端子から PPGm のパルス波が出力されます。PPG 出力端子入替え設定時は
(PPGnm : REV=1) PPGn と PPGm の出力端子が入れ替えます。
• PPGリロードレジスタ(PRLLn/PRLHn, PRLLm/PRLHm)にリロード値を設定してPPG
タイマの動作を許可すると (PPGCn:PEN0=1 かつ PPGCm: PEN1=1), PPG ダウンカウ
ンタはカウント動作を開始します。
• PPG ダウンカウンタのカウント動作を停止する場合は , 両チャネルの PPG タイマの
動作を同時に禁止します (PPGCn: PEN0=0 かつ PPGCm: PEN1=0)。PPG ダウンカウ
ンタのカウント動作は停止し , PPG 出力端子は "L" レベルの出力を保持します。
• 各チャネルの PPG ダウンカウンタがアンダフローを発生した場合は , PPG リロード
レジスタ (PRLLn/PRLHn, PRLLm/PRLHm) に設定したリロード値がアンダフローを
発生した PPG ダウンカウンタにリロードされます。
• アンダフローが発生すると , アンダフローを発生したチャネルのアンダフロー発生
フラグビットがセットされます (PPGCn:PUF0=1, PPGCm:PUF1=1)。アンダフローを
発生したチャネル側で割込み要求が許可されていると (PPGCn: PIE0=1, PPGCm:
PIE1=1) 割込み要求が発生します。
<注意事項>
• PPGn が停止している状態で (PPGCn: PEN0=0) PPGm を動作させないでください
(PPGCm: PEN1=1)。
• PPG リロードレジスタ (PRLLn/PRLHn, PRLLm/PRLHm) は , "L" レベル側 , "H" レベル
側ともに同じ値を設定してください。
• n = A, C, E
m = n+1
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
313
第 16 章 8/16 ビット PPG タイマ
16.5 8/16 ビット PPG タイマの動作説明
MB90990 シリーズ
出力されるパルス幅は , "L" 幅 , "H" 幅とも各チャネルの PPG リロードレジスタの値に
1 を加えてカウントクロック周期を掛けた値になります。
パルス幅の計算式を以下に示します。
PL=T × (Ln+1) × (Lm+1)
PH=T × (Hn+1) × (Hm+1)
PL : PPGm 端子の出力パルスの "L" 幅
PH : PPGm 端子の出力パルスの "H" 幅
Ln : PPG リロードレジスタ (PRLLn) の 8 ビット値
Hn : PPG リロードレジスタ (PRLHn) の 8 ビット値
Lm : PPG リロードレジスタ (PRLLm) の 8 ビット値
Hm : PPG リロードレジスタ (PRLHm) の 8 ビット値
T : カウントクロック周期
8+8 ビット PPG 出力動作モードの出力波形を図 16.5-7 に示します。
図 16.5-7 8+8 ビット PPG 出力動作モードの出力波形
動作禁止
動作開始
PPG 動作許可ビット
(PENn, PENm)
T × (Ln + 1) T × (Hn + 1)
PPGn 出力端子
PPGm 出力端子
T × (Ln + 1) × (Lm+ 1)
T × (Hn + 1) × (Hm + 1)
Ln : PPG リロードレジスタ (PRLLn) の 8 ビット値
Hn : PPG リロードレジスタ (PRLHn) の 8 ビット値
Lm : PPG リロードレジスタ (PRLLm) の 8 ビット値
Hm : PPG リロードレジスタ (PRLHm) の 8 ビット値
T : カウントクロック周期
n = A, C, E
m=n+1
314
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
16.6
第 16 章 8/16 ビット PPG タイマ
16.6 8/16 ビット PPG タイマ使用上の注意
8/16 ビット PPG タイマ使用上の注意
8/16 ビット PPG タイマを使用する場合は , 次の点に注意してください。
■ 8/16 ビット PPG タイマ使用上の注意
● タイムベースタイマ出力を使用した場合の 8/16 ビット PPG タイマへの影響
• タイムベースタイマの出力を 8/16 ビット PPG タイマのカウントクロック入力に使
用した場合 (PPGnm: PCM2 ∼ PCM0=111B, PCS2 ∼ PCS0=111B), トリガ入力によっ
て PPG タイマが起動される最初のカウント周期 , またはストップ直後のカウント周
期にズレが発生することがあります。
• PPG ダウンカウンタのカウント動作中にタイムベースタイマのカウンタをクリアす
ると (TBTC: TBR=0), カウント周期にズレが発生することがあります。
● 8 ビット PPG タイマを使用した場合の PPG リロードレジスタの設定
• "L" レベル側および "H" レベル側のパルス幅は , "L" レベル側の PPG リロードレジス
タ (PRLLn, PRLLm) の値を PPG ダウンカウンタにリロードするタイミングで決定さ
れます。
• 8 ビット PPG 出力 2 チャネル独立動作モード , または 8+8 ビット PPG 出力動作モー
ドで8ビットPPGタイマを使用している場合, PPGリロードレジスタ(PRLLn/PRLHn,
PRLLm/PRLHm) はワード命令で "H" レベル側 , "L" レベル側を同時に設定してくだ
さい。
バイト命令を使用した場合は予想外のパルスが発生するおそれがあります。
[ バイト命令使用による PPG リロードレジスタ書換え例 ]
PPG 端子の信号レベルが "H" → "L" に切り換わる直前に "L" レベル側の PPG リロード
レジスタ (PRLL) の値をバイト命令で書き換えてから , "H" レベル側の PPG リロードレ
ジスタ (PRLH) を書き換えた場合 , 1 度だけ "L" 幅は書換え後の幅 , "H" 幅は書換え前の
幅のパルスが発生します。
バイト命令で PPG リロードレジスタを書き換えた場合の波形を図 16.6-1 に示します。
<注意事項>
n = A, C, E
m = B, D, F
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
315
第 16 章 8/16 ビット PPG タイマ
16.6 8/16 ビット PPG タイマ使用上の注意
MB90990 シリーズ
図 16.6-1 バイト命令で PPG リロードレジスタを書き換えた場合の波形
PRLL
A
PRLH
B
C
D
A + B
A + B
B + C
C + D
B
B
C + D
C + D リロード値更新
のタイミング
D
D
PPG 端子
A
B
A
C
C
C
<1><2>
<1>: PPG リロードレジスタ (PRLL) の値を変更 (A → C)
<2>: PPG リロードレジスタ (PRLH) の値を変更 (B → D)
● 16 ビット PPG タイマを使用した場合の PPG リロードレジスタの設定
PPG リロードレジスタ (PRLLn/PRLHn, PRLLm/PRLHm) はロングワード命令で設定す
るか , PPGn → PPGm(PRLLn/PRLHn → PRLLm/PRLHm) の順にワード命令で設定してく
ださい。
[16 ビット PPG 出力動作モードでのリロードタイミング ]
16 ビット PPG 出力動作モードの場合 , PPGn リロードレジスタに書き込んだリロード
値は一時的にテンポラリラッチに書き込まれ , PPGm リロードレジスタにリロード値
を書き込まれてから PPGn リロードレジスタ (PRLLn, PRLHn) に転送されます。した
がって , PPGm のリロード値を設定する場合は , PPGn のリロード値も同時に設定する
か , PPGm のリロード値を設定する前に PPGn のリロード値を設定しておく必要があ
ります。
16 ビット PPG 出力動作モードの場合のリロードタイミングを図 16.6-2 に示します。
図 16.6-2 16 ビット PPG 出力動作モードでのリロードタイミング
PPGn の
リロード値
16 ビット PPG 出力動作モード
以外での PPGn への書込み
16 ビット PPG 出力動作モードのみ
テンポラリラッチ
PPGm の
リロード値
PPGm へ
の書込み
PPGm への書込みに
同期して転送
PPG リロードレジスタ
(PRLLn, PRLHn)
PPG リロードレジスタ
(PRLLm, PRLHm)
n = A, C, E
m=n+1
316
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 17 章
DTP/ 外部割込み
DTP/ 外部割込みの機能と動作について説明しま
す。
17.1 DTP/ 外部割込みの概要
17.2 DTP/ 外部割込みのブロックダイヤグラム
17.3 DTP/ 外部割込みの構成
17.4 DTP/ 外部割込みの動作説明
17.5 DTP/ 外部割込みの使用上の注意
17.6 DTP/ 外部割込み回路のプログラム例
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
317
第 17 章 DTP/ 外部割込み
17.1 DTP/ 外部割込みの概要
17.1
MB90990 シリーズ
DTP/ 外部割込みの概要
DTP/ 外部割込みでは外部の周辺装置が発生する割込み要求またはデータ転送要求を
CPU に伝達し , 外部割込み要求を発生するか拡張インテリジェント I/O サービス
(EI2OS) を起動します。
■ DTP/ 外部割込み機能
外部の周辺装置からの割込み要求は周辺機能の割込みと同じ手順で CPU に出力され , 外
部割込みの発生または拡張インテリジェント I/O サービス (EI2OS) の起動を行います。
割込み制御レジスタで拡張インテリジェント I/O サービス (EI2OS) を禁止に設定 (ICR:
ISE=0) している場合は , 外部割込み機能が有効になり割込み処理に分岐します。
EI2OS を許可に設定している場合は , DTP 機能が有効となって EI2OS による自動デー
タ転送が行われ , 指定回数のデータ転送終了後に割込み処理に分岐します。
表 17.1-1 に DTP/ 外部割込みの概要について示します。
表 17.1-1 DTP/ 外部割込みの概要
外部割込み
入力端子
DTP 機能
8 本 : INT8, INT9R, INT10, INT11, INT12R, INT13, INT14R, INT15R
検出レベル設定レジスタ (ELVR1) にて端子ごとに設定
割込み要因
"H" レベル /"L" レベルの入力
割込み番号
#26(1AH), #28(1CH)
割込み制御
DTP/ 外部割込み許可レジスタ (ENIR1) による割込み要求出力の許
可または禁止
割込み
フラグ
DTP/ 外部割込み要因レジスタ (EIRR1) による割込み要因の保持
処理選択
EI2OS を禁止に設定
( ICR: ISE=0)
EI2OS を許可に設定
(ICR: ISE=1)
外部割込み処理へ分岐
EI2OS によるデータ自動転送 ,
指定回数処理後 , 割込み処理へ
分岐
処理
318
"H" レベル /"L" レベル /
立上りエッジ / 立下りエッジの
入力
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 17 章 DTP/ 外部割込み
17.2 DTP/ 外部割込みのブロックダイヤグラム
MB90990 シリーズ
DTP/ 外部割込みのブロックダイヤグラム
17.2
DTP/ 外部割込みのブロックダイヤグラムを以下に示します。
■ DTP/ 外部割込みのブロックダイヤグラム
図 17.2-1 DTP/ 外部割込みのブロックダイヤグラム
検出レベル設定レジスタ(ELVR1)
LB15 LA15 LB14 LA14 LB13 LA13 LB12 LA12
端子
レベル・エッジ
セレクタ
INT15R
端子
レベル・エッジ
セレクタ
LB8
LA8
レベル・エッジ
端子
セレクタ
レベル・エッジ
端子
セレクタ
部
デ
ー
タ
バ
ス
内
INT10
レベル・エッジ
セレクタ
INT13
端子
LA9
INT11
INT14R
端子
LB11 LA11 LB10 LA10 LB9
レベル・エッジ
端子
セレクタ
INT9R
レベル・エッジ
セレクタ
INT12R
レベル・エッジ
端子
セレクタ
INT8
DTP/外部割込み入力検出回路
ER15 ER14 ER13 ER12 ER11 ER10
ER9
ER8
割込み要求
信号
割込み要求
信号
EN15 EN14 EN13 EN12 EN11 EN10
CM44-10149-4
DTP/外部割込み要因
レジスタ(EIRR1)
EN9
EN8
FUJITSU MICROELECTRONICS LIMITED
DTP/外部割込み許可
レジスタ(ENIR1)
319
第 17 章 DTP/ 外部割込み
17.2 DTP/ 外部割込みのブロックダイヤグラム
MB90990 シリーズ
● DTP/ 外部割込み入力検出回路
外部の周辺装置が発生する割込み要求またはデータ転送要求を検出します。
検出レベル設定レジスタで設定したレベルまたはエッジが検出された端子に対応する
割込み要求フラグを "1" にセットします (EIRR1: ER)。
● 検出レベル設定レジスタ (ELVR1)
検出レベル設定レジスタでは , DTP/ 外部割込みの要因発生の条件となる , 外部周辺装
置からの入力信号のレベルまたはエッジを設定します。
● DTP/ 外部割込み要因レジスタ (EIRR1)
DTP/ 外部割込みの要因を保持するレジスタです。
DTP/ 外部割込み端子に有効な信号の入力があった場合に , 対応する DTP/ 外部割込み
要求フラグビットが "1" にセットされます。
● DTP/ 外部割込み許可レジスタ (ENIR1)
DTP/ 外部割込み許可レジスタ (ENIR1) では , 外部周辺装置の DTP/ 外部割込み要求を
許可または禁止に設定します。
■ 端子の詳細と割込み番号
DTP/ 外部割込みで使用する端子 , 割込みの詳細を表 17.2-1 に示します。
表 17.2-1 DTP/ 外部割込みで使用する端子 , 割込み番号
端子
チャネル
P54
INT8
P42
INT9R
P55
INT10
P56
INT11
P80
INT12R
P57
INT13
P82
INT14R
P84
INT15R
割込み番号
#26 (1AH)
#28 (1CH)
INT9R, INT12R, INT14R, INT15R は , 外部割込み要因選択レジスタ (EISSR) の対応
するビットを "1" に設定することによって有効となります。
320
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 17 章 DTP/ 外部割込み
17.3 DTP/ 外部割込みの構成
MB90990 シリーズ
17.3
DTP/ 外部割込みの構成
DTP/ 外部割込みの端子 , 割込み要因 , レジスタの一覧および詳細を説明します。
■ DTP/ 外部割込みの端子
DTP/ 外部割込みで使用する端子は , 汎用入出力ポートと兼用の端子です。
端子の機能と DTP/ 外部割込みで使用する場合の設定は , 表 17.3-1 のとおりです。
表 17.3-1 DTP/ 外部割込みの端子
端子名
端子機能
P54/AN12/TOT3/
INT8
汎用入出力ポート / アナログ入力 /
リロードタイマ用イベント端子 /
DTP 外部割込み入力
P55/AN13/INT10
P56/AN14/INT11/DA0
P57/AN15/INT13
汎用入出力ポート /
アナログ入力 /
DTP 外部割込み入力
P42/
INT9R/
RX1/
汎用入出力ポート /
DTP 外部割込み入力 /
CAN1 入力 Rx1/
P80/
INT12R/
ADTG
汎用入出力ポート /
DTP 外部割込み入力 /
A/D コンバータトリガ入力 ADTG
P82/
INT14R/
SIN0/
TIN2
汎用入出力ポート /
DTP 外部割込み入力 /
UART0 入力 SIN0/
リロードタイマ 2 トリガ入力 TIN2
P84/
INT15R/
SCK0
汎用入出力ポート /
DTP 外部割込み入力 /
UART0 クロック入出力 SCK0
CM44-10149-4
DTP/ 外部割込みの使用に必要な端子
の設定
• 外部割込み要因選択レジスタ
(EISSR) を "0" に設定
• ポート方向レジスタ (DDR5) で
入力ポートに設定
• 外部割込み要因選択レジスタ
(EISSR) を "1" に設定
• ポート方向レジスタ (DDR4) で
入力ポートに設定
外部割込み要因選択レジスタ
(EISSR) を "1" に設定
• ポート方向レジスタ (DDR8) で
入力ポートに設定
•
FUJITSU MICROELECTRONICS LIMITED
321
第 17 章 DTP/ 外部割込み
17.3 DTP/ 外部割込みの構成
MB90990 シリーズ
■ DTP/ 外部割込みのレジスタと初期値の一覧
図 17.3-1 DTP/ 外部割込みのレジスタと初期値の一覧
ENIR1
bit
アドレス : 0000CAH
7
6
5
4
3
2
1
0
EN15
EN14
EN13
EN12
EN11
EN10
EN9
EN8
初期値
00000000B
EIRR1
bit
アドレス : 0000CBH
15
14
13
12
11
10
9
8
ER15
ER14
ER13
ER12
ER11
ER10
ER9
ER8
7
6
5
4
3
2
1
0
LB11
LA11
LB10
LA10
LB9
LA9
LB8
LA8
15
14
13
12
11
10
9
8
LB15
LA15
LB14
LA14
LB13
LA13
LB12
LA12
7
6
5
4
3
2
1
0
INT15R
INT14R
INT13R
INT12R
INT11R
INT10R
INT9R
INT8R
初期値
XXXXXXXXB
ELVR1
bit
アドレス : 0000CCH
初期値
00000000B
ELVR1
bit
アドレス : 0000CDH
初期値
00000000B
EISSR
bit
アドレス : 0000CEH
322
FUJITSU MICROELECTRONICS LIMITED
初期値
00000000B
CM44-10149-4
第 17 章 DTP/ 外部割込み
17.3 DTP/ 外部割込みの構成
MB90990 シリーズ
17.3.1
DTP/ 外部割込み要因レジスタ 1 (EIRR1)
DTP/ 外部割込みの要因を保持するレジスタです。
DTP/ 外部割込み端子に有効な信号の入力があった場合に , 対応する割込み要求フラ
グビットが "1" にセットされます。
EIRR1 は INT8, INT9R, INT10, INT11, INT12R, INT13, INT14R, INT15R に対応しま
す。
■ DTP/ 外部割込み要因レジスタ 1 (EIRR1)
図 17.3-2 DTP/ 外部割込み要因レジスタ 1 (EIRR1)
bit 15
9
8
14 13 12 11 10
アドレス
ER15 ER14 ER13 ER12 ER11 ER10 ER9 ER8
EIRR1:0000CBH
R/W R/W R/W R/W R/W R/W R/W R/W
初期値 XXXXXXXXB
bit15~bit8
ER15~ER8
R/W:リード/ライト可能
X : 不定
CM44-10149-4
0
1
DTP/外部割込み要求フラグビット
読出し時
書込み時
DTP/外部割込み入力なし ERビットのクリア
DTP/外部割込み入力あり 影響なし
FUJITSU MICROELECTRONICS LIMITED
323
第 17 章 DTP/ 外部割込み
17.3 DTP/ 外部割込みの構成
MB90990 シリーズ
表 17.3-2 DTP/ 外部割込み要因レジスタ 1 (EIRR1) の機能
ビット名
bit15
∼
bit8
324
ER15 ∼ ER8 :
DTP/ 外部割込み
要求フラグビット
機 能
DTP/ 外部割込み端子に検出レベル設定レジスタの
検出条件選択ビット (ELVR1: LB, LA) で設定した
エッジまたはレベル信号が入力された場合に , "1"
にセットされます。
"1" にセットされた場合 :
DTP/ 外部割込み要求許可ビット (ENIR1: EN) を
"1" に設定している場合は , 対応する DTP/ 外部割
込みチャネルの割込み要求が発生します。
"0" に設定した場合 : クリアされます。
"1" に設定した場合 : 影響しません。
もし , "1" セットと "0" 書込みが同時に発生した
場合は , "0" 書込みが優先されます。
( 注意事項 )
• リードモディファイライト (RMW) 系命令の読出
し時には "1" が読み出されます。複数の DTP/ 外
部割込み要求が許可されている場合は (ENIR1:
EN=1), 割込みを受け付けたチャネルのビットだ
けをクリアするようにしてください (EIRR1:
ER=0)。それ以外のビットを無条件にクリアする
ことは避けてください。
• DTP/ 外部割込み要求フラグビット (EIRR:ER) の
値は , 対応する DTP/ 外部割込み要求許可ビット
(ENIR:EN) が "1" に設定されている時のみ有効で
す。DTP/ 外部割込みが許可されていない状態
(ENIR:EN=0) では DTP/ 外部割込み要因の有無に
かかわらず DTP/ 外部割込み要求フラグビットが
セットされる可能性があります。
• DTP/ 外部割込みを許可 (ENIR:EN=1) する直前
に , 対応する DTP/ 外部割込み要求フラグビット
(EIRR:ER) をクリアしてください。
( 参考 )
拡張インテリジェント I/O サービス (EI2OS) が
起動された場合は 1 データの転送が終了した時
点で , 対応する割込み要求フラグビットが自動
的にクリアされます (EIRR1: ER=0)。
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 17 章 DTP/ 外部割込み
17.3 DTP/ 外部割込みの構成
MB90990 シリーズ
DTP/ 外部割込み許可レジスタ 1 (ENIR1)
17.3.2
DTP/ 外部割込み許可レジスタ (ENIR1) では , 外部周辺装置の DTP/ 外部割込み要求
を許可または禁止に設定します。
ENIR1 は INT8, INT9R, INT10, INT11, INT12R, INT13, INT14R, INT15R に対応しま
す。
■ DTP/ 外部割込み許可レジスタ 1 (ENIR1)
図 17.3-3 DTP/ 外部割込み許可レジスタ 1 (ENIR1)
bit
アドレス
ENIR1:0000CAH
7
6
5
4
3
2
1
EN15 EN14 EN13 EN12 EN11 EN10 EN9
R/W R/W
0
EN8
R/W R/W R/W R/W R/W R/W
R/W :リード/ライト可能 :初期値
初期値:00000000B
bit7~bit0
EN15~EN8
0
1
DTP/外部割込み要求許可ビット
DTP/外部割込み禁止
DTP/外部割込み許可
表 17.3-3 DTP/ 外部割込み許可レジスタ 1 (ENIR1) の機能
ビット名
bit7
∼
bit0
CM44-10149-4
EN15 ∼ EN8 :
DTP/ 外部割込み要求
許可ビット
機 能
DTP/ 外部割込みチャネルに対して , DTP/ 外部割込
み要求を許可または禁止に設定します。
DTP/ 外部割込み要求許可ビット (ENIR1: EN) と
DTP/ 外部割込み要求フラグビット (EIRR1: ER) が
"1" である場合に , 対応する DTP/ 外部割込み端子
の割込み要求が発生します。
( 注意事項 )
DTP/ 外部割込みを許可 (ENIR:EN=1) する直前
に , 対応する DTP/ 外部割込み要求フラグビッ
ト (EIRR:ER) をクリアしてください。
( 参考 )
DTP/ 外部割込み要求許可ビットの設定にかか
わらず , DTP/ 外部割込み端子の状態を ポート
データレジスタにより直接読み出せます。
FUJITSU MICROELECTRONICS LIMITED
325
第 17 章 DTP/ 外部割込み
17.3 DTP/ 外部割込みの構成
MB90990 シリーズ
表 17.3-4 DTP/ 外部割込み端子と割込み要求フラグビット , 割込み許可ビットの対応
326
DTP/ 外部割込み端子
DTP/ 外部割込み要求
フラグビット
DTP/ 外部割込み要求
許可ビット
INT8
ER8
EN8
INT9R
ER9
EN9
INT10
ER10
EN10
INT11
ER11
EN11
INT12R
ER12
EN12
INT13
ER13
EN13
INT14R
ER14
EN14
INT15R
ER15
EN15
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 17 章 DTP/ 外部割込み
17.3 DTP/ 外部割込みの構成
MB90990 シリーズ
検出レベル設定レジスタ 1 (ELVR1)
17.3.3
検出レベル設定レジスタでは , DTP/ 外部割込み端子の割込み要因となる入力信号レ
ベルまたはエッジを設定します。
ELVR1 は INT8, INT9R, INT10, INT11, INT12R, INT13, INT14R, INT15R に対応しま
す。
■ 検出レベル設定レジスタ 1 (ELVR1)
図 17.3-4 検出レベル設定レジスタ 1 (ELVR1)
bit 15
アドレス
ELVR1:0000CCH
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
初期値
0000000000000000B
LB15 LA15 LB14 LA14 LB13 LA13 LB12 LA12 LB11 LA11 LB10 LA10 LB9 LA9 LB8 LA8
R/W R/W R/W R/W R/W R/W R/W R/W
R/W R/W R/W R/W R/W R/W R/W R/W
bit15~bit0
LB15,LA15,LB14,LA14,
LB13,LA13,LB12,LA12,
LB11,LA11,LB10,LA10,
LB9 ,LA9 ,LB8 ,LA8
0
0
0
1
1
R/W :リード/ライト可能 :初期値
1
0
1
検出条件選択ビット
"L"レベル検出
"H"レベル検出
立上りエッジ検出
立下りエッジ検出
表 17.3-5 検出レベル設定レジスタ 1 (ELVR1) の機能
ビット名
bit15
∼
bit0
LB15, LA15 ∼ LB8,
LA8:
検出条件選択ビット
機 能
DTP/ 外部割込み端子に対して , 割込み要因の発
生の条件となる外部周辺装置からの入力信号の
レベルまたはエッジを設定します。
外部割込みの場合は 2 種類のレベルまたは 2 種
類のエッジから , EI2OS の場合は 2 種類のレベ
ルから選択します。
( 参考 )
設定した検出信号が DTP/ 外部割込み端子に
入力されると , DTP/ 外部割込み要求を禁止
に設定していても (ENIR1: EN=0) DTP/ 外部
割込み要求フラグビットが "1" にセットされ
ます。
<注意事項>
本レジスタの設定変更を行った場合 , 割込み要因フラグがセットされる場合があります。
このため , 本レジスタの設定変更を行う場合は , 割込みを禁止 (ENIR1 の対応するビッ
トを "0" に設定 ) した状態で行ってください。
また本レジスタの設定変更後に割込みを許可 (ENIR1 の対応するビットを "1" に設定 ) す
る前には , 必ず割込み要因フラグビット (EIRR1 の対応するビット ) をクリアしてく
ださい。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
327
第 17 章 DTP/ 外部割込み
17.3 DTP/ 外部割込みの構成
MB90990 シリーズ
表 17.3-6 検出レベル設定レジスタと各チャネルの対応
DTP/ 外部割込み端子
レジスタ名
ビット名
INT8
LB8, LA8
INT9R
LB9, LA9
INT10
LB10, LA10
INT11
LB11, LA11
ELVR1
328
INT12R
LB12, LA12
INT13
LB13, LA13
INT14R
LB14, LA14
INT15R
LB15, LA15
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 17 章 DTP/ 外部割込み
17.3 DTP/ 外部割込みの構成
MB90990 シリーズ
17.3.4
DTP/ 外部割込み要因選択レジスタ (EISSR)
本レジスタの設定により外部割込み端子の割当てを変更できます。これにより外部
割込みが可能となります。また , CAN ウェイクアップなどの機能を実現します。
■ 外部割込み要因の選択
上位 8 ビットの外部割込み端子は標準では INT13, INT11, INT10, INT8 に割り当てられ ,
ポート 5 と端子を兼用しています。端子の切換えは外部割込み要因選択レジスタ
(EISSR) によって行います。また , INT15R, INT14R, INT12R, INT9R は CAN 入力端子な
どと機能を兼用していますので , CAN ウェイクアップなどの機能を実現できます。
INT15R, INT14R, INT12R, INT9R の端子機能については表 17.3-8 を参照してください。
図 17.3-5 DTP/ 外部割込み要因選択レジスタ (EISSR)
bit
アドレス
EISSR:0000CEH
7
6
5
4
3
2
1
0
INT15R INT14R INT13R INT12R INT11R INT10R INT9R INT8R
初期値 00000000B
R/W R/W R/W R/W R/W R/W R/W R/W
bit7~bit0
INT15R~INT8R
R/W :リード/ライト可能
X : 不定
:初期値
0
1
外部割込み要因選択ビット
端子INT15~INT8を外部割込み要因とする
端子INT15R~INT8Rを外部割込み要因とする
(注意事項)INT15R~INT8Rの端子割当ては表17.3-8を参照してください
表 17.3-7 DTP/ 外部割込み要因レジスタ (EISSR) の機能
ビット名
bit7
∼
bit0
CM44-10149-4
INT15R ∼ INT8R:
外部割込み要因選択
ビット
機 能
INT15R ∼ INT8R のビットを "1" に設定すると対応
する外部割込み要因 ( 上位 8 ビット ) の入力端子は
INT15R ∼ INT8R に割り当てられます。
"0" に設定した場合 : 上位 8 ビットの外部割込み要
因は INT15 ∼ INT8 端子に割
り当てられます。
"1" に設定した場合 : 上位 8 ビットの外部割込み要
因は INT15R ∼ INT8R 端子に
割り当てられます。
FUJITSU MICROELECTRONICS LIMITED
329
第 17 章 DTP/ 外部割込み
17.3 DTP/ 外部割込みの構成
MB90990 シリーズ
表 17.3-8 外部割込み要因選択 ( 上位 8 ビット )
EISSR ビット
INT8R
INT9R
INT8 : P54 (AN12/TOT3)
―
―
INT9R : P42 (RX1)
INT10R
INT10 : P55 (AN13)
―
INT11R
INT11 : P56 (AN14)
―
INT12R
INT13R
330
"1"
"0"( 初期値 )
―
INT12R : P80 (ADTG)
INT13 : P57 (AN15)
―
INT14R
―
INT14R : P82 (SIN0/TIN2)
INT15R
―
INT15R : P84 (SCK0)
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 17 章 DTP/ 外部割込み
17.4 DTP/ 外部割込みの動作説明
MB90990 シリーズ
17.4
DTP/ 外部割込みの動作説明
DTP/ 外部割込みには外部割込み機能と DTP 機能があります。各機能の設定と動作
について説明します。
■ DTP/ 外部割込みの設定
DTP/ 外部割込みを使用するには , 図 17.4-1 の設定が必要です。
図 17.4-1 DTP/ 外部割込みの設定
ICR 割込み制御レジスタ
bit15 14
DTP
(EI2
OS) の場合
11
10
9
ICS3 ICS2 ICS1 ICS0 ISE
IL2
IL1
IL0 ICS3 ICS2 ICS1 ICS0 ISE
◎
◎
◎
◎
◎
13
◎
12
◎
1
bit8 bit7
◎
6
◎
5
◎
4
◎
3
1
2
1
bit0
IL2
IL1
IL0
◎
◎
◎
ENIR1
EN15 EN14 EN13 EN12 EN11 EN10 EN9 EN8
○
○
○
○
○
○
○
○
LA9
LB8
LA8
◎
◎
◎
EIRR1
ER15 ER14 ER13 ER12 ER11 ER10 ER9 ER8
◎
◎
◎
◎
◎
◎
◎
◎
ELVR1
LB15 LA15 LB14 LA14 LB13 LA13 LB12 LA12 LB11 LA11 LB10 LA10 LB9
◎
◎
◎
◎
◎
◎
◎
◎
◎
◎
◎
◎
◎
DDR ポート方向レジスタ
DTP/ 外部割込み入力に使用する端子に対応するビットを "0" に設定
ADER5 ( アナログ入力イネーブル )
ADE15 ADE14 ADE13 ADE12 ADE11 ADE10 ADE9 ADE8
INT8, INT10, INT11,
INT13 を使用する
場合のみ
●
●
●
●
−
−
−
−
TMCSR3 ( タイマコントロール )
INT8R 使用する
場合のみ
−
−
−
−
−
−
−
−
CSL1 CSL0 MOD2 MOD1 MOD0 OUTE OUTL RELD INTE
−
−
−
−
−
0
−
−
−
UF CNTE TRG
−
−
−
− : 未使用ビット
◎ : 使用ビット
○ : 使用する端子に対応するビットに "1" を設定
● : 使用する端子に対応するビットに "0" を設定
0 : "0" を設定
1 : "1" を設定
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
331
第 17 章 DTP/ 外部割込み
17.4 DTP/ 外部割込みの動作説明
MB90990 シリーズ
● 設定の手順
DTP/ 外部割込みを使用する場合は , 次の手順で各レジスタの設定を行ってください。
1. 外部割込み入力として使用する端子と兼用する汎用入出力ポートを入力ポートに
設定する。
2. 使用する DTP/ 外部割込みチャネルに対応する外部割込み要求選択レジスタ (EISSR)
の設定を行ってください。
3. 使用する DTP/ 外部割込みチャネルに対応する割込み要求許可ビットを "0" に設定し
ます (ENIR1: EN)。
4. 使用する DTP/ 外部端子に対応する検出条件選択ビットで検出するエッジまたはレ
ベルを設定します (ELVR1: LA, LB)。
5. 使用する DTP/ 外部割込みチャネルに対応する割込み要求フラグビットを "0" に設定
します (EIRR1: ER)。
6. 対応する割込み要求許可ビットを "1" に設定します (ENIR1: EN)。ただし , 5 と 6 は
16 ビットデータによる同時書込みが可能です。
• DTP/ 外部割込みのレジスタの設定は外部割込み要求を禁止に (ENIR1: EN=0) 設定し
てから行います。
• DTP/ 外部割込み要求を許可 (ENIR1: EN=1) する場合は先に対応する DTP/ 外部割込
み要求フラグビットをクリア (EIRR1: ER=0) する必要があります。これは , レジス
タの設定時に誤って割込み要求が発生するのを防ぐためです。
● 外部割込み機能と DTP 機能の選択
外部割込み機能と DTP 機能のどちらが実行されるかは , 対応する割込み制御レジスタ
の EI2OS 許可ビット (ICR: ISE) の設定によって決定されます。
ISE ビットを "1" に設定した場合は拡張インテリジェント I/O サービス (EI2OS) が許可
されます。
ISE ビットと EN ビットを "0" に設定した場合は EI2OS は禁止され , 外部割込み機能が
実行されます。
<注意事項>
• 1 つの割込み制御レジスタに割り当てられている割込み要求は , すべて割込みレベル
(IL2 ∼ IL0) が同じになります。
• 1 つの割込み制御レジスタに複数の割込み要求が割り当てられている場合 , そのうちの
1 つで EI2OS を使用すると , ほかの割込み要求は使用できません。
• 未搭載側の端子をイネーブルにしますと , 誤動作の原因となりますので , DTP/ 外部割
込みを使用される場合は EISSR の設定を行ってから各レジスタの設定を実施してくだ
さい。
332
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 17 章 DTP/ 外部割込み
17.4 DTP/ 外部割込みの動作説明
■ DTP/ 外部割込み動作
DTP/ 外部割込みの制御ビットと割込み要因を , 表 17.4-1 に示します。
表 17.4-1 DTP/ 外部割込みの制御ビットと割込み要因
DTP/ 外部割込み
割込み要求フラグビット
EIRR1: ER15 ∼ ER8
割込み要求許可ビット
ENIR1: EN15 ∼ EN8
割込み要因
INT13, INT11, INT10, INT8 , INT9R, INT12R, INT14R, INT15R 端子への
有効エッジ / レベルの入力
DTP/ 外部割込みの割込み要求が割込みコントローラに対して出力された場合 , 割込み
制御レジスタの EI2OS 許可ビット (ICR: ISE) を "0" に設定している場合は割込み処理
が実行されます。どちらかを "1" に設定している場合は , 拡張インテリジェント I/O
サービス (EI2OS) が実行されます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
333
第 17 章 DTP/ 外部割込み
17.4 DTP/ 外部割込みの動作説明
MB90990 シリーズ
図 17.4-2 に DTP/ 外部割込みの動作を示します。
図 17.4-2 DTP/ 外部割込みの動作
DTP/外部割込み回路
ほかの要求 割込みコントローラ
ELVR1
ICR YY
EIRR1
CMP
ICR
XX
ENIR1
CPU
IL
CMP
割込み処理
ILM
要因
DTP/外部割込み
要求発生
割込みコントローラ
受付け判定
CPU割込み
受付け判定
割込み処理
マイクロプログラム
起動
EI2OS起動
メモリ 周辺データ転送
1
ICR:ISE
ディスクリプタ更新
0
外部割込みを起動
処理と割込みフラグクリア
ディスクリプタ
データカウンタ
=0
割込み処理
≠0
再設定または停止
外部割込みから復帰
334
DTP処理から復帰
FUJITSU MICROELECTRONICS LIMITED
EI2OS処理(DTP処理)
から復帰
CM44-10149-4
MB90990 シリーズ
第 17 章 DTP/ 外部割込み
17.4 DTP/ 外部割込みの動作説明
外部割込み機能
17.4.1
DTP/ 外部割込み機能には , DTP/ 外部割込み端子での信号 ( エッジまたはレベル ) の
検出により割込み要求を発生させる外部割込み機能があります。
■ 外部割込み機能
• DTP/ 外部割込み端子に検出レベル設定レジスタで設定した信号 ( エッジまたはレベ
ル ) が検出されると , DTP/ 外部割込み要因レジスタの割込み要求フラグビット
(EIRR1: ER) が "1" にセットされます。
• 割込み要求フラグビットが "1" にセットされた場合に DTP/ 外部割込み許可レジスタ
の割込み要求許可ビットを許可に設定した場合 (ENIR1: EN=1), 割込みコントローラ
に対して割込み要求の発生を通知します。
• 割込みコントローラで , ほかの割込み要求よりも割込み優先順位が高いと判定され
た場合は割込み要求が発生します。
• CPU ではコンディションコードレジスタの割込みレベルマスクビット (CCR: ILM)
と割込み要求のレベル (ICR: IL) が比較され , 割込み要求レベルが ILM より高く , 割
込み許可ビットが許可に設定されていた場合は (PS: CCR: I=1), 現在実行中の命令の
終了後に割込み処理が実行されて割込み処理に分岐します。
• 割込み処理で対応する DTP/ 外部割込み要求フラグビットに "0" を設定し , DTP/ 外
部割込み要求をクリアしてください。
<注意事項>
• DTP/ 外部割込み要求フラグビット (EIRR1: ER) は , 対応する DTP/ 外部割込み要求許
可ビット (ENIR1: EN) の設定にかかわらず , DTP/ 外部割込み起動要因が発生すると "1"
にセットされます。
• 割込み処理が起動された場合は , 起動要因となった DTP/ 外部割込み要求フラグビット
をクリアしてください。DTP/ 外部割込み要求フラグビットが "1" のままでは割込みか
ら復帰できません。クリアする場合は受け付けられている DTP/ 外部割込み要因以外の
フラグビットをクリアしないように注意してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
335
第 17 章 DTP/ 外部割込み
17.4 DTP/ 外部割込みの動作説明
MB90990 シリーズ
DTP 機能
17.4.2
DTP/ 外部割込みには , 外部の周辺装置からの信号を DTP/ 外部割込み端子から検出
し , 拡張インテリジェント I/O サービスを起動する DTP 機能があります。
■ DTP 機能
DTP/ 外部割込み機能の検出レベル設定レジスタで設定した信号レベルの検出により拡
張インテリジェント I/O サービス (EI2OS) を起動します。
• EI2OS の動作が許可 (ICR: ISE=1) されていると , 割込み要求が受け付けられた時点
で EI2OS を起動してデータ転送を開始します。
• 1 データの転送が終了するとディスクリプタの更新などが行われ , DTP/ 外部割込み
要求フラグビットがクリアされて , DTP/ 外部割込み端子からの次の要求に備えま
す。
• EI2OS による転送がすべて終了すると割込み処理に分岐します。
図 17.4-3 外部周辺装置とのインタフェース例 ( シングルチップモードで EI2OS を利用する場合 )
"H"レベル要求(ELVR1:LB8,LA8=01B)
INT8端子への入力
(DTP要因)
CPU内部動作
ディスクリプタ
選択,読出し
外部接続の
周辺装置
ディスクリプタ
更新
内部データバス
リード/
ライト動作*2
データ転送要求
DTP要因*1
INT
DTP/
割込み要求 CPU
外部割込み
(EI2OS)
回路
内部メモリ
*1:転送開始後,3マシンクロック以内に取り下げる
*2:拡張インテリジェントI/Oサービスが「周辺機能→内部メモリ転送」の場合
336
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 17 章 DTP/ 外部割込み
17.5 DTP/ 外部割込みの使用上の注意
MB90990 シリーズ
17.5
DTP/ 外部割込みの使用上の注意
DTP/ 外部割込みを使用する際は , 以下の点にご注意ください。
■ 使用上の注意
● DTP 機能を使用する場合の外部に接続する周辺装置の条件
• DTP 機能を使用する場合は , 転送が行われたことにより自動的にデータ転送要求を
クリアする周辺装置であることが必要です。
• 転送動作を開始してから 3 マシンクロック以内で転送要求信号をインアクティブに
してください。アクティブにしたままの場合 , DTP/ 外部割込みでは次の転送要求が
発生したものとして扱います。
● 外部割込みの入力極性について
• 検出レベル設定レジスタでエッジ検出を設定している場合は , データシート記載の
エッジを検出するための最小パルス幅が必要です。データシートを参照ください。
• 検出レベル設定レジスタでレベル検出を設定している場合は , 割込み要因となるレ
ベルが入力されると , DTP/ 外部割込み要因レジスタ内部の割込み要求フラグビット
(EIRR1:ER) が "1" にセットされ , 図 17.5-1 に示すように要因が保持されます。
割込み要求フラグビット (EIRR1:ER) に要因が保持された場合は , DTP/ 外部割込み要因
が取り下げられても , 割込み要求許可状態 (ENIR1: EN=1) であれば , 割込みコントロー
ラへの要求はアクティブのままです。割込みコントローラへの要求を取り下げるには
図 17.5-2 に示すように割込み要求フラグビット (EIRR:ER) をクリアする必要がありま
す。
図 17.5-1 レベル設定の場合の要因保持回路のクリア
DTP/
外部割込み要因
DTP/割込み入力
検出回路
割込み要求フラグビット
(EIRR1:ER)
許可ゲート
割込み
コントローラへ
(割込み要求)
クリアしない限り要因を保持し続ける
図 17.5-2 割込み要求許可の場合の DTP/ 外部割込み要因と割込み要求
DTP/外部割込み要因
("H"レベル検出の場合)
割込み要因の取下げ
割込みコントローラ
への割込み要求
割込み要求フラグビット(EIRR1:ER)のクリアによってインアクティブとなる
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
337
第 17 章 DTP/ 外部割込み
17.5 DTP/ 外部割込みの使用上の注意
MB90990 シリーズ
● 割込みに関する注意
• 外部割込み機能として使用している場合は DTP/ 外部割込み要求フラグビットが "1"
にセットされ (EIRR1: ER), DTP/ 外部割込み要求を許可に設定した状態 (ENIR1:
EN=1) では割込み処理から復帰できません。割込み処理内で必ず DTP/ 外部割込み
要求フラグビットを "0" に設定してください (EIRR1: ER)。
• 検出レベル設定レジスタでレベル検出を設定している場合は , 割込み要因となるレ
ベルが入力されたままであれば DTP/ 外部割込み要求フラグビットをクリアしても
(EIRR1: ER=0) すぐに再セットされます。必要に応じて DTP/ 外部割込み要求を禁止
するか (ENIR1: EN=0) 割込み要因そのものを解消してください。
338
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 17 章 DTP/ 外部割込み
17.6 DTP/ 外部割込み回路のプログラム例
MB90990 シリーズ
17.6
DTP/ 外部割込み回路のプログラム例
DTP/ 外部割込み機能のプログラム例を示します。
■ DTP/ 外部割込み機能のプログラム例
● 処理仕様
INT8 端子に入力されるパルスの立上りエッジを検出して外部割込みを発生します。
● コーディング例
ICR07 EQU
0000B7H
; 割込み制御レジスタ ICR07
DDR5
EQU
000015H
; ポート 5 方向レジスタ
ENIR1
EQU
0000CAH
; DTP/ 外部割込み許可レジスタ 1
EIRR1
EQU
0000CBH
; DTP/ 外部割込み要因レジスタ 1
ELVR1L EQU
0000CCH
; 検出レベル設定レジスタ 1: "L"
ELVR1H EQU
0000CDH
; 検出レベル設定レジスタ 1: "H"
ADER5
EQU
00000BH
; ポート 5 アナログ入力許可レジスタ
ER8
EQU
EIRR1:0
; INT8 割込み要求フラグビット
EN8
EQU
ENIR1:0
; INT8 割込み要求許可ビット
;--------- メインプログラム ------------------------------------CODE
CSEG
; スタックポインタ (SP) などは初期
START:
; 化済みとする
MOV
I:ADER5,#00000000B ; ポート 5 のアナログ入力を禁止に設定
MOV
I:DDR5,#00000000B
; DDR5 を入力ポートに設定
AND
CCR,#0BFH
; 割込み禁止
MOV
I:ICR07,#00H
; 割込みレベル 0( 最強 )
CLRB
I:EN8
; ENIR1 で INT8 を禁止
MOV
I:ELVR1L,#00000010B; INT8 は , 立上りエッジ選択
CLRB
I:ER0
; EIRR1 で INT8 の割込み要求フラグ
; クリア
SETB
I:EN8
; ENIR1 で INT8 の割込み要求許可
MOV
ILM,#07H
; PS 内 ILM をレベル 7 に設定
OR
CCR,#40H
; 割込み許可
LOOP:
・
ユーザ処理
・
BRA
LOOP
;--------- 割込みプログラム ------------------------------------WARI:
CLRB
I:ER8
; 割込み要求フラグをクリア
・
ユーザ処理
・
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
339
第 17 章 DTP/ 外部割込み
17.6 DTP/ 外部割込み回路のプログラム例
CODE
MB90990 シリーズ
; 割込み処理からの復帰
RETI
ENDS
;--------- ベクタ設定 -----------------------------------------VECT
CSEG ABS=0FFH
VECT
; 割込み番号 #26(1AH) にベクタを設定
ORG
00FF94H
DSL
WARI
ORG
DSL
00FFDCH
START
; リセットベクタ設定
DB
ENDS
END
00H
; シングルチップモードに設定
START
■ DTP 機能のプログラム例
● 処理仕様
• INT8 端子に入力される信号の "H" レベルを検出して拡張インテリジェント I/O サー
ビス (EI2OS) の ch.0 を起動します。
• DTP 処理 (EI2OS) で RAM 上のデータをポート 5 に出力します。
● コーディング例
ICR07 EQU
0000B7H
; DTP/ 外部割込み制御レジスタ
DDR6
EQU
000016H
; ポート 6 方向レジスタ
DDR5
EQU
000015H
; ポート 5 方向レジスタ
ENIR1
EQU
0000CAH
; DTP/ 外部割込み許可レジスタ 1
EIRR1
EQU
0000CBH
; DTP/ 外部割込み要因レジスタ 1
ELVR1L EQU
0000CCH
; 検出レベル設定レジスタ 1: "L"
ELVR1H EQU
0000CDH
; 検出レベル設定レジスタ 1: "H"
ADER5
EQU
00000BH
; ポート 5 アナログ入力許可レジスタ
ADER6
EQU
00000CH
; ポート 6 アナログ入力許可レジスタ
ER1
EQU
EIRR:0
; INT8 割込み要求フラグビット
EN1
;
EQU
ENIR:0
; INT8 割込み要求許可ビット
BAPL
EQU
000100H
; バッファアドレスポインタ下位
BAPM
EQU
000101H
; バッファアドレスポインタ中位
BAPH
EQU
000102H
; バッファアドレスポインタ上位
ISCS
EQU
000103H
; EI2OS ステータスレジスタ
IOAL
EQU
000104H
; I/O アドレスレジスタ下位
IOAH
EQU
000105H
; I/O アドレスレジスタ上位
DCTL
EQU
000106H
; データカウンタ下位
DCTH
;
EQU
000107H
; データカウンタ上位
;--------- メインプログラム ------------------------------------CODE
CSEG
; スタックポインタ (SP) などは初期
START:
; 化済みとする
340
MOV
I:ADER5,#00000000B ; ポート 5 のアナログ入力を禁止に設定
MOV
I:ADER6,#00000000B ; ポート 6 のアナログ入力を禁止に設定
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 17 章 DTP/ 外部割込み
17.6 DTP/ 外部割込み回路のプログラム例
MB90990 シリーズ
MOV
I:DDR6,#11111111B
; DDR6 で出力ポートに設定
MOV
I:DDR5,#00000000B
; DDR5 で入力ポートに設定
AND
CCR,#0BFH
; 割込み禁止
MOV
I:ICR07,#08H
; 割込みレベル 0( 最強 ) EI2OS
; ch.0
; データバンクレジスタ (DTB) = 00H
MOV
BAPL,#00H
; 出力データの格納先アドレスの設定
MOV
BAPM,#06H
; (600H ∼ 60AH を使用 )
MOV
BAPH,#00H
MOV
ISCS,#12H
; バイト転送 , バッファアドレス+ 1,
; I/O アドレス固定 ,
; メモリ→ I/O へ転送
MOV
IOAL,#00H
; 転送先アドレスポインタとして
MOV
IOAH,#00H
; ポート 0 を設定
MOV
MOV
DCTL,#0AH
DCTH,#00H
; 転送回数を 10 回に設定
CLRB
I:EN8
; ENIR1 で INT8 を禁止
MOV
I:ELVR1L,#00000001B; INT8 は , "H" レベル検出を設定
CLRB
I:ER8
;
; EIRR1 で INT8 の割込み要求フラグ
; クリア
SETB
I:EN8
; ENIR1 で INT8 の割込み要求許可
MOV
ILM,#07H
; PS 内 ILM をレベル 7 に設定
OR
CCR,#40H
; 割込み許可
LOOP:
・
ユーザ処理
・
BRA
LOOP
;--------- 割込みプログラム ------------------------------------WARI:
CLRB
I:ER8
; INT8 割込み要求フラグをクリア
・
ユーザ処理
・
CODE
; 割込み処理からの復帰
RETI
ENDS
;--------- ベクタ設定 -----------------------------------------VECT
CSEG ABS=0FFH
VECT
CM44-10149-4
; 割込み番号 #26(1AH) にベクタを設定
ORG
00FF94H
DSL
WARI
ORG
DSL
00FFDCH
START
; リセットベクタ設定
00H
; シングルチップモードに設定
DB
ENDS
END
START
FUJITSU MICROELECTRONICS LIMITED
341
第 17 章 DTP/ 外部割込み
17.6 DTP/ 外部割込み回路のプログラム例
342
MB90990 シリーズ
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 18 章
8/10 ビット A/D コンバータ
8/10 ビット A/D コンバータの機能と動作について
説明します。
18.1 8/10 ビット A/D コンバータの概要
18.2 8/10 ビット A/D コンバータのブロックダイヤグラム
18.3 8/10 ビット A/D コンバータの構成
18.4 8/10 ビット A/D コンバータの割込み
18.5 8/10 ビット A/D コンバータの動作説明
18.6 8/10 ビット A/D コンバータ使用上の注意
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
343
第 18 章 8/10 ビット A/D コンバータ
18.1 8/10 ビット A/D コンバータの概要
18.1
MB90990 シリーズ
8/10 ビット A/D コンバータの概要
8/10 ビット A/D コンバータは , RC 型逐次比較変換方式によってアナログ入力電圧
を 8 ビットまたは 10 ビットのデジタル値に変換します。
• 入力信号は , 最大 16 チャネルのアナログ入力端子から選択します。
• 起動トリガは , ソフトウェアトリガ , 外部トリガから選択できます。
■ 8/10 ビット A/D コンバータの機能
アナログ入力端子に入力されたアナログ電圧 ( 入力電圧 ) を 8 ビットまたは 10 ビット
のデジタル値に変換します (A/D 変換 ) 。
8/10 ビット A/D コンバータには以下の機能があります。
• A/D 変換時間は , サンプリング時間を含めて 1 チャネルで最小 1.78 μs *です。
• サンプリング時間は , 1 チャネルで最小 0.75 μs *です。
• 変換方式は , サンプル & ホールド回路付き RC 型逐次変換比較方式です。
• 8 ビットまたは 10 ビットの分解能を設定できます。
• アナログ入力端子は , 最大 16 チャネルまで使用できます。
• A/D 変換結果を A/D データレジスタに格納することにより割込み要求を発生できま
す。
• 割込み要求が発生した場合に EI2OS を起動できます。
• 起動トリガは , ソフトウェア , 外部トリガ ( 立下りエッジ ) から選択できます。
* : マシンクロック周波数 32 MHz, AVCC ≧ 4.5 V で動作している場合
344
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 18 章 8/10 ビット A/D コンバータ
18.1 8/10 ビット A/D コンバータの概要
MB90990 シリーズ
■ 8/10 ビット A/D コンバータの変換モード
8/10 ビット A/D コンバータの変換モードには , 次の種類があります。
表 18.1-1 8/10 ビット A/D コンバータの変換モード
CM44-10149-4
変換モード
内 容
単発変換モード
開始チャネルから終了チャネルまで順次 A/D 変換を行います。
終了チャネルの A/D 変換が終了すると , A/D 変換機能を停止し
ます。
連続変換モード
開始チャネルから終了チャネルまで順次 A/D 変換を行います。
終了チャネルの A/D 変換が終了すると , 開始チャネルに戻って
A/D 変換動作を継続します。
停止変換モード
1 チャネルごとに停止しながら A/D 変換を行います。終了チャ
ネルの A/D 変換が終了すると , 開始チャネルに戻って A/D 変換
と停止を繰り返します。
FUJITSU MICROELECTRONICS LIMITED
345
第 18 章 8/10 ビット A/D コンバータ
18.2 8/10 ビット A/D コンバータのブロックダイヤグラム
MB90990 シリーズ
8/10 ビット A/D コンバータのブロックダイヤグラム
18.2
8/10 ビット A/D コンバータは , 以下のブロックで構成されています。
■ 8/10 ビット A/D コンバータのブロックダイヤグラム
図 18.2-1 8/10 ビット A/D コンバータのブロックダイヤグラム
割込み
A/D制御
要求出力
ステータス
レジスタ
BUSY INT INTE PAUS STS1 STS0 STRT ― MD1 MD0 S10 ―
(ADCS0/
ADCS1)
2
ADTG
端子
起動
セレクタ
―
―
―
予約
ソフトウェア
起動
2
φ
AN0~AN7
コンパレータ
コントロール回路
アナログ
チャネル
セレクタ
AVR
AVcc
AVss
D/Aコンバータ
3
3
ADC_END(変換結果ライト)
AN15~AN8
内部データバス
サンプル&
ホールド回路
バッファレジスタ
変換結果ライト
制御回路
OE
A/Dデータ
レジスタ
D9 D8 D7 D6 D5 D4 D3 D2 D1 D0
(ADCR0/
ADCR1)
デコーダ
8
A/Dセッティング
レジスタ
ST2 ST1 ST0 CT2 CT1 CT0 予約 ANS3 ANS2 ANS1 ANS0 予約 ANE3 ANE2 ANE1 ANE0
(ADSR0/
ADSR1)
- :未定義ビット
予約:予約ビット
φ :マシンクロック
346
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 18 章 8/10 ビット A/D コンバータ
18.2 8/10 ビット A/D コンバータのブロックダイヤグラム
● ブロックダイヤグラム中の端子などの詳細
8/10 ビット A/D コンバータの実際の端子名および割込み要求番号を表 18.2-1 に示しま
す。
表 18.2-1 ブロックダイヤグラムの端子および割込み要求番号
ブロックダイヤグラム中の端子名 / 割込み要求番号
ADTG
実際の端子名 / 割込み要求番号
トリガ入力端子
P80/ADTG/INT12R
アナログ入力端子 ch.0 ∼ ch.7
P60/AN0 ∼ P64/AN4
P65/AN5/PPGA(B)
P66/AN6/PPGC(D)
P67/AN7/PPGE(F)
AN8 ∼ AN15
アナログ入力端子 ch.8 ∼ ch.15
P50/AN8 /SIN2
P51/AN9 /SOT2
P52/AN10 /SCK2
P53/AN11/TIN3
P54/AN12/TOT3/INT8
P55/AN13/INT10
P56/AN14/INT11/DA0
P57/AN15/INT13
AVR
Vref+ 入力端子
AVR
AVCC
VCC 入力端子
AVCC
AVSS
VSS 入力端子
AVSS
割込み要求出力
割込み要求出力
#29 (1DH)
AN0 ∼ AN7
● A/D 制御ステータスレジスタ (ADCS)
ソフトウェアによる A/D 変換機能の起動 , A/D 変換機能の起動トリガの選択 , 変換モー
ドの選択 , 割込み要求の許可または禁止 , 割込み要求フラグの確認とクリア , A/D 変換
動作の一時停止および変換中の状態確認 , 分解能の選択を行います。
● バッファレジスタ
変換結果を一時的に格納します
● A/D データレジスタ (ADCR)
A/D 変換結果はいったんバッファレジスタに格納され , A/D 変換が終了して変換結果が
確定した時点で本レジスタに格納されます。本レジスタから A/D 変換結果をリードす
ることができます。
● A/D セッティングレジスタ (ADSR)
A/D 変換の開始チャネルおよび終了チャネルの設定 , A/D 変換のコンペア時間 , サンプ
リング時間の設定を行います。
● 起動セレクタ
A/D 変換を起動するトリガを選択します。起動トリガには , 内部タイマ出力または外部
端子入力を設定できます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
347
第 18 章 8/10 ビット A/D コンバータ
18.2 8/10 ビット A/D コンバータのブロックダイヤグラム
MB90990 シリーズ
● デコーダ
A/D セッティングレジスタの A/D 変換開始チャネル選択ビット (ADSR: ANS3 ∼ ANS0)
および A/D 変換終了チャネル選択ビット (ADSR: ANE3 ∼ ANE0) の設定から A/D 変換
に使用するアナログ入力端子を選択します。
● アナログチャネルセレクタ
デコーダからの信号を受けて , 16 チャネルのアナログ入力端子から A/D 変換に使用す
る端子を選択します。
● サンプル & ホールド回路
アナログチャネルセレクタで選択された入力電圧を保持します。A/D 変換を開始した
直後の入力電圧を保持することによって, A/D変換中の入力電圧の変動の影響を受けず
に変換できます。
● D/A コンバータ
サンプル & ホールド回路で保持された入力電圧と比較するための基準電圧を発生しま
す。
● コンパレータ
サンプル & ホールド回路で保持された入力電圧と , D/A コンバータの出力電圧を比較
して電圧の大小を判定します。
● コントロール回路
コンパレータからの大小信号を受けて A/D 変換値を決定します。変換結果が確定する
と , 変換結果ライト制御回路を通じて , 変換結果を A/D データレジスタに格納します。
割込み要求が許可されている場合は割込みが発生します。
● 変換結果ライト制御回路
A/D変換が完了し変換結果が確定すると, バッファレジスタに一時的に格納された変換
結果データを A/D データレジスタに転送します。
348
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
MB90990 シリーズ
18.3
8/10 ビット A/D コンバータの構成
A/D コンバータの端子 , レジスタ , 割込み要因を示します。
■ 8/10 ビット A/D コンバータの端子
8/10 ビット A/D コンバータの端子は汎用入出力ポートと兼用です。端子の機能 , 8/10
ビット A/D コンバータを使用する場合の設定を表 18.3-1 に示します。
表 18.3-1 8/10 ビット A/D コンバータの端子 (1 / 2)
機能名
端子名
端子機能
トリガ入力
P80/ADTG/
INT12R
汎用入出力ポート /
外部トリガ入力 /
外部割込み入力
ch.0
P60/AN0
ch.1
P61/AN1
ch.2
P62/AN2
ch.3
P63/AN3
ch.4
P64/AN4
ch.5
P65/AN5/
PPGA(B)
ch.6
P66/AN6/
PPGC(D)
ch.7
P67/AN7/
PPGE(F)
CM44-10149-4
8/10 ビット A/D コンバータを
使用した場合の設定
ポート方向レジスタ DDR8 で
入力ポートに設定
汎用入出力ポート /
アナログ入力
アナログ信号の入力許可
(ADER6: ADE7 ∼ ADE0 の
対応するビットを "1" に設定 )
汎用入出力ポート /
アナログ入力 /PPG 出力
FUJITSU MICROELECTRONICS LIMITED
349
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
MB90990 シリーズ
表 18.3-1 8/10 ビット A/D コンバータの端子 (2 / 2)
機能名
端子名
ch.8
P50/AN8/
SIN2
ch.9
P51/AN9/
SOT2
ch.10
P52/AN10/
SCK2
ch.11
P53/AN11/
TIN3
ch.12
P54/AN12/
TOT3/INT8
ch.13
P55/AN13/
INT10
ch.14
P56/AN14/
INT11
ch.15
P57/AN15/
INT13
350
端子機能
8/10 ビット A/D コンバータを
使用した場合の設定
汎用入出力ポート /
アナログ入力 /
UART2 入出力
汎用入出力ポート /
アナログ入力 /
リロードタイマ用
イベント入力
汎用入出力ポート /
アナログ入力 /
リロードタイマ用出力 /
外部割込み入力
アナログ信号の入力許可
(ADER5: ADE15 ∼ ADE8 の
対応するビットを "1" に設定 )
汎用入出力ポート /
アナログ入力 /
外部割込み入力
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
MB90990 シリーズ
■ 8/10 ビット A/D コンバータのレジスタと初期値の一覧
図 18.3-1 8/10 ビット A/D コンバータのレジスタと初期値の一覧
A/D制御ステータスレジスタ1 ADCS1
15
14
13
bit
アドレス:000069H
BUSY INT
R/W
11
10
9
R/W
R/W
R/W
R/W
R/W
5
4
3
2
0
R/W
R/W
R/W
14
13
12
11
10
9
8
D9
R
D8
R
5
4
3
2
1
0
D7
D6
D5
D4
D3
D2
D1
D0
R
R
R
R
R
R
R
R
ST2
R/W
12
ST0
R/W
A/Dセッティングレジスタ0 ADSR0
bit
7
6
5
11
10
CT2 CT1
R/W R/W
4
3
9
8
1
0
ANS2 ANS1 ANS0 予約 ANE3 ANE2 ANE1 ANE0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
00011110 B
11111100 B
初期値
00000000B
初期値
CT0 予約 ANS3
R/W R/W R/W
2
初期値
初期値
6
ST1
R/W
R/W
R
W
―
1
R/W
A/Dセッティングレジスタ1 ADSR1
14
13
bit 15
アドレス:00006CH
W
予約
ADCR0
7
bit
アドレス:00006DH
00000001B
S10
アドレス:00006BH
アドレス:00006AH
初期値
MD1 MD0
データレジスタ1 ADCR1
bit 15
データレジスタ0
8
INTE PAUS STS1 STS0 STRT
A/D制御ステータスレジスタ0 ADCS0
6
7
bit
アドレス:000068H
12
00000000B
初期値
00000000B
R/W
:リード/ライト可能
:リードオンリ
:ライトオンリ
:未定義ビット
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
351
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
18.3.1
MB90990 シリーズ
A/D 制御ステータスレジスタ 1 (ADCS1)
A/D 制御ステータスレジスタ 1 (ADCS1) では , 次の設定ができます。
• ソフトウェアによる A/D 変換機能の起動
• A/D 変換機能の起動トリガの選択
• A/D データレジスタへの A/D 変換結果格納による割込み要求の許可または禁止
• A/D データレジスタへの A/D 変換結果格納による割込み要求フラグの確認と
クリア
• A/D 変換動作の一時停止および変換中の状態確認
■ A/D 制御ステータスレジスタ 1(ADCS1)
図 18.3-2 A/D 制御ステータスレジスタ 1 (ADCS1)
bit 15
11
10
9
14 13 12
アドレス
BUSY INT INTE PAUS STS1 STS0 STRT
000069H
R/W R/W
R/W R/W R/W R/W
W
8
初期値
-
00000001B
bit8
-
未定義ビット
読出し値は常に"1"です
bit9
STRT
0
1
A/D変換ソフトウェア起動ビット
A/D変換機能を起動しない
A/D変換機能を起動する
bit11 bit10
A/D変換起動トリガ選択ビット
STS1 STS0
0
0 ソフトウェア起動
0
1 ソフトウェア起動または外部トリガ起動
1
0 ソフトウェア起動
1
1 ソフトウェア起動,外部トリガ起動
bit12
一時停止フラグビット
PAUS
(EI2OSが使用されている場合にのみ有効)
読出し時
0
1
書込み時
変換は一時停止していない
"0"にクリア
変換は一時停止している
影響なし
bit13
割込み要求許可ビット
INTE
割込み要求の禁止
0
割込み要求の許可
1
bit14
INT
0
1
割込み要求フラグビット
読出し時
A/D変換未終了
書込み時
"0"にクリア
A/D変換終了
影響なし
bit15
BUSY
R/W
W
―
352
:リード/ライト可能
:ライトオンリ
:未定義
:初期値
0
1
A/D変換動作中フラグビット
読出し時
書込み時
A/D変換終了(非起動状態) A/D変換機能の強制終了
A/D変換動作中
FUJITSU MICROELECTRONICS LIMITED
影響なし
CM44-10149-4
MB90990 シリーズ
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
表 18.3-2 A/D 制御ステータスレジスタ 1 (ADCS1) の機能 (1 / 3)
ビット名
bit15
bit14
BUSY:
A/D 変換動作中
フラグビット
INT:
割込み要求フラグ
ビット
機 能
8/10 ビット A/D コンバータを強制終了します。読み
出した場合は , 8/10 ビット A/D コンバータが動作中
か停止中かを示します。
"0" に設定した場合 :
8/10 ビット A/D コンバータを強制終了します。
"1" に設定した場合 :
影響しません。
読み出した場合 :
8/10 ビット A/D コンバータが動作中であれば "1" が ,
停止中であれば "0" が読み出されます。停止変換モー
ドの " 停止状態 " では "1" が読み出されます。
( 注意事項 )
• リードモディファイライト (RMW) 系命令では "1"
が読み出されます。
• 単発変換モードでは A/D 変換終了でクリアされま
す。
• 連続変換モード , 停止変換モードでは "0" 書込みで
停止するまでクリアされません。
• A/D コンバータの強制終了 (BUSY=0) と起動 ( ソ
フト (STRT=1) / 外部トリガ / タイマのいずれも )
が同時に発生した場合 , 強制終了が優先されます。
割込み要求が発生したことを示します。
• A/D 変換が終了して , A/D 変換結果が A/D データ
レジスタ (ADCR) に格納されると INT ビットに
"1" がセットされます。
• 割込み要求を許可した場合に (INTE=1), 割込み要
求フラグビットがセットされると (INT=1) 割込み
要求が発生します。
• 本ビットは "0" を書き込んだ場合にクリアされま
す。また , EI2OS による A/D 変換結果データの転
送が完了すると自動的にクリアされます。
• もし "1" セットと "0" 書込みが同時に発生した場
合は "0" 書込みが優先されます。
"0" に設定した場合 : クリアされます。
"1" に設定した場合 : 影響しません。
( 注意事項 )
リードモディファイライト (RMW) 系命令では
"1" が読み出されます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
353
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
MB90990 シリーズ
表 18.3-2 A/D 制御ステータスレジスタ 1 (ADCS1) の機能 (2 / 3)
ビット名
bit13
bit12
INTE:
割込み要求許可
ビット
PAUS:
一時停止フラグ
ビット
機 能
割込み要求の出力を許可または禁止します。
割込み要求を許可した場合に (INTE=1) 割込み要求フ
ラグビットがセットされると (INT=1), 割込み要求が
発生します。
( 注意事項 )
EI2OS で A/D 変換結果を転送する場合は , 必ず
"1" に設定してください。
PAUS ビットは A/D 変換データ保護機能が働いたこと
を示します。PAUS ビットは割込み要求の出力を許可
(ADCS:INTE=1) に設定している場合にのみ有効です。
A/D 変換データ保護機能が働いた場合 :
"1" にセットされます。
書込み時は "1" でセットされ "0" でクリアされます。
• 割込み要求の出力を許可 (ADCS:INTE=1) に設定し
て A/D 変換を実行した場合 , A/D 変換が 1 回終了
すると割込み要求フラグビット (ADCS:INT) が
セットされると同時に割込み要求が発生します。
割込み要求フラグビット (ADCS:INT) をクリアし
ないまま次の A/D 変換が終了した場合 , 前データ
が上書き破壊されることを防ぐために A/D 変換動
作が一時停止します (A/D 変換データ保護機能 )。
A/D 変換動作が一時停止すると PAUS ビットが "1"
にセットされます。
• 割込み要求フラグビット (ADCS:INT) がクリアさ
れると , 8/10 ビット A/D コンバータは一時停止状
態を解除し , A/D 変換動作を再開します。
• 割込み要求フラグビット (ADCS:INT) は "0" を書き
込むことでクリアされます。また , EI2OS で A/D 変
換結果を A/D データレジスタから転送する設定の
場合は , A/D 変換結果の転送が完了した時点で割
込み要求フラグビット (ADCS:INT) は EI2OS に
よってクリアされます。
( 注意事項 )
• A/D 変換データ保護機能に関しては「18.5.5 A/D
変換データ保護機能」を参照してください。
• 一時停止状態が解除されても PAUS ビットは自動
的にはクリアされません。PAUS ビットをクリア
するには "0" を書き込んでください。
354
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
表 18.3-2 A/D 制御ステータスレジスタ 1 (ADCS1) の機能 (3 / 3)
ビット名
機 能
8/10 ビット A/D コンバータを起動するトリガ ( 起動
トリガ ) を選択します。
• "00B" : ソフトウェア起動
• "01B" : 外部端子トリガ / ソフトウェア起動
• "10B" : ソフトウェア起動
• "11B" : 外部端子トリガ / ソフトウェア起動
bit11,
bit10
STS1, STS0:
A/D 変換起動
トリガ選択ビット
( 注意事項 )
• 外部端子トリガが選択された場合 (01B,11B),ADTG
端子に立下りエッジが検出されると A/D 変換を開
始します。
• 起動トリガを複数に設定した場合 (STS1, STS0=
00B 以外 ), 8/10 ビット A/D コンバータは最初に発
生した起動トリガで起動します。
• 起動トリガの設定を変更する場合は , 起動トリガ
を発生させる周辺機能の動作が停止している状態
( トリガがインアクティブの状態 ) で設定してくだ
さい。
CM44-10149-4
bit9
STRT:
A/D 変換
ソフトウェア
起動ビット
bit8
未定義ビット
8/10 ビット A/D コンバータをソフトウェアで起動し
ます。
"1" に設定した場合 :
8/10 ビット A/D コンバータが起動します。
• 単発変換モード 1(MD1/MD0=00) 以外は , STRT
ビットによる再起動はかかりません。
"0" に設定した場合 : 無効です。変化しません。
( 注意事項 )
• 読み出した場合は常に "0" が読めます。
評価用品は , RMW 系命令では "0" が読み出されま
すが , RMW 系以外のリード系命令では "1" が読み
出されます。
• 8/10 ビット A/D コンバータの強制終了 (BUSY=0)
とソフトウェア起動 (STRT=1) を同時に書き込ん
だ場合 , 強制終了が優先されます。
• 読出し時 : 常に "1" が読み出されます。
• 書込み時 : 影響しません。
FUJITSU MICROELECTRONICS LIMITED
355
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
MB90990 シリーズ
A/D 制御ステータスレジスタ 0 (ADCS0)
18.3.2
A/D 制御ステータスレジスタ 0 (ADCS0) では , 次の設定ができます。
• A/D 変換モードの選択
• A/D 変換の開始チャネルおよび終了チャネルの選択
■ A/D 制御ステータスレジスタ 0 (ADCS0)
図 18.3-3 A/D 制御ステータスレジスタ 0 (ADCS0)
bit
アドレス
000068H
7
6
5
4
3
2
1
0
MD1 MD0 S10
-
-
-
-
予約
R/W R/W
-
-
-
-
R/W
R/W
初期値
00011110B
bit0
予約
0
予約ビット
常に"0"を書き込んでください
bit5
S10
0
1
R/W
-
: リード/ライト可能
: 未定義ビット
: 初期値
356
分解能選択ビット
A/D変換の分解能を10ビットに設定します
A/D変換の分解能を8ビットに設定します
bit7 bit6
MD1 MD0
0
0
1
0
0
1
1
1
A/D変換モード選択ビット
単発変換モード1
単発変換モード2
連続変換モード
停止変換モード
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
表 18.3-3 A/D 制御ステータスレジスタ 0 (ADCS0) の機能 (1 / 2)
ビット名
bit7,
bit6
MD1, MD0:
A/D 変換モード
選択ビット
機 能
A/D 変換の変換モードを設定します。
各モードの使用方法の詳細につきましては「18.5 8/10
ビット A/D コンバータの動作説明 」を参照してくださ
い。
単発変換モード 1 および単発変換モード 2 の場合 : • 開始チャネル (ADSR: ANS3 ∼ ANS0) から終了チャネ
ル (ADSR: ANE3 ∼ ANE0) までのアナログ入力を連続
して A/D 変換していきます。
• 終了チャネルの A/D 変換が終了すると A/D 変換動作
を停止します。
• 単発変換モード 1, 単発変換モード 2 の違いについては
「18.5 8/10 ビット A/D コンバータの動作説明」を参照
してください。
• 単発変換モード 1 は , A/D 変換中の再起動が可能です。
ただし , A/D 変換データの保護機能が働いて A/D が一
時停止状態では再起動は無視されます。
連続変換モードの場合 : • 開始チャネル (ADSR: ANS3 ∼ ANS0) から終了チャネ
ル (ADSR: ANE3 ∼ ANE0) までのアナログ入力を連続
して A/D 変換していきます。 • 終了チャネルの A/D 変換が終了すると , 開始チャネル
のアナログ入力に戻って A/D 変換を継続して行いま
す。
停止変換モードの場合 : • 開始チャネル (ADSR: ANS3 ∼ ANS0) から A/D 変換が
開始されます。1 チャネルの A/D 変換が終了すると ,
A/D 変換動作は停止します。A/D 変換動作が停止して
いる間に起動トリガを入力すると , 次のチャネルの A/
D 変換が行われます。
• 終了チャネルの A/D 変換が終了すると , A/D 変換動作
は停止します。A/D 変換動作が停止している間に起動
トリガを入力すると , 開始チャネルのアナログ入力に
戻って A/D 変換を継続します。
( 注意事項 )
変換モードを変更する場合は , A/D 変換を開始する前
の停止状態で行ってください。
単発変換モード 1 時 , A/D 変換終了と A/D 再起動が同
時に起きた場合 , A/D 変換中の動作は中止し再起動し
ます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
357
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
MB90990 シリーズ
表 18.3-3 A/D 制御ステータスレジスタ 0 (ADCS0) の機能 (2 / 2)
ビット名
bit5
S10:
分解能選択
ビット
機 能
A/D 変換の分解能を設定します。
"0" に設定した場合 :
A/D 変換の分解能を A/D 変換データビット D9 ∼ D0 まで
の 10 ビットに設定します。
"1" に設定した場合 :
A/D 変換の分解能を A/D 変換データビット D7 ∼ D0 まで
の 8 ビットに設定します。
( 注意事項 )
S10 ビットを変更する場合は , A/D 変換を開始する前
の停止状態で行ってください。A/D 変換開始後に S10
ビットを変更すると , A/D 変換データビット (D9 ∼
D0) に格納された変換結果は無効になります。
358
bit4
∼
bit1
未定義ビット
読出しのみ動作します。初期値は "1" になります。
bit0
予約ビット
常に "0" を書き込んでください。
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
MB90990 シリーズ
A/D データレジスタ (ADCR0/ADCR1)
18.3.3
データレジスタ (ADCR0, ADCR1) は , 変換の結果として生成されたデジタル値を記
憶するために使用されます。ADCR0 は下位 8 ビットを記憶し , ADCR1 は変換結果
の最上位の 2 ビットを記憶します。本レジスタは変換が完了するたびに書き換えら
れ , 通常は最後の変換値が記憶されています。
■ A/D データレジスタ (ADCR0/ADCR1)
図 18.3-4 A/D データレジスタ (ADCR0/ADCR1)
A/Dデータレジスタ上位
bit
アドレス
ADCR1 00006BH
A/Dデータレジスタ下位
bit
アドレス
ADCR0 00006AH
15
14
13
12
11
10
9
8
-
-
-
-
-
-
D9
D8
R
R
初期値
7
6
5
4
3
2
1
0
D7
D6
D5
D4
D3
D2
D1
D0
R
R
R
R
R
R
R
R
11111100B
初期値
00000000B
R :リードオンリ
―:未定義ビット
表 18.3-4 A/D データレジスタ (ADCR0/ADCR1) の機能
ビット名
bit15
∼
bit10
bit9
∼
bit0
未定義ビット
D9 ∼ D0:
A/D 変換データ
ビット
機 能
読出し時は常に "1" が読み出されます。
A/D 変換の結果を格納します。
分解能を 10 ビットに設定した場合 (S10=0) :
変換データは D9 ∼ D0 までの 10 ビットに格納され
ます。
分解能を 8 ビットに設定した場合 (S10=1) :
変換データは D7 ∼ D0 までの 8 ビットに格納され
ます。このとき , D9, D8 のリード値は "1" となりま
す。
( 注意事項 )
• 本レジスタへの書込みは禁止です。
• A/D 変換データビット (D9 ∼ D0) に格納された
変換結果を読み出す場合は, ワード命令 (MOVW)
を使用してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
359
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
18.3.4
MB90990 シリーズ
A/D セッティングレジスタ (ADSR0/ADSR1)
A/D セッティングレジスタ (ADSR0/ADSR1) では次の設定ができます。
• A/D 変換時間 ( サンプリング時間 , コンペア時間 ) の設定
• サンプリングチャネル ( 開始チャネル , 終了チャネル ) の設定
• 現在のサンプリングチャネルを表示
■ A/D セッティングレジスタ (ADSR0/ADSR1)
図 18.3-5 A/D セッティングレジスタ (ADSR0/ADSR1)
bit 15
9
7
8
6
14
13
12
11
10
アドレス ST2
00006CH
ST1
ST0
CT2
CT1
CT0 予約 ANS3 ANS2 ANS1 ANS0 予約 ANE3 ANE2 ANE1 ANE0
R/W
R/W
R/W
R/W
R/W R/W
R/W R/W R/W
5
R/W
4
R/W
3
2
1
R/W R/W R/W
0
初期値
0000000000000000B
R/W R/W
bit3~bit0
A/D変換終了チャネル選択ビット
ANE3~ANE0
"1111B"~"0000B"
(初期値:0000B)
AN15端子*1~AN0端子
bit4
予約ビット
予約
このビットへは必ず"0"を書き込んでください。
読出し値は常に"0"となります。
0
bit8~bit5
A/D変換開始チャネル選択ビット
ANS3~ANS0
書込み
(非起動状態)
"1111B"~"0000B"
(初期値:0000B)
AN15端子 ~
AN0端子
変換中の
読出し
停止変換モード
で一時停止中の
読出し
変換中の
直前に変換した
チャネル番号 チャネル番号
bit9
予約ビット
予約
このビットへは必ず"0"を書き込んでください。
0
読出し値は常に"0"となります。
bit12 bit11 bit10
コンペア時間
選択ビット
CT2
CT1
CT0
0
0
0
0
0
1
0
1
0
22/φ
33/φ
0
1
1
1
1
1
0
0
1
0
1
0
66/φ
88/φ
1
1
1
44/φ
132/φ
176/φ
264/φ
bit15 bit14 bit13
R/W
φ
:リード/ライト可能
:マシンクロック
:初期値
CT2
CT1
CT0
0
0
0
0
0
0
1
1
0
0
1
1
0
1
0
1
1
0
1
1
0
1
1
1
サンプリング時間
選択ビット
4/φ
6/φ
8/φ
12/φ
24/φ
36/φ
48/φ
128/φ
φ:内部動作周波数
16MHz
32MHz
24MHz
0.69μs *2 0.92μs *2 1.38μs*2
1.03μs*2 1.38μs *2 2.06μs*2
1.38μs*2 1.83μs *2 2.75μs
4.13μs
2.06μs *2 2.75μs
5.50μs
2.75μs
3.67μs
8.25μs
4.13μs
5.50μs
5.50μs
7.33μs
11.0μs
8.25μs
11.0μs
16.5μs
φ:内部動作周波数
32MHz
0.13μs*2
0.19μs*2
0.25μs*2
0.38μs*2
0.75μs*2
1.13μs*2
1.50μs
4.00μs
16MHz
24MHz
0.17μs *2 0.25μs*2
0.25μs *2 0.38μs *2
0.33μs *2 0.50μs*2
0.50μs *2 0.75μs*2
1.00μs *2 1.50μs
2.25μs
1.50μs
3.00μs
2.00μs
5.33μs
8.00μs
*1:AN15~AN0が設定可能です。
*2:AVcc<4.5V時は設定しないで下さい。変換精度の保証ができません。
360
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
表 18.3-5 A/D セッティングレジスタ (ADSR0/ADSR1) の機能 (1 / 3)
ビット名
ST2, ST1, ST0:
サンプリング時間
選択ビット
A/D 変換のサンプリング時間を設定します。
• A/D 変換を開始してから , 入力されたアナログ電
圧がサンプル & ホールド回路でサンプリングさ
れ , 保持されるまでの時間を設定します。
• 本ビットの設定については表 18.3-6 を参照して
ください。
bit12
∼
bit10
CT2, CT1, CT0:
コンペア時間選択
ビット
A/D 変換のコンペア時間 ( 比較時間 ) を設定します。
• アナログ入力を A/D 変換してデータビット (D9 ∼
D0) に格納するまでの時間を設定します。
• 本ビットの設定については表 18.3-7 を参照して
ください。
bit9
予約ビット
このビットには必ず "0" を書き込んでください。
読出し値は常に "0" となります。
bit15
∼
bit13
CM44-10149-4
機 能
FUJITSU MICROELECTRONICS LIMITED
361
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
MB90990 シリーズ
表 18.3-5 A/D セッティングレジスタ (ADSR0/ADSR1) の機能 (2 / 3)
ビット名
bit8
∼
bit5
ANS3 ∼ ANS0:
A/D 変換開始
チャネル選択ビット
機 能
A/D 変換を開始するチャネルを設定します。読み出
した場合は , A/D 変換中であれば現在変換中のチャ
ネル番号 , A/D 変換終了後または停止中であれば最
後に A/D 変換したチャネル番号を確認できます。ま
た , 本ビットに値を設定した場合でも , A/D 変換が
開始されるまでは設定した値ではなく , 前回に A/D
変換したチャネル番号が読み出されます。リセット
時は , "0000B" に初期化されます。
開始チャネル < 終了チャネルの場合 :
A/D 変換開始チャネル選択ビット (ANS3 ∼ ANS0)
で設定されたチャネルから A/D 変換を開始し , A/D
変換終了チャネル選択ビット (ANE3 ∼ ANE0) で設
定されたチャネルで A/D 変換を終了します。
開始チャネル = 終了チャネルの場合 :
A/D 変換開始 (= 終了 ) チャネル選択ビット
(ANS3 ∼ ANS0=ANE3 ∼ ANE0) で設定された 1
チャネルのみ A/D 変換を行います。
開始チャネル > 終了チャネルの場合 : 設定しないで
ください。
連続変換モード , 停止変換モードの場合 :
A/D 変換終了チャネル選択ビット (ANE3 ∼ ANE0)
に設定されたチャネルで A/D 変換が終了すると ,
A/D 変換開始チャネル選択ビット (ANS3 ∼ ANS0)
で設定されたチャネルに戻ります。
読み出した場合 ( 停止変換モード以外 ) :
A/D 変換中のチャネル番号 (15 ∼ 0) が読み出されま
す。
読み出した場合 ( 停止変換モード ) :
停止中にリードすると , 停止直前に A/D 変換した
チャネル番号が読み出されます。
( 注意事項 )
• A/D 変換中は , A/D 変換開始チャネルビット
(ANS3 ∼ ANS0) の設定は行わないでください。
• 本ビットへの書込みはワードアクセスで行って
ください。バイトアクセスやビット操作を行っ
た場合は意図しないチャネルから A/D 変換が開
始される可能性があります。
• A/D 変換開始チャネル選択ビット (ANS3, ANS2,
ANS1, ANS0) に開始チャネルを設定した後に , A/D
変換モード選択ビット (MD1, MD0) および A/D
変換終了チャネル選択ビット (ANE3, ANE2,
ANE1, ANE0) をリードモディファイライト
(RMW) 系命令で設定しないでください。
ANS3, ANS2, ANS1, ANS0 ビットは A/D 変換動作
が開始するまでは前回の変換チャネルが読み出
されるため , ANS3, ANS2, ANS1, ANS0 ビットに
開始チャネルを設定した後に , MD1, MD0 ビット
および ANE3, ANE2, ANE1, ANE0 ビットをリード
モディファイライト (RMW) 系で設定した場合 ,
ANE3, ANE2, ANE1, ANE0 ビットの値が書き換わ
る可能性があります。
362
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
表 18.3-5 A/D セッティングレジスタ (ADSR0/ADSR1) の機能 (3 / 3)
ビット名
bit4
予約ビット
機 能
このビットには必ず "0" を書き込んでください。
読出し値は常に "0" となります。
A/D 変換を終了するチャネルを設定します。
リセット時は ,"0000B" に初期化されます。
bit3
∼
bit0
CM44-10149-4
ANE3 ∼ ANE0:
A/D 変換終了
チャネル選択ビット
開始チャネル < 終了チャネルの場合 :
A/D 変換開始チャネル選択ビット (ANS3 ∼ ANS0)
で設定されたチャネルから A/D 変換を開始し , A/D
変換終了チャネル選択ビット (ANE3 ∼ ANE0) で設
定されたチャネルで A/D 変換を終了します。
開始チャネル = 終了チャネルの場合 :
A/D 変換開始 (= 終了 ) チャネル選択ビット
(ANS3 ∼ ANS0=ANE3 ∼ ANE0) で設定された 1
チャネルのみ A/D 変換を行います。
開始チャネル > 終了チャネルの場合 :
設定しないでください。
連続変換モード , 停止変換モードの場合 :
A/D 変換終了チャネル選択ビット (ANE3 ∼ ANE0)
に設定されたチャネルで A/D 変換が終了すると ,
A/D 変換開始チャネル選択ビット (ANS3 ∼ ANS0)
で設定されたチャネルに戻ります。
( 注意事項 )
• A/D 変換中は , A/D 変換終了チャネルビット
(ANE3 ∼ ANE0) の設定は行わないでください。
• A/D 変換開始チャネル選択ビット (ANS3, ANS2, ANS1, ANS0) を設定した後に , サンプリン
グ時間選択ビット (ST2, ST1, ST0), コンペア時間
選択ビット (CT2, CT1, CT0) および A/D 変換終了
チャネル選択ビット (ANE3, ANE2, ANE1, ANE0)
をリードモディファイライト (RMW) 系命令で設
定しないでください。ANS3, ANS2, ANS1, ANS0
ビットは A/D 変換動作が開始するまでは前回の
変換チャネルが読み出されるため , ANS3, ANS2,
ANS1, ANS0 ビット設定後に ST2, ST1, ST0 ビッ
ト , CT2, CT1, CT0 ビットおよび ANE3, ANE2,
ANE1, ANE0 ビットをリードモディファイ系命令
で設定した場合 , ANS3, ANS2, ANS1, ANS0 ビッ
トの値が書き換わる可能性があります。
FUJITSU MICROELECTRONICS LIMITED
363
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
MB90990 シリーズ
■ サンプリング時間の設定 (ST2 ∼ ST0 ビット )
表 18.3-6 ST2 ∼ ST0 ビットとサンプリング時間の関係
設定例 (φ: 内部動作周波数 )
ST2
ST1
ST0
サンプリング時間設定
0
0
0
4 マシンサイクル
0.13μs
0.17μs
0.25μs
0
0
1
6 マシンサイクル
0.19μs
0.25μs
0.38μs
0
1
0
8 マシンサイクル
0.25μs
0.33μs
0.50μs
0
1
1
12 マシンサイクル
0.38μs
0.50μs
0.75μs
1
0
0
24 マシンサイクル
0.75μs
1.00μs
1.50μs
1
0
1
36 マシンサイクル
1.13μs
1.50μs
2.25μs
1
1
0
48 マシンサイクル
1.50μs
2.00μs
3.00μs
1
1
1
128 マシンサイクル
4.00μs
5.33μs
8.00μs
φ=32MHz
φ=24MHz
φ=16MHz
サンプリング時間は , アナログ入力に接続される駆動インピーダンス Rext に応じて設
定する必要があります。下記の条件を満たさない場合は変換精度が保証されません。
各パラメータはデータシートを参照してください。
• Rext
≦ Rextmax の場合 :
サンプリング時間を STmin 以上に設定してください。
• Rext > Rextmax の場合 : サンプリング時間を下式の ST 以上に設定してください。
ST = (Rin+Rext) × Cin × 7
■ コンペア時間の設定 (CT2 ∼ CT0 ビット )
表 18.3-7 CT2 ∼ CT0 ビットとコンペア時間の関係
CT2
CT1
CT0
サンプリング時間設定
0
0
0
0
0
0
設定例 (φ: 内部動作周波数 )
φ=32MHz
φ=24MHz
φ=16MHz
22 マシンサイクル
0.69μs
0.92μs
1.38μs
1
33 マシンサイクル
1.03μs
1.38μs
2.06μs
1
0
44 マシンサイクル
1.38μs
1.83μs
2.75μs
0
1
1
66 マシンサイクル
2.06μs
2.75μs
4.13μs
1
0
0
88 マシンサイクル
2.75μs
3.67μs
5.50μs
1
0
1
132 マシンサイクル
4.13μs
5.50μs
8.25μs
1
1
0
176 マシンサイクル
5.50μs
7.33μs
11.0μs
1
1
1
264 マシンサイクル
8.25μs
11.0μs
16.5μs
コンペア時間は , アナログ電源電圧 AVCC に応じて設定する必要があります。
詳細はデータシートを参照してください。
364
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
MB90990 シリーズ
アナログ入力許可レジスタ (ADER5, ADER6)
18.3.5
8/10 ビット A/D コンバータで使用するアナログ入力端子を許可または禁止します。
■ アナログ入力許可レジスタ (ADER5, ADER6)
図 18.3-6 アナログ入力許可レジスタ (ADER5, ADER6)
アドレス
bit
15
14
13
12
11
10
9
8
初期値
ADER5:00000BH ADE15 ADE14 ADE13 ADE12 ADE11 ADE10 ADE9 ADE8 11111111B
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit15~bit8
ADE15~ADE8
0
1
アドレス
bit
7
6
5
4
3
2
1
0
アナログ入力許可ビット15~8(AN15~AN8)
アナログ入力を禁止する
アナログ入力を許可する
初期値
ADER6:00000CH ADE7 ADE6 ADE5 ADE4 ADE3 ADE2 ADE1 ADE0 11111111B
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit7~bit0
ADE7~ADE0
0
1
:リード/ライト可能
:初期値
アナログ入力許可ビット7~0(AN7~AN0)
アナログ入力を禁止する
アナログ入力を許可する
表 18.3-8 ポート 5 アナログ入力許可レジスタ (ADER5) の機能
ビット名
bit15
∼
bit8
ADE15 ∼ ADE8:
アナログ入力許可
ビット 15 ∼ 8
機 能
ポート 5 上に配置された A/D 変換アナログ入力端
子 AN15 ∼ AN8 のアナログ入力を許可または禁止
します。
"0" に設定した場合 : アナログ入力を禁止します。
"1" に設定した場合 : アナログ入力を許可します。
表 18.3-9 ポート 6 アナログ入力許可レジスタ (ADER6) の機能
ビット名
bit7
∼
bit0
CM44-10149-4
ADE7 ∼ ADE0:
アナログ入力許可
ビット 7 ∼ 0
機 能
ポート 6 上に配置された A/D 変換アナログ入力端
子 AN7 ∼ AN0 のアナログ入力を許可または禁止し
ます。
"0" に設定した場合 : アナログ入力を禁止します。
"1" に設定した場合 : アナログ入力を許可します。
FUJITSU MICROELECTRONICS LIMITED
365
第 18 章 8/10 ビット A/D コンバータ
18.3 8/10 ビット A/D コンバータの構成
MB90990 シリーズ
<注意事項>
• アナログ入力端子として使用する場合は , 使用する端子に対応するアナログ入力許可
レジスタ (ADER5, ADER6) のビットに "1" を書き込んで , アナログ入力に設定してく
ださい。
• 各アナログ入力端子は , 汎用入出力ポートおよび周辺機能の入出力と兼用になっていま
す。ADEx=1 に設定された端子は , ポート方向レジスタ (DDR5, DDR6) および各周辺機能
の入出力設定にかかわらず強制的にアナログ入力端子になり,それ以外の使用はできな
くなります。
366
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
18.4
第 18 章 8/10 ビット A/D コンバータ
18.4 8/10 ビット A/D コンバータの割込み
8/10 ビット A/D コンバータの割込み
8/10 ビット A/D コンバータでは , A/D 変換が終了して変換結果が A/D データレジス
タ (ADCR) に格納されると割込み要求が発生します。拡張インテリジェント I/O
サービス (EI2OS) が利用できます。
■ A/D コンバータの割込み
アナログ入力電圧の A/D 変換が終了して A/D 変換結果が A/D データレジスタ (ADCR)
に格納されると , A/D 制御ステータスレジスタの割込み要求フラグビット (ADCS: INT)
に "1" がセットされます。割込み要求の出力が許可されている場合に (ADCS: INTE=1)
割込み要求フラグビットがセットされると (ADCS: INT=1) 割込み要求が発生します。
■ 8/10 ビット A/D コンバータの割込みと EI2OS
<参考>
割込み番号 , 割込み制御レジスタ , 割込みベクタアドレスについては , 「第 3 章 割込み」
を参照してください。
■ 8/10 ビット A/D コンバータの EI2OS
8/10 ビット A/D コンバータでは , EI2OS を使用して , A/D 変換結果を A/D データレジ
「18.5.4
スタ (ADCR) からメモリに転送できます。
EI2OS 機能の使用方法につきましては
EI2OS 機能を使用した変換動作」および「18.5.5 A/D 変換データ保護機能」を参照し
てください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
367
第 18 章 8/10 ビット A/D コンバータ
18.5 8/10 ビット A/D コンバータの動作説明
18.5
MB90990 シリーズ
8/10 ビット A/D コンバータの動作説明
8/10 ビット A/D コンバータの A/D 変換動作には次の変換モードがあります。A/D 制
御ステータスレジスタの A/D 変換モード選択ビット (ADCS: MD1, MD0) の設定に
よって各モードを設定します。
• 単発変換モード
• 連続変換モード
• 停止変換モード
■ 単発変換モード (ADCS: MD1, MD0=00B または 01B)
• 起動トリガを入力すると開始チャネル (ADSR: ANS3 ∼ ANS0) から終了チャネル
(ADSR: ANE3 ∼ ANE0) までのアナログ入力を連続して A/D 変換していきます。
• 終了チャネルの A/D 変換が終了すると A/D 変換動作を停止します。
• 単発変換モード 1(ADCS:MD1,MD0=00B) に設定した場合は , A/D 変換中の再起動が
できます。ただし , A/D 変換データ保護機能が働いて A/D が一時停止状態となって
いる状態では再起動は無視されます。
• 単発変換モード 2(ADCS:MD1,MD0=01B) に設定した場合は , A/D 変換中の再起動は
出来ません。
<注意事項>
• 単発変換モード 1 (ADCS:MD1, MD0=00B) では A/D 変換中または一時停止状態 * のとき
に起動トリガが入力されると , 8/10 ビット A/D コンバータが再起動する場合があります
ので , A/D 変換中または一時停止状態のときは起動トリガを入力しないでください。
単発変換モード 2 (ADCS:MD1, MD0=01B) では A/D 変換中または一時停止状態 * のとき
に起動トリガが入力されても , 8/10 ビット A/D コンバータが再起動することはありま
せん。
• 単発変換モード 1, 単発変換モード 2 いずれの場合も再起動する場合は「18.5.1 単発変
換モード」に示す手順で再起動を行ってください。
*: 一時停止状態は A/D 変換保護機能が動作して変換が一時停止している状態です。
詳細は「18.5.5 A/D 変換データ保護機能」を参照してください。
■ 連続変換モード (ADCS: MD1, MD0=10B)
• 起動トリガを入力すると , 開始チャネル (ADSR: ANS3 ∼ ANS0) から終了チャネル
(ADSR: ANE3 ∼ ANE0) までのアナログ入力を連続して A/D 変換していきます。
• 終了チャネルの A/D 変換が終了すると , 開始チャネルのアナログ入力に戻って A/D
変換を継続して行います。
368
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 18 章 8/10 ビット A/D コンバータ
18.5 8/10 ビット A/D コンバータの動作説明
■ 停止変換モード (ADCS: MD1, MD0=11B)
• 起動トリガを入力すると , 開始チャネル (ADSR: ANS3 ∼ ANS0) の A/D 変換が開始
されます。1 チャネルの A/D 変換が終了すると A/D 変換動作は停止します。この状
態を " 停止状態 " といいます。A/D 変換動作が停止している間に起動トリガを入力
すると次のチャネルの A/D 変換が行われます。
• 終了チャネルの A/D 変換が終了すると A/D 変換動作は停止します。A/D 変換動作が
停止している間に起動トリガを入力すると開始チャネルのアナログ入力に戻って
A/D 変換を継続します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
369
第 18 章 8/10 ビット A/D コンバータ
18.5 8/10 ビット A/D コンバータの動作説明
18.5.1
MB90990 シリーズ
単発変換モード
単発変換モードでは , 開始チャネルから終了チャネルまで順次 A/D 変換を行います。
終了チャネルの A/D 変換が終了すると A/D 変換動作を停止します。
■ 単発変換モードの設定
8/10 ビット A/D コンバータを単発変換モードで動作させるには , 図 18.5-1 の設定が必
要です。
図 18.5-1 単発変換モードの設定
bit15 14 13 12 11 10
ADCS
ADSR
-
-
◎
○
0
370
4
3
◎
◎
◎
◎
0
- -
◎
2
1 bit0
- - 予約
◎
0
D9~D0(変換結果を保持)
ST2 ST1 ST0 CT2 CT1 CT0 予約 ANS3 ANS2 ANS1 ANS0 予約 ANE3 ANE2 ANE1 ANE0
◎
◎
◎
◎
◎ ◎
◎
◎
◎
◎
◎
◎
◎
◎
ADE15 ADE14 ADE13 ADE12 ADE11 ADE10 ADE9 ADE8
○
ADER6
◎
- - -
◎ ◎
ADER5
5
BUSY INT INTE PAUS STS1 STS0 STRT - MD1 MD0 S10 - -
◎ ◎
ADCR
9 bit8 bit7 6
○
○
○
○
○
○
○
ADE7 ADE6 ADE5 ADE4 ADE3 ADE2 ADE1 ADE0
○ ○ ○ ○ ○
:未定義ビット
:使用ビット
:アナログ入力端子として使用する端子に対応するビットに"1"を設定
:"0"を設定
FUJITSU MICROELECTRONICS LIMITED
○
○
○
CM44-10149-4
第 18 章 8/10 ビット A/D コンバータ
18.5 8/10 ビット A/D コンバータの動作説明
MB90990 シリーズ
■ 単発変換モードの動作と使用方法
• 起動トリガを入力すると , A/D 変換開始チャネル選択ビット (ANS3 ∼ ANS0) で設定さ
れたチャネルからA/D変換を開始し, A/D変換終了チャネル選択ビット (ANE3∼ANE0)
で設定されたチャネルまで連続して A/D 変換を行います。
• A/D 変換終了チャネル選択ビット (ANE3 ∼ ANE0) で設定されたチャネルの A/D 変
換が終了すると A/D 変換動作を停止します。
•
A/D 変換動作を強制終了するには , A/D 制御ステータスレジスタの A/D 変換動作中
フラグビット (ADCS:BUSY) に "0" を書き込みます。
[ 開始チャネルと終了チャネルが同じ場合 ]
開始チャネルと終了チャネルを同じチャネル番号に設定した場合は (ADSR: ANS3 ∼
ANS0=ADSR: ANE3 ∼ ANE0), 開始チャネル (= 終了チャネル ) として設定した 1 チャ
ネルだけを 1 回だけ A/D 変換して終了します。
[ 単発変換モードでの変換順序 ]
単発変換モードでの変換順序の例を表 18.5-1 に示します。
表 18.5-1 単発変換モードでの変換順序
開始チャネル
終了チャネル
単発変換モードでの変換順序
AN0 端子
(ADSR: ANS=0000B)
AN3 端子
(ADSR: ANE=0011B)
AN0 → AN1 → AN2 → AN3 →終了
AN3 端子
(ADSR: ANS=0011B)
AN3 端子
(ADSR: ANE=0011B)
AN3 →終了
[ 再起動について ]
A/D 変換実行中および一時停止状態中に A/D 変換を再起動する場合は , 変換をいった
ん強制終了させてから再起動させます。以下の手順で実施してください。
1) A/D 変換動作中フラグビット (ADCS:BUSY) をクリア
2) 割込み要求フラグビット (ADCS:INT) をクリア
3) A/D 変換ソフトウェア起動ビット (ADCS:STRT) をセット
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
371
第 18 章 8/10 ビット A/D コンバータ
18.5 8/10 ビット A/D コンバータの動作説明
18.5.2
MB90990 シリーズ
連続変換モード
連続変換モードでは , 開始チャネルから終了チャネルまで順次 A/D 変換を行います。
終了チャネルの A/D 変換が終了すると開始チャネルに戻って A/D 変換動作を継続し
ます。
■ 連続変換モードの設定
8/10 ビット A/D コンバータを連続変換モードで動作させるには , 図 18.5-2 の設定が必
要です。
図 18.5-2 連続変換モードの設定
bit15 14 13 12 11 10
ADCS
ADSR
-
◎
◎
- - -
3
◎
◎
◎
1
- -
0
2
1 bit0
- - 予約
◎
0
D9~D0(変換結果を保持)
◎
◎
◎
◎
◎ ◎
◎
◎
◎
◎
◎
◎
◎
◎
ADE15 ADE14 ADE13 ADE12 ADE11 ADE10 ADE9 ADE8
○
○
○
○
○
○
○
○
ADE7 ADE6 ADE5 ADE4 ADE3 ADE2 ADE1 ADE0
ADER6
-
◎
○
1
0
4
ST2 ST1 ST0 CT2 CT1 CT0 予約 ANS3 ANS2 ANS1 ANS0 予約 ANE3 ANE2 ANE1 ANE0
◎ ◎
ADER5
5
BUSY INT INTE PAUS STS1 STS0 STRT - MD1 MD0 S10 - -
◎ ◎
ADCR
9 bit8 bit7 6
○ ○ ○ ○ ○
:未定義ビット
:使用ビット
:アナログ入力端子として使用する端子に対応するビットに"1"を設定
:"1"を設定
:"0"を設定
○
○
○
■ 連続変換モードの動作と使用方法
• 起動トリガを入力すると A/D 変換開始チャネル選択ビット (ANS3 ∼ ANS0) で設定さ
れたチャネルからA/D変換を開始し, A/D変換終了チャネル選択ビット (ANE3∼ANE0)
で設定されたチャネルまで連続して A/D 変換を行います。
• A/D 変換終了チャネル選択ビット (ANE3 ∼ ANE0) で設定されたチャネルの A/D 変
換が終了すると , A/D 変換開始チャネル選択ビット (ANS3 ∼ ANS0) で設定された
チャネルに戻って A/D 変換を継続します。
•
A/D 変換動作を強制終了するには , A/D 制御ステータスレジスタの A/D 変換動作中
フラグビット (ADCS:BUSY) に "0" を書き込みます。
[ 開始チャネルと終了チャネルが同じ場合 ]
開始チャネルと終了チャネルを同じチャネルに設定した場合は (ADSR: ANS3 ∼
ANS0=ADSR: ANE3 ∼ ANE0), 開始チャネル (= 終了チャネル ) として設定した 1 チャ
ネルの A/D 変換を繰り返して行います。
372
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 18 章 8/10 ビット A/D コンバータ
18.5 8/10 ビット A/D コンバータの動作説明
MB90990 シリーズ
[ 連続変換モードでの変換順序 ]
連続変換モードでの変換順序の例を表 18.5-2 に示します。
表 18.5-2 連続変換モードでの変換順序
開始チャネル
終了チャネル
連続変換モードでの変換順序
AN0 端子
(ADSR: ANS=0000B)
AN3 端子
(ADSR: ANE=0011B)
AN0 → AN1 → AN2 → AN3 → AN0 →
繰返し
AN3 端子
(ADSR: ANS=0011B)
AN3 端子
(ADSR: ANE=0011B)
AN3 → AN3 →繰返し
[ 再起動について ]
A/D 変換実行中および一時停止状態中に A/D 変換を再起動する場合は , 変換をいった
ん強制終了させてから再起動させます。以下の手順で実施してください。
1) A/D 変換動作中フラグビット (ADCS:BUSY) をクリア
2) 割込み要求フラグビット (ADCS:INT) をクリア
3)A/D 変換ソフトウェア起動ビット (ADCS:STRT) をセット
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
373
第 18 章 8/10 ビット A/D コンバータ
18.5 8/10 ビット A/D コンバータの動作説明
18.5.3
MB90990 シリーズ
停止変換モード
停止変換モードでは , 1 チャネルごとに停止と起動を繰り返しながら A/D 変換を行
います。終了チャネルの A/D 変換が終了して A/D 変換動作が停止した後に起動トリ
ガを入力すると開始チャネルに戻って A/D 変換を継続します。
■ 停止変換モードの設定
8/10 ビット A/D コンバータを停止変換モードで動作させるには , 図 18.5-3 の設定が必
要です。
図 18.5-3 停止変換モードの設定
bit15 14 13 12 11 10
ADCS
ADSR
-
◎
◎
- - -
3
◎
◎
◎
1
- -
1
2
1 bit0
- - 予約
◎
0
D9~D0(変換結果を保持)
◎
◎
◎
◎
◎ ◎
◎
◎
◎
◎
◎
◎
◎
◎
ADE15 ADE14 ADE13 ADE12 ADE11 ADE10 ADE9 ADE8
○
○
○
○
○
○
○
○
ADE7 ADE6 ADE5 ADE4 ADE3 ADE2 ADE1 ADE0
ADER6
-
◎
○
1
0
4
ST2 ST1 ST0 CT2 CT1 CT0 予約 ANS3 ANS2 ANS1 ANS0 予約 ANE3 ANE2 ANE1 ANE0
◎ ◎
ADER5
5
BUSY INT INTE PAUS STS1 STS0 STRT - MD1 MD0 S10 - -
◎ ◎
ADCR
9 bit8 bit7 6
○ ○ ○ ○ ○
:未定義ビット
:使用ビット
:アナログ入力端子として使用する端子に対応するビットに"1"を設定
:"1"を設定
:"0"を設定
○
○
○
■ 停止変換モードの動作と使用方法
• 起動トリガを入力すると , A/D 変換開始チャネル選択ビット (ANS3 ∼ ANS0) で設定
されたチャネルから A/D 変換を開始します。1 チャネルの A/D 変換が終了すると
A/D 変換動作は停止します。A/D 変換動作が停止している間に起動トリガを入力す
ると , 次のチャネルの A/D 変換を行います。
•
A/D 変換終了チャネル選択ビット (ANE3 ∼ ANE0) で設定されたチャネルの A/D 変
換が終了すると , A/D 変換動作は停止します。A/D 変換動作が停止している間に起
動トリガを入力すると , A/D 変換開始チャネル選択ビット (ANS3 ∼ ANS0) で設定さ
れたチャネルに戻って A/D 変換を継続します。
•
A/D 変換動作を強制終了するには , A/D 制御ステータスレジスタの A/D 変換動作中
フラグビット (ADCS:BUSY) に "0" を書き込みます。
374
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 18 章 8/10 ビット A/D コンバータ
18.5 8/10 ビット A/D コンバータの動作説明
MB90990 シリーズ
[ 開始チャネルと終了チャネルが同じ場合 ]
開 始 チ ャ ネ ル と 終 了 チ ャ ネ ル を 同 じ チ ャ ネ ル に 設 定 し た 場 合 は (ADSR:ANS3 ∼
ANS0=ADSR: ANE3 ∼ ANE0), 開始チャネル (= 終了チャネル ) として設定した 1 チャ
ネルの A/D 変換と停止を繰り返します。
[ 停止変換モードでの変換順序 ]
停止変換モードでの変換順序の例を表 18.5-3 に示します。
表 18.5-3 停止変換モードでの変換順序
開始チャネル
終了チャネル
単発変換モードでの変換順序
AN0 端子
(ADSR: ANS=0000B)
AN3 端子
(ADSR: ANE=0011B)
AN0 →停止・起動→ AN1 →停止・起動→
AN2 →停止・起動→ AN3 →停止・起動→
AN0 →繰返し
AN3 端子
(ADSR: ANS=0011B)
AN3 端子
(ADSR: ANE=0011B)
AN3 →停止・起動→ AN3 →停止・起動→
繰返し
[ 再起動について ]
A/D 変換実行中および一時停止状態中に A/D 変換を再起動する場合は , 変換をいった
ん強制終了させてから再起動させます。以下の手順で実施してください。
1) A/D 変換動作中フラグビット (ADCS:BUSY) をクリア
2) 割込み要求フラグビット (ADCS:INT) をクリア
3) A/D 変換ソフトウェア起動ビット (ADCS:STRT) をセット
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
375
第 18 章 8/10 ビット A/D コンバータ
18.5 8/10 ビット A/D コンバータの動作説明
18.5.4
MB90990 シリーズ
EI2OS 機能を使用した変換動作
8/10 ビット A/D コンバータでは , EI2OS 機能を使用して , A/D 変換結果をメモリに
転送できます。
■ EI2OS 機能を使用した変換動作
EI2OS 機能を使用した場合の変換動作のフローを図 18.5-4 に示します。
図 18.5-4 EI2OS 機能を使用した場合の変換動作のフロー
A/Dコンバータ起動
サンプル&ホールド
A/D変換開始
A/D変換終了
割込み発生
EI2OS起動
変換結果転送
指定回数終了か*
NO
割込みクリア
YES
割込み処理
*: EI2OSの設定で決定されます。
376
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 18 章 8/10 ビット A/D コンバータ
18.5 8/10 ビット A/D コンバータの動作説明
MB90990 シリーズ
18.5.5
A/D 変換データ保護機能
割込み要求の出力を許可した状態で A/D 変換を実行するとデータ保護機能が働きま
す。
■ 8/10 ビット A/D コンバータの A/D 変換データ保護機能の説明
A/D 変換データ保護機能は A/D 変換データの取りこぼしを防ぐ機能です。
8/10 ビット A/D コンバータには , 変換データ格納用の A/D データレジスタ (ADCR1/
ADCR0) 1 個と次の変換結果を格納するバッファレジスタ 1 個があります。A/D 変換が
終了すると変換データはいったんバッファレジスタに格納された後, A/Dデータレジス
タに格納されます。
A/D 変換データ保護機能の ON/OFF によって , A/D コンバータの動作は下記のようにな
ります。
• 割込み要求許可ビット (ADCS:INTE)=0 に設定すると , データ保護機能は OFF され
ます。この場合 , 複数回連続で変換を行うと変換が終了するたびに A/D データレジ
スタに変換結果を格納されます ( 常に最新の変換データが格納されることになりま
す)。
• 割込み要求許可ビット (ADCS:INTE)=1 に設定すると , データ保護機能が ON されま
す。この状態で複数回連続で変換を行う場合 , A/D データレジスタから前回の変換
結果をリードしていない状態 ( 割込み要求フラグビット :ADCS:INT=1 のとき…状態
A) で次の A/D 変換が終了すると , 変換結果はいったんバッファレジスタに格納され
A/D は一時停止となります ( 状態 B)。
状態 B のときに割込み要求フラグビット (ADCS:INT) を "0" にクリアするとバッファ
レジスタに格納されているデータを A/D データレジスタに転送します ( 図 18.5-5 を
参照してください )。
図 18.5-5 A/D 変換データ保護機能の動作 1( 通常動作 )
状態B
状態A
①
状態B
状態A
②
③
起動要因
A/D
変換中
停止
変換中
一時
停止
停止
割込み要求フラグビット
(INT)
バッファレジスタ
A/Dデータレジスタ
(ADCR1/ADCR0)
CM44-10149-4
不定
変換中
一時停止
クリアによりA/D結果をバッファレジスタから
ADCR1/0に転送し, 停止状態のなる。
AD①
不定
AD②
AD①
FUJITSU MICROELECTRONICS LIMITED
不定
AD③
AD②
377
第 18 章 8/10 ビット A/D コンバータ
18.5 8/10 ビット A/D コンバータの動作説明
MB90990 シリーズ
図 18.5-6 A/D 変換データ保護機能の動作 2
状態A
①
状態B
②
③
(この起動は無視されます)
起動要因
変換中
A/D
停止
変換中
AD①
不定
一時停止
割込み要求フラグビット
(INT)
バッファレジスタ
不定
A/Dデータレジスタ
(ADCR1/ADCR0)
AD②
AD①
■ A/D 変換データ保護機能の使用方法
EI2OS を使用しない場合 , 使用する場合それぞれについて A/D 変換デー
タ保護機能の使用方法を説明します。
● EI2OS を使用しない場合のデータ保護機能使用方法
• A/D 制御ステータスレジスタの割込み要求フラグビット (ADCS:INTE) を "1" に設定
して , A/D 変換を開始します。
• A/D 変換終了後 , A/D 変換結果はバッファレジスタに格納され , その後バッファレジ
スタの内容が A/D データレジスタ (ADCR1/ADCR0) に転送されます。このとき ,
A/D 制御ステータスレジスタの割込み要求フラグビット (ADCS:INT) に "1" がセット
されます。
• 次の回の A/D 変換が終了した時点で , 前回の A/D 変換終了時にセットされた割込み
要求フラグビット (ADCS:INT) が "1" にセットされたままの場合 , バッファレジスタ
の内容が A/D データレジスタに転送される直前で , 上書き防止のために A/D 変換動
作は一時停止します。このとき A/D 制御ステータスレジスタの一時停止フラグビッ
ト (ADCS:PAUS) に "1" がセットされます。
• A/D 制御ステータスレジスタの割込み要求が許可されているため (ADCS:INTE=1) 割
込み要求フラグビットがセットされると割込み要求が発生します。割込みルーチン
で A/D データレジスタをリードした後 , 割込み要求フラグビットをクリアすると一
時停止が解除されバッファレジスタの内容が A/D データレジスタに転送されます。
連続して A/D 変換を行っている場合は , A/D 変換動作が再開されます。なお , この
とき一時停止フラグビット (ADCS:PAUS) は自動的にクリアされません。クリアす
るためには同ビットに "0" を書き込んでください。
378
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 18 章 8/10 ビット A/D コンバータ
18.5 8/10 ビット A/D コンバータの動作説明
<注意事項>
• A/D 変換データ保護機能は , 割込み要求が許可されている状態でなければ動作しませ
ん。A/D 制御ステータスレジスタの割込み要求出力許可ビット (ADCS:INTE) を常に "1"
に設定してください。一時停止中に割込み要求を禁止 (ADCS:INTE=0) すると , A/D 変
換が開始され , A/D データレジスタのデータが書き換えられる恐れがあります。
• 連続変換を行う場合 , 割込み要求フラグビット (ADCS:INT) をクリアする前に必ず A/D
データレジスタに格納されたデータを読み出すよう , プログラムしてください。もし ,
A/D 変換が一時停止状態で A/D データレジスタに格納されたデータを読み出す前に割
込み要求フラグビット (ADCS:INT) をクリアすると最初に格納された変換データが消え
次のデータを読み出します。
●EI2OS を使用する場合のデータ保護機能使用方法
• EI2OS機能を使用可能に設定し , A/D 制御ステータスレジスタの割込み要求許可ビッ
ト (ADCS:INT) を "1" に設定して , A/D 変換を開始します。
• A/D 変換終了後 , A/D 変換結果はバッファレジスタに格納され , その後バッファレジ
スタの内容が A/D データレジスタ (ADCR) に転送されます。このときに A/D 制御レ
ジスタの割込み要求フラグビット (ADCS:INT) に "1" がセットされ , EI2OS が開始さ
れます。A/D 変換結果を A/D データレジスタからメモリに転送し終わる前に次の回
の A/D 変換が終了した場合 , バッファレジスタの内容が A/D データレジスタに転送
される直前で , 上書き防止のために A/D 変換動作は一時停止します。このとき , A/D
制御ステータスレジスタの一時停止フラグビット (ADCS:PAUS) に "1" がセットされ
ます。
• EI2OS 転送が終了すると , 割込み要求フラグビット (ADCS:INT) が "0" にクリアされ ,
一時停止状態が解除されてバッファレジスタの内容が A/D データレジスタに転送さ
れます。また連続して A/D 変換を行っている場合は , A/D 変換動作が再開されます。
このとき , 一時停止フラグビット (ADCS:PAUS) は自動的に "0" にクリアされません。
クリアするためには同ビットに "0" を書き込んでください。
<注意事項>
• A/D 変換データ保護機能は , 割込み要求が許可されている状態でなければ動作しませ
ん。A/D 制御ステータスレジスタの割込み要求出力許可ビット (ADCS:INTE) を常に "1"
に設定してください。
• EI2OS 機能によって A/D 変換結果がメモリ転送されている場合 , 割込み要求フラグビッ
トをクリア (ADCS:INT=0) しないでください。転送中の A/D データレジスタのデータ
が書き換えられてしまう恐れがあります。
• EI2OS 機能によって A/D 変換結果がメモリ転送されている場合 , 割込み要求を禁止し
ないでください。一時停止中に割込み要求を禁止 (ADCS:INTE=0) すると , A/D 変換が
開始され , A/D データレジスタのデータが書き換えられる恐れがあります。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
379
第 18 章 8/10 ビット A/D コンバータ
18.5 8/10 ビット A/D コンバータの動作説明
MB90990 シリーズ
● EI2OS を使用した場合の A/D 変換データ保護機能の処理フロー
EI2OS を使用した場合の A/D 変換データ保護機能の処理フローを図 18.5-7 に示します。
図 18.5-7 EI2OS を使用した場合の A/D 変換データ保護機能の処理フロー
EI2OS設定
A/D連続変換起動
1回目変換終了
A/Dデータレジスタに格納
EI2OS起動
2回目変換終了
EI2OS終了
NO
A/D一時停止
YES
A/Dデータレジスタに格納
3回目変換
EI2OS起動
続く
すべて変換終了
EI2OS終了
NO
A/D一時停止
YES
EI2OS起動
割込み処理
A/D変換停止
終了
(注意事項)
380
A/Dコンバータ動作停止時のフローは省略
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
18.6
第 18 章 8/10 ビット A/D コンバータ
18.6 8/10 ビット A/D コンバータ使用上の注意
8/10 ビット A/D コンバータ使用上の注意
8/10 ビット A/D コンバータを使用する場合は , 次の点に注意してください。
■ 8/10 ビット A/D コンバータ使用上の注意
● アナログ入力端子について
• アナログ入力端子は , ポート 5, ポート 6 の汎用入出力ポートと兼用になっています。
ア ナ ロ グ 入 力 端 子 と し て 使 用 す る 場 合 は ア ナ ロ グ 入 力 許 可 レ ジ ス タ (ADER5,
ADER6) の設定によってアナログ入力端子に切り換えてください。
•
アナログ入力端子として使用する場合は , 使用する端子に対応するアナログ入力許
可レジスタ (ADER5, ADER6) のビットに "1" を書き込んでアナログ入力許可に設定
してください。
•
汎用入出力ポートに設定したままで中間レベルの信号が入力されると , ゲートに入
力リーク電流が流れます。アナログ入力端子として使用する場合は , 必ずアナログ
入力許可に設定して使用してください。
● 8/10 ビット A/D コンバータの電源・アナログ入力の投入順序
• 8/10 ビット A/D コンバータの電源 , アナログ入力 (AN0 ∼ AN15 端子 ) の印加は必
ずデジタル電源 (VCC) の投入後に行ってください。
• 電源切断時は , 8/10 ビット A/D コンバータの電源およびアナログ入力の遮断の後で
デジタル電源の遮断を行ってください。
• AVR は , AVCC を超えないように投入および切断を行ってください。
● 8/10 ビット A/D コンバータの電源電圧について
ラッチアップ防止のため , 8/10 ビット A/D コンバータの電源 (AVCC) は , デジタル電源
(VCC) の電圧を超えないように注意してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
381
第 18 章 8/10 ビット A/D コンバータ
18.6 8/10 ビット A/D コンバータ使用上の注意
382
MB90990 シリーズ
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 19 章
低電圧検出 /CPU 動作検出
リセット
低電圧検出 /CPU 動作検出リセットの機能と動作に
ついて説明します。本機能は "J" サフィックスの
ある製品にのみ使用できます。
評価用品は , CPU 動作検出のみに対応します。
19.1 低電圧 /CPU 動作検出リセット回路の 概要
19.2 低電圧 /CPU 動作検出リセット回路の構成
19.3 低電圧 /CPU 動作検出リセット回路のレジスタ
19.4 低電圧 /CPU 動作検出リセット回路の動作
19.5 低電圧 /CPU 動作検出リセット回路使用上の注意
19.6 低電圧 /CPU 動作検出リセット回路のプログラム例
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
383
第 19 章 低電圧検出 /CPU 動作検出リセット
19.1 低電圧 /CPU 動作検出リセット回路の 概要
19.1
MB90990 シリーズ
低電圧 /CPU 動作検出リセット回路の 概要
低電圧検出リセット回路には電源電圧を監視し , 検出電圧値より電源電圧が下がった
ことを検出する機能があります。低電圧を検出したときに内部リセットを発生しま
す。CPU 動作検出リセット回路は , 発振クロックをカウントクロックとする 20 ビッ
トのカウンタで , 起動後 , 一定時間内にクリアされない場合に内部リセットを発生し
ます。
■低電圧検出リセット回路
図 19.1-1 低電圧 /CPU 動作検出リセット回路の検出電圧
検出電圧
4.2 V ± 0.2 V
4.1 V ± 0.2 V
4.0 V ± 0.2 V
3.9 V ± 0.2 V
3.8 V ± 0.2 V
3.7 V ± 0.2 V
3.6 V ± 0.2 V
3.2 V ± 0.2 V
3.0 V ± 0.2 V
2.8 V ± 0.2 V
初期値
低電圧を検出すると低電圧検出フラグ (LVRC: LVRF) が "1" にセットされ , 内部リセッ
トが出力されます。
STOP モード時も動作を続けますので , 低電圧を検出すると内部リセットが発生して
STOP モードを解除します。
内部 RAM 書込み期間は書込み終了後に低電圧リセットを発生します。
検出電圧は , 低電圧 /CPU 動作検出リセット設定レジスタにて設定可能です。
384
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 19 章 低電圧検出 /CPU 動作検出リセット
19.1 低電圧 /CPU 動作検出リセット回路の 概要
■ CPU 動作検出リセット回路
CPU 動作検出リセット回路はプログラム暴走対策用のカウンタです。パワーオンリ
セット後 , 自動で起動します。起動後は , 一定時間内で定期的にクリアし続ける必要が
あります。プログラムが無限ループに陥るなどして一定時間クリアされない場合には
内部リセットを発生します。CPU 動作検出回路で発生する内部リセットは 5 マシンサ
イクル分の幅です。
図 19.1-2 CPU 動作検出リセット回路のインターバル時間
インターバル時間
221/Fc ( 約 524 ms)*
220/Fc ( 約 262 ms)*
219/Fc ( 約 131 ms)*
218/Fc ( 約 65.5 ms)*
217/Fc ( 約 32.8 ms)*
初期値
*: 発振クロック 4 MHz 動作時のインターバル時間です。
インターバル時間は , 低電圧 /CPU 動作検出リセット設定レジスタにて設定可能です。
CPU が動作を停止するモードでは回路が停止します。
CPU 動作検出リセット回路のカウンタクリア条件を以下に示します。
• LVRC レジスタの CL ビットへの "0","1" の順番での書込み
• 内部リセット
• 発振クロック停止 ( サブクロックモードを含む )
• スリープモードへの遷移
• タイムベースタイマモードへの遷移
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
385
第 19 章 低電圧検出 /CPU 動作検出リセット
19.2 低電圧 /CPU 動作検出リセット回路の構成
MB90990 シリーズ
低電圧 /CPU 動作検出リセット回路の構成
19.2
低電圧 /CPU 動作検出リセット回路は , 次の 4 つのブロックで構成されています。
・CPU 動作検出回路 ・電圧比較回路 ・低電圧 /CPU 動作検出リセット制御レジスタ (LVRC)
・低電圧 /CPU 動作検出リセット設定レジスタ (LVRS)
■低電圧 /CPU 動作検出リセット回路のブロックダイヤグラム
図 19.2-1 低電圧 /CPU 動作検出リセット回路のブロックダイヤグラム
VCC
電圧比較回路
+
VSS
定
電
圧
源
CPU動作検出回路
発振クロック
カウンタ
OF
ノイズキャンセラ
クリア
予約
予約
INT2
INT1 INT0
SEL3
SEL2
SEL1
内
部
リ
セ
ッ
ト
F/F
予約
予約 予約
CL
LVRF
予約
CPUF
SEL0
低電圧検出リセット制御レジスタ (LVRC)
低電圧検出リセット設定レジスタ (LVRS)
内部データバス
● CPU 動作検出回路
プログラム暴走対策用のカウンタです。起動後は , 一定時間内で定期的にクリアし続け
る必要があります。
● 電圧比較回路
検出電圧と電源電圧を比較して , 低電圧を検出すると出力を "H" にします。
電源投入後は常に動作しています。
● 低電圧 /CPU 動作検出リセット制御レジスタ (LVRC)
低電圧 /CPU 動作検出リセットフラグおよび CPU 動作検出機能のカウンタのクリアを
行います。
● 低電圧 /CPU 動作検出リセット設定レジスタ (LVRS)
低電圧 /CPU 動作検出リセットの検出電圧とインターバル時間の設定を行います。
386
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 19 章 低電圧検出 /CPU 動作検出リセット
19.2 低電圧 /CPU 動作検出リセット回路の構成
● 低電圧 /CPU 動作検出リセット回路のリセット要因
電源電圧が検出電圧よりも低下したときに内部リセットを発生します。
CPU 動作検出回路のカウンタが一定時間クリアされなかった場合に内部リセットを発
生します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
387
第 19 章 低電圧検出 /CPU 動作検出リセット
19.3 低電圧 /CPU 動作検出リセット回路のレジスタ
19.3
MB90990 シリーズ
低電圧 /CPU 動作検出リセット回路のレジスタ
低電圧 /CPU 動作検出リセット制御レジスタ (LVRC) は , 低電圧 /CPU 動作検出リ
セットフラグおよび CPU 動作検出回路のカウンタクリアなどを行うレジスタです。
低電圧 /CPU 動作検出リセット設定レジスタ (LVRS) は , 低電圧検出電圧と CPU 動
作検出のインターバル時間の設定を行うレジスタです。
■低電圧 /CPU 動作検出リセット制御レジスタ (LVRC)
図 19.3-1 低電圧 /CPU 動作検出リセット制御レジスタ (LVRC)
アドレス bit 7
00006EH
6
5
4
3
2
1
0
予約
予約
予約
予約
CL
LVRF
予約
CPUF
R/W
R/W
R/W
R/W
W
R/W
初期値
00111000B
R/W
bit0
CPUF
0
1
bit2
LVRF
CPU動作検出フラグビット
読出し時
書込み時
オーバフローなし
CPUFビットクリア
オーバフローあり
変化なし, 影響なし
低電圧検出フラグビット
書込み時
読出し時
電圧低下検出なし
LVRFビットクリア
電圧低下検出あり
変化なし, 影響なし
0
1
bit3
CL
CPU動作検出クリアビット
0
"0","1"の順番で書込みを行った場合の"1"
を書いたタイミングでカウンタをクリアします
1
bit4, bit5
予約
予約ビット
必ず"1"を書き込んでください。
bit1, bit6, bit7
予約
予約ビット
必ず"0"を書き込んでください。
R/W:リード/ライト可能
W :ライトオンリ
:初期値
388
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 19 章 低電圧検出 /CPU 動作検出リセット
19.3 低電圧 /CPU 動作検出リセット回路のレジスタ
表 19.3-1 低電圧 /CPU 動作検出リセット制御レジスタの機能説明
ビット名
CM44-10149-4
機能
bit7,
bit6
予約 :
予約ビット
( 注意事項 ) 必ず "0" を書き込んでください。
bit5,
bit4
予約 :
予約ビット
( 注意事項 ) 必ず "1" を書き込んでください。
bit3
CL :
CPU 動作検出
クリアビット
CPU 動作検出回路のカウンタをクリアするビットで
す。CL ビットに "0", "1" の順番で書込みを行った場合
に , CPU 動作検出回路のカウンタがクリアされます。
bit2
LVRF:
低電圧検出
フラグビット
電源電圧の低下が検出されると LVRF ビットが "1" に
セットされます。書込み時は "0" でクリアされ , "1" で
は LVRF ビットに影響を与えず変化しません。
内部リセットでは初期化されず , 外部リセット入力で
初期化されます。
bit1
予約 :
予約ビット
( 注意事項 ) 必ず "0" を書き込んでください。
bit0
CPUF:
CPU 動作検出
フラグビット
CPU 動作検出機能のカウンタがオーバフローすると
CPUF ビットが "1" にセットされます。
書込み時は "0" でクリアされ , "1" では CPUF ビットに
影響を与えず変化しません。内部リセットでは初期化
されず , 外部リセット入力で初期化されます。
FUJITSU MICROELECTRONICS LIMITED
389
第 19 章 低電圧検出 /CPU 動作検出リセット
19.3 低電圧 /CPU 動作検出リセット回路のレジスタ
MB90990 シリーズ
■低電圧 /CPU 動作検出リセット設定レジスタ (LVRS)
図 19.3-2 低電圧 /CPU 動作検出リセット設定レジスタ (LVRS)
bit
アドレス
0079B2H
初期値
7
6
5
4
-
INT2
INT1
INT0
SEL3 SEL2 SEL1
SEL0
-
R/W
R/W
R/W
R/W
R/W
3
2
R/W
1
0
R/W
SEL3 SEL2 SEL1 SEL0
0
0
0
0
0
0
0
1
1
0
0
0
1
0
0
1
0
1
0
0
0
1
0
1
1
1
0
0
1
1
0
1
0
0
1
0
0
0
1
1
10000111B
検出電圧
2.8V±0.2V
3.0V±0.2V
3.2V±0.2V
3.6V±0.2V
3.7V±0.2V
3.8V±0.2V
3.9V±0.2V
4.0V±0.2V
4.1V±0.2V
4.2V±0.2V
上記以外の組合せの場合は初期値が選択されます。
読出し時は, 書き込んだ値がそのまま読み出せます。
INT2 INT1 INT0
0
0
0
0
0
0
1
0
1
1
0
1
0
1
0
インターバル時間
2 /Fc
17
218/Fc
219/Fc
220/Fc
221/Fc
上記以外の組合せの場合は初期値が選択されます
読出し時は, 書き込んだ値がそのまま読み出せます
未定義
未定義ビット
読出し時は"1"が読めます。書込みは動作に影響しません。
R/W : リード/ライト可能
: 初期値
390
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 19 章 低電圧検出 /CPU 動作検出リセット
19.3 低電圧 /CPU 動作検出リセット回路のレジスタ
MB90990 シリーズ
表 19.3-2 低電圧 /CPU 動作検出リセット設定レジスタの機能説明
ビット名
機能
bit7
未定義ビット
読出し時 : 常に "1" が読み出されます。
書込み時 : 影響しません。
bit6
∼
bit4
INT2 ∼ INT0:
CPU 動作検出イ
ンターバル時間
設定ビット
CPU 動作検出回路のインターバル時間を設定します。
bit3
∼
bit0
SEL3 ∼ SEL0:
低電圧検出電圧
設定ビット
低電圧検出機能の検出電圧を設定します。
設定変更後 , 検出電圧が確定するまで
の時間はデータシートの「リセット検出
遅延時間」を参照ください。
リセット
設定値
検出レベル
初期値
設定値
レジスタ書込み
2 回目の書込みは無効
低電圧 /CPU 動作検出リセット設定レジスタ (LVRS) は , リセット解除後 , 1 回のみ書込
み可能です。2 回目以降の書込みは無効です。レジスタおよび書込み回数のリセット要
因は , パワーオンリセット , 外部リセット , 低電圧検出リセット , CPU 動作検出リセッ
トのみです。クロックスーパバイザリセット , ウォッチドッグリセット , ソフトリセッ
トではレジスタおよび書込み回数は初期化されません。
低電圧 /CPU 動作検出リセット設定レジスタ (LVRS) への書込みは , リセット解除直後
の初期化ルーチン内で行うか , 低電圧 /CPU 動作検出リセット制御レジスタ (LVRS) の
CL ビットにより CPU 動作検出カウンタのクリアを行った直後に行ってください。
CPU
動作検出カウンタのカウントが進んだ状態で設定変更を行うと意図せず CPU 動作検出
リセットが発生する可能性があります。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
391
第 19 章 低電圧検出 /CPU 動作検出リセット
19.4 低電圧 /CPU 動作検出リセット回路の動作
19.4
MB90990 シリーズ
低電圧 /CPU 動作検出リセット回路の動作
電源電圧を監視し , 設定値よりも電源電圧が低下したときに内部リセットを発生しま
す。CPU 動作検出機能では , 一定間隔でカウンタをクリアしない場合に内部リセッ
トを発生します。低電圧または CPU の暴走を検出して内部リセットが発生した場合 ,
レジスタの内容は保証できません。低電圧リセット解除後は , リセットシーケンスを
実行した後にリセットベクタで指定されたアドレスからプログラムが再スタートし
ます。
■低電圧検出リセット回路の動作
低電圧検出リセット回路はリセット解除後 , 動作安定待ち時間を確保せずに , 低電圧検
出動作を開始します。
■ CPU 動作検出リセット回路の動作
CPU 動作検出リセット回路はリセット解除後 , 動作安定待ち時間を確保せずに , CPU 動
作検出動作を開始します。
<注意事項>
低電圧リセット回路は常に動作していますので , スリープ , ストップモード時においても
電流を消費します。
392
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
19.5
第 19 章 低電圧検出 /CPU 動作検出リセット
19.5 低電圧 /CPU 動作検出リセット回路使用上の注意
低電圧 /CPU 動作検出リセット回路使用上の注意
低電圧 /CPU 動作検出リセット回路を使用するための注意点を示します。
■低電圧検出リセット回路使用上の注意
● プログラムでの動作停止不可
低電圧検出リセット回路は電源投入後,動作安定待ち時間を経過すると連続で動作しま
す。ソフトウェアでの動作停止はできません。
● STOP モード時の動作
低電圧検出リセットは , STOP モード時も動作を続けますので , STOP モード中に低電
圧を検出するとリセットが発生し , STOP モードは解除されます。
● 検出電圧の初期値と設定値の関係について
低電圧 /CPU 動作検出リセット設定レジスタは , パワーオンリセット , 外部リセット ,
低電圧検出リセットにより初期化されますので , 検出電圧の初期値と設定値の関係に
よっては , 意図せず低電圧検出リセットが発生 / 解除する場合があります。
初期値>設定値の場合
Vcc
ヒステリシス
検出電圧初期値
Max:200mV
検出電圧設定値
リセット
初期値<設定値の場合
Vcc
検出電圧設定値
ヒステリシス
検出電圧初期値
Max:200mV
リセット
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
393
第 19 章 低電圧検出 /CPU 動作検出リセット
19.5 低電圧 /CPU 動作検出リセット回路使用上の注意
MB90990 シリーズ
■ CPU 動作検出リセット回路使用上の注意
● プログラムでの動作停止不可
CPU 動作検出リセット回路は電源投入後 , 連続で動作します。ソフトウェアでの動作
停止はできません。
● CPU 動作検出機能のリセット発生抑止
CPU 動作検出機能は一定時間ごとにカウンタをクリアする必要があります。LVRC レ
ジスタの CL ビットに "0", "1" の順番で書込みを行うことによりカウンタをクリアし ,
リセット発生を抑止できます。
“0”書込み“1”書込み
“0”書込み“1”書込み
CL ビット
T
T<インターバル時間
CL ビットの立上りエッジを検出して CPU 動作検出機能のカウンタのクリアを行いま
すので , CL ビットの立上りエッジの間隔がインターバル時間の設定値以下の時間にな
るように CL ビットに "0","1" を書き込んでください。
● カウンタの停止とクリア
CPU 動作検出機能は CPU が動作を停止するモードではカウンタをクリアして動作を停
止します。
● サブ発振モード時の動作
CPU 動作検出機能はサブ発振モードでは動作を停止しますので , ウォッチドッグリ
セット機能を併用してください。
● 初期化ルーチンでの処理
プログラムスタート時のリセット解除から CPU 動作検出によるリセット発生までは最
短で 32768 命令サイクルですので , 初期化ルーチン内で 32768 命令サイクル以内にカウ
ンタのクリア , インターバル時間の設定を行ってください。
表 19.5-1 各動作モードでの CPU 動作検出回路の動作
動作モード
条件
メイン /PLL クロックモード
CR サブクロックモード
394
発振クロック停止検出なし
(CSVCR の MM ビット = 0)
発振クロック停止検出あり
(CSVCR の MM ビット =1)
-
CPU 動作検出
カウンタクロック
リセット
発振クロック
(HCLK)
発生する
CR クロック
発生する
停止
発生しない
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 19 章 低電圧検出 /CPU 動作検出リセット
19.6 低電圧 /CPU 動作検出リセット回路のプログラム例
MB90990 シリーズ
19.6
低電圧 /CPU 動作検出リセット回路のプログラム例
低電圧 /CPU 動作検出リセット回路のプログラム例を示します。
■低電圧 /CPU 動作検出リセット回路のプログラム例
● 処理仕様
CPU 動作検出機能のカウンタをクリアします。
● コーディング例
LVRC EQU 006EH ;低電圧/CPU動作検出リセット制御レジスタのアドレス
----------------- メインプログラム ------------------------------- CSEG ;【CODE SEGMENT】
:
MOV LVRC,#00110101B
:
MOV LVRC,#00111101B
:
END
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
395
第 19 章 低電圧検出 /CPU 動作検出リセット
19.6 低電圧 /CPU 動作検出リセット回路のプログラム例
396
MB90990 シリーズ
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章
LIN-UART
LIN-UART の機能と動作について説明します。
20.1 LIN-UART の概要
20.2 LIN-UART の構成
20.3 LIN-UART の端子
20.4 LIN-UART のレジスタ
20.5 LIN-UART の割込み
20.6 LIN-UART のボーレート
20.7 LIN-UART の動作
20.8 LIN-UART 使用上の注意
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
397
第 20 章 LIN-UART
20.1 LIN-UART の概要
MB90990 シリーズ
LIN-UART の概要
20.1
LIN(Local Interconnect Network)-UART は , 外部装置と同期通信もしくは非同期通
信 ( 調歩同期 ) をするための汎用のシリアルデータ通信インタフェースです。双方向
通信機能 ( ノーマルモード ), マスタ / スレーブ型通信機能 ( マルチプロセッサモード :
マスタ / スレーブ両方をサポート ) に加えて LIN バスに対応するための特別な機能も
サポートしています。(LIN バス対応は LIN-UART0, 1 のみ )
■ LIN-UART の機能
● LIN-UART の機能
LIN-UART は , ほかの CPU や周辺装置とシリアルデータの送受信をする汎用シリアル
データ通信インタフェースで , 表 20.1-1 に示す機能があります。
表 20.1-1 LIN-UART の機能 (1 / 2)
機 能
データバッファ
全二重ダブルバッファ
シリアル入力
マシンクロックで 5 回オーバサンプリングを行い , サンプリング
値の多数決により受信値を決定します ( 非同期モードのみ )。
転送モード
・クロック同期 ( スタート / ストップ同期 , またはスタート /
ストップビット選択 )
・クロック非同期 ( スタート / ストップビットが使用可能 )
ボーレート
・専用ボーレートジェネレータあり (15 ビットリロードカウンタ
から構成 )
・外部クロック入力可能。また , リロードカウンタで調節可能
データ長
・7 ビット ( 同期または LIN モード以外 )
・8 ビット
信号方式
NRZ(Non Return to Zero)
スタートビットタイミング
非同期モード時はスタートビット立下りエッジに同期
受信エラー検出
・フレーミングエラー
・オーバランエラー
・パリティエラー ( 動作モード 1 では不可 )
割込み要求
・受信割込み ( 受信完了 , 受信エラー検出 , LIN Synch break 検出 *)
・送信割込み ( 送信データエンプティ )
・ICU への割込み要求 *(LIN Synch field 検出 : LSYN)
・送受信とも拡張インテリジェント I/O サービス (EI2OS) の対応
あり
* : LIN 対応は LIN-UART0, 1 のみ
マスタ / スレーブ型通信機能
( マルチプロセッサモード )
1( マスタ ) 対 n( スレーブ ) 間の通信が可能
( マスタとスレーブシステムの両方をサポート )
同期モード
マスタまたはスレーブ機能
端子アクセス
シリアル入出力端子の状態を直接読出し可能
398
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.1 LIN-UART の概要
MB90990 シリーズ
表 20.1-1 LIN-UART の機能 (2 / 2)
機 能
LIN バスオプション
(LIN-UART0, 1 のみ )
・マスタデバイス動作
・スレーブデバイス動作
・LIN Synch break 検出
・LIN Synch break 生成
・インプットキャプチャ 0, 1 に接続している LIN Synch field
のスタート / ストップエッジ 検出
(UART2 はインプットキャプチャと内部接続していません。この
ため LIN Synch field のスタート / ストップエッジ検出は使用でき
ません。)
同期シリアルクロック
スタート / ストップビットで同期通信するために , SCK 端子に連
続出力可能
クロック遅延オプション
クロックを遅らせるための特殊な同期クロックモード
(SPI に有効 )
■ LIN-UART 動作モード
LIN-UART は 4 つの異なるモードで動作します。動作モードは , LIN-UART シリアル
モードレジスタ (SMR) の MD0, MD1 ビットにより決定されます。モード 0 とモード 2
は双方向シリアル通信 , モード 1 はマスタ / スレーブ通信 , モード 3 は LIN マスタ / ス
レーブ通信に使用されます。
表 20.1-2 LIN-UART シリアルモードレジスタ (SMR) の設定
LINUART0,1
MD1
MD0
モード
0
0
0
非同期 ( ノーマルモード )
0
1
1
非同期 ( マルチプロセッサモード )
1
0
2
同期 ( ノーマルモード )
1
1
3
非同期 (LIN モード )
種類
対応
UART2
対応
非対応
表 20.1-3 LIN-UART の動作モード
データ長
動作モード
0
ノーマルモード
1
マルチ
プロセッサ
モード
2
ノーマルモード
3
LIN モード
パリティ
なし
パリティ
あり
7 ビットまたは 8 ビット
7 ビット
または
8 ビット
+1*
―
8 ビット
8 ビット
―
同期方式
ストップ
ビット長
データビット
フォーマット
非同期
非同期
1 ビット
または
2 ビット
同期
なし ,
1 ビット ,
2 ビット
非同期
1 ビット
LSB ファースト
MSB ファースト
LSB ファースト
―: 設定不可
*: "+1" はマルチプロセッサモードで通信制御用に使用されるアドレス / データ選択ビット (A/D) です。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
399
第 20 章 LIN-UART
20.1 LIN-UART の概要
MB90990 シリーズ
<注意事項>
• モード 1 は , マスタ / スレーブ接続時にはマスタとスレーブいずれの動作にも対応しま
す。
• モード 3 は , 通信フォーマット 8N-1, LSB ファーストに固定されます。
• モードを変更すると UART は送受信を打ち切り , 次の通信開始を待ちます。
■ LIN-UART の割込みと EI2OS
表 20.1-4 LIN-UART の割込みと EI2OS
割込み制御レジスタ
チャネル
LIN-UART0
受信
LIN-UART0
送信
LIN-UART1
受信
LIN-UART1
送信
UART2
受信
UART2
送信
ベクタテーブルのアドレス
EI2OS
割込み番号
レジスタ名
アドレス
下位
上位
バンク
#35(23H)
ICR12
0000BCH
FFFF70H
FFFF71H
FFFF72H
*1
#36(24H)
ICR12
0000BCH
FFFF6CH
FFFF6DH
FFFF6EH
*2
#37(25H)
ICR13
0000BDH
FFFF68H
FFFF69H
FFFF6AH
*1
#38(26H)
ICR13
0000BDH
FFFF64H
FFFF65H
FFFF66H
*2
#39(27H)
ICR14
0000BEH
FFFF60H
FFFF61H
FFFF62H
*1
#40(28H)
ICR14
0000BEH
FFFF5CH
FFFF5DH
FFFF5EH
*2
*1: ICR12, ICR13, ICR14 および割込みベクタを共有する割込み要因が使用されていない場合にのみ使用可能。
受信エラー検出可能。また , EI2OS 停止機能あり。
*2: ICR12, ICR13, ICR14 および割込みベクタを共有する割込み要因が使用されていない場合にのみ使用可能。
400
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
20.2
第 20 章 LIN-UART
20.2 LIN-UART の構成
LIN-UART の構成
LIN-UART の構成ブロックを簡単な概要で示します。
■ LIN-UART の構成
LIN-UART は次のブロックで構成されます。
• リロードカウンタ
• 受信制御回路
• 受信シフトレジスタ
• 受信データレジスタ (RDR)
• 送信制御回路
• 送信シフトレジスタ
• 送信データレジスタ (TDR)
• エラー検出回路
• オーバサンプリング回路
• 割込み生成回路
• LIN Synch break/Synch Field 検出回路
• LIN Synch break 生成回路
• バスアイドル検出回路
• LIN-UART シリアルモードレジスタ (SMR)
• シリアル制御レジスタ (SCR)
• シリアルステータスレジスタ (SSR)
• 拡張通信制御レジスタ (ECCR)
• 拡張ステータス制御レジスタ (ESCR)
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
401
第 20 章 LIN-UART
20.2 LIN-UART の構成
MB90990 シリーズ
■ LIN-UART のブロックダイヤグラム
図 20.2-1 LIN-UART のブロックダイヤグラム
OTO,
EXT,
REST
送信クロック
CLK
ORE
FRE
TIE
RIE
LBIE
受信クロック
リロード
カウンタ
SCKn
PE
LBD
割込み
生成回路
送信制御
回路
受信制御回路
RBI
TBI
端子
スタートビット
送信スタート回路
検出回路
受信
IRQ
SINn
再スタート受信
リロードカウンタ
端子
受信ビット
カウンタ
送信ビット
カウンタ
受信パリティ
カウンタ
送信パリティ
カウンタ
送信
TDRE
IRQ
SOTn
オーバ
サンプリング
回路
端子
RDRF
SOTn
SINn
キャプチャへの
内部信号
LIN Synch break/
Synch Field
検出回路
SINn
送信シフト
レジスタ
受信シフト
レジスタ
LIN Synch
break
生成回路
送信開始
EI2OS へ
バスアイドル
検出回路
エラー検出
回路
PE
ORE
FRE
RDRn
LBR
LBL1
LBL0
TDRn
RBI
LBD
TBI
内部データバス
PE
ORE
FRE
RDRF
TDRE
BDS
RIE
TIE
SSRn
レジスタ
MD1
MD0
OTO
EXT
REST
UPCL
SCKE
SOE
SMRn
レジスタ
PEN
P
SBL
CL
A/D
CRE
RXE
TXE
SCRn
レジスタ
LBIE
LBD
LBL1
LBL0
SOPE
SIOP
CCO
SCES
LBR
ESCRn
レジスタ
MS
SCDE
SSM
ECCRn
レジスタ
RBI
TBI
n = 0, 1, 2
402
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 20 章 LIN-UART
20.2 LIN-UART の構成
■ 各ブロックの説明
● リロードカウンタ
専用ボーレートジェネレータとして機能する 15 ビットリロードカウンタです。リロー
ド値に対する 15 ビットレジスタから構成され , 外部クロックまたは内部クロックより
送受信クロックを生成します。また , 送信リロードカウンタのカウント値を BGRn1,
BGRn0 から読み出すことができます。
● 受信制御回路
受信ビットカウンタ , スタートビット検出回路 , および受信パリティカウンタから構成
されています。受信ビットカウンタは受信データビットをカウントして , 設定したデー
タ長に応じて 1 データの受信を完了するとシリアルステータスレジスタにフラグを
セットします。このとき , 受信割込みが許可されていると受信割込み要求を発生しま
す。スタートビット検出回路はシリアル入力信号からスタートビットを検出する回路
で,スタートビットを検出するとスタートビットの立下りエッジに同期してリロードカ
ウンタに信号を送ります。受信パリティカウンタは受信データのパリティを計算しま
す。
● 受信シフトレジスタ
SINn 端子から入力された受信データをビットシフトしながら取り込み , 受信が完了す
ると RDR レジスタに受信データを転送します。
● 受信データレジスタ (RDR)
受信データを保持します。シリアル入力データは変換され , 受信データレジスタに格納
されます。
● 送信制御回路
送信ビットカウンタ,送信スタート回路および送信パリティカウンタから構成されてい
ます。送信ビットカウンタは送信データビットをカウントして , 設定したデータ長に応
じて 1 データの送信を完了すると送信データレジスタにフラグをセットします。この
とき , 送信割込みが許可されていると送信割込み要求を発生します。送信スタート回路
は TDR のデータ書込みで送信動作を開始します。送信パリティカウンタはパリティあ
りの場合 , 送信するデータのパリティビットを生成します。
● 送信シフトレジスタ
TDR に書き込まれたデータを送信シフトレジスタに転送し , ビットシフトしながら
SOTn 端子に出力します。
● 送信データレジスタ (TDR)
送信データを設定します。書き込まれたデータは , シリアルデータに変換されて出力さ
れます。
● エラー検出回路
受信終了時において , エラーがあったかどうかを検出します。エラーが発生すると , 対
応するエラーフラグをセットします。
● オーバサンプリング回路
非同期モード動作ではマシンクロックで 5 回オーバサンプリングを行い , サンプリング
値の多数決により受信値を決定します。また , 同期モード動作では停止します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
403
第 20 章 LIN-UART
20.2 LIN-UART の構成
MB90990 シリーズ
● 割込み生成回路
すべての割込み要因を制御します。対応する割込み許可ビットがセットされていると
直ちに割込みが発生します。
● LIN Synch break/Synch Field 検出回路
LIN マスタノードがメッセージヘッダを送信すると LIN Synch break を検出します。
LIN
Synch break が検出されると LBD フラグビットがセットされます。LIN Synch Field の 1
回目と 5 回目の立下りエッジを検出し , マスタノードが送信する実際のシリアルクロッ
ク同期を測定するためにキャプチャへ内部信号を出力します。
● LIN Synch break 生成回路
設定された長さの LIN Synch break を生成します。
● バスアイドル検出回路
送受信が行われていないことを検出し , TBI, RBI フラグビットを生成します。
● LIN-UART シリアルモードレジスタ (SMR)
以下に動作機能を示します。
・LIN-UART 動作モード選択
・クロック入力ソースの選択
・外部クロックが 1 対 1 接続またはリロードカウンタ接続であるかの選択
・専用リロードタイマのリセット
・LIN-UART ソフトウェアリセット ( レジスタの設定は維持 )
・シリアルデータ端子への出力許可 / 禁止設定
・クロック端子への出力許可 / 禁止設定
● シリアル制御レジスタ (SCR)
以下に動作機能を示します。
・パリティビット有無の設定
・パリティビット選択
・ストップビット長の設定
・データ長の設定
・モード 1 でのフレームデータ形式の選択
・エラーフラグのクリア
・送信許可 / 禁止
・受信許可 / 禁止
● シリアルステータスレジスタ (SSR)
以下に動作機能を示します。
・送受信やエラーの状態確認
・転送方向 LSB ファースト /MSB ファーストの選択
・受信割込み許可 / 禁止
・送信割込み許可 / 禁止
404
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 20 章 LIN-UART
20.2 LIN-UART の構成
● 拡張通信制御レジスタ (ECCR)
・バスアイドル検出
・同期クロック設定
・LIN Synch break 生成
● 拡張ステータス制御レジスタ (ESCR)
・LIN Synch break 割込み許可 / 禁止
・LIN Synch break 検出
・LIN Synch break 長選択
・SINn, SOTn 端子への直接アクセス
・LIN-UART 同期クロックモードでの連続クロック出力設定
・サンプリングクロックエッジ選択
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
405
第 20 章 LIN-UART
20.3 LIN-UART の端子
20.3
MB90990 シリーズ
LIN-UART の端子
LIN-UART の端子 , 割込み要因 , レジスタの一覧および詳細を示します。
■ LIN-UART の端子
LIN-UART の端子は , 汎用ポートと兼用になっています。表 20.3-1 に端子の機能 , 入出
力形式 , および LIN-UART 使用時の設定などを示します。
表 20.3-1 LIN-UART の端子
入出力形式
スタンバイ
制御
端子の使用に
必要な設定
端子名
端子機能
P82/SIN0,
P85/SIN1,
P50/SIN2
ポート入出力 /
シリアルデータ入力
入力ポートに設定
(DDR : 対応するビット = 0)
P83/SOT0,
P86/SOT1,
P51/SOT2
ポート入出力 /
シリアルデータ出力
出力許可に設定
(SMRn : SOE = 1)
CMOS 出力 /CMOS,
Automotive 入力
P84/SCK0,
P87/SCK1,
P52/SCK2
あり
ポート入出力 /
シリアルクロック
入出力
クロック入力時入力ポートに
設定
(DDR : 対応するビット = 0)
クロック出力時出力
許可に設定
(SMRn : SCKE = 1)
規格値はデータシート「■電気的特性 3. 直流規格」を参照してください。
406
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.3 LIN-UART の端子
MB90990 シリーズ
■ LIN-UART の端子のブロックダイヤグラム
図 20.3-1 LIN-UART の端子のブロックダイヤグラム
リソース入力*
ポートデータレジスタ (PDR)
リソース出力*
リソース出力許可
内部データバス
PDRリード
出力ライト
P-ch
PDRリード
端子
ポート方向レジスタ (DDR)
方向ラッチ
N-ch
汎用 I/O 端子 /SIN
汎用 I/O 端子 /SCK
汎用 I/O 端子 /SOT
DDRライト
スタンバイ制御 (SPL=1)
DDRリード
スタンバイ制御 : ストップモード (SPL =1), 時計モード (SPL = 1), タイムベースタイマモード (SPL = 1)
* : リソース入出力信号はリソース機能を持つ端子から入出力されます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
407
第 20 章 LIN-UART
20.4 LIN-UART のレジスタ
20.4
MB90990 シリーズ
LIN-UART のレジスタ
LIN-UART のレジスタ一覧を示します。
■ LIN-UART のレジスタ一覧
図 20.4-1 LIN-UART のレジスタ一覧
• LIN-UART0
bit 15
アドレス
bit 8
bit 7
bit 0
000021H,
000020H
SCR0 ( シリアル制御レジスタ )
SMR0 ( シリアルモードレジスタ )
000023H,
000022H
SSR0 ( シリアルステータスレジスタ )
RDR0/TDR0 (受信データレジスタ/送信データレジスタ)
000025H,
000024H
ESCR0 ( 拡張ステータス制御レジスタ )
ECCR0 ( 拡張通信制御レジスタ )
000027H,
000026H
BGR01 (ボーレートジェネレータレジスタ)
BGR00 ( ボーレートジェネレータレジスタ )
bit 15
bit 7
• LIN-UART1
アドレス
bit 8
bit 0
000029H,
000028H
SCR1 ( シリアル制御レジスタ )
SMR1 ( シリアルモードレジスタ )
00002BH,
00002AH
SSR1 ( シリアルステータスレジスタ )
RDR1/TDR1 (受信データレジスタ/送信データレジスタ)
00002DH,
00002CH
ESCR1 ( 拡張ステータス制御レジスタ )
ECCR1 ( 拡張通信制御レジスタ )
00002FH,
00002EH
BGR11 (ボーレートジェネレータレジスタ)
BGR10 ( ボーレートジェネレータレジスタ )
bit 15
bit 7
• UART2
アドレス
bit 8
bit 0
0000D9H,
0000D8H
SCR2 ( シリアル制御レジスタ )
SMR2( シリアルモードレジスタ )
0000DBH
0000DAH
SSR2 ( シリアルステータスレジスタ )
RDR2/TDR2 (受信データレジスタ/送信データレジスタ)
0000DDH
0000DCH
ESCR2 ( 拡張ステータス制御レジスタ )
ECCR2 ( 拡張通信制御レジスタ )
0000DFH
0000DEH
BGR21 (ボーレートジェネレータレジスタ)
BGR20 ( ボーレートジェネレータレジスタ )
408
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.4 LIN-UART のレジスタ
MB90990 シリーズ
シリアル制御レジスタ (SCR)
20.4.1
シリアル制御レジスタ (SCR) は , パリティの設定 , ストップビット長やデータ長の
選択 , モード 1 でのフレームデータ形式の選択 , 受信エラーフラグのクリア , 送受信
動作の許可または禁止の設定を行います。
■ シリアル制御レジスタ (SCR)
図 20.4-2 シリアル制御レジスタ (SCR)
アドレス
SCR0 : 000021 H
SCR1 : 000029 H
SCR2 : 0000D9 H
bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 bit7
PEN
P
R/W
R/W
SBL
R/W
CL
R/W
A/D
R/W
CRE
RXE
TXE
W
R/W
R/W
bit0
初期値
00000000B
bit8
TXE
送信動作許可ビット
0
送信禁止
1
送信許可
bit9
RXE
受信動作許可ビット
0
受信禁止
1
受信許可
bit10
CRE
受信エラーフラグクリアビット
書込み時
0
影響なし
1
受信エラーフラグ(PE,
FRE, ORE) クリア
読出し時
常に "0" を読み出
す
bit11
A/D
アドレス / データ形式選択ビット
0
データフレーム
1
アドレスフレーム
bit12
CL
データ長選択ビット
0
7 ビット
1
8 ビット
bit13
SBL
ストップビット長選択ビット
0
1 ビット
1
2 ビット
bit14
P
R/W
: リード / ライト可能
W
: ライトオンリ
: 初期値
CM44-10149-4
パリティ選択ビット
0
偶数パリティ
1
奇数パリティ
bit15
PEN
パリティ許可ビット
0
パリティなし
1
パリティあり
FUJITSU MICROELECTRONICS LIMITED
409
第 20 章 LIN-UART
20.4 LIN-UART のレジスタ
MB90990 シリーズ
表 20.4-1 シリアル制御レジスタ (SCR) の各ビットの機能説明
ビット名
bit15
PEN :
パリティ許可
ビット
bit14
P:
パリティ選択
ビット
bit13
SBL :
ストップビット
長選択ビット
機 能
パリティビットの付加 ( 送信時 ) と検出 ( 受信時 ) を行うかどうかを設定
します。
( 注意事項 )
パリティビットは動作モード 0 の場合 , または動作モード 2 でスター
ト/ストップあり(ECCR:SSM=1)に設定した場合にのみ付加されます。
モード 1,3 のときには "0" に固定されます。
パリティビットあり (SCR:PEN=1) に設定した場合に奇数パリティ (1) か
偶数パリティ (0) のいずれかに設定します。
動作モード 0, 1( 非同期 ) の場合 , または動作モード 2( 同期 ) でスタート /
ストップビットあり (ECCR:SSM=1) に設定した場合のストップビット (
送信データのフレームエンドマーク ) のビット長を設定します。
本ビットは , モード 3(LIN) では "0" に固定されます。
( 注意事項 )
受信時は , 常にストップビットのビット長分を検出します。
bit12
bit11
bit10
bit9
bit8
410
CL :
データ長選択
ビット
A/D :
アドレス /
データ形式
選択ビット
CRE :
受信エラーフラグ
クリアビット
RXE :
受信動作許可
ビット
TXE :
送信動作許可
ビット
送受信データのデータ長を指定します。本ビットは , モード 2, 3 では "1"
に固定されます。
マルチプロセッサモード ( モード 1) で , 送受信するフレームのデータ形
式を指定します。マスタ側は本ビットに書き込み , スレーブ側は本ビッ
トを読み出してください。
・"0" に設定した場合 : データフレームに設定されます。
・"1" に設定した場合 : アドレスデータのフレームに設定されます。
読出しは , 最後に受信したデータ形式の値になります。
( 注意事項 )
本ビットの使用にあたっては , 「20.8 LIN-UART 使用上の注意」を参
照してください。
シリアルステータスレジスタ (SSR) の FRE, ORE, PE フラグをクリアする
ビットです。
・"1" 書込みで , エラーフラグがクリアされます。
・"0" 書込みでは , 影響ありません。
読み出した場合 , 常に "0" が読めます。
LIN-UART の受信動作を許可または禁止します。
・"0" に設定した場合 : データフレーム受信動作が禁止されます。
・"1" に設定した場合 : データフレーム受信動作が許可されます。
モード 3 での LIN Synch break 検出は影響されません。
( 注意事項 )
受信中に受信動作を禁止 (RXE=0) した場合には , 直ちに受信動作が停
止します。この場合 , データは保証されません。
LIN-UART の送信動作を許可または禁止します。
・"0" に設定した場合 : データフレーム送信動作が禁止されます。
・"1" に設定した場合 : データフレーム送信動作が許可されます。
( 注意事項 )
送信中に送信動作を禁止 (TXE=0) した場合には , 直ちに送信動作が停
止します。この場合 , データは保証されません。
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.4 LIN-UART のレジスタ
MB90990 シリーズ
LIN-UART シリアルモードレジスタ (SMR)
20.4.2
LIN-UART シリアルモードレジスタ (SMR) は , 動作モードの選択 , ボーレートク
ロックの選択 , シリアルデータとクロックの端子への出力許可または禁止の設定を行
います。
■ LIN-UART シリアルモードレジスタ (SMR)
図 20.4-3 LIN-UART シリアルモードレジスタ (SMR)
アドレス
SMR0:000020H
SMR1:000028H
bit15
SMR2:0000D8H
bit8 bit7 bit6 bit5 bit4
MD1
MD0
OTO
R/W
R/W
R/W
EXT
R/W
bit3 bit2
bit1 bit0
REST
UPCL
SCKE
W
R/W
W
SOE
初期値
00000000B
R/W
bit0
SOE
LIN-UART シリアルデータ出力許可ビット
0
汎用入出力ポート
1
LIN-UART シリアルデータ出力端子
bit1
SCKE
LIN-UART シリアルクロック出力許可ビット
0
汎用入出力ポートまたは LIN-UART クロッ
ク入力端子
1
LIN-UART のシリアルクロック出力端子
bit2
LIN-UART プログラマブルクリアビット
UPCL
書込み時
0
影響なし
1
LIN-UART リセット
読出し時
常に "0" を
読み出す
bit3
リロードカウンタ再スタートビット
REST
書込み時
0
影響なし
1
リロードカウンタの
再スタート
読出し時
常に "0" を
読み出す
bit4
EXT
外部シリアルクロックソース選択ビット
0
ボーレートジェネレータ
( リロードカウンタ ) 使用
1
外部シリアルクロックソース使用
bit5
OTO
1 対 1 外部クロック入力許可ビット
ボーレートジェネレータ
( リロードカウンタ ) 使用
0
1
外部クロック直接使用
bit7
bit6
MD1
MD0
R/W
: リード / ライト可能
0
0
モード 0: 非同期 ノーマル
W
: ライトオンリ
0
1
モード 1: 非同期 マルチプロセッサ
1
0
モード 2: 同期
1
1
モード 3: 非同期 LIN
: 初期値
CM44-10149-4
動作モード設定ビット
FUJITSU MICROELECTRONICS LIMITED
411
第 20 章 LIN-UART
20.4 LIN-UART のレジスタ
MB90990 シリーズ
表 20.4-2 シリアルモードレジスタ (SMR) の各ビットの機能説明 (1 / 2)
ビット名
機 能
bit7,
bit6
MD1, MD0 :
動作モード設定ビット
bit5
OTO :
1 対 1 外部クロック入力許可
ビット
"1" の書込みで , LIN-UART シリアルクロックに外部クロッ
クを直接使用することを許可します。
動作モード 2( 同期 ) スレーブ動作 (ECCR:MS=1) 時に使用
されます。
EXT=0 の場合 , OTO ビットは "0" に固定されます。
bit4
EXT :
外部シリアルクロックソース
選択ビット
クロック入力を選択します。
"0" を設定すると内部ボーレートジェネレータ ( リロードカ
ウンタ ) のクロックとなり , "1" を設定すると外部シリアル
クロックソースを選択します。
bit3
REST :
リロードカウンタ
再スタートビット
"1" を書き込んだ場合 , リロードカウンタは再スタートしま
す。
"0" を書き込んだ場合は , 影響ありません。
常に "0" が読み出されます。
bit2
bit1
412
UPCL :
LIN-UART プログラマブル
クリアビット
(LIN-UART ソフトウェア
リセット )
SCKE :
LIN-UART シリアルクロック
出力許可ビット
動作モードを設定します。
"1" を書き込んだ場合 , LIN-UART を即時リセット (LINUART ソフトウェアリセット ) します。ただし , レジスタの
設定は維持されます。その際 , 送受信は中断されます。
すべての送受信割込み要因 (TDRE, RDRF, LBD, PE, ORE,
FRE) は解除されます。割込み禁止および送信禁止に設定し
た後 , LIN-UART のリセットを行ってください。また , 受信
データレジスタはクリア (RDR=00H) され , リロードカウン
タは再スタートします。
"0" を書き込んだ場合は , 影響ありません。
常に "0" が読み出されます。
( 注意事項 ) シリアル制御レジスタ (SCR) の TXE ビットが "0" のとき
に LIN-UART ソフトウェアリセット (UPCL=1) を実行し
てください。
シリアルクロックの入出力ポートを制御するビットです。
"0" の場合は SCKn 端子は汎用入出力ポート , またはシリア
ルクロック入力端子として機能します。"1" の場合はシリア
ルクロック出力端子となり , 動作モード 2( 同期 ) でクロッ
クを出力します。
ECCR:MS=1 の場合 , SCKE ビットは "0" に固定されます。
( 注意事項 )
SCKn 端子をシリアルクロック入力 (SCKE=0) として使用
する場合は , 汎用入出力ポートの対応する DDR ビットを
入力ポートに設定してください。また , クロック選択ビッ
トによって外部クロックを選択 (EXT=1) してください。
( 参考 )
SCKn 端子がシリアルクロック出力 (SCKE=1) に設定され
ている場合は , 汎用入出力ポートの状態にかかわらず , シ
リアルクロック出力端子として機能します。
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.4 LIN-UART のレジスタ
MB90990 シリーズ
表 20.4-2 シリアルモードレジスタ (SMR) の各ビットの機能説明 (2 / 2)
bit0
ビット名
機 能
SOE :
LIN-UART シリアル
データ出力許可ビット
シリアルデータの出力を許可 / 禁止するビットです。
"0" の場合 , SOTn 端子は汎用入出力ポートとなり , "1" の場
合はシリアルデータ出力端子 (SOTn) となります。
( 参考 )
シリアルデータ出力 (SOE=1) の場合 , SOTn 端子は汎用入
出力ポートの状態にかかわらず , SOTn 端子として機能し
ます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
413
第 20 章 LIN-UART
20.4 LIN-UART のレジスタ
MB90990 シリーズ
シリアルステータスレジスタ (SSR)
20.4.3
シリアルステータスレジスタ (SSR) は , 送受信やエラーの状態の確認 , 割込みの許可
または禁止の設定を行います。
■ シリアルステータスレジスタ (SSR)
図 20.4-4 シリアルステータスレジスタ (SSR)
アドレス
SSR0:000023H
SSR1:00002BH
SSR2:0000DBH
bit15 bit14 bit13 bit12
PE
R
bit11 bit10 bit9
bit8
bit0
ORE FRE RDRF TDRE BDS RIE TIE
R
R
R
R
R/W R/W R/W
初期値
00001000B
bit8
TIE
送信割込み要求許可ビット
0
送信割込み禁止
1
送信割込み許可
bit9
RIE
受信割込み要求許可ビット
0
受信割込み禁止
1
受信割込み許可
bit10
BDS
転送方向選択ビット
0
LSB ファースト ( 最下位ビットから転送 )
1
MSB ファースト ( 最上位ビットから転送 )
bit11
TDRE
送信データエンプティフラグビット
0
送信データレジスタ TDR にデータが存在
する
1
送信データレジスタ TDR が空
bit12
RDRF
受信データフルフラグビット
0
受信データレジスタ RDR が空
1
受信データレジスタ RDR にデータが存在
する
bit13
FRE
フレーミングエラーフラグビット
0
フレーミングエラーなし
1
フレーミングエラーあり
bit14
ORE
オーバランエラーフラグビット
0
オーバランエラーなし
1
オーバランエラーあり
bit15
PE
R/W
: リード / ライト可能
R
: リードオンリ
パリティエラーフラグビット
0
パリティエラーなし
1
パリティエラーあり
: 初期値
414
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.4 LIN-UART のレジスタ
MB90990 シリーズ
表 20.4-3 シリアルステータスレジスタ (SSR) の各ビットの機能説明 (1 / 2)
ビット名
機 能
・PE = 1 で受信時にパリティエラーが発生すると "1" にセットされ ,
LIN-UART シリアル制御レジスタ (SCR) の CRE ビットに "1" を書き
込むとクリアされます。
・PE ビットと RIE ビットが "1" の場合 , 受信割込み要求を出力します。
・本フラグがセットされた場合は , 受信データレジスタ (RDR) のデー
タは無効です。
bit15
PE :
パリティエラー
フラグビット
bit14
・受信時にオーバランが発生すると "1" にセットされ , LIN-UART シリ
アル制御レジスタ (SCR) の CRE ビットに "1" を書き込むとクリアさ
ORE :
れます。
オーバランエラー
・ORE ビットと RIE ビットが "1" の場合 , 受信割込み要求を出力します。
フラグビット
・本フラグがセットされた場合は , 受信データレジスタ (RDR) のデー
タは無効です。
bit13
FRE :
フレーミング
エラーフラグ
ビット
・受信時にフレーミングエラーが発生すると "1" にセットされ , LINUART シリアル制御レジスタ (SCR) の CRE ビットに "1" を書き込む
とクリアされます。
・FRE ビットと RIE ビットが "1" の場合 , 受信割込み要求を出力します。
・本フラグがセットされた場合は , 受信データレジスタ (RDR) のデー
タは無効です。
( 注意事項 )
SCR:SBL=1 のとき , ストップビットの 1,2 ビット目でフレーミング
エラーを検出した場合 , どちらのストップビットでも本ビットは "1"
にセットされます。そのため , ストップビットの 2 ビット目で受信
データが有効か無効か判断が必要です。
bit12
RDRF :
受信データ
フルフラグビット
・受信データレジスタ (RDR) の状態を示すフラグです。
・RDR に受信データがロードされると "1" にセットされ , 受信データ
レジスタ (RDR) を読み出すと "0" にクリアされます。
・RDRFビットとRIEビットが"1"の場合,受信割込み要求を出力します。
bit11
・送信データレジスタ (TDR) の状態を示すフラグです。
・TDR に送信データを書き込むと "0" となり , TDR に有効なデータが
存在していることを示します。データが送信シフトレジスタにロー
ドされて送信が開始されると "1" となり , TDR に有効なデータが存在
TDRE :
していないことを示します。
送信データ
・TDREビットとTIEビットが"1"の場合,送信割込み要求を出力します。
エンプティフラグ ・TDRE ビットが "1" のとき , 拡張通信制御レジスタ (ECCR) の LBR
ビット
ビットに "1" をセットすると TDRE ビットは "0" となり , LIN sync
break 生成後 TDR に有効なデータが存在していない場合 "1" になりま
す。
( 注意事項 )
初期状態では , TDRE = 1 になっています。
bit10
BDS :
転送方向選択
ビット
CM44-10149-4
・転送シリアルデータを最下位ビット側から先に転送するか (LSB
ファースト , BDS=0), 最上位ビット側から先に転送するか (MSB
ファースト , BDS=1) を選択するビットです。
モード3時は "0" に固定されます。
( 注意事項 )
受信データレジスタ (RDR) への受信データの書込み時に , そのデー
タの上位側と下位側を入れ替えているため RDR への受信データの
書込み後 , BDS ビットを書き換えた場合 , RDR のデータは無効にな
ります。
FUJITSU MICROELECTRONICS LIMITED
415
第 20 章 LIN-UART
20.4 LIN-UART のレジスタ
MB90990 シリーズ
表 20.4-3 シリアルステータスレジスタ (SSR) の各ビットの機能説明 (2 / 2)
ビット名
機 能
bit9
RIE :
受信割込み要求
許可ビット
・CPU への受信割込み要求出力の許可 / 禁止をするビットです。
・RIE ビットと受信データフラグビット (RDRF) が "1" の場合 , または
1 つ以上のエラーフラグビット (PE, ORE, FRE) が "1" の場合に受信割
込み要求を出力します。
bit8
TIE :
送信割込み要求
許可ビット
・CPU への送信割込み要求出力の許可 / 禁止をするビットです。
・TIE ビットと TDRE ビットが "1" の場合に送信割込み要求を出力しま
す。
416
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.4 LIN-UART のレジスタ
MB90990 シリーズ
20.4.4
受信データレジスタ / 送信データレジスタ
(RDR/TDR)
受信データと送信データレジスタは同一アドレスに配置されています。読み出した
場合は受信データレジスタとして機能し , 書き込んだ場合は送信データレジスタとし
て機能します。
■ 受信データレジスタ (RDR)
図 20.4-5 に , 受信レジスタのビット構成を示します。
図 20.4-5 受信データレジスタ / 送信データレジスタ (RDR/TDR)
アドレス
RDR0/TDR0: 000022H
RDR1/TDR1: 00002AH
RDR2/TDR2: 0000DAH
bit
7
6
5
4
3
2
1
0
D7 D6 D5 D4 D3 D2 D1 D0
初期値
00000000B [RDR]
11111111B [TDR]
R/W R/W R/W R/W R/W R/W R/W R/W
bit7 ∼ bit0
R/W
データレジスタ
読出し
受信データレジスタから読み出す
書込み
送信データレジスタに書き込む
R/W : リード / ライト可能
受信データレジスタ (RDR) は , シリアルデータ受信用のデータバッファレジスタです。
シリアル入力端子 (SINn 端子 ) に送られてきたシリアルデータ信号がシフトレジスタ
で変換されて , 受信データレジスタ (RDR) に格納されます。
データ長が 7 ビットの場合は , 上位 1 ビット (RDR:D7) は "0" となります。
受信データが受信データレジスタ (RDR) に格納されると , 受信データフルフラグビッ
ト (SSR:RDRF) が "1" に セ ッ ト さ れ ま す。受 信 割 込 み が 許 可 さ れ て い る 場 合 は
(SSR:RIE=1) 受信割込み要求を発生します。
受信データレジスタ (RDR) は受信データフルフラグビット (SSR:RDRF) が "1" の状態
で読み出してください。受信データフルフラグビット (SSR:RDRF) は受信データレジ
スタ (RDR) を読み出すと自動的に "0" にクリアされます。また , 受信割込みが許可さ
れていて , エラーが発生していない場合には受信割込みもクリアされます。
受信エラーが発生 (SSR:PE, ORE, FRE のいずれかが "1") した場合 , 受信データレジス
タ (RDR) のデータは無効となります。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
417
第 20 章 LIN-UART
20.4 LIN-UART のレジスタ
MB90990 シリーズ
■ 送信データレジスタ (TDR)
送信データレジスタ (TDR) は , シリアルデータ送信用のデータバッファレジスタです。
送信動作が許可されている場合に(SCR:TXE=1),送信するデータを送信データレジスタ
(TDR) に書き込むと送信データが送信用シフトレジスタに転送されてシリアルデータ
に変換され , シリアルデータ出力端子 (SOTn 端子 ) から送出されます。
データ長が 7 ビットの場合 , 上位 1 ビット (TDR:D7) は無効データとなります。
送信データエンプティフラグ (SSR:TDRE) は , 送信データが送信データレジスタ (TDR)
に書き込まれると "0" にクリアされます。
送信データエンプティフラグ (SSR:TDRE) は , 送信用シフトレジスタへの転送が終了し ,
送信が開始されると "1" にセットされます。
送信データエンプティフラグ (SSR:TDRE) が "1" の場合は , 次の送信用データを書き込
むことができます。送信割込みが許可されている場合には送信割込みが発生します。次
の送信データの書込みは , 送信割込みの発生によるか , 送信データエンプティフラグ
(SSR:TDRE) が "1" の状態で行ってください。
<注意事項>
送信データレジスタは書込み専用のレジスタで , 受信データレジスタは読込み専用のレジ
スタです。2 つのレジスタは同一アドレスに配置されているため , 書込み値と読出し値が
異なります。したがって , INC/DEC 命令などリードモディファイライト (RMW) 系命令は
使用できません。
418
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.4 LIN-UART のレジスタ
MB90990 シリーズ
拡張ステータス制御レジスタ (ESCR)
20.4.5
拡張ステータス制御レジスタ (ESCR) には , LIN Synch break 割込み許可 / 禁止 ,
LIN Synch break 長選択 , LIN Synch break 検出 , SINn, SOTn 端子への直接アクセ
ス , LIN-UART 同期クロックモードでの連続クロック出力 , サンプリングクロック
エッジの設定があります。
■ 拡張ステータス制御レジスタ (ESCR) のビット構成
図 20.4-6 に拡張ステータス制御レジスタ (ESCR) のビット構成を , 表 20.4-4 に各ビット
の機能を示します。
図 20.4-6 拡張ステータス制御レジスタ (ESCR) のビット構成
アドレス
ESCR0 : 000025H
ESCR1 : 00002DH
ESCR2 : 0000DDH
bit 15 bit 14 bit 13 bit 12 bit 11 bit 10 bit 9 bit 8bit 7
LBIE
LBD
LBL1 LBL0
SOPE
SIOP
CCO
SCES
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit 0 初期値
00000X00B
bit 8
SCES
0
1
サンプリングクロックエッジ選択ビット ( モード 2)
クロックの立上りエッジでサンプリング ( ノーマル )
クロックの立下りエッジでサンプリング ( 反転クロック )
bit 9
CCO
0
1
連続クロック出力許可ビット ( モード 2)
連続クロック出力禁止
連続クロック出力許可
bit 10
SIOP
0
1
シリアル入出力端子直接アクセスビット
書込み (SOPE = 1) 時
読出し時
SOTn 端子を "0" に固定
SINn 端子の値を読み出す
SOTn 端子を "1" に固定
bit 11
SOPE
0
1
シリアル出力端子直接アクセス許可ビット
シリアル出力端子直接アクセス禁止
シリアル出力端子直接アクセス許可
bit 12
LBL0
0
1
0
1
bit 13
LBL1
0
0
1
1
LIN Synch break 長選択ビット
13 ビット分
14 ビット分
15 ビット分
16 ビット分
bit 14
LBD
0
1
R/W
: リード / ライト可能
: 初期値
CM44-10149-4
bit 15
LBIE
0
1
LIN Synch break 検出フラグビット
書込み時
読出し時
LIN Synch break 検出フラグ
LIN Synch break 検出なし
クリア
LIN Synch break 検出あり
影響なし
LIN Synch break 検出割込み許可ビット
LIN Synch break 検出割込み禁止
LIN Synch break 検出割込み許可
FUJITSU MICROELECTRONICS LIMITED
419
第 20 章 LIN-UART
20.4 LIN-UART のレジスタ
MB90990 シリーズ
表 20.4-4 拡張ステータス制御レジスタ (ESCR) の各ビットの機能説明
ビット名
bit15
LBIE :
LIN Synch break 検出
割込み許可ビット
bit14
LBD :
LIN Synch break 検出
フラグビット
bit13,
bit12
bit11
bit10
bit9
bit8
LBL1/LBL0 :
LIN Synch break 長選択
ビット
SOPE :
シリアル出力端子直接
アクセス許可ビット *
SIOP :
シリアル入出力端子直接
アクセスビット *
CCO :
連続クロック出力許可
ビット
SCES :
サンプリングクロック
エッジ 選択ビット
機 能
LIN Synch break 検出割込みを許可 / 禁止するビットです。
LIN Synch break 検出フラグ (LBD) が "1" のとき , 割込みが
許可 (LBIE=1) されると割込みを発生します。
モード 1, 2 では "0" に固定されます。
動作モード 3 で LIN Synch break が検出される ( シリアル入
力が 11 ビット幅以上 "0" になる ) と "1" にセットされます。
また , "0" を書き込むと LBD ビットと割込みはクリアされま
す。リードモディファイライト系命令を実行すると常に "1"
が読み出されますが LIN Synch break の検出によるものでは
ありませんのでご注意ください。
( 注意事項 )
LIN Synch break 検出を行う際には , LIN Synch break 検
出割込みを許可 (LBIE=1) に設定した後 , 受信禁止
(SCR:RXE=0) に設定してください。
これらのビットは , LIN Synch break の生成時間を何ビット
分とするかを設定します。
受信 LIN Synch break 長は常に 11 ビットです。
シリアルデータの出力が許可 (SMR:SOE=1) されているとき
に本ビットに "1" を設定すると , SOTn 端子への直接書込み
を許可します。*
通常の読出し命令は , 常に SINn 端子の値を返します。
シリアル出力端子直接アクセス許可 (SOPE=1) のときに書込
みを行うと本ビット値が SOTn 端子に反映されます。
( 注意事項 )
ビット操作命令の場合は読出しサイクル内の SOTn の
ビット値を返します。*
動作モード 2( 同期 ) でマスタ設定のとき , SCKn 端子がク
ロック出力に設定されていると , SCKn 端子からの連続シリ
アルクロック出力を許可します。
( 注意事項 )
CCO ビットが "1" のとき , ECCR の SSM ビットを "1" に
して使用してください。
動作モード 2( 同期 ) のスレーブ設定のとき , SCES を "1" に
設定するとサンプリングエッジが立上りエッジから立下り
エッジへ切り換わります。
動作モード 2 のマスタ設定 (ECCR:MS=0) で SCKn 端子がク
ロック出力のとき ,内部シリアルクロックと出力クロック信
号が反転します。
動作モード 0, 1, 3 のときは "0" に設定してください。
*: 表 20.4-5 を参照してください。
表 20.4-5 SOPE と SIOP の相互作用説明
SOPE
SIOP
SIOP への書込み
SIOP からの読出し
0
R/W
影響なし ( ただし , 書込み値は保持される )
SINn の値を返す
1
R/W
SOTn へ "0" または "1" 書込み
SINn の値を返す
0
RMW
影響なし ( ただし , 書込み値は保持される )
SOTn の値を返す
1
RMW
SOTn へ "0" または "1" 書込み
SOTn の値を返す
420
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.4 LIN-UART のレジスタ
MB90990 シリーズ
拡張通信制御レジスタ (ECCR)
20.4.6
拡張通信制御レジスタ (ECCR) は , バスアイドル検出 , 同期クロック設定および LIN
Synch break の生成を行います。
■ 拡張通信制御レジスタ (ECCR) のビット構成
図 20.4-7 に拡張通信制御レジスタ (ECCR) のビット構成を , 表 20.4-6 に各ビットの機能
を示します。
図 20.4-7 拡張通信制御レジスタ (ECCR) のビット構成
アドレス
bit15
ECCR0:000024H
ECCR1:00002CH
ECCR2:0000DCH
bit8 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 初期値
予約
LBR
MS
SCDE
SSM
-
W
R/W
R/W
R/W
予約
-
RBI
TBI
R
R
000000XXB
bit 0
TBI*
0
1
送信バスアイドル検出フラグビット
送信中
送信動作なし
bit1
RBI*
0
1
受信バスアイドル検出フラグビット
受信中
受信動作なし
bit 2
予約ビット
読出し値は "0" です。
常に "0" を書き込んでください。
bit 3
SSM
0
1
スタート / ストップビットモード許可ビット ( モード 2)
スタート / ストップビットなし
スタート / ストップビットあり
bit 4
SCDE
0
1
シリアルクロック遅延許可ビット ( モード 2)
クロック遅延禁止
クロック遅延許可
bit 5
MS
0
1
マスタ / スレーブモード選択ビット ( モード 2)
マスタモード ( シリアルクロック発生 )
スレーブモード ( 外部シリアルクロック受信 )
bit 6
LBR
0
1
LIN Synch break 生成ビット
書込み時
読出し時
影響なし
常に "0" を読み出す
LIN Synch break 生成
bit 7
R/W
: リード / ライト可能
R
: リードオンリ
W
: ライトオンリ
X
: 不定
予約ビット
読出し値は "0" です。常に "0" を書き込んでください。
: 初期値
* : 動作モード 2 で SSM = 0 のときには未使用
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
421
第 20 章 LIN-UART
20.4 LIN-UART のレジスタ
MB90990 シリーズ
表 20.4-6 拡張通信制御レジスタ (ECCR) の各ビットの機能説明
ビット名
機 能
bit7
予約ビット
読出し値は "0" です。常に "0" を書き込んでくだ
さい。
bit6
LBR:
Lin Synch break 生成ビット
動作モード 3 において , 本ビットに "1" を設定す
ると ESCR の LBL0/LBL1 ビットで設定された長
さの LIN Synch break を生成します。動作モード
0 時は , "0" に設定してください。
bit5
MS:
マスタ / スレーブモード選択ビット
モード 2 においてマスタまたはスレーブモード
を選択できます。
"0" のマスタモード選択時は , 同期クロックを生
成します。
"1" のスレーブモード選択時は , 外部シリアルク
ロックを受信します。モード 0, 1, 3 のときは "0"
に固定されます。
本ビットを変更する場合は , SCR: TXE ビットが
"0" のときに行ってください。
( 注意事項 )
スレーブモード選択時は , クロックソースを
外部クロックに設定し , 外部クロック入力を
許可 (SMR:SCKE=0, EXT=1, OTO=1) にする
必要があります。
422
bit4
SCDE:
シリアルクロック遅延許可ビット
モード 2 のマスタモード動作時に , SCDE ビット
を "1" に設定すると図 20.7-5 に示すような遅延
したシリアルクロックを出力します。本ビット
は SPI に有効です。
モード 0, 1, 3 のときは "0" に固定されます。
bit3
SSM:
スタート / ストップビットモード許可
ビット
モード 2 で本ビットが "1" に設定されているとス
タート/ストップビットを同期データフォーマッ
トに付加します。
モード 0, 1, 3 のときは "0" に固定されます。
bit2
予約ビット
読出し値は "0" です。
常に "0" を書き込んでください。
bit1
RBI:
受信バスアイドル検出フラグビット
bit0
TBI:
送信バスアイドル検出フラグビット
SIN 端子が "H" レベルかつ受信動作をしていな
いときに "1" になります。動作モード 2 のときは
本ビットを使用しないでください。
SOTn 端子に送信動作がない場合は "1" になりま
す。動作モード 2 で MS=0 のときは本ビットを
使用しないでください。
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.4 LIN-UART のレジスタ
MB90990 シリーズ
ボーレートジェネレータレジスタ 0, 1(BGR0/BGR1)
20.4.7
ボーレートジェネレータレジスタ 0, 1(BGR0/BGR1) は , シリアルクロックの分周比を
設定します。また , 送信リロードカウンタのカウント値を読み出すことができます。
■ ボーレートジェネレータレジスタ (BGRn0/BGRn1) のビット構成
図 20.4-8 にボーレートジェネレータレジスタ (BGRn0/BGRn1) のビット構成を示します。
図 20.4-8 ボーレートジェネレータレジスタ (BGRn0/BGRn1) のビット構成
アドレス
BGR00:
BGR01:
BGR10:
BGR11:
BGR20:
BGR21:
000026H
000027H
00002EH
00002FH
0000DEH
0000DFH
bit15 bit14 bit13bit12bit11bit10 bit9 bit8 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0
初期値
0000000000000000B
R R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W
bit 7 ∼ bit 0
BGRn0
読出し
書込み
bit 14 ∼ bit 8
BGRn1
読出し
書込み
ボーレートジェネレータレジスタ n0
リロードカウンタ 0 ∼ 7 に書込み
送信リロードカウンタ bit0 ∼ bit7 の読出し
ボーレートジェネレータレジスタ n1
リロードカウンタ 8 ∼ 14 に書込み
送信リロードカウンタ bit8 ∼ bit14 の読出し
bit 15
未定義ビット
読出し値は "0" です。書込みは動作に影響しません。
R/W : リード / ライト可能
R
: リードオンリ
n = 0, 1, 2
ボーレートジェネレータレジスタはシリアルクロックの分周比を設定します。
BGRn1 は上位ビット , BGRn0 は下位ビットに対応し , カウンタのリロード値の書込み
と送信リロードカウンタ値の読出しが可能です。また , バイト・ワードアクセスできま
す。
ボーレートジェネレータレジスタに "0" 以外のリロード値を書き込むとリロードカウ
ンタはカウントを開始します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
423
第 20 章 LIN-UART
20.5 LIN-UART の割込み
20.5
MB90990 シリーズ
LIN-UART の割込み
LIN-UART には , 受信割込みと送信割込みがあり , 次に示す要因で割込み要求を発生
させることができます。
• 受信データが受信データレジスタ (RDR) にセットされた場合 , または受信エラー
が発生した場合
• 送信データが送信データレジスタ (TDR) から送信用シフトレジスタに転送され ,
送信が開始された場合
• LIN Synch break 検出
それぞれの割込みは拡張インテリジェント I/O サービス (EI2OS) に対応しています。
■ LIN-UART の割込み
LIN-UART の割込み制御ビットと割込み要因は表 20.5-1 のようになっています。
表 20.5-1 LIN-UART の割込み制御ビットと割込み要因
割込み
送受信 /
要求フラグ
キャプチャ
ビット
受信
送信
動作モード
フラグ
レジスタ
0
1
2
3
RDRF
SSR
○
○
○
○
受信データの
RDR 書込み
ORE
SSR
○
○
○
○
オーバラン
エラー
FRE
SSR
○
○
△
○
フレーミング
エラー
PE
SSR
○
×
△
×
パリティエラー
LBD
ESCR
×
×
×
○
LIN Synch break
ESCR:LBIE
検出
ESCR:LBD への
"0" 書込み
送信レジスタが SSR:TIE
空
送信データの
書込み , LIN
Synch break 生成
ビット
(ECCR:LBR) へ
の "1" 書込み
LIN Synch field
の 1 回目の立下
りエッジ
ICS01:ICE0/
ICE1
LIN Synch field
の 5 回目の立下
りエッジ
ICP0/ICP1 を
ディセーブル
TDRE
SSR
ICP0/ICP1
ICS01
○
×
○
×
○
×
○
○
インプット
キャプチャ
ICP0/ICP1
ICS01
×
×
×
○
割込み要因
許可ビット
割込み要因
割込み要求
フラグのクリア
受信データの
読出し
SSR:RIE
受信エラーフラ
グクリアビット
(SCR:CRE) への
"1" の書込み
○ : 使用ビット
× : 未使用ビット
△ : ECCR: SSM=1 のみ使用可能
424
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 20 章 LIN-UART
20.5 LIN-UART の割込み
● 受信割込み
以下に示す動作が受信モードで発生するとシリアルステータスレジスタ (SSR) の各フ
ラグビットは "1" に設定されます。
データ受信完了
受信データが受信シフトレジスタから受信データレジスタ (RDR) へ転送さ
れた場合 (RDRF=1)。
オーバランエラー
RDRF=1 で , RDR が CPU によって読み出されずに , 次の受信データが受信
シフトレジスタから受信データレジスタ (RDR) へ転送された場合 (ORE=1)。
フレーミングエラー
ストップビット受信エラー (FRE=1)。
パリティエラー
パリティ検出エラー (PE=1)。
上記のフラグビットいずれかが "1" のとき , 受信割込みが許可 (SSR:RIE=1) されている
と受信割込み要求が発生します。
RDRF フラグは , 受信データレジスタ (RDR) を読み出すと自動的に "0" にクリアされま
す。エラーフラグはシリアル制御レジスタ (SCR) の受信エラーフラグクリアビット
(CRE) に "1" を書き込むと , すべて "0" にクリアされます。
<注意事項>
CRE フラグは書込み専用で , "1" 書込みのとき , 1 クロックサイクル間 "1" を保持します。
● 送信割込み
送信データが送信データレジスタ (TDR) から送信シフトレジスタに転送され , 送信が
開始されるとシリアルステータスレジスタ (SSR) の送信データレジスタエンプティフ
ラグビット (TDRE) が "1" にセットされます。この場合 , 送信割込みが許可 (SSR:TIE=1)
されていると送信割込み要求が発生します。
<注意事項>
ハードウェアリセット / ソフトウェアリセット後の TDRE の初期値が "1" であるため , TIE
ビットが "1" に設定されると直ちに割込みが発生します。また , TDRE は送信データレジ
スタ TDR にデータを書き込むことでのみクリアされます。
● LIN Synch break 割込み
動作モード 3 で , LIN スレーブ動作をする場合に機能します。
バス ( シリアル入力 ) が 11 ビットの間以上 "0" になると , 拡張ステータス制御レジスタ
(ESCR) の LIN Synch break 検出フラグビット (LBD) は "1" にセットされます。LIN Synch
break 割込みと LBD フラグは , LBD フラグの "0" 書込みでクリアされます。LIN Synch
field でキャプチャ割込みが発生する前に LBD フラグをクリアしてください。
LIN Synch break 検出を行う際には , 受信禁止 (SCR:RXE=0) にする必要があります。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
425
第 20 章 LIN-UART
20.5 LIN-UART の割込み
MB90990 シリーズ
● LIN Synch field エッジ検出割込み
動作モード 3 で , LIN スレーブ動作をする場合に機能します。
LIN Synch break 検出後 , 内部信号は LIN Synch field の 1 回目の立下りエッジで "1" に
セットされ , 5 回目の立下りエッジ後に "0" にクリアされます。内部信号をキャプチャ
へ (ICU0/ICU1) 入力するようにキャプチャ側で設定 , かつ両方のエッジを検出するよう
に設定し , キャプチャ割込みが許可のとき割込みが発生します。
キャプチャで検出されたカウント値の差は , マスタのシリアルクロック 8 ビット分に相
当し , 新しいボーレートを計算できます。
スタートビットの立下りエッジを検出すると,リロードカウンタは自動的に再スタート
します。
■ LIN-UART の割込みと EI2OS
表 20.5-2 LIN-UART の割込みと EI2OS
割込み制御レジスタ
チャネル
ベクタテーブルのアドレス
EI2OS
割込み番号
レジスタ名
アドレス
下位
上位
バンク
LIN-UART0 受信
#35(23H)
ICR12
0000BCH
FFFF70H
FFFF71H
FFFF72H
*1
LIN-UART0 送信
#36(24H)
ICR12
0000BCH
FFFF6CH
FFFF6DH
FFFF6EH
*2
LIN-UART1 受信
#37(25H)
ICR13
0000BDH
FFFF68H
FFFF69H
FFFF6AH
*1
LIN-UART1 送信
#38(26H)
ICR13
0000BDH
FFFF64H
FFFF65H
FFFF66H
*2
UART2 受信
#39(27H)
ICR14
0000BEH
FFFF60H
FFFF61H
FFFF62H
*1
UART2 送信
#40(28H)
ICR14
0000BEH
FFFF5CH
FFFF5DH
FFFF5EH
*2
*1: ICR12 ∼ ICR14 は複数の割込み要因と共有しているためそれらの割込み要因を割込みとして使用しない場 合のみ使用可能。
受信エラー検出可能。また , EI2OS 停止機能あり。
*2: ICR12 ∼ ICR14 は複数の割込み要因と共有しているためそれらの割込み要因を割込みとして使用しない場 合のみ使用可能。
■ LIN-UART の EI2OS 機能
LIN-UART には EI2OS 対応の回路があります。このため , 受信 / 送信の各割込みで別々
に EI2OS を起動できます。
● 受信時
割込み制御レジスタを送信割込みやほかの UART と共有していますので , ほかの割込
みがイネーブルでない場合にのみ EI2OS を使用できます。
● 送信時
割込み制御レジスタを受信割込みやほかの UART と共有していますので , ほかの割込
みをイネーブルしていない場合にのみ EI2OS を使用できます。
426
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.5 LIN-UART の割込み
MB90990 シリーズ
受信割込み発生とフラグセットのタイミング
20.5.1
受信時の割込みとしては , 受信完了 (SSR:RDRF) および受信エラーの発生 (SSR:PE,
ORE, FRE) があります。
■ 受信割込み発生とフラグセットのタイミング
モード 0, 1, 2(SSM=1), 3 で最初のストップビットの検出 , またはモード 2(SSM=0) で最
終データビットが検出されることにより , 受信データが受信データレジスタ (RDR) に
格納されます。受信が完了したとき (SSR:RDRF=1) または受信エラーが発生 (SSR:PE,
ORE, FRE=1) す る と 各 フ ラ グ が セ ッ ト さ れ ま す。そ の と き , 受 信 割 込 み が 許 可
(SSR:RIE=1) されていると受信割込みが発生します。
<注意事項>
各モードで受信エラーが発生したときは , 受信データレジスタ (RDR) のデータは無効とな
ります。
図 20.5-1 に , 受信動作とフラグセットのタイミングを示します。
図 20.5-1 受信動作とフラグセットのタイミング
受信データ
( モード 0/3)
ST
D0
D1
D2
…
D5
D6
D7/P
SP
ST
受信データ
( モード 1)
ST
D0
D1
D2
…
D6
D7
A/D
SP
ST
D0
D1
D2
…
D4
D5
D6
D7
D0
受信データ
( モード 2)
PE*1, FRE
RDRF
ORE*2
(RDRF = 1)
受信割込み発生
* 1: モード 1, 3 で PE フラグは常に "0" となります。
* 2: 受信データが読み出される前に (RDRF = 1), 次のデータが転送されるとオーバランエラーが発生します。
ST: スタートビット SP: ストップビット A/D: モード 1( マルチプロセッサ ) アドレスデータ選択ビット
<注意事項>
図 20.5-1 はモード 0 におけるすべての受信動作を表しているわけではありません。"7P1"
と "8N1"(P=" 偶数パリティ " または " 奇数パリティ ") の例のみ示されています。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
427
第 20 章 LIN-UART
20.5 LIN-UART の割込み
MB90990 シリーズ
図 20.5-2 ORE フラグセットタイミング
受信データ
RDRF
ORE
428
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.5 LIN-UART の割込み
MB90990 シリーズ
送信割込み発生とフラグセットのタイミング
20.5.2
送信時の割込みは送信データが送信データレジスタ (TDR) から送信用シフトレジス
タに転送され , 送信が開始されると発生します。
■ 送信割込み発生とフラグセットのタイミング
送信データレジスタ (TDR) に書き込まれたデータが送信シフトレジスタに転送され ,
送信が開始されると次のデータの書込みが可能な状態 (SSR:TDRE=1) になります。そ
のとき , 送信割込みが許可 (SSR:TIE=1) されていると , 送信割込みが発生します。
TDRE ビットはリードオンリビットなので , 送信データレジスタ (TDR) へのデータ書
込みのみにより "0" にクリアされます。
図 20.5-3 に LIN-UART の各モードに設定したときの送信動作とフラグセットのタイミ
ングについて示します。
図 20.5-3 送信動作とフラグセットのタイミング
送信割込み発生
送信割込み発生
モード 0, 1, 2(SSM=1)
または 3 : TDR 書込み
TDRE
シリアル出力
ST
D0 D1 D2 D3
D4 D5 D6 D7
P SP ST
A/D
D0 D1 D2 D3 D4 D5 D6 D7
P SP
A/D
送信割込み発生
送信割込み発生
モード 2(SSM = 0) :
TDR 書込み
TDRE
シリアル出力
D0
D1 D2 D3 D4 D5 D6
D7 D0
D1 D2 D3 D4 D5 D6 D7 D0 D1 D2 D3
D4
ST : スタートビット D0…D7: データビット P: パリティ ( モード 0, モード 2 で SSM=1) SP: ストップビット
A/D: アドレスデータ選択ビット ( モード 1)
<注意事項>
図 20.5-3 はモード 0 におけるすべての送信動作については説明していません。
"8p1"(p=" 偶数パリティ " または " 奇数パリティ ") についてのみ示されています。
パリティビットとアドレスデータ選択ビットはモード 3 の場合 , もしくはモード 2
で SSM=0 の場合には送信されません。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
429
第 20 章 LIN-UART
20.5 LIN-UART の割込み
MB90990 シリーズ
■ 送信割込み要求発生タイミング
送信割込みが許可されている場合に (SSR:TIE=1) TDRE フラグが "1" にセットされると
送信割込みが発生します。
<注意事項>
初期状態では TDRE ビットが "1" になっていますので , 送信割込みを許可 (SSR:TIE=1) に
すると直ちに送信割込みが発生します。TDRE ビットのクリアは送信データレジスタ
(TDR) に新規データを書き込むしかありませんので , 送信割込み許可のタイミングには注
意してください。
430
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
20.6
第 20 章 LIN-UART
20.6 LIN-UART のボーレート
LIN-UART のボーレート
LIN-UART の送受信クロックソースは , 次のいずれかを選択できます。
• 専用ボーレートジェネレータ ( リロードカウンタ )
• 外部クロックをボーレートジェネレータに入力 ( リロードカウンタ )
• 外部クロック (SCKn 端子入力クロックの直接使用 )
■ UART ボーレート選択
ボーレートは次の 3 種類の中から 1 種類を選択できます。ボーレートの選択回路を図
20.6-1 に示します。
● 専用ボーレートジェネレータ ( リロードカウンタ ) で内部クロックを分周して得られるボー
レート
2 つの内部リロードカウンタがあり , それぞれ送受信シリアルクロックに対応していま
す。ボーレートジェネレータレジスタ 1, 0 (BGRn1/BGRn0) で 15 ビットのリロード値
を設定することによりボーレートを選択できます。
リロードカウンタは , 設定された値で内部クロックを分周します。
非同期モード , 同期モード ( マスタ ) 時に使用します。
クロックソースの設定は,内部クロックとボーレートジェネレータクロック使用を選択
(SMR:EXT=0, OTO=0) してください。
● 専用ボーレートジェネレータ ( リロードカウンタ ) で外部クロックを分周して得られるボー
レート
リロードカウンタのクロックソースに外部クロックを使用します。
ボーレートジェネレータレジスタ 1, 0(BGRn1/BGRn0) で 15 ビットのリロード値を設定
することによりボーレートを選択できます。
リロードカウンタは設定された値で外部クロックを分周します。
非同期モード時に使用します。
クロックソースの設定は外部クロックとボーレートジェネレータクロック使用を選択
(SMR:EXT=1, OTO=0) してください。
本モードは特殊な周波数の発振子を分周して使用するケースを想定して用意されてい
ます。
● 外部クロック (1 対 1 モード ) によるボーレート
LIN-UART のクロック入力端子 (SCKn) から入力されたクロックをそのままボーレート
として使用します ( 同期モード 2 スレーブ動作 (ECCR:MS=1))。
同期モード ( スレーブ ) 時に使用します。
クロックソースの設定は , 外部クロックと外部クロック直接使用を選択 (SMR:EXT=1,
OTO=1) してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
431
第 20 章 LIN-UART
20.6 LIN-UART のボーレート
MB90990 シリーズ
図 20.6-1 LIN-UART ボーレート選択回路
REST
スタートビット
立下りエッジ検出
リロード値 : v
Rxc = 0?
セット
受信
リロード
15 ビットリロードカウンタ
Rxc = v/2?
FF
受信クロック
0
リセット
1
リロード値 : v
CLK
0
EXT
送信
15 ビットリロードカウンタ
1
SCKn
( 外部クロック
入力 )
カウンタ値 : TXC
Txc = 0?
セット
FF
リロード
Txc = v/2?
OTO
0
リセット
1
送信クロック
内部データバス
EXT
REST
OTO
SMRn
レジスタ
D14
D13
D12
D11
D10
D9
D8
BGRn1
レジスタ
D7
D6
D5
D4
D3
D2
D1
D0
BGRn0
レジスタ
n=0,1,2
432
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.6 LIN-UART のボーレート
MB90990 シリーズ
ボーレート設定
20.6.1
ボーレートの設定を示します。また , シリアルクロック周波数の計算結果を示しま
す。
■ ボーレートの計算
2 つの 15 ビットリロードカウンタはボーレートジェネレータレジスタ 1, 0 (BGRn1,
BGRn0) で設定します。
ボーレートの計算式を以下に示します。
リロード値 :
v=
( φb ) − 1
v: リロード値 b: ボーレート φ: マシンクロック , 外部クロック周波数
計算例
マシンクロック 16 MHz, 内部クロック使用 , ボーレートを 19200 bps に設定する場
合 , 次のようになります。
リロード値 :
6
v=
× 10
( 1619200
) − 1 = 832
よって , 実際のボーレートは下記のように計算できます。 b=
φ
(v + 1)
=
16 × 106
= 19207.6831
833
<注意事項>
リロード値を "0" に設定するとリロードカウンタは停止します。そのため , 最低の分周比
は 2 になります。
非同期モードで送受信する際, 5回オーバサンプリングして受信値を決定するため,リロー
ド値を最低でも 4 に設定する必要があります。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
433
第 20 章 LIN-UART
20.6 LIN-UART のボーレート
MB90990 シリーズ
■ 各クロック速度のリロード値とボーレート
各クロック速度のリロード値とボーレートを , 表 20.6-1 に示します。
表 20.6-1 リロード値とボーレート
ボーレート
(bps)
8 MHz
10 MHz
16 MHz
20 MHz
24 MHz
32 MHz
value
dev.
value
dev.
value
dev.
value
dev.
value
dev.
value
dev.
4M
―
―
―
―
―
―
―
―
5
0
7
0
2M
―
―
―
―
7
0
9
0
11
0
15
0
1M
7
0
9
0
15
0
19
0
23
0
31
0
500000
15
0
19
0
31
0
39
0
47
0
63
0
460800
―
―
―
―
―
―
―
―
51
− 0.16
68
− 0.64
250000
31
0
39
0
63
0
79
0
95
0
127
0
230400
―
―
―
―
―
―
―
―
103
− 0.16
138
− 0.08
153600
51
− 0.16
64
− 0.16
103
− 0.16
129
− 0.16
155
− 0.16
207
− 0.16
125000
63
0
79
0
127
0
159
0
191
0
255
0
115200
68
− 0.64
86
0.22
138
0.08
173
0.22
207
− 0.16
277
0.08
76800
103
− 0.16
129
− 0.16
207
− 0.16
259
− 0.16
311
− 0.16
416
0.08
57600
138
0.08
173
0.22
277
0.08
346
− 0.06
416
0.08
555
0.08
38400
207
− 0.16
259
− 0.16
416
0.08
520
0.03
624
0
832
− 0.04
28800
277
0.08
346
< 0.01
554
− 0.01
693
− 0.06
832
− 0.03
1110
− 0.01
19200
416
0.08
520
0.03
832
− 0.03
1041
0.03
1249
0
1666
0.02
10417
767
< 0.01
959
< 0.01
1535
< 0.01
1919
< 0.01
2303
< 0.01
3071
< 0.01
9600
832
0.04
1041
0.03
1666
0.02
2083
0.03
2499
0
3332
− 0.01
7200
1110
< 0.01
1388
< 0.01
2221
< 0.01
2777
< 0.01
3332
< 0.01
4443
− 0.01
4800
1666
0.02
2082
− 0.02
3332
< 0.01
4166
< 0.01
4999
0
6666
< 0.01
2400
3332
< 0.01
4166
< 0.01
6666
< 0.01
8332
< 0.01
9999
0
13332
< 0.01
1200
6666
< 0.01
8334
0.02
13332
< 0.01
16666
< 0.01
19999
0
26666
< 0.01
600
13332
< 0.01
16666
< 0.01
26666
< 0.01
―
―
―
―
―
―
300
26666
< 0.01
―
―
―
―
―
―
―
―
―
―
周波数偏差 (dev.) の単位は % です。
同期モード時の最大ボーレートは , マシンクロックの 1/6(value=5) です。
434
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.6 LIN-UART のボーレート
MB90990 シリーズ
■ 外部クロック
LIN-UART シリアルモードレジスタ (SMR) の EXT ビットに "1" を書き込むと外部ク
ロックが選択されます。ボーレートジェネレータで外部クロックは内部クロックと同
じように使用できます。
同期モード 2 でスレーブ動作を使用する際に , 1 対 1 外部クロック入力モード
(SMR:OTO=1) を選択します。このモードでは , SCKn に入力された外部クロックを
UART のシリアルクロックに直接入力します。
<注意事項>
外部クロック信号は LIN-UART で内部クロックに同期します。したがって , 分周不可能な
外部クロックの場合 , 不安定な信号状態になります。
■ リロードカウンタの動作
リロード値を 832 としたときの 2 つのリロードカウンタの動作を図 20.6-2 に示します。
図 20.6-2 リロードカウンタの動作
送受信クロック
リロード
カウンタ
001
000
832
831
830
829
828
827
413
412
411
410
リロードカウンタ値
送受信クロック
リロード
カウンタ
417
416
415
414
<注意事項>
シリアルクロック信号の立下りエッジは , リロード値を 2 で割った値 ( (v+1)/2 ) をカウン
トした後に発生します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
435
第 20 章 LIN-UART
20.6 LIN-UART のボーレート
20.6.2
MB90990 シリーズ
リロードカウンタ
専用ボーレートジェネレータとして機能する 15 ビットのリロードカウンタです。 外
部クロックまたは内部クロックより送受信クロックを生成します。また , 送信リ
ロードカウンタのカウント値をボーレートジェネレータレジスタ (BGR1, BGR0) よ
り読み出すことができます。
■ リロードカウンタの機能
リロードカウンタには , 送信リロードカウンタと受信リロードカウンタがあり , 専用
ボーレートジェネレータとして機能します。リロード値に対する 15 ビットレジスタか
ら構成されており , 外部クロックまたは内部クロックより送受信クロックを生成しま
す。また , 送信リロードカウンタのカウント値をボーレートジェネレータレジスタ
(BGR1, BGR0) より読み出すことができます。
● カウントの開始
ボーレートジェネレータレジスタ (BGR1, BGR0) にリロード値を書き込むと , リロード
カウンタはカウントを開始します。
● 再スタート
リロードカウンタは下記の条件で再スタートします。
送信 / 受信リロードカウンタ共通
• UART プログラマブルリセット (SMR:UPCL ビット )
• プログラマブル再スタート (SMR:REST ビット )
受信リロードカウンタ
• 非同期モードでのスタートビット立下りエッジ検出
シリアルモードレジスタ (SMR) の REST ビットを "1" にセットすると , 次のクロッ
クサイクルで 2 つのリロードカウンタは再スタートします。
この機能により送信リロードカウンタを簡易的なタイマとして利用することが可
能です。
本機能の使用例を図 20.6-3 に示します ( リロード値 100 の場合 )。
436
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.6 LIN-UART のボーレート
MB90990 シリーズ
図 20.6-3 リロードタイマの再スタートによる簡易タイマの使用例
MCU
クロック
リロード
カウンタ
クロック
出力
REST
リロード値
37
36
35 100
99
98
97
96
95
94
93
92
91
90
89
88
87
読出し
BGR0/BGR1
データ
バス
90
: 影響なし
この例では , 再スタート後のマシンサイクル数 cyc は下式で求められます。
cyc = v - c + 1 = 100 - 90 + 1 = 11
v : リロード値 , c : リロードカウンタの値
<注意事項>
SMR:UPCL ビットに "1" を書き込むことで UART をリセットした場合にもリロードカウ
ンタは再スタートします。
• 自動再スタート ( 受信リロードカウンタのみ )
非同期モードでスタートビット立下りエッジが検出されると受信リロードカウン
タが再スタートします。これは受信シフトレジスタを受信データに同期させるため
の機能です。
● カウンタのクリア
リセットによりボーレートジェネレータレジスタ (BGR1, BGR0) のリロード値とリ
ロードカウンタが "00H" にクリアされ , リロードカウンタは停止します。
LIN-UART リセット (SMR:UPCL への "1" 書込み ) でカウンタ値は一時 "00H" にクリア
されますがリロード値は保持されていますので , リロードカウンタは再スタートしま
す。再スタートの設定 (SMR:REST への "1" 書込み ) ではカウンタ値は "00H" にクリア
されずに再スタートします。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
437
第 20 章 LIN-UART
20.7 LIN-UART の動作
20.7
MB90990 シリーズ
LIN-UART の動作
LIN-UART は , モード 0 の双方向シリアル通信 , モード 1 のマスタ / スレーブマルチ
プロセッサ通信 , モード 2, 3 のマスタ / スレーブ双方向通信で動作します。
■ LIN-UART の動作
● 動作モード
LIN-UART の動作モードにはモード 0 ∼ 3 の 4 種類があり , 表 20.7-1 に示すように CPU
間の接続方式やデータ転送方式を選択できます。
表 20.7-1 LIN-UART の動作モード
データ長
動作モード
同期方式
パリティなし
0
ノーマルモード
1
マルチプロセッサ
モード
2
ノーマルモード
3
LIN モード
パリティあり
7 ビットまたは 8 ビット
7 ビットまたは
8 ビット + 1*
―
8 ビット
8 ビット
ストップビット長
―
非同期
1 ビット
または
2 ビット
非同期
同期
なし , 1 ビット ,
2 ビット
非同期
1 ビット
データビット
フォーマット
LSB ファースト
MSB ファースト
LSB ファースト
―: 設定不可
*: "+1" はマルチプロセッサモードで通信制御用に使用されるアドレス / データ選択ビット (A/D) です。
<注意事項>
モード 1 でマスタ / スレーブ接続されたシステムにおいて , マスタとスレーブいずれの動
作にも対応しています。モード 3 では , 通信フォーマットが 8N1, LSB ファーストに固定
されます。
モード切換えを行った場合 , すべての送受信動作は打ち切られ , 次の動作待ち状態になり
ます。
■ CPU 間接続方式
外部クロック 1 対 1 接続 ( ノーマルモード ) とマスタ / スレーブ型接続 ( マルチプロ
セッサモード ) のどちらかを選択できます。どちらの方式でも , データ長 , パリティ有
無 , 同期方式などはすべての CPU で統一しておく必要があり , 動作モードを次のよう
に選択します。
• 1 対 1 接続の場合
: 2 つの CPU で動作モード 0, 動作モード 2 のいずれ
かの同じ方式を採用する必要があります。非同期
方式では動作モード 0, 同期方式では動作モード 2
を選択してください。また , 動作モード 2 では 1 つ
の CPU をマスタへ , もう 1 つの CPU をスレーブへ
設定してください。
• マスタ / スレーブ型接続の場合 : 動作モード 1 を選択します。マスタ / スレーブシ
ステムとして使用してください。
438
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 20 章 LIN-UART
20.7 LIN-UART の動作
■ 同期方式
非同期方式において , 受信クロックは受信スタートビットの立下りエッジに同期しま
す。同期方式では , マスタのクロック信号またはマスタとして動作したときのクロック
信号によって同期させることができます。
■ 信号方式
NRZ(Non Return to Zero) 形式です。
■ 送受信許可
LIN-UART は送信と受信の動作をそれぞれ SCR:TXE ビットと SCR:RXE ビットによっ
て制御します。送信または受信をディセーブルに設定する場合は下記のように行って
ください。
• 受信をディセーブルする場合 , 受信動作中であれば受信が終了するのを待ち , 受信
データレジスタ RDR を読み出してから行ってください。
• 送信をディセーブルする場合 , 送信動作中であれば送信動作が終了するのを待って
から行ってください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
439
第 20 章 LIN-UART
20.7 LIN-UART の動作
20.7.1
MB90990 シリーズ
非同期モード ( 動作モード 0, 1) の動作
LIN-UART を動作モード 0( ノーマルモード ) または動作モード 1( マルチプロセッサ
モード ) で使用する場合 , 転送方式は非同期となります。
■ 非同期モードの動作
● 送受信データフォーマット
送受信データは必ずスタートビット ("L" レベル ) から始まり , 指定されたデータビッ
ト長の送受信が行われ , 少なくとも 1 ビットのストップビット ("H" レベル ) で終了し
ます。
ビット転送方向 (LSB ファーストまたは MSB ファースト ) はシリアルステータスレジ
スタ (SSR) の BDS ビットで決定されます。パリティありの場合 , パリティビットは常
に最終データビットと最初のストップビットの間に置かれます。
動作モード 0 では , データ長は 7 ビットまたは 8 ビットを選択します。パリティビット
はあり / なしの選択ができます。また , ストップビット長 (1 または 2) が選択可能です。
動作モード 1 では , データ長は 7 ビットまたは 8 ビットでパリティは付加されず , アド
レス / データビットが付加されます。ストップビット長 (1 または 2) を選択できます。
送受信フレームのビット長計算式は , 以下のようになります。
長さ = 1 + d + p + s
(d= データビット数 [7 または 8], p= パリティ [0 または 1],
s= ストップビットの数 [1 または 2])
図 20.7-1 に , 非同期モードの場合のデータフォーマットを示します。
440
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.7 LIN-UART の動作
MB90990 シリーズ
図 20.7-1 送受信データフォーマット ( 動作モード 0, 1)
[ 動作モード 0]
ST
D0
D1
D2
D3
D4
D5
D6
D7
SP
ST
D0
D1
D2
D3
D4
D5
D6
D7
SP
SP
P なし
データ 8 ビット
ST
D0
D1
D2
D3
D4
D5
D6
D7
P
SP
ST
D0
D1
D2
D3
D4
D5
D6
D7
P
SP
ST
D0
D1
D2
D3
D4
D5
D6
SP
SP
ST
D0
D1
D2
D3
D4
D5
D6
SP
SP
P あり
P なし
データ 7 ビット
ST
D0
D1
D2
D3
D4
D5
D6
P
SP
SP
ST
D0
D1
D2
D3
D4
D5
D6
P
SP
ST
D0
D1
D2
D3
D4
D5
D6
D7
A/D SP
ST
D0
D1
D2
D3
D4
D5
D6
D7
A/D SP
ST
D0
D1
D2
D3
D4
D5
D6
A/D SP
ST
D0
D1
D2
D3
D4
D5
D6
A/D SP
P あり
[ 動作モード 1]
SP
データ 8 ビット
SP
データ 7 ビット
ST
SP
P
A/D
: スタートビット
: ストップモード
: パリティビット
: アドレス / データビット
<注意事項>
シリアルステータスレジスタ (SSR) の BDS ビットを "1"(MSB ファースト ) に設定する場
合 , ビットは D7, D6,…D1, D0(P) の順序で処理されます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
441
第 20 章 LIN-UART
20.7 LIN-UART の動作
MB90990 シリーズ
● 送信動作
シリアルステータスレジスタ (SSR) の送信データレジスタエンプティフラグビット
(TDRE) が "1" の場合には , 送信データレジスタ (TDR) に送信データを書き込むことが
できます。データを書き込むと TDRE フラグは "0" になります。このとき , 送信が許可
されていると ( シリアルコントロールレジスタ (SCR) の TXE=1) データは送信シフトレ
ジスタに書き込まれ,シリアルクロックの次のサイクルでスタートビットから順に送信
が開始されます。
送信割込みが許可されている場合に(TIE=1) TDREフラグがセットされると割込みが発
生されます。TDRE の初期値は "1" であるため , その状態で TIE に "1" を書き込むと直
ちに割込みが発生しますので注意してください。
データ長が 7 ビットに設定 (CL=0) されている場合 , 転送方向選択ビット (BDS) の設定
(LSB ファーストまたは MSB ファースト ) にかかわらず , TDR の MSB が未使用ビット
になります。
<注意事項>
送信データエンプティフラグビット (SSR:TDRE) の初期値が "1" になっているため , 送信
割込みが許可 (SSR:TIE=1) されると直ちに割込みが発生します。
● 受信動作
受信動作が許可 (SCR:RXE=1) されていると受信動作を行います。スタートビットを検
出するとシリアル制御レジスタ (SCR) で設定しているデータフォーマットに従って 1
フ レ ー ム デ ー タ の 受 信 が 行 わ れ ま す。エ ラ ー が 発 生 し た 場 合 に は エ ラ ー フ ラ グ
(SSR:PE, ORE, FRE) がセットされます。1 フレームの受信が完了すると受信データは受
信シフトレジスタから受信データレジスタ (RDR) へ転送され , 受信データレジスタフ
ルフラグビット (SSR:RDRF) が "1" にセットされます。このとき , 受信割込み要求が許
可 (SSR:RIE=1) されていると受信割込み要求を出力します。
受信データを読み出す際には 1 フレームデータの受信完了後に , エラーフラグの状態を
確認し , 正常に受信が行われていると受信データレジスタ (RDR) から受信データを読
み出してください。受信エラーが発生している場合にはエラー処理を行ってください。
受信データの読出しで受信データレジスタフルフラグビット (SSR:RDRF) は "0" にクリ
アされます。
データ長が 7 ビットに設定 (CL=0) されている場合 , 転送方向選択ビット (BDS) の設定
(LSB ファーストまたは MSB ファースト ) にかかわらず , TDR の MSB が未使用ビット
になります。
<注意事項>
受信データレジスタ(RDR)のデータは受信データレジスタフルフラグビット(SSR:RDRF)
が "1" にセットされ , エラーが発生しなかった (SSR:PE, ORE, FRE=0) 場合に有効となり
ます。
442
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.7 LIN-UART の動作
MB90990 シリーズ
● 使用クロック
内部クロックまたは外部クロックを使用します。ボーレートはボーレートジェネレー
タを選択 (SMR:EXT=0 または 1, OTO=0) してください。
● ストップビット
送信時に 1 ビットまたは 2 ビットのストップビットを選択できます。2 ビットのストッ
プビットを選択したときは , 両方のストップビットが受信時に検出されます。
最初のストップビットが検出されると受信データレジスタフルフラグ (SSR:RDRF) が
"1" になります。その後 , スタートビットが検出されない場合 , 受信バスアイドルフラ
グ (ECCR:RBI) が "1" になり , 受信動作がないことを示します。
● エラー検出
モード 0 では , パリティエラー , オーバランエラー , フレームエラーを検出できます。
モード 1 では , オーバラン , フレームエラーを検出できます。パリティエラーは検出で
きません。
● パリティ
パリティビットの付加 ( 送信時 ), 検出 ( 受信時 ) を設定できます。
パリティ許可ビット (SCR:PEN) でパリティの有無を , パリティ選択ビット (SCR:P) で
偶数 / 奇数パリティを選択できます。
動作モード 1 では , パリティを使用できません。
図 20.7-2 パリティ有効時の送信データ
SIN
ST
SP
1 0 1 1 0 0 0 0 0
SOT
ST
偶数パリティにて受信時
パリティエラー発生
(SCR : P = 0)
SP
偶数パリティの送信
(SCR : P = 0)
SP
奇数パリティの送信
(SCR : P = 1)
1 0 1 1 0 0 0 0 1
SOT
ST
1 0 1 1 0 0 0 0 0
データ
パリティ
ST: スタートビット SP: ストップビット パリティあり (PEN = 1) の場合
( 注意事項 ) 動作モード 1 では , パリティは使用できません。
● データ信号方式
NRZ データフォーマットです。
● データ転移方法
データビット転送方法を LSB ファーストまたは MSB ファーストに選択できます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
443
第 20 章 LIN-UART
20.7 LIN-UART の動作
20.7.2
MB90990 シリーズ
同期モード ( 動作モード 2) の動作
LIN-UART を動作モード 2( ノーマルモード ) で使用する場合 , 転送方式はクロック
同期となります。
■ 同期モード ( 動作モード 2) の動作
● 送受信データフォーマット
同期モードでは 8 ビットデータを送受信し , スタートビット , ストップビットの有無を
選択 (ECCR:SSM) できます。また , スタート / ストップあり (ECCR:SSM=1) のとき , パ
リティビットの有無を選択 (SCR:PEN) できます。
図 20.7-3 に同期モード使用時のデータフォーマットを示します。
図 20.7-3 送受信データフォーマット ( 動作モード 2)
送受信データ
(ECCR:SSM=0,SCR:PEN=0)
D0
D1
D2
D3
D4
D5
D6
D7
ST
D0
D1
D2
D3
D4
D5
D6
*
送受信データ
(ECCR:SSM=1,SCR:PEN=0)
送受信データ
(ECCR:SSM=1,SCR:PEN=1)
D7
SP
SP
*
ST
D0
D1
D2
D3
D4
D5
D6
D7
P
SP
SP
* : 2 ストップビットに設定 (SCR : SBL = 1) した場合
ST : スタートビット SP : ストップビット P : パリティビット LSB ファーストの場合
● クロック反転機能
拡張ステータス制御レジスタ (ESCR) の SCES ビットが "1" の場合 , シリアルクロック
は反転します。スレーブモードでは UART は受信したシリアルクロックの立下りエッ
ジでデータをサンプリングします。マスタモードでは SCES ビットが "1" のとき , マー
クレベルが "0" になることにご注意ください。
図 20.7-4 クロック反転時の送信データフォーマット
送受信クロック
(SCES = 0, CCO = 0):
マークレベル
送受信クロック
(SCES = 1, CCO = 0):
データ(SSM = 1)
(パリティなし, 1ストップビット)
マークレベル
ST
SP
データフレーム
● スタート / ストップビット
拡張通信制御レジスタ ECCR の SSM ビットが "1" の場合には , 非同期モードのように
スタートビットとストップビットが付加されます。
444
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.7 LIN-UART の動作
MB90990 シリーズ
● クロックの供給
クロック同期モード ( ノーマル ) では , 送受信ビット数をクロックサイクル数と同じに
してください。スタート / ストップビットが許可されている場合は追加されたスター
ト / ストップビット分まで一致している必要があります。
マスタモード (ECCR: MS = 0) でシリアルクロック出力許可 (SMR: SCKE = 1) を選択
した場合は , 送受信時には同期クロックが自動的に出力されます。スレーブモード
(ECCR: MS = 1) またはシリアルクロック出力禁止 (SMR: SCKE = 0) を選択した場合
には , 送受信データの各ビット分のクロックが外部から供給される必要があります。
送受信動作に関係ない場合にはクロック信号はマークレベル("H")に保たれる必要があ
ります。
ECCR の SCDE ビットを "1" に設定すると , 図 20.7-5 に示すように遅延した送信クロッ
クを出力します。本機能は受信側のデバイスがクロックの立上りエッジ , または立下り
エッジでデータをサンプリングする場合に必要となります。
図 20.7-5 送信クロックの遅延 (SCDE=1)
送信データ書込み
受信データサンプルエッジ (SCES = 0)
送受信クロック
(ノーマル)
マークレベル
送信クロック
(SCDE = 1)
マークレベル
マークレベル
送受信データ
0
1
1
LSB
0
1
0
0
1
MSB
データ
拡張ステータスレジスタ (ESCR) の SCES ビットが "1" の場合 , UART のクロックは反
転し , 受信データをクロックの立下りエッジでサンプリングします。このとき , シリア
ルデータがクロック立下りタイミングで有効な値になる必要があります。
ESCR の CCO ビットが "1" の場合 , マスタモードでは SCKn 端子のシリアルクロック
出力は連続供給されます。このモードでは , データフレームの開始と終了を明確にする
ためにスタートビット / ストップビットを付加してください (SSM = 1)。図 20.7-6 は
本機能の動作を示しています。
図 20.7-6 連続クロック供給 ( モード 2)
送受信クロック
(SCES = 0,CCO = 1):
送受信クロック
(SCES = 1,CCO = 1):
データ(SSM = 1)
(パリティなし,1ストップビット)
ST
SP
データフレーム
● エラー検出
スタートビット /ストップビットが有効でない場合(ECCR:SSM=0) はオーバランエラー
のみが検出されます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
445
第 20 章 LIN-UART
20.7 LIN-UART の動作
MB90990 シリーズ
● 同期モードの通信設定
同期モードで通信を行うためには下記の設定が必要です。
• ボーレートジェネレータレジスタ (BGR0/BGR1)
専用ボーレートリロードカウンタを必要な値に設定してください。
• シリアルモードレジスタ (SMR)
MD1, MD0 : 10B( モード 2)
SCKE
: "1"・・・専用ボーレートリロードカウンタを使用
"0"・・・外部クロックを入力
SOE
: "1"・・・送受信許可
"0"・・・受信のみ許可
• シリアル制御レジスタ (SCR)
RXE, TXE : どちらかのビットを "1" に設定
A/D
: アドレス / データ選択機能は使用されないため , 本ビットの値は無効
です。
CL
: 自動的に 8 ビット長に設定されます。本ビットの値は無効です。
CRE
: "1"・・・エラーフラグはクリアされ , 送受信は中断されます。
--- SSM=0 の場合
PEN, P, SBL : パリティビット , ストップビットは使用されないため無効です。
--- SSM=1 の場合
PEN : "1"・・・パリティビット付加 / 検出 , "0"・・・パリティビット不使用
P
: "1"・・・偶数パリティ , "0"・・・奇数パリティ
SBL : "1"・・・ストップビット長 2, "0"・・・ストップビット長 1
• シリアルステータスレジスタ (SSR)
BDS : "0"・・・LSB ファースト , "1"・・・MSB ファースト
RIE : "1"・・・受信割込み許可 , "0"・・・受信割込み禁止
TIE : "1"・・・送信割込み許可 , "0"・・・送信割込み禁止
• 拡張通信制御レジスタ (ECCR)
SSM : "0"・・・スタートビット / ストップビット不使用 ( 通常 )
"1"・・・スタートビット / ストップビット使用 ( 拡張機能 )
MS : "0"・・・マスタモード ( シリアルクロック出力 )
"1"・・・スレーブモード ( マスタデバイスからシリアルクロックを入力 )
<注意事項>
通信を開始する際には送信データレジスタ (TDR) にデータを書き込んでください。
データの受信のみを行う場合は , シリアル出力をディセーブル (SMR:SOE=0) に設定し ,
TDR にダミーデータを書き込んでください。
連続クロックとスタート / ストップビットをイネーブルにすることで , 非同期モードのよ
うな双方向通信が可能となります。
446
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.7 LIN-UART の動作
MB90990 シリーズ
20.7.3
LIN 機能 ( 動作モード 3) の動作
動作モード 3 において , UART は LIN マスタおよび LIN スレーブとして動作します。
動作モード 3 ではデータフォーマットは 8N1-LSB ファーストに設定されます。
■ 非同期 LIN モード動作
● LIN マスタとしての動作
LIN モードではマスタがバス全体のボーレートを決定し , スレーブはマスタに同期しま
す。初期設定後にマスタが動作することでボーレートが要求する値に固定されます。
拡張通信制御レジスタ (ECCR) の LBR ビットに "1" を書き込むと , SOTn 端子から "L"
レベルが 13 ビット∼ 16 ビット出力されます。これは LIN メッセージの開始を示す LIN
Synch break です。シリアルステータスレジスタ (SSR) の TDRE フラグビットは "0" に
なり , break の後 , 送信データレジスタ (TDR) に有効なデータがなければ "1"( 初期値 )
になります。このとき , SSR の TIE ビットが "1" の場合には送信割込みを出力します。
送信される LIN break の長さは ESCR の LBL0/LBL1ビットによって下表のように設定さ
れます。
表 20.7-2 LIN break 長
LBL0
LBL1
break 長
0
0
13 ビット
1
0
14 ビット
0
1
15 ビット
1
1
16 ビット
Synch field は LIN break の後にバイトデータ 55H として送信されます。送信割込みの発
生を防ぐため , TDRE フラグが "0" の状態であっても LBR ビットを "1" に設定した後
に 55H を TDR に書き込むことができます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
447
第 20 章 LIN-UART
20.7 LIN-UART の動作
MB90990 シリーズ
● LIN スレーブとしての動作
LIN スレーブモードでは UART はマスタのボーレートに同期する必要があります。受
信がディセーブル設定(RXE=0)でもLIN break割込みがイネーブル設定(LBIE=1)であれ
ば UART は受信割込みを発生します。このとき , ESCR の LBD ビットが "1" になります。
LBD ビットに "0" を書き込むと受信割込み要求フラグがクリアされます。
ボーレートの計算について , 例として UART0 の動作を以下に説明します。Synch field
の最初の立下りエッジを UART0 が検出すると , インプットキャプチャ (ICU0) に入力
される内部信号を "H" にして ICU0 をスタートさせます。この内部信号は 5 番目の立下
りエッジで "L" になります。ICU0 は LIN モードに設定されている必要があります
(ICE01)。また , ICU0 の割込みをイネーブル設定 , 両エッジ検出に設定する必要があり
ます (ICS01)。ICU0 入力信号が "1" の時間がボーレートを 8 倍した値となります。
ボーレート設定値は次式で算出してください。
フリーランタイマがオーバフローしていない場合 :
BGR 値 = { ( b - a ) × Fe / (8 × φ) } -1
フリーランタイマがオーバフローした場合 :
BGR 値 = { ( max + b - a ) × Fe / (8 × φ) } -1
max : フリーランタイマの最大値
a : 1 度目の割込み後の ICU データレジスタ値
b : 2 度目の割込み後の ICU データレジスタ値
φ : マシンクロック周波数 (MHz)
Fe : 外部クロック周波数 (MHz)
内部ボーレートジェネレータ使用時 (EXT=0),Fe=φ
として計算
<注意事項>
上記のように LIN スレーブモード時 , Synch field で新たに計算された BGR 値がボーレー
トの± 15% 以上の誤差が発生した場合は , ボーレートの設定は行わないでください。
UART と ICU の関係については , 「13.5 16 ビットフリーランタイマの動作説明」およ
び「13.6 インプットキャプチャの動作説明」を参照してください。
448
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.7 LIN-UART の動作
MB90990 シリーズ
● LIN Synch Break 検出割込みとフラグ
スレーブモードにおいて , LIN Synch break が検出されると ESCR の LIN break 検
出フラグ (LBD) が "1" になります。LIN break 割込みがイネーブルの場合 (LBIE=1)
は割込みが発生します。
図 20.7-7 LIN Synch break 検出とフラグセットのタイミング
シリアルクロックサイクル #
シリアル
クロック
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
シリアル入力
(LIN バス )
FRE
(RXE=1)
LBD
(RXE=0)
RXE = 1 の場合に受信割込み発生
RXE = 0 の場合に受信割込み発生
上図は LIN Synch break 検出とフラグのタイミングを示しています。
SSR のデータフレーミングエラー(FRE) フラグビットは LIN break 割込みよりも 2 ビット
早く受信割込みを発生させますので (8N1 の場合 ), LIN break を使用する場合には RXE=0
に設定してください。
LIN Synch break 検出は動作モード 3 にのみ機能します。
図 20.7-8 は , 標準的な LIN メッセージの開始と UART の動作を示しています。
図 20.7-8 LIN スレーブモードでの UART の動作
シリアル
クロック
シリアル入力
(LIN バス )
CPU による LBR クリア
LBD
ICU 入力
(LSYN)
CM44-10149-4
Synch break(14 ビット設定の場合 )
FUJITSU MICROELECTRONICS LIMITED
Synch field
449
第 20 章 LIN-UART
20.7 LIN-UART の動作
MB90990 シリーズ
● LIN バスタイミング
図 20.7-9 LIN バスタイミングと UART 信号
前回のシリアルクロック
クロックなし
( 計算フレーム )
新たに計算されたシリアルクロック
ICU カウント
LIN
バス
(SIN)
RXE
LBD
(IRQ0)
LBIE
ICU 入力
(LSYN)
IRQ(ICU)
RDRF
(IRQ0)
RIE
CPU による
RDR 読出し
受信割込み許可
LIN break 開始
LIN break 検出 , 割込み発生
CPU による IRQ クリア (LBD->0)
LBIE ディセーブル
IRQ (ICU)
IRQ クリア : ICU スタート
IRQ(ICU)
IRQ クリア : ボーレートを計算して設定
受信イネーブル
スタートビットの立下りエッジ
受信データ 1 バイト RDR に保存
CPU による RDR 読出し
450
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 20 章 LIN-UART
20.7 LIN-UART の動作
シリアル端子直接アクセス
20.7.4
送信端子 (SOTn) または受信端子 (SINn) へ直接アクセスできます。
■ LIN-UART 端子直接アクセス
LIN-UART では , プログラマがシリアル入出力端子に直接アクセスできます。
シリアル入力端子 (SINn) の状態をシリアル入出力端子直接アクセスビット
(ESCR:SIOP) で読み出すことができます。
シリアル出力端子 (SOTn) への直接書込みを可能 (ESCR:SOPE=1) にし , シリアル入出力
端子直接アクセスビット (ESCR:SIOP) へ "0" または "1" を書き込んだ後 , シリアル出力
を許可 (SMR:SOE=1) にするとシリアル出力端子 (SOTn) の値を任意に設定できます。
LIN モードの場合は , 送信したデータの読出しまたは物理的に LIN バス線信号が間違っ
ていたときのエラー処理に使用できます。
<注意事項>
• 送信動作中ではない ( 送信シフトレジスタが空 ) 場合にのみ直接アクセス可能です。
• 送信を許可 (SMR:SOE=1) する前にシリアル出力端子直接アクセスビット (ESCR:
SIOP) へ値を書き込んでください。これは , SIOP ビットが以前の値を保持しているた
め , 期待しないレベルの信号が出力されることを防ぐためです。
• 通常の読出しで SINn 端子の値が読み出されますが , リードモディファイライト (RMW)
系命令では SIOP ビットは SOTn 端子の値が読み出されます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
451
第 20 章 LIN-UART
20.7 LIN-UART の動作
20.7.5
MB90990 シリーズ
双方向通信機能 ( ノーマルモード )
動作モード 0, 2 で , 通常のシリアル双方向通信ができます。動作モード 0 は非同期
通信 , 動作モード 2 は同期通信の選択ができます。
■ 双方向通信機能
LIN-UART をノーマルモード ( 動作モード 0, 2) で動作させるには , 図 20.7-10 に示す設
定が必要です。
図 20.7-10 LIN-UART の動作モード 0, 2 の設定
SCRn, SMRn
bit15 14
13
12
11
PEN
P
SBL
CL
A/D
◎
□
◎
□
◎
+
×
×
モード 0 → ◎
モード 2 → □
SSRn, TDRn/RDRn
PE
◎
◎
◎
□
◎
◎
◎
◎
9
CRE RXE
0
0
ORE FRE RDRF TDRE BDS
モード 0 → ◎
モード 2 → □
ESCRn, ECCRn
10
◎
◎
bit8 bit7
×
×
×
×
×
×
◎
◎
◎
◎
5
4
3
2
1
bit0
TXE MD1 MD0 OTO EXT REST UPCL SCKE SOE
◎
◎
◎
◎
RIE
TIE
◎
◎
◎
◎
LBIE LBD LBL1 LBL0 SOPE SIOP CCO SCES
モード 0 → ×
モード 2 → ×
6
x
+
□
◎
0
1
0
0
0
◎
◎
◎
0
0
0
0
0
◎
◎
◎
変換データの設定 ( 書込み期間中 )
受信データの保持 ( 読出し期間中 )
−
LBR
0
0
◎
×
MS SCDE SSM
−
RBI
TBI
×
◎
0
0
◎
□
◎
□
×
◎
×
◎
◎ : 使用ビット
× : 未使用ビット
1 : "1" を設定
0 : "0" を設定
□ : SSM=1 の場合に使用 ( 同期スタート / ストップビットモード )
+ : 自動的に正しく設定されるビット
n = 0, 1, 2
● CPU 間接続
双方向通信では , 図 20.7-11 に示すように , 2 つの CPU を相互に接続します。
図 20.7-11 LIN-UART モード 2 の双方向通信の接続例
SOT
SOT
SIN
SCK
SIN
出力
入力
CPU-1( マスタ )
452
FUJITSU MICROELECTRONICS LIMITED
SCK
CPU-2( スレーブ )
CM44-10149-4
第 20 章 LIN-UART
20.7 LIN-UART の動作
MB90990 シリーズ
● 通信手順
通信は , 送信データが準備できたときに送信側から任意なタイミングで開始します。受
信側で送信データを受け取ると , 定期的に ANS( 例では 1 バイトごと ) を返します。図
20.7-12 に双方向通信フローチャートの一例を示します。
図 20.7-12 双方向通信フローチャートの例
( 送信側 )
( 受信側 )
スタート
スタート
動作モード設定
(0, 2 いずれか )
動作モード設定
( 送信側と合わせる )
TDR に 1 バイトデータを
セットして通信
データ送信
NO
受信データあり
YES
NO
受信データあり
受信データ読出しと
処理
YES
受信データ読出しと
処理
CM44-10149-4
データ送信
(ANS)
1 バイトデータ送信
FUJITSU MICROELECTRONICS LIMITED
453
第 20 章 LIN-UART
20.7 LIN-UART の動作
20.7.6
MB90990 シリーズ
マスタ / スレーブ型通信機能
( マルチプロセッサモード )
動作モード 1 で , 複数 CPU のマスタ / スレーブモード接続による通信が可能です。
マスタまたはスレーブとして使用できます。
■ マスタ / スレーブ型通信機能
LIN-UART をマルチプロセッサモード ( 動作モード 1) で動作させるには , 図 20.7-13 に
示す設定が必要です。
図 20.7-13 LIN-UART の動作モード 1 の設定
bit15 14
13
12
11
PEN
P
SBL
CL
A/D
×
◎
◎
◎
SCRn, SMRn
モード 1 → +
SSRn, TDRn/RDRn
PE
モード 1 → ×
ESCRn, ECCRn
10
CRE RXE
0
ORE FRE RDRF TDRE BDS
◎
◎
◎
◎
9
◎
bit8 bit7
◎
RIE
TIE
◎
◎
LBIE LBD LBL1 LBL0 SOPE SIOP CCO SCES
モード 1 → ×
×
×
×
◎
◎
5
4
3
2
1
bit0
TXE MD1 MD0 OTO EXT REST UPCL SCKE SOE
◎
x
6
+
0
1
0
◎
0
0
0
◎
変換データの設定 ( 書込み期間中 )
受信データの保持 ( 読出し期間中 )
−
0
LBR
×
MS SCDE SSM
−
RBI
TBI
×
0
◎
◎
×
×
◎ : 使用ビット
× : 未使用ビット
1 : "1" を設定
0 : "0" を設定
+ : 自動的に正しく設定されるビット
n = 0, 1, 2
● CPU 間接続
マスタ / スレーブ型通信では , 図 20.7-14 に示すように 2 本の共通通信ラインに 1 つの
マスタ CPU と複数のスレーブ CPU を接続して通信システムを構成します。LIN-UART
はマスタまたはスレーブのどちらでも使用できます。
図 20.7-14 LIN-UART のマスタ / スレーブ型通信の接続例
SOT
SIN
マスタ CPU
SOT
SIN
スレーブ CPU#0
454
SOT
SIN
スレーブ CPU#1
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.7 LIN-UART の動作
MB90990 シリーズ
● 機能選択
マスタ / スレーブ型通信では , 表 20.7-3 に示すように動作モードとデータ転送方式を選
択してください。
表 20.7-3 マスタ / スレーブ型通信機能の選択
動作モード
マスタ
CPU
スレーブ
CPU
アドレス
送受信
モード 1
(A/D ビット
送受信 )
モード 1
(A/D ビット
送受信 )
データ
送受信
データ
パリティ
同期方式
ストップ
ビット
ビット
方向
なし
非同期
1 ビットまたは
2 ビット
LSB ファースト
または
MSB ファースト
A/D=1
+
7 ビットまたは
8 ビットアドレス
A/D=0
+
7 ビットまたは
8 ビットデータ
● 通信手順
通信はマスタ CPU がアドレスデータを送信することによって始まります。アドレス
データとは A/D ビットを "1" としたデータで , 通信先となるスレーブ CPU を選択しま
す。各スレーブ CPU はプログラムでアドレスデータを判断し , 割り当てられたアドレ
スと一致した場合にマスタ CPU との通信をします。
図 20.7-15 に , マスタ / スレーブ型通信 ( マルチプロセッサモード ) のフローチャート
を示します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
455
第 20 章 LIN-UART
20.7 LIN-UART の動作
MB90990 シリーズ
図 20.7-15 マスタ / スレーブ型通信フローチャート
( マスタ CPU)
( スレーブ CPU)
スタート
スタート
動作モード 1 に設定
動作モード 1 に設定
SINn 端子をシリアルデータ
入力に設定
SOTn 端子をシリアルデータ
出力に設定
SINn 端子をシリアルデータ
入力に設定
SOTn 端子をシリアルデータ
出力に設定
7 または 8 データビット設定
1 または 2 ストップビット
設定
7 または 8 データビット設定
1 または 2 ストップビット
設定
A/D ビットに "1" をセット
送受信動作許可
受信バイト
送受信動作許可
スレーブへアドレスを送信
A/D ビット = 1
NO
YES
スレーブアドレス
が一致
A/D ビットに "0" を設定
YES
マスタ CPU と通信
スレーブ CPU と通信
通信終了 ?
NO
通信終了 ?
NO
NO
YES
YES
ほかのスレーブ
CPU と通信
NO
YES
送受信動作禁止
エンド
456
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.7 LIN-UART の動作
MB90990 シリーズ
LIN 通信機能
20.7.7
LIN-UART 通信で LIN デバイスは LIN マスタシステムもしくは LIN スレーブシステ
ムに使用できます。
■ LIN マスタ / スレーブ型通信機能
LIN-UART の LIN 通信モード ( 動作モード 3) に必要な設定を図 20.7-16 に示します。
図 20.7-16 LIN-UART の動作モード 3(LIN) 設定
bit15 14
13
12
11
PEN
P
SBL
CL
A/D
×
+
+
×
SCRn, SMRn
モード 3 → +
SSRn, RDRn/TDRn
PE
モード 3 → ×
ESCRn, ECCRn
10
CRE RXE
0
ORE FRE RDRF TDRE BDS
◎
◎
◎
◎
9
+
bit8 bit7
◎
RIE
TIE
◎
◎
LBIE LBD LBL1 LBL0 SOPE SIOP CCO SCES
モード 3 → ◎
◎
◎
◎
◎
◎
5
4
3
2
1
bit0
TXE MD1 MD0 OTO EXT REST UPCL SCKE SOE
◎
x
6
+
1
1
0
◎
0
0
0
◎
変換データの設定 ( 書込み期間中 )
受信データの保持 ( 読込み期間中 )
−
0
LBR
◎
MS SCDE SSM
−
RBI
TBI
×
0
◎
◎
×
×
◎ : 使用ビット
× : 未使用ビット
1 : "1" を設定
0 : "0" を設定
+ : 自動的に正しく設定されるビット
n = 0, 1, 2
● LIN デバイス接続
1 つの LIN マスタと LIN スレーブの通信システムを図 20.7-17 で示します。
LIN-UART は , LIN マスタまたは LIN スレーブとして動作することができます。
図 20.7-17 LIN バスシステムの通信例
SOT
SOT
LIN バス
SIN
LIN マスタ
CM44-10149-4
SIN
トランシーバ
トランシーバ
LIN スレーブ
FUJITSU MICROELECTRONICS LIMITED
457
第 20 章 LIN-UART
20.7 LIN-UART の動作
MB90990 シリーズ
LIN-UART の LIN 通信フローチャート例
( 動作モード 3)
20.7.8
LIN-UART の LIN 通信フローチャート例を示します。
■ LIN マスタデバイス
図 20.7-18 LIN マスタフローチャート
スタート
初期設定 :
動作モードを 3 に設定
シリアルデータ出力許可 , ボーレート設定
Synch break 長設定
TXE = 1, TIE = 0, RXE = 1, RIE = 1
NO
メッセージ ?
( 受信 )
YES
Wake up ?
(80H 受信 )
NO
YES
Data Field
受信 ?
送信 Data 1 セット
TDR = Data 1
送信割込み許可
RDRF = 1
受信割込み
RXE = 0
Synch Break 割込み許可
Synch Break 送信 :
ECCR: LBR = 1
Synch Field 送信 :
TDR = 55H
送信 )
RDRF = 1
受信割込み
Data 1 受信* 1
YES
NO (
TDRE = 1
送信割込み
Data N 受信* 1
送信 Data N セット
TDR = Data N
送信割込み禁止
LBD = 1
Synch Break 割込み
RDRF = 1
受信割込み
受信許可
LBD = 0
Synch Break 割込み禁止
Data 1 受信 * 1
Data 1 読出し
RDRF = 1
受信割込み
RDRF = 1
受信割込み
Synch Field 受信 * 1
Identify Field セット : TDR = lD
Data N 受信 * 1
Data N 読出し
RDRF = 1
受信割込み
ID Field 受信* 1
エラーなし ?
NO
エラー処理* 2
YES
*1: エラーが発生した場合 , エラー処理を行ってください。
*2:
・ FRE, ORE が "1" になっていた場合 , SCR: CRE ビットに "1" を書き込んでエラーフラグをクリアしてください。
・ ESCR: LBD ビットが "1" になっていた場合 , UART リセットを実行してください。
( 注意事項 ) 各処理の中でエラー検出を行い , 適切に対処してください。
458
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 20 章 LIN-UART
20.7 LIN-UART の動作
MB90990 シリーズ
■ LIN スレーブデバイス
図 20.7-19 LIN スレーブフローチャート
スタート
初期設定 :
動作モードを 3 に設定
シリアルデータ出力許可
TXE = 1, TIE = 0, RXE = 0, RIE = 1
UART と ICU の接続
受信禁止
ICU 割込み許可
Synch Break 割込み許可
( 受信 )
YES
RDRF = 1
受信割込み
LBD = 1
Synch Break 割込み
Synch Break 検出クリア
ESCR: LBD = 0
Synch Break 割込み禁止
ICU 割込み
Data Field
受信 ?
( 送信 )
NO
送信 Data 1 セット
TDR = Data 1
送信割込み許可
Data 1 受信* 1
RDRF = 1
受信割込み
Data N
TDRE = 1
送信割込み
受信* 1
送信 Data N セット
TDR = Data N
送信割込み禁止
ICU データ読出し
ICU 割込みフラグクリア
受信禁止
RDRF = 1
受信割込み
ICU 割込み
ICU データ読出し
ボーレート調整
受信許可
ICU 割込みフラグクリア
ICU 割込み禁止
Data 1受信 *1
Data 1 読出し
RDRF = 1
受信割込み
RDRF = 1
受信割込み
Data N受信 *1
Data N 読出し
受信禁止
Identify Field受信*1
エラーなし ?
NO
エラー処理* 2
YES
スリープ
モード ?
NO
YES
ウェイク
アップ受信 ?
YES
NO
ウェイク
アップ送信 ?
YES
NO
ウェイクアップコード送信
*1: エラーが発生した場合 , エラー処理を行ってください。
*2:
・ FRE, ORE が "1" になっていた場合 , SCR: CRE ビットに "1" を書き込んでエラーフラグをクリアしてください。
・ ESCR: LBD ビットが "1" になっていた場合 , UART リセットを実行してください。
( 注意事項 ) 各処理の中でエラー検出を行い , 適切に対処してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
459
第 20 章 LIN-UART
20.8 LIN-UART 使用上の注意
20.8
MB90990 シリーズ
LIN-UART 使用上の注意
LIN-UART を使用する場合の注意点を示します。
■ LIN-UART 使用上の注意
● 動作許可
LIN-UART には送信 , 受信のそれぞれに対してシリアル制御レジスタ (SCR) に TXE( 送
信 ), RXE( 受信 ) の動作許可ビットがあります。デフォルト ( 初期値 ) では送受信とも
動作禁止であるため , 転送前に動作を許可する必要があります。また , 必要に応じて動
作禁止にし , 転送を中止することもできます。
● 通信モードの設定
通信モードの設定は , LIN-UART の動作停止中にしてください。送受信中にモード設定
をした場合 , そのとき送受信されたデータは保証されません。
● 送信割込み許可のタイミング
送信データエンプティフラグビット (SSR:TDRE) はデフォルト ( 初期値 ) が "1"( 送信
データなし , 送信データ書込み許可 ) であるため , 送信割込み要求を許可 (SSR:TIE=1)
すると , 直ちに送信割込み要求が発生します。これを避けるため , 必ず送信データを設
定してから TIE フラグを "1" にしてください。
● 動作設定の変更
スタート / ストップビットの付加またはデータフォーマットを変更した場合など , 設定
を変更した後には LIN-UART のリセットをしてください。
LIN-UART シリアルモードレジスタ (SMR) の設定と同時に LIN-UART のリセット
(SMR:UPCL=1) を行っても , 正しい動作設定は保証されません。そのため , LIN-UART
シリアルモードレジスタ (SMR) のビット設定を行った後 , 再度 LIN-UART をリセット
(SMR:UPCL=1) してください。
● LIN 機能の使用
LIN 機能はモード 3 で使用可能ですが , モード 3 では自動的に LIN フォーマットの設
定 (8 ビット長 , パリティなし , 1 ストップビット , LSB ファースト ) になります。
LIN break の送信ビット長は可変ですが , 検出は 11 ビット長固定になっています。
● LIN スレーブ設定
LIN Synch break の最小 13 ビット長を確実に検出するために , LIN スレーブを開始する
ときは , 必ず最初の LIN Synch break を受信する前にボーレートを設定してください。
460
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 20 章 LIN-UART
20.8 LIN-UART 使用上の注意
● プログラムの互換性
LIN-UART は古い FJ-UART と類似していますがプログラムの互換性はありません。プ
ログラミングの型は同じときもありますがレジスタの構造は異なります。さらに , ボー
レートの設定はあらかじめ設定された値を選出する代わりにリロード値によって現在
決定されます。
● バスアイドル機能
バスアイドル機能は同期モード 2 で SSM=0 のときは使用できません。
● A/D ビット ( シリアル制御レジスタ (SCR) : アドレス / データ形式選択ビット )
本ビットは , 書込み時は送信のアドレス / データ選択設定を行い , 読出し時は最後に受
信した A/D ビットの値を返します。内部的には送信・受信の A/D ビット値は個別のレ
ジスタに保存されています。
リードモディファイライト (RMW) 系命令使用時には , 送信の A/D ビット値が読み出さ
れそれ以外の読出しは , 受信した A/D データが読み出されます。
送信動作時 , TDRE ビットが "0" から "1" になる時送信用の A/D ビットも送信データレ
ジスタ (TDR) のデータとともに , 送信シフトレジスタにロードされますので送信用 A/D
ビットは送信データレジスタ (TDR) への書込み前に A/D ビットを設定してください。
● LIN-UART ソフトウェアリセット
シリアル制御レジスタ (SCR) の TXE ビットが "0" のときに LIN-UART ソフトウェアリ
セット (SMR: UPCL = 1) を実行してください。
● Synch Break 検出
モード 3 (LIN モード ) 時 , シリアル入力が 11 ビット幅以上 "0" になると拡張ステータ
ス制御レジスタ (ESCR) の LBD ビットは "1" になり (Synch Break 検出 ), LIN-UART は
Synch Field 待ちになります。このため , Synch Break 以外のところでシリアル入力が 11
ビット以上 "0" になった場合 , LIN-UART は Synch Break が入力されたものと認識
(LBD = 1) し , Synch Field 待ちになります。
この場合 , LIN-UART リセット (SMR: UPCL = 1) を実行してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
461
第 20 章 LIN-UART
20.8 LIN-UART 使用上の注意
462
MB90990 シリーズ
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章
CAN コントローラ
CAN コントローラの機能と概要について説明しま
す。
21.1 CAN コントローラの特長
21.2 CAN コントローラのブロックダイヤグラム
21.3 レジスタ一覧
21.4 CAN コントローラのレジスタ分類
21.5 CAN コントローラの送信
21.6 CAN コントローラの受信
21.7 CAN コントローラの受信フローチャート
21.8 CAN コントローラの使用方法
21.9 メッセージバッファ (x) による送信方法
21.10 メッセージバッファ (x) による受信方法
21.11 マルチレベルメッセージバッファの構成の決定
21.12 CAN ダイレクトモードレジスタ
21.13 CAN コントローラの使用上の注意
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
463
第 21 章 CAN コントローラ
21.1 CAN コントローラの特長
21.1
MB90990 シリーズ
CAN コントローラの特長
CAN( コントローラエリアネットワーク ) は自動車用コントローラ間のシリアル通信
用の標準プロトコルであり , 工業分野で広く使用されています。
■ CAN コントローラの特長
● CAN 規格バージョン 2.0 パート A およびパート B に適合しています。
標準フレームおよび拡張フレームフォーマットでの送信 / 受信をサポートしています。
● リモートフレームの受信によるデータフレームの送信をサポートしています。
● 16 個の送信 / 受信メッセージバッファを内蔵しています。
29 ビットの ID および 8 バイトデータ
マルチ・レベル・メッセージ・バッファ構造
● フルビット比較,フルビットマスクおよび部分的ビットマスクフィルタリングをサポートし
ています。
標準フレームまたは拡張フレームフォーマットのいずれかで 2 個のアクセプタンスマ
スクレジスタを提供します。
● ビット速度は10 kbps∼1 Mbpsの範囲で設定可能です(1 Mbpsでご使用の場合は, 8 MHz以
上のマシンクロックで動作させる必要があります。また 10kbps でご使用の場合 , マシン
クロックは 16MHz 以下で動作する必要があります )。
464
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章 CAN コントローラ
21.2 CAN コントローラのブロックダイヤグラム
MB90990 シリーズ
CAN コントローラのブロックダイヤグラム
21.2
図 21.2-1 に , CAN コントローラのブロックダイヤグラムを示します。
■ CAN コントローラのブロックダイヤグラム
図 21.2-1 CAN コントローラのブロックダイヤグラム
2
TQ (動作クロック)
F MC-16LXバス
プリスケーラ
1~64周波数分割
クロック
ビットタイミング発生
SYNC, TSEG1, TSEG2
PSC
TS1
BTR
TS2
RSJ
TOE
TS
RS
CSR
IDLE, SUSPND,
送信, 受信,
ERR, OVRLD
HALT
NIE
NT
バスステート
マシン
ノードステータス
変化割込み
ノードステータス
変化割込み発生
NS1,NS0
エラー
制御
RTEC
送信/
受信シーケンサ
BVALR
TREQR
TBFxクリア
送信バッファx判定
TBFx
エラーフレーム
発生
データ アクセプタンス
フィルタ
カウンタ
制御
過負荷
フレーム発生
TDLC
TBFx
RDLC
IDSEL
BITER, STFER,
CRCER, FRMER,
ACKER
TCANR
出力
ドライバ
ARBLOST
TX
TRTRR
TCR
TBFx, セット, クリア
CRC発生
TDLC
送信完了
割込み
送信完了
割込み発生
TIER
RCR
ACK発生
CRCER
RBFx, セット
RDLC
受信完了
割込み発生
RIER
RRTRR
スタッフィング
送信シフト
レジスタ
RFWTR
受信完了
割込み
受信シフト
レジスタ
RBFx, TBFx, セット, クリア
RBFx, セット
CRC発生/エラーチェック
STFER
デスタッフィング/
スタッフィングエラーチェック
IDSEL
ROVRR
ARBLOST
AMSR
AMR0
0
1
BITER
アクセプタンス
フィルタ
受信
バッファx判定
RBFx
RAMアドレス発生
ビットエラー
チェック
ACKER
確認エラー
チェック
FRMER
フォームエラー
チェック
AMR1
IDR0~IDR15,
DLCR0~DLCR15,
DTR0~DTR15,
RAM
アービトレーション
チェック
PH1
入力
ラッチ
RX
RBFx, TBFx, RDLC, TDLC, IDSEL
LEIR
IDER
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
465
第 21 章 CAN コントローラ
21.3 レジスタ一覧
21.3
MB90990 シリーズ
レジスタ一覧
表 21.3-1 ∼表 21.3-4 に , CAN コントローラのレジスタ一覧を示します。
■ 全体コントロールレジスタ一覧
表 21.3-1 全体コントロールレジスタ一覧 (1 / 2)
アドレス
CAN1
000080H
000081H
000082H
000083H
000084H
000085H
000086H
000087H
000088H
000089H
00008AH
00008BH
00008CH
00008DH
00008EH
00008FH
007D00H
007D01H
007D02H
007D03H
007D04H
007D05H
007D06H
007D07H
007D08H
007D09H
007D0AH
007D0BH
007D0CH
007D0DH
007D0EH
007D0FH
レジスタ
略号
アクセス
初期値
メッセージバッファ
有効レジスタ
BVALR
R/W
00000000 00000000B
送信要求レジスタ
TREQR
R/W
00000000 00000000B
送信解除レジスタ
TCANR
W
00000000 00000000B
送信完了レジスタ
TCR
R/W
00000000 00000000B
受信完了レジスタ
RCR
R/W
00000000 00000000B
リモート要求受信レジスタ
RRTRR
R/W
00000000 00000000B
受信オーバランレジスタ
ROVRR
R/W
00000000 00000000B
受信割込み許可レジスタ
RIER
R/W
00000000 00000000B
制御ステータスレジスタ
CSR
R/W
0 0 XXX 0 0 0 0 XXXX0 X1 B
ラストイベント表示レジスタ
LEIR
R/W
XXXXXXXX 0 0 0 X0 0 0 0 B
受信および送信
エラーカウンタ
RTEC
R
00000000 00000000B
ビットタイミングレジスタ
BTR
R/W
X1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 B
IDE レジスタ
IDER
R/W
XXXXXXXX XXXXXXXXB
送信 RTR レジスタ
TRTRR
R/W
00000000 00000000B
リモートフレーム
受信待機レジスタ
RFWTR
R/W
XXXXXXXX XXXXXXXXB
TIER
R/W
00000000 00000000B
送信割込み許可レジスタ
007D10H
007D11H
007D12H
アクセプタンスマスク
選択レジスタ
XXXXXXXX XXXXXXXXB
AMSR
R/W
007D13H
466
FUJITSU MICROELECTRONICS LIMITED
XXXXXXXX XXXXXXXXB
CM44-10149-4
第 21 章 CAN コントローラ
21.3 レジスタ一覧
MB90990 シリーズ
表 21.3-1 全体コントロールレジスタ一覧 (2 / 2)
アドレス
レジスタ
CAN1
略号
アクセス
007D14H
007D15H
007D16H
アクセプタンス
マスクレジスタ 0
XXXXXXXX XXXXXXXXB
AMR0
R/W
XXXXXXXX XXXXXXXXB
007D17H
007D18H
007D19H
007D1AH
アクセプタンス
マスクレジスタ 1
初期値
XXXXXXXX XXXXXXXXB
AMR1
R/W
XXXXXXXX XXXXXXXXB
007D1BH
■ メッセージバッファ (ID レジスタ ) 一覧
表 21.3-2 メッセージバッファ (ID レジスタ ) 一覧 (1 / 2)
アドレス
CAN1
レジスタ
略号
アクセス
─
R/W
007C00H
∼
007C1FH
XXXXXXXXB
汎用 RAM
007C22H
XXXXXXXX XXXXXXXXB
ID レジスタ 0
IDR0
R/W
XXXXXXXX XXXXXXXXB
007C23H
007C24H
007C25H
007C26H
XXXXXXXX XXXXXXXXB
ID レジスタ 1
IDR1
R/W
XXXXXXXX XXXXXXXXB
007C27H
007C28H
007C29H
007C2AH
XXXXXXXX XXXXXXXXB
ID レジスタ 2
IDR2
R/W
XXXXXXXX XXXXXXXXB
007C2BH
007C2CH
007C2DH
007C2EH
XXXXXXXX XXXXXXXXB
ID レジスタ 3
IDR3
R/W
XXXXXXXX XXXXXXXXB
007C2FH
007C30H
007C31H
007C32H
XXXXXXXX XXXXXXXXB
ID レジスタ 4
IDR4
R/W
XXXXXXXX XXXXXXXXB
007C33H
007C34H
007C35H
007C36H
XXXXXXXX XXXXXXXXB
ID レジスタ 5
IDR5
R/W
XXXXXXXX XXXXXXXXB
007C37H
007C38H
007C39H
007C3AH
XXXXXXXX XXXXXXXXB
ID レジスタ 6
IDR6
R/W
XXXXXXXX XXXXXXXXB
007C3BH
CM44-10149-4
∼
XXXXXXXXB
007C20H
007C21H
初期値
FUJITSU MICROELECTRONICS LIMITED
467
第 21 章 CAN コントローラ
21.3 レジスタ一覧
MB90990 シリーズ
表 21.3-2 メッセージバッファ (ID レジスタ ) 一覧 (2 / 2)
アドレス
CAN1
レジスタ
略号
アクセス
007C3CH
007C3DH
007C3EH
XXXXXXXX XXXXXXXXB
ID レジスタ 7
IDR7
R/W
XXXXXXXX XXXXXXXXB
007C3FH
007C40H
007C41H
007C42H
XXXXXXXX XXXXXXXXB
ID レジスタ 8
IDR8
R/W
XXXXXXXX XXXXXXXXB
007C43H
007C44H
007C45H
007C46H
XXXXXXXX XXXXXXXXB
ID レジスタ 9
IDR9
R/W
XXXXXXXX XXXXXXXXB
007C47H
007C48H
007C49H
007C4AH
XXXXXXXX XXXXXXXXB
ID レジスタ 10
IDR10
R/W
XXXXXXXX XXXXXXXXB
007C4BH
007C4CH
007C4DH
007C4EH
XXXXXXXX XXXXXXXXB
ID レジスタ 11
IDR11
R/W
XXXXXXXX XXXXXXXXB
007C4FH
007C50H
007C51H
007C52H
XXXXXXXX XXXXXXXXB
ID レジスタ 12
IDR12
R/W
XXXXXXXX XXXXXXXXB
007C53H
007C54H
007C55H
007C56H
XXXXXXXX XXXXXXXXB
ID レジスタ 13
IDR13
R/W
XXXXXXXX XXXXXXXXB
007C57H
007C58H
007C59H
007C5AH
XXXXXXXX XXXXXXXXB
ID レジスタ 14
IDR14
R/W
XXXXXXXX XXXXXXXXB
007C5BH
007C5CH
007C5DH
007C5EH
XXXXXXXX XXXXXXXXB
ID レジスタ 15
IDR15
R/W
XXXXXXXX XXXXXXXXB
007C5FH
468
初期値
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章 CAN コントローラ
21.3 レジスタ一覧
MB90990 シリーズ
■ メッセージバッファ (DLC レジスタ ) 一覧
表 21.3-3 メッセージバッファ (DLC レジスタ ) 一覧
アドレス
CAN1
007C60H
007C61H
007C62H
007C63H
007C64H
007C65H
007C66H
007C67H
007C68H
007C69H
007C6AH
007C6BH
007C6CH
007C6DH
007C6EH
007C6FH
007C70H
007C71H
007C72H
007C73H
007C74H
007C75H
007C76H
007C77H
007C78H
007C79H
007C7AH
007C7BH
007C7CH
007C7DH
007C7EH
007C7FH
CM44-10149-4
レジスタ
略号
アクセス
初期値
DLC レジスタ 0
DLCR0
R/W
XXXXXXXXB
DLC レジスタ 1
DLCR1
R/W
XXXXXXXXB
DLC レジスタ 2
DLCR2
R/W
XXXXXXXXB
DLC レジスタ 3
DLCR3
R/W
XXXXXXXXB
DLC レジスタ 4
DLCR4
R/W
XXXXXXXXB
DLC レジスタ 5
DLCR5
R/W
XXXXXXXXB
DLC レジスタ 6
DLCR6
R/W
XXXXXXXXB
DLC レジスタ 7
DLCR7
R/W
XXXXXXXXB
DLC レジスタ 8
DLCR8
R/W
XXXXXXXXB
DLC レジスタ 9
DLCR9
R/W
XXXXXXXXB
DLC レジスタ 10
DLCR10
R/W
XXXXXXXXB
DLC レジスタ 11
DLCR11
R/W
XXXXXXXXB
DLC レジスタ 12
DLCR12
R/W
XXXXXXXXB
DLC レジスタ 13
DLCR13
R/W
XXXXXXXXB
DLC レジスタ 14
DLCR14
R/W
XXXXXXXXB
DLC レジスタ 15
DLCR15
R/W
XXXXXXXXB
FUJITSU MICROELECTRONICS LIMITED
469
第 21 章 CAN コントローラ
21.3 レジスタ一覧
MB90990 シリーズ
■ メッセージバッファ ( データレジスタ ) 一覧
表 21.3-4 メッセージバッファ ( データレジスタ ) 一覧
アドレス
レジスタ
略号
アクセス
初期値
007C80H
∼
007C87H
データレジスタ 0
(8 バイト )
DTR0
R/W
XXXXXXXXB
∼
XXXXXXXXB
007C88H
∼
007C8FH
データレジスタ 1
(8 バイト )
DTR1
R/W
XXXXXXXXB
∼
XXXXXXXXB
007C90H
∼
007C97H
データレジスタ 2
(8 バイト )
DTR2
R/W
XXXXXXXXB
∼
XXXXXXXXB
007C98H
∼
007C9FH
データレジスタ 3
(8 バイト )
DTR3
R/W
XXXXXXXXB
∼
XXXXXXXXB
007CA0H
∼
007CA7H
データレジスタ 4
(8 バイト )
DTR4
R/W
XXXXXXXXB
∼
XXXXXXXXB
007CA8H
∼
007CAFH
データレジスタ 5
(8 バイト )
DTR5
R/W
XXXXXXXXB
∼
XXXXXXXXB
007CB0H
∼
007CB7H
データレジスタ 6
(8 バイト )
DTR6
R/W
XXXXXXXXB
∼
XXXXXXXXB
007CB8H
∼
007CBFH
データレジスタ 7
(8 バイト )
DTR7
R/W
XXXXXXXXB
∼
XXXXXXXXB
007CC0H
∼
007CC7H
データレジスタ 8
(8 バイト )
DTR8
R/W
XXXXXXXXB
∼
XXXXXXXXB
007CC8H
∼
007CCFH
データレジスタ 9
(8 バイト )
DTR9
R/W
XXXXXXXXB
∼
XXXXXXXXB
007CD0H
∼
007CD7H
データレジスタ 10
(8 バイト )
DTR10
R/W
XXXXXXXXB
∼
XXXXXXXXB
007CD8H
∼
007CDFH
データレジスタ 11
(8 バイト )
DTR11
R/W
XXXXXXXXB
∼
XXXXXXXXB
007CE0H
∼
007CE7H
データレジスタ 12
(8 バイト )
DTR12
R/W
XXXXXXXXB
∼
XXXXXXXXB
007CE8H
∼
007CEFH
データレジスタ 13
(8 バイト )
DTR13
R/W
XXXXXXXXB
∼
XXXXXXXXB
007CF0H
∼
007CF7H
データレジスタ 14
(8 バイト )
DTR14
R/W
XXXXXXXXB
∼
XXXXXXXXB
007CF8H
∼
007CFFH
データレジスタ 15
(8 バイト )
DTR15
R/W
XXXXXXXXB
∼
XXXXXXXXB
CAN1
470
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
21.4
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
CAN コントローラのレジスタ分類
CAN コントローラのレジスタは , レジスタの機能により , 全体コントロールレジス
タ , メッセージバッファコントロールレジスタおよびメッセージバッファの 3 種類
に分類されます。
■ 全体コントロールレジスタ ( レジスタ数 : 4)
• 制御ステータスレジスタ (CSR)
• ラストイベント表示レジスタ (LEIR)
• 受信および送信エラーカウンタ (RTEC)
• ビットタイミングレジスタ (BTR)
■ メッセージバッファコントロールレジスタ ( レジスタ数 : 14)
• メッセージバッファ有効レジスタ (BVALR)
• IDE レジスタ (IDER)
• 送信要求レジスタ (TREQR)
• 送信 RTR レジスタ (TRTRR)
• リモートフレーム受信待機レジスタ (RFWTR)
• 送信解除レジスタ (TCANR)
• 送信完了レジスタ (TCR)
• 送信割込み許可レジスタ (TIER)
• 受信完了レジスタ (RCR)
• リモート要求受信レジスタ (RRTRR)
• 受信オーバランレジスタ (ROVRR)
• 受信割込み許可レジスタ (RIER)
• アクセプタンスマスク選択レジスタ (AMSR)
• アクセプタンスマスクレジスタ 0 および 1(AMR0, AMR1)
■ メッセージバッファ ( レジスタ数 : 3)
• ID レジスタ x(x=0 ∼ 15)(IDRx)
• DLC レジスタ x(x=0 ∼ 15)(DLCRx)
• データレジスタ x(x=0 ∼ 15)(DTRx)
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
471
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
21.4.1
MB90990 シリーズ
制御ステータスレジスタ (CSR) の構成
本レジスタは , バス動作 , ノードステータス , 送信出力許可 , 送受信ステータスを示
します。なお , 本レジスタの下位 8 ビットに対しては , ビット操作命令 ( リードモ
ディファイライト (RMW)) を実行することは禁止されています。ただし , HALT ビッ
トが変化しないタイミング ( マクロの初期化時など ) ではビット操作命令を使用して
も問題ありません。
■ 制御ステータスレジスタ (CSR)( 下位 )
図 21.4-1 制御ステータスレジスタ下位 (CSR: L)
アドレス
bit
CAN1: 007D00H
CSR (下位)
0
7
6
5
4
3
TOE
-
-
-
-
NIE 予約 HALT
R/W
-
-
-
-
R/W
2
1
初期値
0XXXX0X1B
R/W R/W
bit0
HALT
0
1
バス動作停止ビット
書込み:バス動作停止を解除する
読出し:バス動作が停止していない状態
書込み:バス動作を停止する
読出し:バス動作が停止している状態
bit1
予約
0
予約ビット
必ず“0”を設定してください
bit2
NIE
0
1
ノードステータス遷移割込み出力許可ビット
ノードステータス遷移での割込み出力禁止
ノードステータス遷移での割込み出力許可
bit7
TOE
0
1
R/W :リード/ライト可能
X :不定
ー :未定義ビット
:初期値
送信出力許可ビット
汎用入出力ポートとして使用
送信端子TXとして使用
■ 制御ステータスレジスタ (CSR)( 上位 )
図 21.4-2 制御ステータスレジスタ上位 (CSR: H)
アドレス
CSR (上位)
14
13
12
11
10
TS
RS
-
-
-
NT
R
R
-
-
-
R/W
bit 15
CAN1: 007D01H
9
8
NS1 NS0
R
初期値
00XXX000B
R
bit9 bit8
ノードステータスビット
NS1 NS0
0
0
エラーアクティブ
0
1
ワーニング(エラーアクティブ)
エラーパッシブ
1
0
バスオフ
1
1
bit10
NT
ノードステータス遷移フラグ
0
ノードステータス遷移なし
1
ノードステータス遷移あり
R/W
R X ー 472
:リード/ライト可能
:リードオンリ
:不定
:未定義ビット
:初期値
bit14
RS
受信ステータスビット
0
メッセージを受信していない
1
メッセージを受信中
bit15
TS
送信ステータスビット
0
メッセージを送信していない
1
メッセージを送信中
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
21.4.2
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
制御ステータスレジスタ (CSR) の機能
レジスタの各ビットは , "0" または "1" の設定もしくは書込みにより機能を制御する
か , リードにより動作状態の確認ができます。
■ 制御ステータスレジスタ (CSR)( 下位 )
表 21.4-1 制御ステータスレジスタの機能 (CSR:L)
ビット名
機 能
bit7
TOE:
送信出力許可
ビット
汎用入出力ポートと送信端子 TX を切り換えます。
"0" を設定した場合 : 汎用入出力ポートとして機能します。
"1" を設定した場合 : 送信端子 TX として機能します。
bit6
∼
bit3
未定義ビット
読み出した場合 : 値は不定です。
書き込んだ場合 : 影響しません。
bit2
NIE:
ノードステータス
遷移割込み出力
許可ビット
ノードステータスが遷移した場合の (CSR: NT=1) ノードステータス遷移割込み
の発生を制御します。
"0" を設定した場合 : 割込み発生を禁止します。
"1" を設定した場合 : 割込み発生を許可します。
bit1
予約 : 予約ビット
必ず "0" を設定してください。
読み出した場合 : 値は常に "0" です。
バス動作停止を制御します。また , HALT ビットを読み出すことによってバス
動作の停止状態を確認できます。
書き込んだ場合 :
"0": バス動作停止を解除します。
"1": バス動作を停止します。
読み出した場合 :
"0": バス動作は停止していません。
"1": バス動作は停止しています。
( 注意事項 )
バスオフ時に HALT ビットに "0" を書き込む場合は , HALT ビットが "1" に
なっていることを確認後 , "0" を書き込んでください。
bit0
HALT:
バス動作停止
ビット
CM44-10149-4
プログラム例 :
switch ( IO_CANCT1.CSR.bit.NS )
{
case 0 : /* error active */
break;
case 1 : /* warning */
break;
case 2 : /* error passive */
break;
default : /* bus off */
for ( i=0; ( i <= 500 ) && ( IO_CANCT1.CSR.bit.HALT == 0); i++);
IO_CANCT1.CSR.word = 0x0084; /* HALT = 0 */
break;
}
*: 変数 i はフェイルセーフのために使用します。
詳細は 「21.4.4 バス動作停止ビット使用上の注意事項 (HALT = 1)」を参照して
ください。
FUJITSU MICROELECTRONICS LIMITED
473
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
■ 制御ステータスレジスタ (CSR)( 上位 )
表 21.4-2 制御ステータスレジスタの機能 (CSR:H)
ビット名
機 能
TS:
送信ステータス
ビット
メッセージが送信中かどうかを示します。
読出し時 :
"0": メッセージが送信されていません
"1": メッセージが送信中です
エラーフレームまたはオーバロードフレームが送信されている場合は "0" にク
リアされます。
bit14
RS:
受信ステータス
ビット
メッセージが受信中かどうかを示します。
読出し時 :
"0": メッセージ受信中ではありません
"1": メッセージ受信中です
• 本ビットはメッセージがバス上にある場合に "1" がセットされるため , メッ
セージ送信中の場合でも同様に "1" がセットされます。受信メッセージがア
クセプタンスフィルタを通過したかどうかとは必ずしも関係ありません。
• 結果として RS ビットが "0" の場合には , バス動作停止状態 (HALT=1), イン
ターミッションバスアイドル状態 , またはエラー / オーバロードフレームが
バス上にあることを意味します。
bit13
∼
bit11
未定義ビット
bit15
読み出した場合 : 値は不定です。
書き込んだ場合 : 影響しません。
ノードステータスがインクリメント遷移またはバスオフからエラーアクティブ
に変化すると本ビットは "1" にセットされます。本ビットが "1" にセットされ
る条件は下記のとおりです。このとき , ノードステータス割込み許可ビット
(NIE) が "1" の場合は割込みが発生します。
• エラーアクティブ ("00B") →ワーニング ("01B")
• ワーニング ("01B") →エラーパッシブ ("10B")
bit10
NT:
ノードステータス
遷移フラグ
• エラーパッシブ ("10B") →バスオフ ("11B")
• バスオフ ("11B") → エラーアクティブ ("00B")
( 注意事項 ) 括弧内は NS1, NS0 ビットの値を示します。
書込み時 :
"0" : クリアされます。
"1" : 設定できません ( 影響しません )。
リードモディファイライト (RMW) 系の命令で読み出した場合 :
常に "1" が読み出されます。
bit9,
bit8
474
NS1, NS0:
ノードステータス
ビット
NS1, NS0 ビットの組合せによって , 現在のノードステータスを示します。
詳細は「 21.4.3 ノードステータスビットとノードステータスの対応」を参照し
てください。
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
ノードステータスビットとノードステータスの対応
21.4.3
ノードステータスビットは , NS1 および NS0 の 2 ビットによりノードステータスを
示します。
■ ノードステータスビット (NS1, NS0) およびノードステータスの間の対応
表 21.4-3 NS1, NS0 およびノードステータスの間の対応
NS1
NS0
0
0
エラーアクティブ
0
1
ワーニング ( エラーアクティブ )
1
0
エラーパッシブ
1
1
バスオフ
ノードステータス
<注意事項>
ワーニング ( エラーアクティブ ) は , ノードステータスに対する CAN 規格 Ver.2.0 パート
B におけるエラーアクティブに含まれますが , 送信エラーカウンタまたは受信エラーカウ
ンタが 96 を超えたことを表します。ノードステータス遷移図は図 21.4-3 に示されていま
す。
図 21.4-3 ノードステータス遷移図
ハードウェアリセット
移行には,バス動作停止の解除が必要
エラー
アクティブ
REC:受信エラーカウンタ
TEC:送信エラーカウンタ
REC≧96
またはTEC≧96
REC<96
かつTEC<96
ワーニング
(エラー
アクティブ)
制御ステータスレジスタ(CSR)の
HALTビットに"0"を書き込んだ後,
受信入力端子(RX)に11ビット連続
の"H"レベル(レセッシブビット)が
128回入力されると移行
REC≧128
またはTEC≧128
REC<128
かつTEC<128
エラー
パッシブ
CM44-10149-4
TEC≧256
バスオフ
(HALT=1)
FUJITSU MICROELECTRONICS LIMITED
475
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
バス動作停止ビット使用上の注意事項 (HALT = 1)
21.4.4
バス動作停止ビットは , ビットへの書込みによる設定以外にハードウェアリセットお
よびノードステータスによってセットされます。また , メッセージバッファの状態に
よりバス動作の停止動作が異なります。
■ バス動作停止をセットする条件 (HALT=1)
バス動作停止をセットする条件 (HALT=1) として , 次の 3 つがあります。
• ハードウェアリセット
• ノードステータスがバスオフに変化したとき
• HALT ビットへの "1" の書込み
<注意事項>
• バス動作は , F2MC-16LX が低消費電力消費モード ( 停止モード , クロックモード ) へ遷
移する前に HALT に "1" を書き込むことにより停止しなければなりません。
HALT に "1"
を書き込んだ時点で送信中であれば送信終了後にバス動作は停止します (HALT=1)。
HALT に "1" を 書 き 込 ん だ 時 点 で 受 信 中 で あ れ ば バ ス 動 作 は 直 ち に 停 止 し ま す
(HALT=1)。もし , 受信されたメッセージがメッセージバッファ (x) に格納中であれば
メッセージを格納した後にバス動作は停止します (HALT=1)。
• バス動作停止の確認は , HALT ビットを読み込んでチェックしてください。
■ バス動作停止を解除する条件 (HALT=0)
バス動作停止を解除する条件 (HALT=0) は , HALT への "0" の書込みです。
<注意事項>
• ハードウェアリセット後または HALT に "1" を書き込んだ後のバス動作停止解除は ,
HALT に "0" が書き込まれ , 受信入力端子 (RX) に 11 ビット連続で "H" レベル ( リセッ
シブビット ) が入力された後に行われます。
• ノードステータスがバスオフに変化したときのバス動作停止解除は HALT に "0" が書き
込まれ , 受信入力端子 (RX) に 11 ビット "H" レベル ( リセッシブビット ) が 128 回入力
された後に行われます。次に , 送信および受信エラーカウンタの両者の値が "0" に達し
てノードステータスはエラーアクティブに変化します。
• バスオフ時に HALT ビットに "0" を書き込む場合は , HALT ビットが "1" になっている
ことを確認した後 , "0" を書き込んでください。
476
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
■ バス動作停止中の状態 (HALT=1)
• バスは送信および受信などの動作を一切行いません。
• 送信出力端子 (TX) は ,"H" レベル ( リセッシブビット ) を出力します。
• ほかのレジスタおよびエラーカウンタの値は変化しません。
<注意事項>
ビットタイミングレジスタ (BTR) をバス動作停止 (HALT=1) の間に設定する必要がありま
す。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
477
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
21.4.5
MB90990 シリーズ
ラストイベント表示レジスタ (LEIR)
本レジスタはラストイベントを示します。
NTE, TCE および RCE は排他的なビットです。ラストイベントのビットが "1" に
セットされたとき , ほかのビットは "0" にクリアされます。
■ レジスタの構成
図 21.4-4 ラストイベント表示レジスタ (LEIR)
アドレス:
CAN1: 007D02H
bit7
6
5
4
NTE
TCE
RCE
-
R/W
R/W
R/W
-
3
2
1
LEIR
0
初期値
000X0000B
MBP3 MBP2 MBP1 MBP0
R/W R/W
R/W R/W
bit3
MBP3
bit2
MBP2
bit1
bit0
MBP1
MBP0
0000B~1111B(初期値:0000B)
メッセージバッファポインタビット
メッセージバッファ0~15
bit5
RCE
0
1
受信完了イベントビット
読出し時
書込み時
最後のイベントが受信完了でない
ビットクリア
最後のイベントが受信完了だった
影響なし
bit6
TCE
0
1
送信完了イベントビット
読出し時
書込み時
最後のイベントが送信完了ではない ビットクリア
最後のイベントが送信完了だった
影響なし
bit7
NTE
R/W
X
ー
478
:リード/ライト可能
:不定
:未定義ビット
:初期値
0
1
ノードステータス遷移イベントビット
読出し時
書込み時
最後のイベントがノードステータス
ビットクリア
遷移でない
最後のイベントがノードステータス
影響なし
遷移だった
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
■ レジスタの機能
表 21.4-4 ラストイベント表示レジスタの機能 (LEIR)
ビット名
機 能
NTE:
ノードステータス遷移
イベントビット
本ビットが "1" の場合 , 最後に発生したイベントがノードステータス遷移で
あることを示します。
制御ステータスレジスタの NT ビットが "1"(CSR:NT=1) になると , 本ビット
に "1" がセットされます。
制御ステータスレジスタ (CSR) の NIE ビットの設定には関係ありません。
ライト時 :
"0" : クリアされます
"1" : 影響しません
リードモディファイライト (RMW) 系命令で読み出した場合 :
常に "1" が読み出されます。
TCE:
送信完了イベント
ビット
本ビットが "1" の場合 , 最終に発生したイベントが送信完了であることを示
します。
送信完了レジスタのいずれか 1 ビットが "1" になると (TCR: TCx=1), 本ビッ
トに "1" がセットされます。
• 送信完了割込み許可レジスタ (TIER) の設定には関係ありません。
• 本ビットが "1" の場合 , MBP3 ∼ MBP0 ビットは最終イベントにおいて
メッセージの送信を完了したメッセージバッファ番号 (x) を示します。
ライト時 :
"0" : クリアされます
"1" : 影響しません
リードモディファイライト (RMW) 系命令で読み出した場合 :
常に "1" が読み出されます。
bit5
RCE:
受信完了イベント
ビット
本ビットが "1" の場合 , 最後に発生したイベントが受信完了であることを示
します。
受信完了レジスタのいずれか 1 ビットが "1" になると (RCR: RCx=1), 本ビッ
トに "1" がセットされます。
• 受信完了割込み許可レジスタ (RIER) の設定には関係ありません。
• 本ビットが "1" の場合 , MBP3 ∼ MBP0 ビットは最終イベントにおいて
メッセージの受信を完了したメッセージバッファ番号 (x) を示します。
ライト時 :
"0" : クリアされます
"1" : 影響しません
リードモディファイライト (RMW) 系命令で読み出した場合 :
常に "1" が読み出されます。
bit4
未定義ビット
読み出した場合 : 値は不定です。
書き込んだ場合 : 動作に影響しません。
bit7
bit6
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
479
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
表 21.4-4 ラストイベント表示レジスタの機能 (LEIR)
ビット名
bit3
∼
bit0
MBP3 ∼ MBP0:
メッセージバッファ
ポインタビット
機 能
TCE ビットか RCE ビットが "1" の場合 , 本ビットは対応する最終イベント
が発生したメッセージバッファ番号 (x) を示します。NTE ビットが "1" の
場合は本ビットの値は無効です。
ライト時 :
"0" : クリアされます
"1" : 影響しません
リードモディファイライト (RMW) 系命令で読み出した場合 :
常に "1" が読み出されます。
( 注意事項 )
CAN 割込み処理中に LEIR にアクセスした場合 , 割込みの原因となって
いるイベントが LEIR が表しているものと一致するとは限りません。割
込み発生から割込みハンドラが LEIR にアクセスするまでの間にほかの
CAN イベントが発生する可能性があるためです。
480
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
受信および送信エラーカウンタ (RTEC)
21.4.6
本レジスタは CAN 規格で定められる受信エラーカウントおよび送信エラーカウント
を示します。本レジスタは読出し専用です。
■ レジスタの構成
図 21.4-5 受信および送信エラーカウンタ (RTEC)
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
CAN1: 007D05H
TEC7
TEC6
TEC5
TEC4
TEC3
TEC2
TEC1
TEC0
R
R
R
R
R
R
R
R
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
CAN1: 007D04H
REC7
REC6
REC5
REC4
REC3
REC2
REC1
REC0
R
R
R
R
R
R
R
R
RTEC ( 上位 )
初期値
00000000B
RTEC ( 下位 )
初期値
00000000B
R : リードオンリ
■ レジスタの機能
表 21.4-5 送信および受信エラーカウンタの機能 (RTEC)
ビット名
bit15
∼
bit8
bit7
∼
bit0
機 能
TEC7 ∼ TEC0:
送信エラーカウンタ
これらのビットは送信エラーカウンタです。
TEC7 ∼ TEC0 は , カウンタ値が 256 より大きい場合には 0 ∼ 7 を示しま
す。以降の加算はカウンタ値にカウントされません。この場合 , バスオフ
がノードステータスとして示されます ( 制御ステータスレジスタ (CSR) の
NS1 および NS0=11B)。
REC7 ∼ REC0:
受信エラーカウンタ
これらのビットは受信エラーカウンタです。
REC7 ∼ REC0 は , カウンタ値が 256 より大きい場合には 0 ∼ 7 を示しま
す。以降の加算はカウンタ値にカウントされません。この場合 , エラー
パッシブがノードステータスとして示されます ( 制御ステータスレジスタ
(CSR) の NS1 および NS0=10B)。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
481
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
ビットタイミングレジスタ (BTR)
21.4.7
本レジスタは , プリスケーラおよびビットタイミングをセットします。
■ レジスタの構成
図 21.4-6 ビットタイミングレジスタ (BTR) アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
BTR ( 上位 )
CAN1: 007D07H
−
TS2.2
TS2.1
TS2.0
TS1.3
TS1.2
TS1.1
TS1.0
−
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
X1111111B
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
BTR ( 下位 )
CAN1: 007D06H
RSJ1
RSJ0
PSC5
PSC4
PSC3
PSC2
PSC1
PSC0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
11111111B
R/W :
X
:
−
:
リード / ライト可能
不定
未定義ビット
■ レジスタの機能
表 21.4-6 ビットタイミングレジスタ (BTR) の機能
ビット名
機 能
bit14
∼
bit12
TS2.2 ∼ TS2.0:
タイムセグメント 2
設定ビット 2 ∼ 0
単位時間 (TQ) を [(TS2.2 ∼ TS2.0) + 1] で分周して , タイムセグメン
ト 2(TSEG2) の時間を設定します。タイムセグメント 2 は , CAN 規
格のフェーズバッファセグメント 2(PHASE_SEG2) に相当します。
bit11
∼
bit8
TS1.3 ∼ TS1.0:
タイムセグメント 1
設定ビット 3 ∼ 0
単位時間 (TQ) を [(TS1.3 ∼ TS1.0) + 1] で分周して , タイムセグメン
ト 1(TSEG1) の時間を設定します。タイムセグメント 1 は , CAN 規
格のプロパゲーションセグメント (PROP_SEG)+ フェーズバッファ
セグメント 1(PHASE_SEG1) に相当します。
bit7
bit6
RSJ1, RSJ0:
再同期ジャンプ幅設定
ビット 1, 0
単位時間 (TQ) を [(RSJ1 ∼ RSJ0) + 1] で分周して , 再同期ジャンプ
幅 (RSJW) の幅を設定します。
bit5
∼
bit0
PSC5 ∼ PSC0:
プリスケーラ設定
ビット 5 ∼ 0
システムクロックを分周して , CAN コントローラの単位時間 (TQ)
を決定します。
482
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
<注意事項>
ビットタイミングレジスタ (BTR) は , バス動作を停止させてから (CSR: HALT=1) 設定し
てください。ビットタイミングレジスタ (BTR) の設定が終了したら , 制御ステータスレジ
スタの HALT ビットに "0" を書き込んでバス動作停止を解除してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
483
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
21.4.8
MB90990 シリーズ
ビットタイミングレジスタ (BTR) によるプリスケー
ラの設定
ビットタイミングレジスタの設定は , CAN 規格および CAN コントローラにおける
プリスケーラのビット時間セグメントに対応します。
■ プリスケーラの設定
CAN 規格および CAN コントローラのそれぞれにおけるビット時間セグメントは図
21.4-7 および図 21.4-8 に示されています。
図 21.4-7 CAN 規格におけるビット時間セグメント
ノミナルビット時間
SYNC_SEG
PROP_SEG
PHASE_SEG1
PHASE_SEG2
サンプルポイント
図 21.4-8 CAN コントローラにおけるビット時間セグメント
ノミナルビット時間
SYNC_SEG
TSEG1
TSEG2
サンプルポイント
484
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
PSC = PSC5 ∼ PSC0, TS1 = TS1.3 ∼ TS1.0, TS2 = TS2.2 ∼ TS2.0 お よ び RSJ = RSJ1,
RSJ0 の間の関係は次に示すとおりです。
TQ
BT
RSJW
= (PSC + 1) × CLK
= SYNC_SEG + TSEG1 + TSEG2
= (1 + (TS1 + 1) + (TS2 + 1)) × TQ
= (3 + TS1 + TS2) × TQ
= (RSJ + 1) × TQ
CLK : 入力クロック
TQ : 単位時間
BT : ビットタイム
SYNC_SEG : 同期セグメント
TSEG1, TSEG2 : タイムセグメント 1, 2
再同期ジャンプ幅 [(RSJ1+RSJ0)+1] 周波数分割
正しく動作を行うには以下の条件を満足しなければなりません。
・1 ≦ PSC ≦ 63 の場合
TSEG1 ≧ 2TQ
TSEG1 ≧ RSJW
TSEG2 ≧ 2TQ
TSEG2 ≧ RSJW
・PSC=0 の場合
TSEG1 ≧ 5TQ
TSEG2 ≧ 2TQ
TSEG2 ≧ RSJW
CAN 規格に従ったビットタイミングの設定をするには , 遅延時間などほかの条件も考
慮しなければなりません。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
485
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
メッセージバッファ有効レジスタ (BVALR)
21.4.9
本レジスタは , メッセージバッファ (x) の有効性の設定 , もしくはその状態の表示を
行います。
■ レジスタの構成
図 21.4-9 メッセージバッファ有効レジスタ (BVALR)
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
BVALR( 上位 )
CAN1: 000081H
BVAL15
BVAL14
BVAL13
BVAL12
BVAL11
BVAL10
BVAL9
BVAL8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
00000000B
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
CAN1: 000080H
BVAL7
BVAL6
BVAL5
BVAL4
BVAL3
BVAL2
BVAL1
BVAL0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
BVALR( 下位 )
初期値
00000000B
R/W : リード / ライト可能
■ レジスタの機能
0 : メッセージバッファ (x) 無効
1 : メッセージバッファ (x) 有効
メッセージバッファ (x) が無効に設定されると , そのメッセージバッファはメッセージ
を送受信しません。
バッファが送信動作の間に無効に設定されると,送信が完了またはエラーにより終了し
た後で無効 (BVALx=0) になります。
バッファが受信動作の間に無効に設定されると , 直ちに無効 (BVALx=0) になります。
受信メッセージがメッセージバッファ(x) に格納されている最中の場合にはメッセージ
バッファ (x) はメッセージを格納した後に無効となります。
<注意事項>
• x はメッセージバッファ番号を示します (x=0 ∼ 15)。
• ビット (BVALx) に "0" を書き込んでメッセージバッファ (x) を無効としたときは , ビッ
ト操作命令の実行はそのビットが "0" にクリアされるまで禁止です。
• CAN コントローラが CAN 通信に参加している状態 (CSR:HALT ビットの読出し値が
"0" で , CAN コントローラが CAN バスの通信に参加しており送受信が可能な状態 ) に
おいて , メッセージバッファを無効 (BVALR:BVALx=0) にする場合は ,「21.13 CAN コ
ントローラの使用上の注意」に従ってください。
486
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
IDE レジスタ (IDER)
21.4.10
本レジスタは , 送信 / 受信の間にメッセージバッファ (x) により使用されるフレーム
フォーマットを設定します。
■ レジスタの構成
図 21.4-10 IDE レジスタ (IDER)
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
IDER( 上位 )
CAN1: 007D09H
IDE15
IDE14
IDE13
IDE12
IDE11
IDE10
IDE9
IDE8
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
IDER( 下位 )
CAN1: 007D08H
IDE7
IDE6
IDE5
IDE4
IDE3
IDE2
IDE1
IDE0
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W : リード / ライト可能
X
: 不定
■ レジスタの機能
0 : メッセージバッファ(x) に対して標準フレームフォーマット (11 ビットの ID) が使用
されます。
1 : メッセージバッファ(x) に対して拡張フレームフォーマット (29 ビットの ID) が使用
されます。
<注意事項>
• 本レジスタはメッセージバッファ (x) が無効であるとき ( メッセージバッファ有効レジ
スタの BVALx(BVALR)=0) に設定しなければなりません。バッファが有効である
(BVALx=1) ときに設定を行うと不要な受信メッセージを格納する可能性があります。
• CAN コントローラが CAN 通信に参加している状態 (CSR:HALT ビットの読出し値が
"0" で , CAN コントローラが CAN バスの通信に参加しており送受信が可能な状態 ) に
おいて , メッセージバッファを無効 (BVALR:BVALx=0) にする場合は ,「21.13 CAN コ
ントローラの使用上の注意」に従ってください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
487
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
21.4.11
MB90990 シリーズ
送信要求レジスタ (TREQR)
本レジスタは , メッセージバッファ (x) に対する送信要求を設定し , またその状態を
表示します。
■ レジスタの構成
図 21.4-11 送信要求レジスタ (TREQR)
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
TREQR( 上位 )
CAN1: 000083H
TREQ15
TREQ14
TREQ13
TREQ12
TREQ11
TREQ10
TREQ9
TREQ8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
00000000B
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
CAN1: 000082H
TREQ7
TREQ6
TREQ5
TREQ4
TREQ3
TREQ2
TREQ1
TREQ0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
TREQR( 下位 )
初期値
00000000B
R/W : リード / ライト可能
■ レジスタの機能
TREQx に "1" が書き込まれたときにメッセージバッファ (x) に対する送信を開始しま
す。リモートフレーム受信待機レジスタ (RFWTR)*1 の RFWTx が "0" の場合には送信
を直ちに開始します。しかし , RFWTx=1 であればリモートフレームが受信される ( リ
モート要求受信レジスタ(RRTRR)*1 が"1"になる)まで待機した後に送信が開始します。
TREQx に "1" が書き込まれるときに RRTRx が既に "1" の場合には , RFWTx=1 であっ
ても送信を直ちに開始します *2。
*1: TRTRR および RFWTR に関しては「21.4.12 送信 RTR レジスタ (TRTRR)」および
「21.4.13 リモートフレーム受信待機レジスタ (RFWTR)」を参照してください。
*2: 送信の解除に関しては「21.4.14 送信解除レジスタ (TCANR)」および「21.4.15 送信
完了レジスタ (TCR)」を参照してください。
TREQx への "0" 書込みは動作に影響ありません。
リードモディファイライト (RMW) 系命令では "0" が読み出されます。
送信動作の完了時における "0" クリアおよび "1" 書込みが同時に発生した場合 , クリア
動作が優先されます。
1 つ以上のビットに "1" が書き込まれると , 下位番号のメッセージバッファ (x) から送
信が行われます。
TREQx は送信が待ち状態中の場合には "1" であり , 送信が完了または解除されたとき
に "0" になります。
488
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
21.4.12
送信 RTR レジスタ (TRTRR)
本レジスタは , メッセージバッファ (x) による送信 RTR( リモート送信要求 ) ビット
を設定します。
■ レジスタの構成
図 21.4-12 送信 RTR レジスタ (TRTRR)
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
CAN1: 007D0BH
TRTR15
TRTR14
TRTR13
TRTR12
TRTR11
TRTR10
TRTR9
TRTR8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
CAN1: 007D0AH
TRTR7
TRTR6
TRTR5
TRTR4
TRTR3
TRTR2
TRTR1
TRTR0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
TRTRR( 上位 )
初期値
00000000B
TRTRR( 下位 )
初期値
00000000B
R/W : リード / ライト可能
■ レジスタの機能
0 : データフレームが送信されます。
1 : リモートフレームが送信されます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
489
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
リモートフレーム受信待機レジスタ (RFWTR)
21.4.13
本レジスタは , データフレーム送信に対する要求が設定された ( 送信要求レジスタ
(TREQR) の TREQx が "1" であり , 送信 RTR レジスタ (TRTRR) の TRTRx が "0"
である ) ときに送信を開始する条件を設定します。
■ レジスタの構成
図 21.4-13 リモートフレーム受信待機レジスタ (RFWTR)
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
CAN1: 007D0DH
RFWT15
RFWT14
RFWT13
RFWT12
RFWT11
RFWT10
RFWT9
RFWT8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
CAN1: 007D0CH
RFWT7
RFWT6
RFWT5
RFWT4
RFWT3
RFWT2
RFWT1
RFWT0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
RFWTR( 上位 )
初期値
XXXXXXXXB
RFWTR( 下位 )
初期値
XXXXXXXXB
R/W : リード / ライト可能
X
: 不定
■ レジスタの機能
0 : 送信を直ちに開始します。
1 : リモートフレーム受信 ( リモート要求受信レジスタ (RRTRR) が "1" になる ) まで待
機した後に送信を開始します。
<注意事項>
• 送信に対する要求が設定されたときに RRTRx が既に "1" であれば送信を直ちに開始し
ます。
• リモートフレーム送信に対しては RFWTx を "1" にセットしないでください。
490
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
21.4.14
送信解除レジスタ (TCANR)
本レジスタは , メッセージバッファ (x) への待ち状態中の送信要求をキャンセルしま
す。
■ レジスタの構成
図 21.4-14 送信解除レジスタ (TCANR)
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
TCANR( 上位 )
CAN1: 000085H
TCAN15
TCAN14
TCAN13
TCAN12
TCAN11
TCAN10
TCAN9
TCAN8
W
W
W
W
W
W
W
W
初期値
00000000B
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
CAN1: 000084H
TCAN7
TCAN6
TCAN5
TCAN4
TCAN3
TCAN2
TCAN1
TCAN0
W
W
W
W
W
W
W
W
TCANR( 下位 )
初期値
00000000B
W : ライトオンリ
■ レジスタの機能
TCANx に "1" が書き込まれたときにメッセージバッファ (x) への待ち状態中の送信要
求をキャンセルします。
キャンセルが完了すると送信要求レジスタ (TREQR) の TREQx
は "0" になります。
TCANx に "0" を書き込んでも無視されます。
TCANx は , 書込み専用レジスタであり , その読出し値は常に "0" です。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
491
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
送信完了レジスタ (TCR)
21.4.15
メッセージバッファ (x) による送信の完了時に , 本レジスタの対応する TCx が "1"
になります。
送信完了割込み許可レジスタ (TIER) の TIEx が "1" の場合には割込みが発生します。
■ レジスタの構成
図 21.4-15 送信完了レジスタ (TCR)
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
TCR( 上位 )
CAN1: 000087H
TC15
TC14
TC13
TC12
TC11
TC10
TC9
TC8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
00000000B
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
TCR( 下位 )
CAN1: 000086H
TC7
TC6
TC5
TC4
TC3
TC2
TC1
TC0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
00000000B
R/W : リード / ライト可能
X
: 不定
■ レジスタの機能
● TCx=0 となる条件
• TCx に "0" を書き込む。
• 送信要求レジスタ (TREQR) の TREQx に "1" を書き込む。
送信の完了の後で TCx に "0" を書き込むと , そのビットを "0" にクリアします。TCx に
"1" を書き込んでも無視されます。
リードモディファイライト (RMW) 系命令が実行されたときは "1" が読み出されます。
<注意事項>
送信動作の完了時 , "1" への設定および "0" の書込みによるクリアが同時に発生したときは
"1" への設定が優先します。
492
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
21.4.16
送信割込み許可レジスタ (TIER)
本レジスタは , メッセージバッファ (x) による送信割込みを許可または禁止します。
送信割込みは送信完了時 [ 送信完了レジスタ (TCR) の TCx が "1" になったとき ] に
発生します。
■ レジスタの構成
図 21.4-16 送信割込み許可レジスタ (TIER)
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
TIER( 上位 )
CAN1: 007D0FH
TIE15
TIE14
TIE13
TIE12
TIE11
TIE10
TIE9
TIE8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
00000000B
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
TIER( 下位 )
CAN1: 007D0EH
TIE7
TIE6
TIE5
TIE4
TIE3
TIE2
TIE1
TIE0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
00000000B
R/W : リード / ライト可能
■ レジスタの機能
0 : 送信割込みは禁止されます。
1 : 送信割込みは許可されます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
493
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
受信完了レジスタ (RCR)
21.4.17
メッセージバッファ (x) への受信メッセージの格納の完了時に本レジスタの RCx が
"1" になります。
受信完了割込み許可レジスタの RIEx が "1" の場合には割込みが発生します。
■ レジスタの構成
図 21.4-17 受信完了レジスタ (RCR)
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
RCR( 上位 )
CAN1: 000089H
RC15
RC14
RC13
RC12
RC11
RC10
RC9
RC8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
00000000B
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
RCR( 下位 )
CAN1: 000088H
RC7
RC6
RC5
RC4
RC3
RC2
RC1
RC0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
00000000B
R/W : リード / ライト可能
■ レジスタの機能
● RCx=0 となる条件
RCx に "0" を書き込む。
受信メッセージの処理の完了の後で RCx に "0" を書き込んで "0" にクリアしてくださ
い。RCx に "1" を書き込んでも無視されます。
リードモディファイライト (RMW) 系命令が実行されたときは "1" が読み出されます。
<注意事項>
受信動作の完了時 , "1" への設定および "0" の書込みによるクリアが同時に発生したときは
"1" への設定が優先します。
494
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
リモート要求受信レジスタ (RRTRR)
21.4.18
受信されたリモートフレームがメッセージバッファ (x) 内に格納されると RRTRx は
(RCx 設定が "1" になるのと同時に )"1" になります。
■ レジスタの構成
図 21.4-18 リモート要求受信レジスタ (RRTRR)
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
RRTRR( 上位 )
CAN1: 00008BH
RRTR15
RRTR14
RRTR13
RRTR12
RRTR11
RRTR10
RRTR9
RRTR8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
00000000B
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
CAN1: 00008AH
RRTR7
RRTR6
RRTR5
RRTR4
RRTR3
RRTR2
RRTR1
RRTR0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
RRTRR( 下位 )
初期値
00000000B
R/W : リード / ライト可能
■ レジスタの機能
● RRTRx=0 となる条件
• RRTRx に "0" を書き込む。
• 受信されたデータフレームがメッセージバッファ (x) に格納された後 (RCx 設定が
"1" になるのと同時 )。
• メッセージバッファ (x) による送信が完了した後 ( 送信完了レジスタ (TCR) の TCx
は "1")。
RRTRx に "1" を書き込んでも無視されます。
リードモディファイライト (RMW) 系命令が実行されたときは "1" が読み出されます。
<注意事項>
受信動作の完了による "1" への設定および "0" の書込みによるクリアが同時に発生したと
きは "1" への設定が優先します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
495
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
受信オーバランレジスタ (ROVRR)
21.4.19
本レジスタは , メッセージバッファ (x) 内への受信メッセージの格納完了時に受信完
了レジスタ (RCR) が既に "1" であれば ROVRx が "1" になり , 受信がオーバランし
たことを表します。
■ レジスタの構成
図 21.4-19 受信オーバランレジスタ (ROVRR)
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
CAN1: 00008DH
ROVR15
ROVR14
ROVR13
ROVR12
ROVR11
ROVR10
ROVR9
ROVR8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
CAN1: 00008CH
ROVR7
ROVR6
ROVR5
ROVR4
ROVR3
ROVR2
ROVR1
ROVR0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
ROVRR( 上位 )
初期値
00000000B
ROVRR( 下位 )
初期値
00000000B
R/W : リード / ライト可能
■ レジスタの機能
ROVRx に "0" を書き込むと ROVRx=0 になります。ROVRx に "1" を書き込んでも無視
されます。受信がオーバランしたことをチェックした後で ROVRx に "0" を書き込むと
そのビットを "0" に設定します。
リードモディファイライト (RMW) 系命令が実行されたときは "1" が読み出されます。
<注意事項>
受信オーバラン発生による "1" への設定および "0" の書込みによるクリアが同時に発生し
たときは "1" への設定が優先します。
496
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
21.4.20
受信割込み許可レジスタ (RIER)
本レジスタは , メッセージバッファ (x) による受信割込みを許可または禁止します。
受信割込みは受信完了時 ( 受信完了レジスタ (RCR) の RCx が "1" の場合 ) に発生し
ます。
■ レジスタの構成
図 21.4-20 受信割込み許可レジスタ (RIER)
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
RIER( 上位 )
CAN1: 00008FH
RIE15
RIE14
RIE13
RIE12
RIE11
RIE10
RIE9
RIE8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
00000000B
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
RIER( 下位 )
CAN1: 00008EH
RIE7
RIE6
RIE5
RIE4
RIE3
RIE2
RIE1
RIE0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
初期値
00000000B
R/W : リード / ライト可能
■ レジスタの機能
0 : 受信割込みは禁止されます。
1 : 受信割込みは許可されます。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
497
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
21.4.21
MB90990 シリーズ
アクセプタンスマスク選択レジスタ (AMSR)
本レジスタは受信メッセージ ID とメッセージバッファ (x) ID の比較のためのマスク
( アクセプタンスマスク ) を選択します。
■ レジスタの構成
図 21.4-21 アクセプタンスマスク選択レジスタ (AMSR)
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
AMSR(Byte0)
CAN1: 007D10H
AMS3.1
AMS3.0
AMS2.1
AMS2.0
AMS1.1
AMS1.0
AMS0.1
AMS0.0
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
AMSR(Byte1)
CAN1: 007D11H
AMS7.1
AMS7.0
AMS6.1
AMS6.0
AMS5.1
AMS5.0
AMS4.1
AMS4.0
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
AMSR(Byte2)
CAN1: 007D12H
AMS11.1
AMS11.0
AMS10.1
AMS10.0
AMS9.1
AMS9.0
AMS8.1
AMS8.0
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
AMSR(Byte3)
CAN1: 007D13H
AMS15.1
AMS15.0
AMS14.1
AMS14.0
AMS13.1
AMS13.0
AMS12.1
AMS12.0
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W : リード / ライト可能
X
: 不定
498
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
■ レジスタの機能
表 21.4-7 アクセプタンスマスクの選択
AMSx.1
AMSx.0
0
0
フルビット比較
0
1
フルビットマスク
1
0
アクセプタンスマスクレジスタ 0(AMR0)
1
1
アクセプタンスマスクレジスタ 1(AMR1)
アクセプタンスマスク
<注意事項>
• AMSx.1 および AMSx.0 はメッセージバッファ (x) が無効である ( メッセージバッファ
有効レジスタ (BVALR) の BVALx が "0" である ) ときに設定しなければなりません。バッ
ファが有効 (BVALx=1) なときに設定を行うと不要な受信メッセージが格納される可能
性があります。
• CAN コントローラが CAN 通信に参加している状態 (CSR:HALT ビットの読出し値が
"0" で , CAN コントローラが CAN バスの通信に参加しており送受信が可能な状態 ) で
メッセージバッファを無効 (BVALR:BVALx=0) にする場合は 「21.13
,
CAN コントロー
ラの使用上の注意」に従ってください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
499
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
アクセプタンスマスクレジスタ 0/1(AMR0/AMR1)
21.4.22
本レジスタは , 標準フレームフォーマットか拡張フレームフォーマットのいずれかで
使用できます。
AM28 ∼ AM18(11 ビット ) は標準フレームフォーマットにおけるアクセプタンスマ
スクに使用され , AM28 ∼ AM0(29 ビット ) は拡張フォーマットでアクセプタンスマ
スクに使用されます。
■ レジスタの構成
図 21.4-22 アクセプタンスマスクレジスタ 0(AMR0)
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
AMR0 (Byte0)
CAN1: 007D14H
AM28
AM27
AM26
AM25
AM24
AM23
AM22
AM21
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
AMR0 (Byte1)
CAN1: 007D15H
AM20
AM19
AM18
AM17
AM16
AM15
AM14
AM13
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
AMR0 (Byte2)
CAN1: 007D16H
AM12
AM11
AM10
AM9
AM8
AM7
AM6
AM5
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
AMR0 (Byte3)
CAN1: 007D17H
AM4
AM3
AM2
AM1
AM0
−
−
−
R/W
R/W
R/W
R/W
R/W
−
−
−
初期値
XXXXXXXXB
R/W
X
−
500
: リード / ライト可能
: 不定
: 未定義ビット
: 標準フレームフォーマットでの使用ビット
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
図 21.4-23 アクセプタンスマスクレジスタ 1(AMR1)
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
AMR1 (Byte0)
CAN1: 007D18H
AM28
AM27
AM26
AM25
AM24
AM23
AM22
AM21
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
AMR1 (Byte1)
CAN1: 007D19H
AM20
AM19
AM18
AM17
AM16
AM15
AM14
AM13
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
AMR1 (Byte2)
CAN1: 007D1AH
AM12
AM11
AM10
AM9
AM8
AM7
AM6
AM5
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
アドレス
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
AMR1 (Byte3)
CAN1: 007D1BH
AM4
AM3
AM2
AM1
AM0
−
−
−
R/W
R/W
R/W
R/W
R/W
−
−
−
初期値
XXXXXXXXB
R/W
X
−
: リード / ライト可能
: 不定
: 未定義ビット
: 標準フレームフォーマットでの使用ビット
■ レジスタの機能
● 0 : コンペア
本ビット ("0" が設定されたビット ) に対応するアクセプタンスコードのビット ( 受信
メッセージ ID と比較するための ID レジスタ IDRx) を受信メッセージ ID のビットと比
較します。マッチしないとメッセージは受信されません。
● 1 : マスク
本ビット ("1" が設定されたビット ) に対応するアクセプタンスコード ID レジスタの
ビット (IDRx) をマスクします。受信メッセージ ID のビットとの比較は行われません。
<注意事項>
• AMR0 および AMR1 は , AMR0 および AMR1 を選択している全メッセージバッファ(x)
が無効 ( メッセージバッファ有効レジスタ (BVALR) の BVALx が "0") であるときに設定
しなければなりません。バッファが有効 (BVALx=1) であるときに設定を行うと不必要
な受信メッセージが格納される可能性があります。
• CAN コントローラが CAN 通信に参加している状態 (CSR:HALT ビットの読出し値が
"0" で , CAN コントローラが CAN バスの通信に参加しており送受信が可能な状態 ) で
メッセージバッファを無効 (BVALR:BVALx=0) にする場合は 「
, 21.13 CAN コントロー
ラの使用上の注意」に従ってください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
501
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
21.4.23
MB90990 シリーズ
メッセージバッファ
メッセージバッファ x (x = 0 ∼ 15) は , ID レジスタ (IDRx), DLC レジスタ (DLCRx)
およびデータレジスタ (DTRx) の 16 のレジスタから構成されています。
■ メッセージバッファ
● レジスタの構成
• ID レジスタ x(x=0 ∼ 15)(IDRx)
メッセージバッファに対する ID レジスタであり , アクセプタンスコード設定 , 送信
メッセージ ID の設定および受信 ID の格納を行います。
• DLC レジスタ x(x=0 ∼ 15)(DLCRx)
メッセージバッファに対する DLC の格納を行い , データフレームおよびリモートフ
レームの送信時のメッセージのデータ長や , データフレームまたはリモートフレー
ムの受信時のメッセージのデータ長を設定します。
• データレジスタ x(x=0 ∼ 15)(DTRx)
メッセージバッファに対するデータレジスタであり , 送信メッセージデータの設定
もしくは受信メッセージデータの格納を行います。
● メッセージバッファ (x) は送信および受信の両方に使用されます。
● 下位番号のメッセージバッファの方が高い優先順位を割り当てられています。
• 送信時に送信要求が 1 つ以上のメッセージバッファに対してなされたときには最下
位番号のメッセージバッファから開始して送信が行われます (「21.5 CAN コント
ローラの送信」を参照してください )。
• 受信時において , 1 つ以上のメッセージバッファのアクセプタンスフィルタ ( 受信
メッセージのアクセプタンスマスク ID とメッセージバッファとを比較する機構 ) を
受信メッセージ ID が通過したときは , 受信メッセージは最下位番号のメッセージ
バッファ内に格納されます「21.6
(
CAN コントローラの受信」を参照してください )。
502
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
● メッセージバッファはマルチレベルメッセージバッファとして使用できます。
同一のアクセプタンスフィルタが 1 つ以上のメッセージバッファ内に設定されたとき
にメッセージバッファはマルチレベルメッセージバッファとして使用できます。これ
により , 受信時間に対する余裕が与えられます (「21.10 メッセージバッファ(x) による
受信方法」を参照してください )。
<注意事項>
• メッセージバッファおよび汎用 RAM 領域への書込み動作は , ワード単位で偶数アドレ
スに対して行ってください。バイト単位で書込み動作を行うと下位バイトへの書込み
時に上位バイトに不定データを書き込んでしまいます。上位バイトへの書込みは無視
されます。
• メッセージバッファ有効レジスタ (BVALR) の BVALx ビットが "0"( 無効 ) であるときに
メッセージバッファ x(IDRx, DLCRx および DTRx) は汎用 RAM として使用することが
できます。ただし , CAN コントローラが送受信動作中はメッセージバッファを使用し
ますので , CPU のアクセスが最大で 64 マシンサイクル待たされることがあります。こ
れは汎用 RAM 領域 ( アドレス 007A00H ∼ 007A1FH, 007C00H ∼ 007C1FH, 007E00H ∼
007E1FH) についても同様です。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
503
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
21.4.24
MB90990 シリーズ
ID レジスタ x(x=0 ∼ 15)(IDRx)
本レジスタは , メッセージバッファ (x) に対する ID レジスタです。
■ レジスタの構成
図 21.4-24 ID レジスタ x(x=0 ∼ 15)(IDRx)
アドレス
CAN1: 007C20H + 4 × x
アドレス
CAN1: 007C21H + 4 × x
アドレス
CAN1: 007C22H + 4 × x
アドレス
CAN1: 007C23H + 4 × x
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
IDRx(Byte0)
ID28
ID27
ID26
ID25
ID24
ID23
ID22
ID21
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
IDRx(Byte1)
ID20
ID19
ID18
ID17
ID16
ID15
ID14
ID13
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
IDRx(Byte2)
ID12
ID11
ID10
ID9
ID8
ID7
ID6
ID5
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
IDRx(Byte3)
ID4
ID3
ID2
ID1
ID0
−
−
−
R/W
R/W
R/W
R/W
R/W
−
−
−
初期値
XXXXXXXXB
x = 0 ∼ 15
R/W : リード / ライト可能
X
: 不定
−
: 未定義ビット
: 標準フレームフォーマットでの使用ビット
504
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
■ レジスタの機能
標準フレームフォーマット (IDE レジスタ (IDER) の IDEx=0) でメッセージバッファ(x)
を使用しているときは ID28 ∼ ID18 の 11 ビットを使用してください。拡張フレーム
フォーマット (IDEx=1) でバッファを使用しているときは ID28 ∼ ID0 の 29 ビットを使
用してください。
ID28 ∼ ID0 の機能は次のとおりです。
• アクセプタンスコード設定 ( 受信メッセージ ID との比較用の ID)
• 送信メッセージ ID の設定
( 注意事項 )
標準フレームフォーマットでは ID28 ∼ ID22 のビットのすべてに "1" をセット
することは禁止されています。
• 受信メッセージ ID の格納
( 注意事項 )
受信メッセージ ID の全ビット ( アクセプタンスマスクでマスクされているビッ
トも ) が格納されます。標準フレームフォーマットでは ID17 ∼ ID0 には , 受信
シフトレジスタに残っている古いメッセージのイメージが格納されます。
<注意事項>
• 本レジスタへの書込み動作はワード単位で行ってください。バイト単位で書込み動作
を行うと下位バイトへの書込み時に上位バイトに不定データを書き込んでしまいま
す。上位バイトへの書込みは無視されます。
• 本レジスタはメッセージバッファ (x) が無効 ( メッセージバッファ有効レジスタ
(BVALR) の BVALx が "0") であるときに設定されなければなりません。バッファが有効
(BVALx=1) であるときに設定を行うと不必要な受信メッセージが格納されてしまいま
す。
• CAN コントローラが CAN 通信に参加している状態 (CSR:HALT ビットの読出し値が
"0" で , CAN コントローラが CAN バスの通信に参加しており送受信が可能な状態 ) で
メッセージバッファを無効 (BVALR:BVALx=0) にする場合は 「
, 21.13 CAN コントロー
ラの使用上の注意」に従ってください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
505
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
DLC レジスタ x(x=0 ∼ 15)(DLCRx)
21.4.25
本レジスタは , メッセージバッファ (x) に対する DLC を格納します。
■ レジスタの構成
図 21.4-25 DLC レジスタ x(x=0 ∼ 15)(DLCRx)
アドレス
CAN1: 007C60H + 2 × x
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
DLCRx( 下位 )
−
−
−
−
DLC3
DLC2
DLC1
DLC0
−
−
−
−
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
x = 0 ∼ 15
R/W : リード / ライト可能
X
: 不定
−
: 未定義ビット
■ レジスタの機能
● 送信
• データフレームを送信する ( 送信 RTR レジスタ (TRTRR) の TRTRx が "0") ときに送
信メッセージのデータ長 ( バイト単位 ) を設定します。
• リモートフレームを送信する (TRTRx=1) ときに要求メッセージのデータ長 ( バイト
単位 ) を設定します。
<注意事項>
"0000B" ∼ "1000B" (0 バイト∼ 8 バイト ) 以外の設定は禁止されています。
● 受信
• データフレームが受信された ( リモートフレーム要求受信レジスタ (RRTRR) の
RRTRx が "0") ときに受信メッセージのデータ長 ( バイト単位 ) を格納します。
• リモートフレームが受信された (RRTRx=1) ときに要求メッセージのデータ長 ( バイ
ト単位 ) を格納します。
<注意事項>
本レジスタへの書込み動作はワード単位で行わなければなりません。バイト単位で書込み
動作を行うと下位バイトへの書込み時に上位バイトに不定データを書き込んでしまいま
す。上位バイトへの書込みは無視されます。
506
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
21.4.26
データレジスタ x(x=0 ∼ 15)(DTRx)
本レジスタは , メッセージバッファ (x) に対するデータレジスタです。データフレー
ムの送受信にのみ使用され , リモートフレームの送受信には使用されません。
■ レジスタの構成
図 21.4-26 データレジスタ x(x=0 ∼ 15)(DTRx)
アドレス
CAN1: 007C80H + 8 × x
アドレス
CAN1: 007C81H + 8 × x
アドレス
CAN1: 007C82H + 8 × x
アドレス
CAN1: 007C83H + 8 × x
アドレス
CAN1: 007C84H + 8 × x
アドレス
CAN1: 007C85H + 8 × x
アドレス
CAN1: 007C86H + 8 × x
アドレス
CAN1: 007C87H + 8 × x
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
DTRx(Byte0)
D7
D6
D5
D4
D3
D2
D1
D0
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
DTRx(Byte1)
D7
D6
D5
D4
D3
D2
D1
D0
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
DTRx(Byte2)
D7
D6
D5
D4
D3
D2
D1
D0
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
DTRx(Byte3)
D7
D6
D5
D4
D3
D2
D1
D0
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
DTRx(Byte4)
D7
D6
D5
D4
D3
D2
D1
D0
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
DTRx(Byte5)
D7
D6
D5
D4
D3
D2
D1
D0
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
DTRx(Byte6)
D7
D6
D5
D4
D3
D2
D1
D0
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
DTRx(Byte7)
D7
D6
D5
D4
D3
D2
D1
D0
初期値
XXXXXXXXB
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
x = 0 ∼ 15
R/W : リード / ライト可能
X
: 不定
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
507
第 21 章 CAN コントローラ
21.4 CAN コントローラのレジスタ分類
MB90990 シリーズ
■ レジスタの機能
● 送信メッセージデータ (0 ∼ 8 バイトのいずれか ) の設定
データは MSB で開始して BYTE0, BYTE1, ..., BYTE7 の順に送信されます。
● 受信メッセージデータ
データは MSB で開始して BYTE0, BYTE1, ..., BYTE7 の順に格納されます。
受信メッセージデータが 8 バイトより少ない場合は , データレジスタ (DTRx) の残
りのバイトには不定データが格納されます。
<注意事項>
本レジスタへの書込み動作をワード単位で行ってください。バイト単位で書込み動作を行
うと下位バイトへの書込み時に上位バイトに不定データを書き込んでしまいます。上位バ
イトへの書込みは無視されます。
508
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
21.5
第 21 章 CAN コントローラ
21.5 CAN コントローラの送信
CAN コントローラの送信
CAN コントローラは , 送信要求レジスタ (TREQR) の TREQx に "1" が書き込まれた
ときにメッセージバッファ (x) による送信を開始します。このとき , TREQx は "1"
になり , 送信完了レジスタ (TCR) の TCx は "0" になります。
■ CAN コントローラの送信の開始
リモートフレーム受信待機レジスタ (RFWTR) の RFWTx が "0" の場合には , 直ちに送
信を開始します。RFWTx が "1" の場合には , リモートフレームが受信される ( リモー
ト要求受信レジスタ (RRTRR) の RRTRx が "1" になる ) まで待機した後に送信を開始し
ます。
送信要求が 1 つ以上のメッセージバッファに対して行われた (1 つ以上の TREQx に "1"
を書き込む ) ときには最も小さい番号のメッセージバッファから送信が行われます。
CAN バスに対するメッセージ送信 ( 送信出力端子 TX から ) はバスがアイドルのとき
に開始します。
送信 RTR レジスタ (TRTRR) の TRTRx が "0" の場合にはデータフレームが送信されま
す。TRTRx が "1" の場合にはリモートフレームが送信されます。
送信が CAN バス上のほかの CAN コントローラと競合してアービトレーションが不調
に終わった場合,または送信中にエラーが発生した場合にはメッセージバッファはバス
がアイドルとなるまで待機して成功するまで再送信を反復します。
■ CAN コントローラの送信要求の解除
● 送信解除レジスタ (TCANR) による解除
送信待ち状態中に送信を実行しなかったメッセージバッファ(x) に対する送信要求は送
信解除レジスタ (TCANR) の TCANx に "1" を書き込むことによりキャンセルできます。
キャンセル完了時に TREQx は "0" になります。
● 受信メッセージの格納による解除
送信要求にもかかわらず送信を実行しなかったメッセージバッファ(x) も受信を行いま
す。
データフレームの送信に対する要求にもかかわらずメッセージバッファ(x) が送信を実
行していなかった場合 (TRTRx=0 または TREQx=1), アクセプタンスフィルタを通過し
た受信データフレームを格納した後に送信要求が解除されます (TREQx=0)。
<注意事項>
リモートフレームを格納することでは送信要求は解除されません (TREQx=1 はそのまま
です )。
リモートフレームの送信に対する要求にもかかわらずメッセージバッファ(x) が送信を
実行していなかった場合でも (TRTRx=1 または TREQx=1), アクセプタンスフィルタを
通過した受信リモートフレームを格納した後に送信要求が解除されます (TREQx=0)。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
509
第 21 章 CAN コントローラ
21.5 CAN コントローラの送信
MB90990 シリーズ
<注意事項>
データフレームまたはリモートフレームのいずれを格納しても送信要求は解除されます。
■ CAN コントローラの送信の完了
送信が成功したときに RRTRx および TREQx は "0" に , 送信完了レジスタ (TCR) の TCx
は "1" になります。送信完了割込みが許可されていると ( 送信完了割込み許可レジスタ
(TIER) の TIEx=1) 割込みが発生します。
■ CAN コントローラの送信フローチャート
図 21.5-1 CAN コントローラの送信フローチャート
送信要求
(TREQx=1)
TCx=0
NO
TREQx=1?
YES
NO
RFWTx=1?
YES
NO
RRTRx=1?
YES
上記条件を満足するほかのメッセージバッ
ファがある場合,その中で最下位番号メ
ッセージバッファを選択
NO
バスは使用されて
いないか。
YES
NO
YES
TRTRx=1?
データフレームが送信される
リモートフレームが送信される
送信は成功したか。
NO
YES
TCANx=1?
RRTRx = 0
TREQx = 0
TCx = 1
TIEx=1?
NO
YES
TREQx=0
YES
NO
送信完了割込みが発生する
送信の終了
510
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
21.6
第 21 章 CAN コントローラ
21.6 CAN コントローラの受信
CAN コントローラの受信
CAN バス上でデータフレームまたはリモートフレームの開始 (SOF) が検出されたと
きに受信が開始します。
■ アクセプタンスフィルタリング
標準フレームフォーマットの受信メッセージは標準フレームフォーマットに設定され
たメッセージバッファ (x)(IDE レジスタ (IDER) の IDEx は "0") と比較されます。拡張
フレームフォーマットの受信メッセージは拡張フレームフォーマットに設定された
メッセージバッファ (x)(IDEx は "1") と比較されます。
受信メッセージ ID とアクセプタンスコード ( 受信メッセージ ID との比較のための ID
レジスタ (IDRx)) との比較の後に , アクセプタンスマスクにより比較すべきビットセッ
トのすべてが一致すると受信メッセージはメッセージバッファ (x) のアクセプタンス
フィルタを通過します。
■ 受信メッセージの格納
受信メッセージは受信動作が成功したときにアクセプタンスフィルタを通過した ID を
含めてメッセージバッファ (x) に格納されます。データフレームを受信したときは ID
レジスタ (IDRx), DLC レジスタ (DLCRx) およびデータレジスタ (DTRx) に格納されま
す。受信メッセージデータが 8 バイトより少ない場合 , DTRx の残りのバイトに格納さ
れるデータが不定となります。リモートフレームを受信したときは IDRx および DLCRx
のみに格納されて DTRx はそのままの値を保持します。
アクセプタンスフィルタを通過した ID を含むメッセージバッファが 1 つ以上あると受
信メッセージが格納されるべきメッセージバッファx が次の規則により決定されます。
• メッセージバッファx(x=0 ∼ 15) の優先順位はその番号が低いほど高くなります。す
なわち , メッセージバッファ 0 には最高の優先度を与えられ , メッセージバッファ
15 には最低の優先度が与えられます。
• 受信メッセージを格納するうえでは基本的に受信完了レジスタ (RCR) の RCx ビッ
トが "0" に設定されたメッセージバッファが優先されます。
• アクセプタンスマスク選択レジスタ (AMSR) の各ビットが全ビット比較 (AMSx.1 お
よび AMSx.0 ビットが 00B) に設定されたメッセージバッファに設定されていると
RCR の RCx ビットの値にかかわらず受信メッセージは格納されます。
• RCR の RCx ビットが "0" のバッファと AMSR のビットが全ビット比較に設定され
ているバッファが複数ある場合 , 受信メッセージは最下位番号 ( 最優先 ) のメッセー
ジバッファ x に格納されます。
• 上記のメッセージバッファがない場合には受信メッセージは下位番号メッセージ
バッファ x に格納されます。
• メッセージバッファは昇順に配置される必要があります。最下位番号のメッセージ
バッファは全ビット比較で AMR0 か AMR1 をマスクしてください。また , 最上位番
号のメッセージバッファは全ビットマスクに設定してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
511
第 21 章 CAN コントローラ
21.6 CAN コントローラの受信
MB90990 シリーズ
受信メッセージを格納すべきメッセージバッファ x を決定するためのフローチャート
を図 21.6-1 に示します。メッセージバッファはバッファ番号順に , AMSR の各ビット
が全ビット比較にセットされたメッセージバッファ , AMR0 または AMR1 を使用して
いるメッセージバッファおよび AMSR の各ビットが全ビットマスクにセットされた
メッセージバッファの順番に設定してください。
図 21.6-1 メッセージバッファ (x) の決定フローチャート
開始
RCxが"0"にクリアされているか,AMSx.1および
AMSx.0が"00B"に設定されているメッセージ
バッファが見つかったか。
NO
YES
上記に該当するメッセージ
バッファから最下位番号の
メッセージバッファを選択
最下位番号のメッセージ
バッファを選択
終了
■ 受信オーバラン
受信メッセージが格納されるべきメッセージバッファ x に対応する受信完了レジスタ
(RCR) の RCx ビットが既に "1" にセットされている場合 , メッセージバッファ x の受
信メッセージの格納が完了した時点で受信オーバランレジスタ (ROVRR) の ROVRx
ビットが "1" にセットされて受信オーバランを示します。
■ データフレームおよびリモートフレームの受信に対する処理
● データフレームの受信に対する処理
リモート要求受信レジスタ (RRTRR) の RRTRx は "0" になります。
送信要求レジスタ (TREQR) の TREQx は , 受信メッセージを格納する直前に "0" に
なります。送信を実行しなかったメッセージバッファ (x) に対する送信要求は解除
されます。
<注意事項>
データフレームまたはリモートフレームのいずれの送信に対する要求も解除されます。
● リモートフレームの受信に対する処理
RRTRx は "1" になります。
送信 RTR レジスタ (TRTRR) の TRTRx が "1" の場合には TREQx は "0" になります。
この結果 , 送信を実行しなかったメッセージバッファへのリモートフレームの送信
に対する要求は解除されます。
<注意事項>
• データフレーム送信に対する要求は解除されません。
• 送信要求の解除に関しては「21.5 CAN コントローラの送信」を参照してください。
512
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 21 章 CAN コントローラ
21.6 CAN コントローラの受信
■ 受信完了
受信完了レジスタ (RCR) の RCx は受信メッセージを格納した後に "1" になります。
受信割込みが許可されていると ( 受信割込み許可レジスタ (RIER) の RIEx が "1") 割込
みが発生します。
<注意事項>
CAN コントローラはそれ自身が送信したメッセージを受信することはありません。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
513
第 21 章 CAN コントローラ
21.7 CAN コントローラの受信フローチャート
21.7
MB90990 シリーズ
CAN コントローラの受信フローチャート
図 21.7-1 に , CAN コントローラの受信フローチャートを示します。
■ CAN コントローラの受信フローチャート
図 21.7-1 CAN コントローラの受信フローチャート
データフレームまたはリモート
フレームの開始(SOF)の検出
NO
アクセプタンスフィルタをパスする
メッセージバッファ(x)はあるか。
YES
NO
受信は成功したか。
YES
受信メッセージを格納するメッセージ
バッファ(x)を決定
受信メッセージをメッセージ
バッファ(x)に格納
YES
RCx=1?
NO
データフレーム
ROVRx=1
リモートフレーム
受信メッセージは?
RRTRx=0
RRTRx=1
YES
TRTRx=1?
NO
TREQx=0
RCx=1
RIEx=1?
YES
NO
受信割込みを発生
受信の終了
514
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
21.8
第 21 章 CAN コントローラ
21.8 CAN コントローラの使用方法
CAN コントローラの使用方法
CAN コントローラは , ビットタイミング , フレームフォーマット , ID, アクセプタン
スフィルタおよび低電力消費モードの設定が必要です。
■ ビットタイミングの設定
ビットタイミングレジスタ (BTR) はバス動作停止 ( 制御ステータスレジスタ (CSR) の
バス動作停止ビット (HALT) が "1") の間に設定してください。
設定完了の後は , HALT に "0" を書き込んでバス動作停止を解除してください。
■ フレームフォーマットの設定
メッセージバッファ (x) により使用されるフレームフォーマットを設定してください。
標準フレームフォーマットを使用するときには IDE レジスタ (IDER) の IDEx を "0" に ,
拡張フレームフォーマットを使用するときには IDEx を "1" に設定してください。
この設定はメッセージバッファ(x) が無効 ( メッセージバッファ有効レジスタ (BVALR)
の BVALx が "0") であるときに行ってください。バッファの有効 (BVALx=1) 時に設定
を行うと不必要な受信メッセージが格納される可能性があります。
■ ID の設定
メッセージバッファ (x) の ID を ID レジスタ (IDRx) の ID28 ∼ ID0 に設定してくださ
い。メッセージバッファ (x) の ID は標準フレームフォーマットでは ID17 ∼ ID0 に設
定する必要はありません。メッセージバッファ (x) の ID は送信では送信メッセージと
して使用され , 受信ではアクセプタンスコードとして使用されます。
この設定はメッセージバッファ(x) が無効 ( メッセージバッファ有効レジスタ (BVALR)
の BVALx が "0") であるときに行ってください。バッファの有効 (BVALx=1) 時に設定
を行うと不必要な受信メッセージが格納される可能性があります。
■ アクセプタンスフィルタの設定
メッセージバッファ(x) のアクセプタンスフィルタはアクセプタンスコードおよびアク
セプタンスマスク設定により設定されます。この設定はアクセプタンスメッセージ
バッファ (x) が無効 ( メッセージバッファ許可レジスタ (BVALR) の BVALx が "0") で
あるときに設定してください。バッファの有効 (BVALx=1) 時に設定を行うと不必要な
受信メッセージが格納される可能性があります。各メッセージバッファ (x) で使用され
るアクセプタンスマスクをアクセプタンスマスク選択レジスタ (AMSR) により設定し
てください。アクセプタンスマスクレジスタ (AMR0 および AMR1) も使用する場合に
は設定してください ( 設定の詳細に関しては「21.4.21 アクセプタンスマスク選択レジ
スタ (AMSR)」および「21.4.22 アクセプタンスマスクレジスタ 0/1(AMR0/AMR1)」を
参照してください )。
アクセプタンスマスクは不必要な受信メッセージが格納されたときでも送信要求が解
除されないように設定してください。例えば , 同一の ID のメッセージのみを送信する
場合にはフルビット比較に設定してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
515
第 21 章 CAN コントローラ
21.8 CAN コントローラの使用方法
MB90990 シリーズ
■ 低電力消費モードの設定
F2MC-16LX を低消費電力モード ( 停止 , 時計モードなど ) に設定する前に , まず , 制御
ステータスレジスタ (CSR) のバス動作停止ビット (HALT) に "1" を書き込んだ後 , バス
動作が停止したこと (HALT=1) を確認してください。
516
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
21.9
第 21 章 CAN コントローラ
21.9 メッセージバッファ (x) による送信方法
メッセージバッファ (x) による送信方法
ビットタイミングの設定 , フレームフォーマットの設定 , ID の設定およびアクセプ
タンスフィルタの設定が完了した後で , BVALx を "1" に設定してメッセージバッ
ファ (x) を有効にしてください。
■ メッセージバッファ (x) による送信方法
● 送信データ長コードの設定
送信データ長コード ( バイト単位 ) を DLC レジスタ (DLCRx) の DLC3 ∼ DLC0 に設定
してください。
データフレーム送信 ( 送信 RTR レジスタ (TRTRR) の TRTRx が "0" のとき ) に対して
は送信メッセージのデータ長を設定してください。
リモートフレーム送信 (TRTRx=1 のとき ) に対しては要求メッセージのデータ長 ( バイ
ト単位 ) を設定してください。
<注意事項>
"0000B" ∼ "1000B"(0 バイト∼ 8 バイト ) 以外の設定は禁止されています。
● 送信データの設定 ( データフレームの送信に対してのみ )
データフレーム送信 ( 送信レジスタ (TRTRR) の TRTRx が "0" のとき ) に対してはデー
タを送信バイト数分データレジスタ (DTRx) に設定してください。
<注意事項>
送信データは送信要求レジスタ (TREQR) の TREQx ビットが "0" に設定されている状態
で書き込む必要があります。メッセージバッファ有効レジスタ (BVALR) の BVALx ビット
を "0" に設定する必要はありません。BVALx ビットを "0" に設定するとリモートフレーム
受信を喪失する可能性があります。
● 送信 RTR レジスタの設定
データフレーム送信に対しては送信 RTR レジスタ (TRTRR) の TRTRx を "0" に設定し
てください。
リモートフレーム送信に対しては TRTRx を "1" に設定してください。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
517
第 21 章 CAN コントローラ
21.9 メッセージバッファ (x) による送信方法
MB90990 シリーズ
● 送信開始条件の設定 ( データフレームの送信のみ )
データフレーム送信要求が設定された直後に送信を開始するには,リモートフレーム受
信待機レジスタ (RFWTR) の RFWTx を "0" に設定してください ( 送信要求レジスタ
(TREQR) の TREQx は "1", 送信 RTR レジスタ (TRTRR) の TRTRx は "0")。
データフレーム送信に対する要求が設定(TREQx=1およびTRTRx=0)された後にリモー
トフレームを受信する ( リモート要求受信レジスタ (RRTRR) の RRTRx が "1" になる )
まで待機した後に送信を開始するには , RFWTx を "1" に設定してください。
<注意事項>
もし , RFWTx が "1" に設定されるとリモートフレーム送信を行うことはできません。
● 送信完了割込みの設定
送信完了割込みを発生する場合には送信完了割込み許可レジスタ (TIER) の TIEx を "1"
に設定してください。
送信完了割込みを発生しない場合には TIEx を "0" に設定してください。
● 送信要求の設定
送信要求を行うには送信要求レジスタ (TREQR) の TREQx を "1" に設定してください。
● 送信要求の解除
メッセージバッファ(x) に対する待ち状態中の送信要求を解除するときには送信解除レ
ジスタ (TCANR) の TCANx に "1" を書き込んでください。
TREQx をチェックして , 送信要求解除が完了したか送信が完了 (TREQx=0) しているこ
とを確認してください。送信完了レジスタ (TCR) の TCx をチェックして , 送信要求解
除が完了したこと (TCx=0) および送信が完了したこと (TCx=1) を確認してください。
● 送信完了の処理
送信が成功すると送信完了レジスタ (TCR) の TCx は "1" になります。
送信完了割込みが許可されていると ( 送信完了割込み許可レジスタ (TIER) の TIEx が
"1") 割込みを発生します。
送信完了をチェックした後に TCx に "0" を書き込んでクリアしてください。
これにより , 送信完了割込みが解除されます。
次の場合には待ち状態中の送信要求はメッセージの受信および格納により解除されま
す。
• データフレームの受信によってデータフレーム送信要求を解除
• データフレームの受信によってリモートフレーム送信要求を解除
• リモートフレームの受信によってリモートフレーム送信要求を解除
データフレーム送信要求はリモートフレームの受信および格納によっては解除されま
せん。ただし , ID および DLC は受信したリモートフレームの ID および DLC により変
更されます。送信されるデータフレームの ID および DLC は受信したリモートフレー
ムの値になることに注意してください。
518
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
21.10
第 21 章 CAN コントローラ
21.10 メッセージバッファ (x) による受信方法
メッセージバッファ (x) による受信方法
ビットタイミングの設定 , フレームフォーマットの設定 , ID の設定およびアクセプ
タンスフィルタの設定後 , 受信割込み設定 , 受信開始および受信完了の処理をしてく
ださい。
■ メッセージバッファ (x) による受信方法
● 受信割込み設定
受信割込みを許可するには受信割込み許可レジスタ (RIER) の RIEx を "1" に設定して
ください。
受信割込みを禁止するには RIEx を "0" に設定してください。
● 受信開始
設定の後で受信を開始するにはメッセージバッファ有効レジスタ (BVALR) の BVALx
を "1" に設定してメッセージバッファ (x) を有効にしてください。
● 受信完了の処理
受信が ( アクセプタンスフィルタを通過して ) 成功すると受信メッセージはメッセージ
バッファ (x) に格納され , 受信完了レジスタ (RCR) の RCx は "1" になります。データフ
レーム受信の場合はリモート要求受信レジスタ (RRTRR) の RRTRx が "0" になります。
リモートフレーム受信の場合は RRTRx が "1" になります。受信割込みが許可されてい
ると ( 受信割込み許可レジスタ (RIER) の RIEx=1) 割込みが発生します。
受信完了をチェックした後 (RCx=1) で受信メッセージを処理してください。
受信メッセージの処理を完了した後は受信オーバランレジスタ (ROVRR) の ROVRx を
チェックしてください。
ROVRx=0 ならば処理された受信メッセージは有効です。RCx に "0" を書き込んでクリ
アして ( 受信完了割込みも解除されます ) 受信を終了します。
ROVRx=1 の場合には受信オーバランが発生し , 処理された受信メッセージに新たな受
信メッセージが上書きされている可能性があります。この場合には ROVRx ビットに
"0" を書き込んでクリアした後で受信メッセージを再処理してください。
受信割込み処理の一例を図 21.10-1 に示します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
519
第 21 章 CAN コントローラ
21.10 メッセージバッファ (x) による受信方法
MB90990 シリーズ
図 21.10-1 受信割込み処理の例
RCx=1で割込み
受信メッセージ読取り
A:=ROVRx
ROVRx=0
A = 0?
NO
YES
RCx=0
終了
520
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
21.11
第 21 章 CAN コントローラ
21.11 マルチレベルメッセージバッファの構成の決定
マルチレベルメッセージバッファの構成の決定
受信が頻繁に行われる場合または不特定多数のメッセージ ID を受信する場合にメッ
セージを処理する時間が不十分であれば , 1 つ以上のメッセージバッファを組み合せ
てマルチレベルメッセージバッファとすることにより CPU による受信メッセージの
処理に対する余裕を与えてください。
■ マルチレベルメッセージバッファの構成の決定
マルチレベルメッセージバッファを用意するには組み合せて使用される各メッセージ
バッファに同じアクセプタンスフィルタを設定してください。
も し , アク セ プタ ンス マ スク 選択 レ ジス タ (AMSR) の 各ビ ット が 全ビ ット 比 較
((AMSx.1, AMSx.0) = (0, 0)) に設定されていると , メッセージバッファをマルチレベル
メッセージ構成とすることはできません。これは , 全ビット比較では受信完了レジスタ
(RCR) の RCx ビットの値のいかんにかかわらず , 受信メッセージが格納されるため , 1
つ以上のメッセージバッファに対して全ビット比較および同一アクセプタンスコード
(ID レジスタ (IDRx)) が指定されたとしても , 受信メッセージが常に下位番号の ( 優先
度の高い ) メッセージバッファに格納されるからです。このため , 全ビット比較と同一
アクセプタンスコードを 1 つ以上のメッセージバッファに指定しないでください。
マルチレベルメッセージバッファの動作例を図 21.11-1 に示します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
521
第 21 章 CAN コントローラ
21.11 マルチレベルメッセージバッファの構成の決定
MB90990 シリーズ
図 21.11-1 マルチレベルメッセージバッファの動作例
初期化
AMS15, AMS14, AMS13
AMSR
AMR0選択
. . .
10 10 10
AM28~AM18
AMS0
0000
ID28~ID18
1111
111
RC15, RC14, RC13
IDE
. . .
メッセージバッファ 13
0101
0000
000
0
. . .
メッセージバッファ 14
0101
0000
000
0
. . .
メッセージバッファ 15
0101
0000
000
0
. . .
RCR
ROVRR
0
0
0
. . .
0
0
0
. . .
ROVR15, ROVR14, ROVR13
マスク
メッセージ受信中:受信メッセージはメッセージバッファ13に格納されます。
IDE
ID28~ID18
メッセージ受信中
0101
1111
000
0
. . .
メッセージバッファ 13
0101
1111
000
0
. . .
メッセージバッファ 14
0101
0000
000
0
. . .
メッセージバッファ 15
0101
0000
000
0
. . .
RCR
ROVRR
0
0
1
. . .
0
0
0
. . .
メッセージ受信中:受信メッセージはメッセージバッファ14に格納されます。
メッセージ受信中
0101
1111
001
0
. . .
メッセージバッファ 13
0101
1111
000
0
. . .
メッセージバッファ 14
0101
1111
001
0
. . .
メッセージバッファ 15
0101
0000
000
0
. . .
RCR
ROVRR
0
1
1
. . .
0
0
0
. . .
メッセージ受信中:受信メッセージはメッセージバッファ15に格納されます。
メッセージ受信中
0101
1111
010
0
. . .
メッセージバッファ 13
0101
1111
000
0
. . .
メッセージバッファ 14
0101
1111
001
0
. . .
メッセージバッファ 15
0101
1111
010
0
. . .
RCR
ROVRR
1
1
1
. . .
0
0
0
. . .
メッセージ受信中:受信メッセージはメッセージバッファ13に格納されます。
メッセージ受信中
0101
1111
011
0
. . .
メッセージバッファ 13
0101
1111
011
0
. . .
メッセージバッファ 14
0101
1111
001
0
. . .
メッセージバッファ 15
0101
1111
010
0
. . .
RCR
ROVRR
1
1
1
. . .
0
0
1
. . .
<注意事項>
4 個のメッセージが同一のアクセプタンスフィルタ設定によりメッセージバッファ 13, 14
および 15 に格納されます。
522
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 21 章 CAN コントローラ
21.12 CAN ダイレクトモードレジスタ
MB90990 シリーズ
21.12
CAN ダイレクトモードレジスタ
CAN を正しく動作させるには , 本レジスタの設定が必要になります。
■ CAN ダイレクトモードレジスタ (CDMR)
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
00796EH
−
−
−
−
−
−
−
DIRECT
−
−
−
−
−
−
−
R/W
CDMR
初期値
11111110B
R/W : リード / ライト可能
X
: 不定
−
: 未定義ビット
表 21.12-1 CAN ダイレクトモードレジスタの機能 (CDMR)
ビット名
機 能
bit7
∼
bit1
未定義ビット
bit0
DIRECT:
ダイレクトモードビット
−
本ビットは必ず "1" に設定してください。
<注意事項>
評価用品では , CAN コントローラを使用する場合は本レジスタの DIRECT ビットは必ず
"1" に設定してください。"0" の設定ではフラッシュメモリ品と動作が異なります。
フラッシュメモリ品では DIRECT ビットの設定は動作に影響はありません。
評価用品の DIRECT=1 の場合の動作と同じです。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
523
第 21 章 CAN コントローラ
21.13 CAN コントローラの使用上の注意
21.13
MB90990 シリーズ
CAN コントローラの使用上の注意
CAN コントローラを使用する場合は , 以下の点に注意してください。
■ BVAL ビットによるメッセージバッファ禁止時の注意
メッセージバッファの内容の読出しや書込みの処理を行うために , BVALx ビットを用
いてメッセージバッファを禁止すると , CAN コントローラの送受信が正常に行われな
い可能性があります。本注意事項は , この現象を回避する方法を説明しています。
● 発生条件
以下の 2 つの条件を同時に満たす場合に , CAN コントローラの送信動作が正常に行わ
れない可能性があります。
・CAN コントローラが CAN 通信に参加している状態 , つまり HALT ビットの読出し値
が "0" で , CAN コントローラが CAN バスの通信に参加しており送受信が可能な状態
・BVALx ビットの設定でメッセージバッファを禁止して , メッセージバッファの内容
へ読出し処理や書込み処理を行う場合
● 処置
・送信要求を抑止する場合の操作
送信要求を抑止または中止する場合は , BVALx ビットを使用せず , TCANx ビットを使
用してください。
・送信メッセージを構成する場合の操作
送信メッセージの構成を行うために , ID レジスタや IDE レジスタの設定を行う場合 ,
BVALx ビットを使用してメッセージバッファを禁止してください。この際 , 送信要求
ビットを読み出して "0" であること (TREQx=0) を確認するか , 送信完了ビットにより
送信が完了したこと(TCx=1)を確認した後で, BVALxビットによる禁止処理(BVALx=0)
を行ってください。
送信バッファを無効にする場合,必ず待機中の送信要求がないことを確認してください
( 事前に送信要求を行った場合 )。処理中の送信がないことを確認するまで BVALx ビッ
トに "0" を書き込まないでください。
1) 送信要求をキャンセルする : TCANx=1 ( 必要がある場合 )
2) 送信完了を待つ (TREQx=1 の間 ): ビットをポーリングまたは送信完了割込み
必ず , 上記の手順を行った後に送信バッファを無効 (BVALx=0) にしてください。
<注意事項>
上記 1) において , 既にバッファが送信を開始している場合は , 送信キャンセルは無視され
ます。バッファは送信完了後に無効になります。
524
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 22 章
アドレス一致検出機能
アドレス一致検出機能の機能と動作について説明
します。
22.1 アドレス一致検出機能の概要
22.2 アドレス一致検出機能のブロックダイヤグラム
22.3 アドレス一致検出機能の構成
22.4 アドレス一致検出機能の動作説明
22.5 アドレス一致検出機能のプログラム例
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
525
第 22 章 アドレス一致検出機能
22.1 アドレス一致検出機能の概要
22.1
MB90990 シリーズ
アドレス一致検出機能の概要
アドレス一致検出機能は , プログラムが現在処理している命令の次に処理される命令
のアドレスと検出アドレス設定レジスタに設定したアドレスとを比較します。その
結果 , 一致した場合にプログラムで次に処理される命令を強制的に INT9 命令に置き
換え , 割込み処理プログラムに分岐する機能です。INT9 割込みを使用して処理でき
るので , プログラムのパッチ処理による修正に使用できます。
■ アドレス一致検出機能の概要
• プログラムが現在処理している命令の次に処理される命令のアドレスは , 内部デー
タバスを通じて常にアドレスラッチに保持されます。アドレス一致検出機能の働き
により , アドレスラッチに保持されたアドレスの値と検出アドレス設定レジスタに
設定したアドレスの値は常に比較されます。比較されたアドレスの値が一致した場
合は , CPU が次に実行する命令が強制的に INT9 命令に置き換えられ , 割込み処理プ
ログラムが実行されます。
• 検出アドレス設定レジスタは 6 つあり (PADR0 ∼ PADR5), レジスタごとに割込み許
可ビットが用意されています。アドレスラッチに保持されたアドレスと検出アドレ
ス設定レジスタに設定したアドレスの一致による割込みの発生をレジスタごとに
許可または禁止できます。
526
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 22 章 アドレス一致検出機能
22.2 アドレス一致検出機能のブロックダイヤグラム
MB90990 シリーズ
22.2
アドレス一致検出機能のブロックダイヤグラム
アドレス一致検出モジュールは , 以下のブロックで構成されています。
• アドレスラッチ
• アドレス検出コントロールレジスタ (PACSR0/PACSR1)
• 検出アドレス設定レジスタ (PADR0 ∼ PADR5)
■ アドレス一致検出機能のブロックダイヤグラム
アドレス一致検出機能のブロックダイヤグラムを図 22.2-1 に示します。
図 22.2-1 アドレス一致検出機能のブロックダイヤグラム
アドレスラッチ
比較器
INT9 命令
(INT9 割込み発生 )
検出アドレス設定レジスタ 0
PADR0(24 ビット )
検出アドレス設定レジスタ 1
PADR1(24 ビット )
・
・
・
内
部
デ
|
タ
バ
ス
・
・
・
検出アドレス設定レジスタ 5
・
・
・
PADR5(24 ビット )
PACSR0
−
−
AD2E
予約
AD1E
予約
AD0E
予約
予約
AD3E
予約
アドレス検出制御レジスタ 0(PACSR0)
PACSR1
−
−
AD5E
予約
AD4E
アドレス検出制御レジスタ 1(PACSR1)
予約 : 必ず "0" に設定してください。
● アドレスラッチ
内部データバスに出力されたアドレスの値を保持します。
● アドレス検出制御レジスタ (PACSR0/PACSR1)
アドレスが一致された場合の割込み出力の許可または禁止を設定します。
● 検出アドレス設定レジスタ (PADR0 ∼ PADR5)
アドレスラッチの値と比較するアドレスを設定します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
527
第 22 章 アドレス一致検出機能
22.3 アドレス一致検出機能の構成
22.3
MB90990 シリーズ
アドレス一致検出機能の構成
アドレス一致検出機能で使用するレジスタの一覧と詳細を記載します。
■ アドレス一致検出機能のレジスタと初期値の一覧
図 22.3-1 アドレス一致検出機能のレジスタと初期値の一覧
アドレス検出制御レジスタ 0(PACSR0)
アドレス検出制御レジスタ 1(PACSR1)
検出アドレス設定レジスタ 0(PADR0) : 下位
検出アドレス設定レジスタ 0(PADR0) : 中位
検出アドレス設定レジスタ 0(PADR0) : 上位
検出アドレス設定レジスタ 1(PADR1) : 下位
検出アドレス設定レジスタ 1(PADR1) : 中位
検出アドレス設定レジスタ 1(PADR1) : 上位
検出アドレス設定レジスタ 2(PADR2) : 下位
検出アドレス設定レジスタ 2(PADR2) : 中位
検出アドレス設定レジスタ 2(PADR2) : 上位
検出アドレス設定レジスタ 3(PADR3) : 下位
検出アドレス設定レジスタ 3(PADR3) : 中位
検出アドレス設定レジスタ 3(PADR3) : 上位
検出アドレス設定レジスタ 4(PADR4) : 下位
検出アドレス設定レジスタ 4(PADR4) : 中位
検出アドレス設定レジスタ 4(PADR4) : 上位
検出アドレス設定レジスタ 5(PADR5) : 下位
検出アドレス設定レジスタ 5(PADR5) : 中位
検出アドレス設定レジスタ 5(PADR5) : 上位
bit 7
1
bit 15
1
bit 7
x
bit 15
x
bit 7
x
bit 15
x
bit 7
x
bit 15
x
bit 7
x
bit 15
x
bit 7
x
bit 7
x
bit 15
x
bit 7
x
bit 15
x
bit 7
x
bit 15
x
bit 7
x
bit 15
x
bit 7
x
6
1
14
1
6
x
14
x
6
x
14
x
6
x
14
x
6
x
14
x
6
x
6
x
14
x
6
x
14
x
6
x
14
x
6
x
14
x
6
x
5
0
13
0
5
x
13
x
5
x
13
x
5
x
13
x
5
x
13
x
5
x
5
x
13
x
5
x
13
x
5
x
13
x
5
x
13
x
5
x
4
0
12
0
4
x
12
x
4
x
12
x
4
x
12
x
4
x
12
x
4
x
4
x
12
x
4
x
12
x
4
x
12
x
4
x
12
x
4
x
3
0
11
0
3
x
11
x
3
x
11
x
3
x
11
x
3
x
11
x
3
x
3
x
11
x
3
x
11
x
3
x
11
x
3
x
11
x
3
x
2
0
10
0
2
x
10
x
2
x
10
x
2
x
10
x
2
x
10
x
2
x
2
x
10
x
2
x
10
x
2
x
10
x
2
x
10
x
2
x
1
0
9
0
1
x
9
x
1
x
9
x
1
x
9
x
1
x
9
x
1
x
1
x
9
x
1
x
9
x
1
x
9
x
1
x
9
x
1
x
0
0
8
0
0
x
8
x
0
x
8
x
0
x
8
x
0
x
8
x
0
x
0
x
8
x
0
x
8
x
0
x
8
x
0
x
8
x
0
x
× : 不定
528
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 22 章 アドレス一致検出機能
22.3 アドレス一致検出機能の構成
MB90990 シリーズ
アドレス検出制御レジスタ (PACSR0/PACSR1)
22.3.1
アドレス一致による割込み出力の許可または禁止を設定します。アドレス一致によ
る割込み出力を許可した場合にアドレス一致が検出されると INT9 の割込みが出力さ
れます。
■ アドレス検出制御レジスタ 0(PACSR0)
図 22.3-2 アドレス検出制御レジスタ 0(PACSR0)
アドレス
00009EH
bit 7
6
5
4
3
2
1
0
-
- AD2E 予約 AD1E 予約 AD0E 予約
-
-
R/W R/W R/W R/W R/W R/W
初期値
11000000B
bit 0
予約
0
予約ビット
必ず "0" に設定してください。
bit 1
AD0E
アドレス一致検出許可ビット 0
0
PADR0 でのアドレス一致検出を禁止する。
1
PADR0 でのアドレス一致検出を許可する。
bit 2
予約
0
予約ビット
必ず "0" に設定してください。
bit 3
AD1E
アドレス一致検出許可ビット 1
0
PADR1 でのアドレス一致検出を禁止する。
1
PADR1 でのアドレス一致検出を許可する。
bit 4
予約
0
予約ビット
必ず "0" に設定してください。
bit 5
AD2E
アドレス一致検出許可ビット 2
0
PADR2 でのアドレス一致検出を禁止する。
1
PADR2 でのアドレス一致検出を許可する。
bit 7, bit 6
−
未定義ビット
読み出した場合 : "1" が読み出されます。
書き込んだ場合 : 動作に影響しません
R/W
: リード / ライト可能
: 初期値
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
529
第 22 章 アドレス一致検出機能
22.3 アドレス一致検出機能の構成
MB90990 シリーズ
表 22.3-1 アドレス検出制御レジスタ (PACSR0) の機能
ビット名
未定義 : 未定義ビット
読み出した場合 : "1" が読み出せます。
書き込んだ場合 : 動作に影響しません。
bit5
AD2E:
アドレス一致検出
許可ビット 2
検出アドレス設定レジスタ 2(PADR2) とのアドレス一致検
出動作を許可または禁止します。
"0" に設定した場合 : アドレス一致検出動作を禁止します。
"1" に設定した場合 : アドレス一致検出動作を許可します。
アドレス一致検出動作を許可した場合に (AD2E=1), アドレ
スラッチの値と検出アドレス設定レジスタ 2(PADR2) の値
が一致した場合は , 直ちに INT9 命令が実行されます。
bit4
予約 : 予約ビット
必ず "0" に設定してください。
bit3
AD1E:
アドレス一致検出
許可ビット 1
検出アドレス設定レジスタ 1(PADR1) とのアドレス一致検
出動作を許可または禁止します。
"0" に設定した場合 : アドレス一致検出動作を禁止します。
"1" に設定した場合 : アドレス一致検出動作を許可します。
アドレス一致検出動作を許可した場合に (AD1E=1), アドレ
スラッチの値と検出アドレス設定レジスタ 1(PADR1) の値
が一致した場合は , 直ちに INT9 命令が実行されます。
bit2
予約 : 予約ビット
必ず "0" に設定してください。
bit1
AD0E:
アドレス一致検出
許可ビット 0
検出アドレス設定レジスタ 0(PADR0) とのアドレス一致検
出動作を許可または禁止します。
"0" に設定した場合 : アドレス一致検出動作を禁止します。
"1" に設定した場合 : アドレス一致検出動作を許可します。
アドレス一致検出動作を許可した場合に (AD0E=1), アドレ
スラッチの値と検出アドレス設定レジスタ 0(PADR0) の値
が一致した場合は , 直ちに INT9 命令が実行されます。
bit0
予約 : 予約ビット
必ず "0" に設定してください。
bit7,
bit6
530
機 能
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 22 章 アドレス一致検出機能
22.3 アドレス一致検出機能の構成
MB90990 シリーズ
■ アドレス検出制御レジスタ 1(PACSR1)
図 22.3-3 アドレス検出制御レジスタ 1(PACSR1)
アドレス bit 15
00003BH
-
-
14
13
12
11
10
9
- AD5E 予約 AD4E 予約 AD3E 予約
-
初期値
8
R/W R/W R/W R/W R/W R/W
11000000B
bit 8
予約
0
予約ビット
必ず "0" に設定してください。
bit 9
AD3E
アドレス一致検出許可ビット 3
0
PADR3 でのアドレス一致検出を禁止します。
1
PADR3 でのアドレス一致検出を許可します。
bit 10
予約
0
予約ビット
必ず "0" に設定してください。
bit 11
AD4E
アドレス一致検出許可ビット 4
0
PADR4 でのアドレス一致検出を禁止します。
1
PADR4 でのアドレス一致検出を許可します。
bit 12
予約
0
予約ビット
必ず "0" に設定してください。
bit 13
AD5E
アドレス一致検出許可ビット 5
0
PADR5 でのアドレス一致検出を禁止します。
1
PADR5 でのアドレス一致検出を許可します。
bit 15, bit 14
−
未定義ビット
読み出した場合 : "1" が読み出されます。
書き込んだ場合 : 動作に影響しません
R/W
: リード / ライト可能
: 初期値
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
531
第 22 章 アドレス一致検出機能
22.3 アドレス一致検出機能の構成
MB90990 シリーズ
表 22.3-2 アドレス検出制御レジスタ (PACSR1) の機能
ビット名
未定義 : 未定義ビット
読み出した場合 : "1" が読み出せます。
書き込んだ場合 : 動作に影響しません。
bit13
AD5E:
アドレス一致検出
許可ビット 5
検出アドレス設定レジスタ 5(PADR5) とのアドレス一致検
出動作を許可または禁止します。
"0" に設定した場合 : アドレス一致検出動作を禁止します。
"1" に設定した場合 : アドレス一致検出動作を許可します。
アドレス一致検出動作を許可した場合に (AD5E=1), アドレ
スラッチの値と検出アドレス設定レジスタ 5(PADR5) の値
が一致した場合は , 直ちに INT9 命令が実行されます。
bit12
予約 : 予約ビット
必ず "0" に設定してください。
bit11
AD4E:
アドレス一致検出
許可ビット 4
検出アドレス設定レジスタ 4(PADR4) とのアドレス一致検
出動作を許可または禁止します。
"0" に設定した場合 : アドレス一致検出動作を禁止します。
"1" に設定した場合 : アドレス一致検出動作を許可します。
アドレス一致検出動作を許可した場合に (AD4E=1), アドレ
スラッチの値と検出アドレス設定レジスタ 4(PADR4) の値
が一致した場合は , 直ちに INT9 命令が実行されます。
bit10
予約 : 予約ビット
必ず "0" に設定してください。
bit9
AD3E:
アドレス一致検出
許可ビット 3
検出アドレス設定レジスタ 3(PADR3) とのアドレス一致検
出動作を許可または禁止します。
"0" に設定した場合 : アドレス一致検出動作を禁止します。
"1" に設定した場合 : アドレス一致検出動作を許可します。
アドレス一致検出動作を許可した場合に (AD3E=1), アドレ
スラッチの値と検出アドレス設定レジスタ 3(PADR3) の値
が一致した場合は , 直ちに INT9 命令が実行されます。
bit8
予約 : 予約ビット
必ず "0" に設定してください。
bit15,
bit14
532
機 能
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 22 章 アドレス一致検出機能
22.3 アドレス一致検出機能の構成
MB90990 シリーズ
22.3.2
検出アドレス設定レジスタ (PADR0 ∼ PADR5)
検出アドレス設定レジスタには検出するアドレスの値を設定します。プログラムで
実行されている命令のアドレスが検出アドレス設定レジスタに設定されたアドレス
と一致すると , 次に実行される命令が強制的に INT9 命令に置き換えられ , 割込み処
理プログラムが実行されます。
■ 検出アドレス設定レジスタ (PADR0 ∼ PADR5)
図 22.3-4 検出アドレス設定レジスタ (PADR0 ∼ PADR5)
PADR5 : 上位
PADR2 : 上位
PADR5 : 中位
PADR2 : 中位
PADR5 : 下位
PADR2 : 下位
アドレス
0079F8H
0079E8H
bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
D23 D22 D21 D20 D19 D18 D17 D16
PADR4 : 中位
PADR1 : 中位
PADR4 : 下位
PADR1 : 下位
0079F7H
0079E7H
初期値
0079F6H
0079E6H
R/W R/W R/W R/W R/W R/W R/W R/W
bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
D7
D6
D5
D4 D3
D2
D1
D0
初期値
0079F5H
0079E5H
0079F4H
0079E4H
0079F3H
0079E3H
D23 D22
D21
D20 D19 D18
D17
D16
R/W R/W R/W R/W R/W R/W R/W R/W
bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
D15 D14
D13
D12 D11 D10
D9
PADR3 : 中位
PADR0 : 中位
PADR3 : 下位
PADR0 : 下位
0079F2H
0079E2H
D8
R/W R/W R/W R/W R/W R/W R/W R/W
bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8
D7
D6
D5
D4 D3
D2
D1
D0
0079F1H
0079E1H
0079F0H
0079E0H
D23 D22
D21
D20 D19 D18
D17
XXXXXXXXB
XXXXXXXXB
初期値
XXXXXXXXB
R/W R/W R/W R/W R/W R/W R/W R/W
bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
PADR3 : 上位
PADR0 : 上位
XXXXXXXXB
R/W R/W R/W R/W R/W R/W R/W R/W
bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8
D15 D14 D13 D12 D11 D10 D9
D8
R/W R/W R/W R/W R/W R/W R/W R/W
bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8
PADR4 : 上位
PADR1 : 上位
初期値
D16
初期値
XXXXXXXXB
初期値
XXXXXXXXB
初期値
XXXXXXXXB
R/W R/W R/W R/W R/W R/W R/W R/W
bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8
D15 D14 D13 D12 D11 D10 D9
D8
初期値
R/W R/W R/W R/W R/W R/W R/W R/W
bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
D7
D6
D5
D4 D3
D2
D1
D0
初期値
XXXXXXXXB
XXXXXXXXB
R/W R/W R/W R/W R/W R/W R/W R/W
R/W : リード / ライト可能
X
: 不定
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
533
第 22 章 アドレス一致検出機能
22.3 アドレス一致検出機能の構成
MB90990 シリーズ
■ 検出アドレス設定レジスタの機能
• 検出アドレス設定レジスタは 6 本 (PADR0 ∼ PADR5) 用意されており , それぞれ上
位 ( バンク ), 中位 , 下位の 3 バイト , 合計 24 ビットで構成されています。
表 22.3-3 検出アドレス設定レジスタのアドレス設定
レジスタ名
検出アドレス設定
レジスタ 0
(PADR0)
検出アドレス設定
レジスタ 1
(PADR1)
検出アドレス設定
レジスタ 2
(PADR2)
検出アドレス設定
レジスタ 3
(PADR3)
検出アドレス設定
レジスタ 4
(PADR4)
検出アドレス設定
レジスタ 5
(PADR5)
割込み出力
アドレス設定
許可
PACSR0:
AD0E
PACSR0:
AD1E
PACSR0:
AD2E
PACSR1:
AD3E
PACSR1:
AD4E
PACSR1:
AD5E
上位
検出アドレス 0 の上位 8 ビットを設定 ( バンク )
中位
検出アドレス 0 の中位 8 ビットを設定
下位
検出アドレス 0 の下位 8 ビットを設定
上位
検出アドレス 1 の上位 8 ビットを設定 ( バンク )
中位
検出アドレス 1 の中位 8 ビットを設定
下位
検出アドレス 1 の下位 8 ビットを設定
上位
検出アドレス 2 の上位 8 ビットを設定 ( バンク )
中位
検出アドレス 2 の中位 8 ビットを設定
下位
検出アドレス 2 の下位 8 ビットを設定
上位
検出アドレス 3 の上位 8 ビットを設定 ( バンク )
中位
検出アドレス 3 の中位 8 ビットを設定
下位
検出アドレス 3 の下位 8 ビットを設定
上位
検出アドレス 4 の上位 8 ビットを設定 ( バンク )
中位
検出アドレス 4 の中位 8 ビットを設定
下位
検出アドレス 4 の下位 8 ビットを設定
上位
検出アドレス 5 の上位 8 ビットを設定 ( バンク )
中位
検出アドレス 5 の中位 8 ビットを設定
下位
検出アドレス 5 の下位 8 ビットを設定
• 検出アドレス設定レジスタ (PADR0 ∼ PADR5) には , INT9 命令と置き換える命令の
先頭アドレス (1 バイト目 ) を設定する必要があります。
534
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 22 章 アドレス一致検出機能
22.3 アドレス一致検出機能の構成
MB90990 シリーズ
図 22.3-5 INT9 命令と置き換える命令コードの先頭アドレスの設定
検出アドレスに設定 ( 上位 : FFH, 中位 : 00H, 下位 : 1FH)
アドレス
FF001C :
FF001F :
FF0022 :
命令コード
A8
4A
4A
00
00
80
ニーモニック
00
00
08
MOVW
MOVW
MOVW
RW0,#0000
A,#0000
A,#0880
<注意事項>
• 検出アドレス設定レジスタ (PADR0 ∼ PADR5) に , 1 バイト目以外のアドレスを設定し
た場合は , 命令コードが INT9 命令に置き換えられず割込み処理プログラムが実行され
なくなります。また , 2 バイト目以降に設定した場合は , 命令コードで指定した番地が
"01H"(INT9 命令コード ) に置き換わってしまい , 誤動作を起こす原因になる場合がある
のでご注意ください。
• 検出アドレス設定レジスタ (PADR0 ∼ PADR5) は , 対応するアドレス一致制御レジスタ
のアドレス一致検出動作を禁止してから (PACSR: AD0E ∼ AD5E=0) 設定してくださ
い。アドレス一致検出動作を禁止しないで検出アドレス設定レジスタを変更した場合 ,
アドレスの書込み中にアドレスが一致すると直ちにアドレス一致検出機能が働いてし
まい , 誤動作を起こす原因になります。
• アドレス一致検出機能は , 内部 ROM のアドレスに対してのみ使用できます。外部メモ
リ領域のアドレスを設定しても , アドレス一致検出機能は働かず INT9 命令は実行され
ません。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
535
第 22 章 アドレス一致検出機能
22.4 アドレス一致検出機能の動作説明
22.4
MB90990 シリーズ
アドレス一致検出機能の動作説明
アドレス一致検出機能は , プログラムで実行される命令のアドレスが検出アドレス設
定レジスタ (PADR0 ∼ PADR5) で設定したアドレスと一致した場合に , CPU で実行
される先頭の命令コードを INT9(01H) 命令に置き換え , 割込み処理プログラムに分
岐します。
■ アドレス一致検出機能の動作
検出アドレスの設定とアドレス一致が検出された場合の動作を , 図 22.4-1 に示します。
図 22.4-1 アドレス一致検出機能の動作
プログラム実行
アドレス
プログラムで実行される命令
のアドレスが検出アドレス
設定レジスタ 0 と一致
FF001C :
FF001F :
FF0022 :
命令コード
A8
4A
4A
00
00
80
ニーモニック
00
00
08
MOVW
MOVW
MOVW
RW0,#0000
A,#0000
A,#0880
INT9 命令 (01H) に置き換わる
■ 検出アドレスの設定
1) 検出アドレスを設定する検出アドレス設定レジスタ 0(PADR0) のアドレス一致検出
動作を禁止します (PACSR0: AD0E=0)。
2) 検出アドレス設定レジスタ 0(PADR0) に検出するアドレスを設定します。検出アド
レス設定レジスタ0(PADR0)の上位に"FFH",中位に"00H",下位に"1FH"を設定します。
3) 検出アドレスを設定する検出アドレス設定レジスタ 0(PADR0) のアドレス一致検出
動作を許可します (PACSR0: AD0E=1)。
■ プログラムの実行
1) プログラムで実行される命令のアドレスが設定した検出アドレスと一致すると , 一
致したアドレスの先頭の命令コードが INT9 命令コード ("01H") に置き換わります。
2) INT9 命令が実行されます。INT9 割込みが発生し , 割込み処理プログラムが実行さ
れます。
536
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 22 章 アドレス一致検出機能
22.4 アドレス一致検出機能の動作説明
MB90990 シリーズ
22.4.1
アドレス一致検出機能の使用例
アドレス一致検出機能を利用したプログラム修正のパッチ処理の例を示します。
■ システム構成と E2PROM のメモリ構成
● システム構成
アドレス一致検出機能を利用したシステム構成例を図 22.4-2 に示します。
図 22.4-2 アドレス一致検出機能を利用したシステム構成例
シリアル E2PROM
インタフェース
MCU
F2MC-16LX
E2PROM
修正プログラムを格納
プルアップ抵抗
SIN
CM44-10149-4
コネクタ (UART)
外部から修正プログラムを取り込む
FUJITSU MICROELECTRONICS LIMITED
537
第 22 章 アドレス一致検出機能
22.4 アドレス一致検出機能の動作説明
MB90990 シリーズ
■ E2PROM のメモリマップ
修正プログラムを E2PROM に格納する場合の修正プログラムとデータの配置方法を図
22.4-3 に示します。
図 22.4-3 E2PROM 修正プログラムとデータの配置方法
E2PROM
アドレス
PADR0
PADR1
PADR5
0 0 0 0
H
修正プログラムバイト数
0 0 0 1
H
検出アドレス 0( 下位 )
0 0 0 2
H
検出アドレス 0( 中位 )
0 0 0 3
H
検出アドレス 0( 上位 )
0 0 0 4
H
修正プログラムバイト数
0 0 0 5
H
検出アドレス 1( 下位 )
0 0 0 6
H
検出アドレス 1( 中位 )
0 0 0 7
・
・
・
0 0 1 4
H
検出アドレス 1( 上位 )
H
修正プログラムバイト数
0 0 1 5
H
検出アドレス 5( 下位 )
0 0 1 6
H
検出アドレス 5( 中位 )
0 0 1 7
H
検出アドレス 5( 上位 )
0 0 2 0
H
0 0 3 0
H
・
・
・
0 0 7 0
修正プログラム 0 用
修正プログラム 1 用
・
・
・
修正プログラム 5 用
修正プログラム 0( 本体 )
修正プログラム 1( 本体 )
・
・
・
H
修正プログラム 5( 本体 )
● 修正プログラムバイト数
修正プログラム ( 本体 ) の総バイト数を格納します。バイト数が "00H" の場合は修正プ
ログラムがないことを示します。
● 検出アドレス (24 ビット )
プログラムミスにより INT9 命令に置き換える箇所のアドレスを格納します。検出アド
レス設定レジスタ (PADR0 ∼ PADR5) に設定するアドレスです。
● 修正プログラム ( 本体 )
プログラムのアドレスと検出アドレスが一致した場合にINT9割込みによって実行する
プログラムを格納します。修正プログラム 0 は任意に決めたアドレスから配置します。
修正プログラム 1 は , <修正プログラム 0 の先頭アドレス + 修正プログラム 0 の総バ
イト数>のアドレスから配置します。
修正プログラム 2 ∼ 5 についても同様です。
538
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 22 章 アドレス一致検出機能
22.4 アドレス一致検出機能の動作説明
■ 設定と動作状態
● 初期設定
E2PROM の内容はすべて "00H" にクリアします。
● プログラムミスが発生した場合
• コネクタ接続 (UART) を使用して , 外部から MCU(F2MC-16LX) に E2PROM 修正プ
ログラムとデータの配置方法に従った修正プログラムの情報を送ります。
• MCU(F2MC-16LX) 側では , 外部から受け取った修正プログラムの情報を E2PROM に
格納します。
● リセットシーケンス
• リセット後 , MCU(F2MC-16LX) は , E2PROM 修正プログラムのバイト数を読み出し
て修正プログラムの有無を確認します。
• 修正プログラムのバイト数が "00H" でない場合は , 検出アドレス 0 ∼ 5 の上位 , 中位 ,
下位を読み出して検出アドレス設定レジスタ 0 ∼ 5(PADR0 ∼ PADR5) に設定しま
す。また , 修正プログラムバイト数に従って修正プログラム ( 本体 ) を読み出して ,
MCU(F2MC-16LX) の RAM に書き込みます。
• 修正プログラム ( 本体 ) は , アドレス一致検出機能によって INT9 割込み処理で実行
するアドレスに配置します。
• アドレス一致検出動作を許可します (PACSR: AD0E=1, AD1E=1・・・AD5E=1)。
● INT9 割込み処理
• INT9 命令によって割込み処理が実行されます。MB90990 シリーズにはアドレス一
致検出による割込み要求フラグがありません。したがって , プログラムカウンタの
スタック情報が破棄されると検出アドレスを確認できません。検出アドレスを確認
する場合は , 割込み処理ルーチンでスタックされているプログラムカウンタの値を
確認してください。
• 修正プログラムの実行後に通常のプログラムに分岐します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
539
第 22 章 アドレス一致検出機能
22.4 アドレス一致検出機能の動作説明
MB90990 シリーズ
■ 修正プログラムを E2PROM に格納する場合のアドレス一致検出機能の動作
修正プログラムを E2PROM に格納する場合のアドレス一致検出機能の動作を , 図 22.44 に示します。
図 22.4-4 修正プログラムを E2PROM に格納する場合のアドレス一致検出機能の動作
000000H
③
RAM
修正プログラム
検出アドレス設定レジスタ
E2PROM
①
検出アドレス設定
( リセットシーケンス )
・修正プログラムバイト数
・アドレス検出用アドレス
シリアル E2PROM ・修正プログラム
インタフェース
ROM
②
④
プログラムミス
FFFFFFH
①
②
③
④
540
リセットシーケンスの検出アドレス設定と通常プログラムの実行
アドレス一致検出による INT9 割込み処理で RAM に展開した修正プログラムへ分岐
INT9 処理の分岐による修正プログラムの実行
修正プログラムから分岐した元の通常プログラムの実行
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 22 章 アドレス一致検出機能
22.4 アドレス一致検出機能の動作説明
MB90990 シリーズ
■ プログラム修正のパッチ処理フロー
アドレス一致検出機能を利用したプログラム修正のパッチ処理のフローを図 22.4-5 に
示します。
図 22.4-5 プログラム修正のパッチ処理フロー
MB90990シリーズ
000000H
I/O 領域
000100H
レジスタ /RAM 領域
000400H
修正プログラム
000480H
RAM 領域
0000H
RAM
スタック領域
0001H
検出アドレス ( 下位 ) : 00H
0002H
検出アドレス ( 中位 ) : 80H
0003H
検出アドレス ( 上位 ) : FFH
0010H
000900H
検出アドレス設定レジスタ
E2PROM
修正プログラムバイト数 : 80H
修正プログラム
0090H
FFFFH
FF0000H
ROM
プログラムミス
FF8000H
FF8050H
FFFFFFH
YES
リセット
INT9
E2PROM : 00H
を読み込む
修正プログラムへ分岐
JMP 000400H
E2PROM :
0000H = 0
修正プログラムの実行
000400H ∼ 000480H
NO
修正プログラム終了
JMP FF8050H
検出アドレスを読み込む
E2PROM :
0001H ∼ 0003H
↓
MCU : PADR0 へ設定
修正プログラムを読み込む
E2PROM :
0010H ∼ 008FH
↓
MCU :
000400H ∼ 000047FH
アドレス一致検出を許可
(PACSR : AD0E = 1)
通常プログラム実行
NO
YES
プログラムアドレス =
PADR0
CM44-10149-4
INT9
FUJITSU MICROELECTRONICS LIMITED
541
第 22 章 アドレス一致検出機能
22.5 アドレス一致検出機能のプログラム例
22.5
MB90990 シリーズ
アドレス一致検出機能のプログラム例
アドレス一致検出機能のプログラム例を示します。
■ アドレス一致検出機能のプログラム例
● 処理仕様
プログラムで実行される命令のアドレスと検出アドレス設定レジスタPADR0に設定し
たアドレスが一致した場合に INT9 命令が実行されます。
● コーディング例
PACSR0 EQU
00009EH
; アドレス検出制御レジスタ 0
PADRL
EQU
0079E0H
; 検出アドレス設定レジスタ 0 下位
PADRM
EQU
0079E1H
; 検出アドレス設定レジスタ 0 中位
PADRH
;
EQU
0079E2H
; 検出アドレス設定レジスタ 0 上位
;--------- メインプログラム ------------------------------------CODE
CSEG
START:
; スタックポインタ (SP) などは
; 初期化済みとする
MOV
PADRL,#00H
; アドレス検出レジスタ 0 下位設定
MOV
PADRM,#00H
; アドレス検出レジスタ 0 中位設定
MOV
PADRH,#00H
; アドレス検出レジスタ 0 上位設定
MOV
I:PACSR0,#00000010B ; アドレス一致の許可
;
・
ユーザ処理
・
LOOP:
・
ユーザ処理
・
BRA
LOOP
;--------- 割込みプログラム ------------------------------------WARI:
・
ユーザ処理
・
CODE
; 割込み処理からの復帰
RETI
ENDS
;--------- ベクタ設定 -----------------------------------------VECT
CSEG ABS=0FFH
ORG
00FFD8H
DSL
WARI
ORG
542
00FFDCH
; リセットベクタ設定
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 22 章 アドレス一致検出機能
22.5 アドレス一致検出機能のプログラム例
MB90990 シリーズ
VECT
CM44-10149-4
DSL
START
DB
ENDS
END
00H
; シングルチップモードに設定
START
FUJITSU MICROELECTRONICS LIMITED
543
第 22 章 アドレス一致検出機能
22.5 アドレス一致検出機能のプログラム例
544
MB90990 シリーズ
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 23 章
ROM ミラー機能
選択モジュール
ROM ミラー機能選択モジュールの機能と動作につ
いて説明します。
23.1 ROM ミラー機能選択モジュールの概要
23.2 ROM ミラー機能選択レジスタ (ROMM)
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
545
第 23 章 ROM ミラー機能 選択モジュール
23.1 ROM ミラー機能選択モジュールの概要
23.1
MB90990 シリーズ
ROM ミラー機能選択モジュールの概要
ROM ミラー機能選択モジュールでは , FF バンクに配置されている ROM 内のデータ
を 00 バンクへのアクセスで読み出せるように設定します。
■ ROM ミラー機能選択モジュールのブロックダイヤグラム
図 23.1-1 ROM ミラー機能選択モジュールのブロックダイヤグラム
ROMミラー機能選択レジスタ(ROMM)
-
-
-
-
-
- 予約 MI
内部データバス
アドレス
アドレス領域
00バンク
FFバンク
データ
ROM
546
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 23 章 ROM ミラー機能 選択モジュール
23.1 ROM ミラー機能選択モジュールの概要
MB90990 シリーズ
■ ROM ミラー機能の有効・無効の場合のメモリ空間
ROM ミラー機能を有効または無効にした場合のメモリ空間のアクセスの可否を図
23.1-2 に示します。
図 23.1-2 ROM ミラー機能の有効・無効の場合のメモリ空間
FFFFFFH
ROM領域
アドレス#1
F78000H
ROM領域
(サテライト)
F70000H
010000H
ROM領域
(FFバンクの
イメージ)
008000H
拡張I/O領域
007900H
アドレス#2
RAM
000100H
0000F0H
汎用
レジスタ
:内部
I/O
000000H
:アクセス不可
シングルチップ
品 種
MB90F997JBS, MB90F997MBS
MB90V950AJAS, MB90V950AMAS
アドレス #1
FE0000H
アドレス #2
0020FFH
F80000H
007900H
■ ROM ミラー機能選択モジュールのレジスタと初期値の一覧
図 23.1-3 ROM ミラー機能選択モジュールのレジスタと初期値の一覧
ROM ミラー機能選択レジスタ (ROMM)
bit
CM44-10149-4
15
1
14
1
13
1
12
1
11
1
10
1
FUJITSU MICROELECTRONICS LIMITED
9
0
8
1
547
第 23 章 ROM ミラー機能 選択モジュール
23.2 ROM ミラー機能選択レジスタ (ROMM)
23.2
MB90990 シリーズ
ROM ミラー機能選択レジスタ (ROMM)
ROM ミラー機能選択レジスタでは , ROM ミラー機能を有効にするか無効にするか
を設定します。有効に設定した場合は , 00 バンクの読出しで FF バンクの ROM デー
タを読み出せます。
■ ROM ミラー機能選択レジスタ (ROMM)
図 23.2-1 ROM ミラー機能選択レジスタ (ROMM)
アドレス
14
bit 15
13
12
11
10
9
8
初期値
予約 MI
00006FH
R/W
11111101B
R/W
bit8
R/W
: リード / ライト可能
MI
: 未定義ビット
0
ROM ミラー機能は無効
: 初期値
1
ROM ミラー機能は有効
ROM ミラー機能選択ビット
表 23.2-1 ROM ミラー機能選択レジスタ (ROMM) の機能
ビット名
機 能
bit15
∼
bit10
未定義ビット
読み出した場合 : 値は不定です。
書き込んだ場合 : 影響しません。
bit9
予約ビット
書込みする場合は必ず "0" を書き込んでください。
bit8
MI:
ROM ミラー
機能選択ビット
ROM ミラー機能を有効にするか無効にするかを設定し
ます。
"0" に設定した場合 : ROM ミラー機能を無効にします。
"1" に設定した場合 : ROM ミラー機能を有効にします。
<注意事項>
アドレス "008000H"~"00FFFFH" の ROM 領域を使用中は , ROM ミラー選択レジスタ
(ROMM) のアクセスを禁止します。
548
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 24 章
フラッシュメモリ
フラッシュメモリの機能と動作について説明しま
す。
フラッシュメモリへのデータ書込み / 消去の方法に
は下記の 3 とおりの方法があります。
• パラレルライタ
• シリアル専用ライタ
• プログラム実行による書込み / 消去
ここでは , プログラム実行による書込み / 消去につ
いて説明します。
24.1 フラッシュメモリの概要
24.2 フラッシュメモリ全体のブロックダイヤグラム
24.3 フラッシュメモリのセクタ構成
24.4 書込み / 消去モード
24.5 フラッシュメモリコントロールステータスレジスタ
(FMCS)
24.6 フラッシュメモリ書込みコントロールレジスタ (FWR0/
FWR1)
24.7 フラッシュメモリ自動アルゴリズム起動方法
24.8 自動アルゴリズム実行状態の確認
24.9 フラッシュメモリの書込み / 消去
24.10 フラッシュメモリ使用上の注意
24.11 フラッシュセキュリティ機能
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
549
第 24 章 フラッシュメモリ
24.1 フラッシュメモリの概要
24.1
MB90990 シリーズ
フラッシュメモリの概要
MB90990 シリーズは 2 つのフラッシュメモリを搭載しています。1 つ目のフラッ
シュメモリは " メインフラッシュ " とよび 48K × 2 + 8K × 4 のセクタ構成で CPU
メモリマップ上の FFH ∼ FEH バンクに配置され , 2 つ目のフラッシュメモリは " サ
テライトフラッシュ " とよび 8K × 4 のセクタ構成で CPU メモリマップ上の F7H バ
ンクに配置されています。この構成によりメインフラッシュのプログラム上でフ
ラッシュ書込みプログラムを実行しサテライトフラッシュにデータを書込み・消去
することが可能です。フラッシュメモリインタフェース回路の機能により , マスク
ROM と同様に CPU からのリードアクセスおよびプログラムアクセスが可能です。
フラッシュメモリへの書込み / 消去は , フラッシュメモリインタフェース回路を介し
て CPU からの命令動作で行えます。このため , 内蔵 CPU の制御による実装状態で
の書換えが可能となり , プログラムおよびデータの改善が効率よく行えます。
■ フラッシュメモリの特長
• 自動プログラムアルゴリズム (Embedded Algorithm: MBM29LV200 と同様 )
• 消去一時停止 / 消去再開機能の搭載
• データポーリング , トグルビットによる書込み / 消去完了検出
• CPU 割込みによる書込み / 消去の完了検出
• セクタごとの消去が可能 ( セクタ組み合わせ自由 )
• 書込み / 消去回数 ( 最小 ) 10, 000 回
• フラッシュ読出しサイクルタイム ( 最小 ) 2 マシンサイクル
<注意事項>
マニュファクチャコードとデバイスコードの読出し機能はありません。
また , これらのコードはコマンドによってもアクセスできません。
■ フラッシュメモリ書込み / 消去の方法
フラッシュメモリは同一フラッシュメモリでの書込み / 消去と読出しを同時に行うことは
できません。すなわち , メインフラッシュメモリにデータ書込み / 消去動作を行う際には ,
フラッシュメモリ上にあるプログラムを RAM に 1 度コピーし RAM 実行することで , フ
ラッシュメモリからプログラムアクセスをせず書込み動作だけを行うことができます。サ
テライトフラッシュメモリにデータ書込み / 消去動作を行う際には , メインフラッシュメ
モリ上にあるプログラムを実行またはフラッシュメモリ上にあるプログラムを RAM に一
度コピーし RAM 実行することで , 書込みを行うことができます。
<注意事項>
550
サテライトフラッシュメモリ上にはプログラムを配置しないでください。
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 24 章 フラッシュメモリ
24.2 フラッシュメモリ全体のブロックダイヤグラム
MB90990 シリーズ
24.2
フラッシュメモリ全体のブロックダイヤグラム
フラッシュメモリ全体のブロックダイヤグラムを示します。
■ フラッシュメモリ全体のブロックダイヤグラム
図 24.2-1 にフラッシュメモリインタフェース回路を含めたフラッシュメモリ全体のブ
ロックダイヤグラムを示します。
図 24.2-1 フラッシュメモリ全体のブロックダイヤグラム
フラッシュメモリ
インタフェース回路
ポート 2
ポート 4
ポート 5
ポート 6
ポート 8
F2MC-16LX
バス
BYTE
フラッシュメモリ
BYTE
CE
CE
OE
OE
WE
WE
AQ0~AQ18
AQ0~AQ18
DQ0~DQ15
DQ0~DQ15
INT
RY/BY
RY/BY
RESET
ライト許可割込み信号
(CPU へ )
外部リセット信号
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
RY/BY
ライト許可信号
551
第 24 章 フラッシュメモリ
24.3 フラッシュメモリのセクタ構成
24.3
MB90990 シリーズ
フラッシュメモリのセクタ構成
フラッシュメモリのセクタ構造を示します。
■ フラッシュメモリのセクタ構成
図 24.3-1 は , フラッシュメモリのセクタ構造を示します。
図中アドレスは , 各セクタの上
位アドレスと下位アドレスを示します。
図 24.3-1 フラッシュメモリのセクタ構成
SA5(8K バイト )
SA4(8K バイト )
SA3(48K バイト )
SA2(48K バイト )
SA1(8K バイト )
SA0(8K バイト )
空き領域
SB3(8K バイト )
SB2(8K バイト )
SB1(8K バイト )
SB0(8K バイト )
ライタアドレス *
FFFFFH
CPU アドレス
FFFFFFH
FDFFFH
FFDFFFH
FBFFFH
FFBFFFH
EFFFFH
FEFFFFH
E3FFFH
FE3FFFH
E1FFFH
FE1FFFH
DFFFFH
FDFFFFH
77FFFH
F77FFFH
75FFFH
F75FFFH
73FFFH
F73FFFH
71FFFH
F71FFFH
70000H
F70000H
* : ライタアドレスとはフラッシュメモリにパラレルライタでデータ書込みを行う際 , CPU アドレスに
対応するアドレスです。汎用ライタを使用し , 書込み / 消去を行う際は , このアドレスで書込み / 消
去を実行します。
552
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
24.4
第 24 章 フラッシュメモリ
24.4 書込み / 消去モード
書込み / 消去モード
フラッシュメモリのアクセスは , フラッシュメモリモードとその他モードの 2 つの
異なる方法で行われます。フラッシュメモリモードでは外部端子から直接書込み / 消
去を行え , その他モードでは内部バスを介して CPU から書込み / 消去を行えます。
モードの選択はモード外部端子で行います。
■ フラッシュメモリモード
リセット信号が発生中にモード端子を "111B" にセットすると CPU が停止します。フ
ラッシュメモリインタフェース回路は直接ポート 2, 4, 5, 6, 8 に接続しているので , 外部
端子から直接制御できます。このモードでは , MCU が外部端子中の標準フラッシュメ
モリと同様の動作を行い , フラッシュメモリプログラマを使用して書込み / 消去を行え
ます。
フラッシュメモリモードでは,フラッシュメモリ自動アルゴリズムでサポートされるす
べての動作を使用できます。
■ その他モード
フラッシュメモリは CPU メモリ空間の F7/FE ∼ FF バンクに配置されており , 通常の
マスク ROM と同様にフラッシュメモリインタフェース回路を介して CPU から読出し
アクセスおよびプログラムアクセスできます。
フラッシュメモリへの書込み / 消去は , フラッシュメモリインタフェース回路を介して
CPU からの命令で実行されます。このため , このモードでは MCU が対象ボードにはん
だ付けされていても再書込みが可能です。
<注意事項>
CM44-10149-4
フラッシュメモリモードにおいて標準フラッシュメモリ MBM29LV200 などのセ
クタ保護機能は搭載してません。
FUJITSU MICROELECTRONICS LIMITED
553
第 24 章 フラッシュメモリ
24.5 フラッシュメモリコントロールステータスレジスタ
(FMCS)
24.5
MB90990 シリーズ
フラッシュメモリコントロールステータスレジスタ
(FMCS)
フラッシュメモリコントロールステータスレジスタ (FMCS) の機能を示します。
■ フラッシュメモリコントロールステータスレジスタ (FMCS)
図 24.5-1 フラッシュメモリコントロールステータスレジスタ (FMCS)
アドレス :
0000AEH
bit 7
6
INTE RDY
INT
5
WE
R/W R/W R/W
4
3
2
1
0
初期値
RDY 予約 予約 予約 予約
R
000X0000B
R/W R/W R/W R/W
bit0
予約
0
予約ビット
必ず "0" に設定してください
bit1
予約
0
予約ビット
必ず "0" に設定してください
bit2
予約
0
予約ビット
必ず "0" に設定してください
bit3
予約
0
予約ビット
必ず "0" に設定してください
bit4
フラッシュメモリ書込み / 消去ステータスビット
RDY
0
書込み / 消去の実行中 ( 次データ書込み / 消去不可 )
1
書込み / 消去の終了 ( 次データ書込み / 消去許可 )
bit5
フラッシュメモリ書込み / 消去許可ビット
WE
0
フラッシュメモリ領域の書込み / 消去禁止
1
フラッシュメモリ領域の書込み / 消去許可
bit6
RDYINT
フラッシュメモリ動作フラグビット
読出し時
書込み時
0
書込み / 消去の実行中
この RDYINT ビットのクリア
1
書込み / 消去の終了
影響なし
bit7
INTE
R/W
R
X
554
: リード / ライト可能
: リードオンリ
: 不定
: 初期値
フラッシュメモリ書込み / 消去割込み許可ビット
0
書込み / 消去の終了による割込み禁止
1
書込み / 消去の終了による割込み許可
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 24 章 フラッシュメモリ
24.5 フラッシュメモリコントロールステータスレジスタ
(FMCS)
表 24.5-1 フラッシュメモリコントロールステータスレジスタ (FMCS) の機能
ビット名
INTE:
フラッシュメモリ
書込み / 消去割込み
許可ビット
フラッシュメモリの書込み / 消去の終了による割込み要
求発生を許可または禁止します。
"1" に設定した場合 :
フラッシュメモリ動作フラグビットを "1" に設定した場
合に (FMCS: RDYINT=1) 割込み要求が発生します。
RDYINT:
フラッシュメモリ動作
フラグビット
フラッシュメモリ動作状態を示します。
フラッシュメモリの書込み / 消去が終了した場合にフラッ
シュメモリ自動アルゴリズム終了のタイミングで , この
RDYINT ビットに "1" がセットされます。
• フラッシュメモリ書込み / 消去の終了による割込みを
許可に設定している場合は (FMCS:INTE=1), この
RDYINT ビットに "1" がセットされると割込み要求が
発生します。
• この RDYINT ビットが "0" の場合はフラッシュメモリ
への書込み / 消去はできません。
"0" に設定した場合 : クリアされます。
"1" に設定した場合 : 影響しません。
リードモディファイライト (RMW) 系命令を使用した場合
は , 必ず "1" が読み出されます。
WE:
フラッシュメモリ
書込み / 消去許可
ビット
フラッシュメモリ領域への書込み / 消去を許可または禁
止します。
この WE ビットはフラッシュメモリの書込み / 消去のコ
マンドを起動する前に設定してください。
"0" に設定した場合 :
F7/FE ∼ FF バンクへの書込み / 消去コマンドを入力して
も書込み / 消去の信号は発生しません。
"1" に設定した場合 :
F7/FE ∼ FF バンクへの書込み / 消去コマンド入力後 , フ
ラッシュメモリへの書込み / 消去ができます。
書込み / 消去を行わない場合は , 誤ってフラッシュメモリ
に書き込んだり , 消去を行わないように , この WE ビット
を "0" に設定してください。
bit4
RDY:
フラッシュメモリ
書込み / 消去
ステータスビット
フラッシュメモリの書込み / 消去の状態を示します。
• この RDY ビットが "0" の場合は , フラッシュメモリへ
の書込み / 消去はできません。
• この RDY ビットが "0" の場合でも , 読出し / リセット
コマンド , セクタ消去一時停止コマンドを受け付ける
ことができます。書込み / 消去動作を終了すると ,
RDY ビットは "1" にセットされます。
bit3
∼
bit0
予約 : 予約ビット
必ず "0" に設定してください。
bit7
bit6
bit5
CM44-10149-4
機 能
FUJITSU MICROELECTRONICS LIMITED
555
第 24 章 フラッシュメモリ
24.5 フラッシュメモリコントロールステータスレジスタ
(FMCS)
MB90990 シリーズ
<注意事項>
このレジスタはバイトアクセスのみ可能です。
■ 自動アルゴリズム終了タイミング
図 24.5-2 に , 自動アルゴリズム終了タイミングと RDYINT ビットおよび RDY ビットの
関係を示します。
RDYINT ビットと RDY ビットは同時には変化しません。どちらか一方のビットで自動
アルゴリズムの終了を判定するようにプログラムを作成してください。
図 24.5-2 自動アルゴリズム終了タイミングと RDYINT ビットおよび RDY ビットの関係
自動アルゴリズム
終了タイミング
RDYINT ビット
RDY ビット
1 マシンサイクル
556
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
24.6
第 24 章 フラッシュメモリ
24.6 フラッシュメモリ書込みコントロールレジスタ (FWR0/
FWR1)
フラッシュメモリ書込みコントロールレジスタ
(FWR0/FWR1)
フラッシュメモリ書込みコントロールレジスタ (FWR0/FWR1) は , フラッシュメモ
リインタフェースにあるレジスタで , フラッシュメモリの誤書込み防止機能の設定
を行う際に使用します。
■ フラッシュメモリ書込みコントロールレジスタ (FWR0/FWR1)
フラッシュメモリ書込みコントロールレジスタ (FWR0/FWR1) は , 各セクタ (SA0 ∼
SA5,SB0 ∼ SB3) に対応した書込み許可 / 禁止設定ビットです。初期値は "0" を示し ,
書込み禁止となります。"1" を書き込むことにより対応するセクタの書込みを許可しま
す。また , "0" を書き込むことにより , 誤書込み防止が機能します。よって , "0" を書き
込んでから "1" の書込みを行ってもそのセクタに書込みを行うことはできません。再
度書き込む必要がある場合はリセットをする必要があります。
図 24.6-1 1M ビットフラッシュメモリ書込みコントロールレジスタ (FWR0/FWR1)
FWR0
アドレス:0079A2H
FWR1
アドレス:0079A3H
bit 7
6
5
4
3
2
1
0
-
-
SA5E
SA4E
SA3E
SA2E
SA1E
SA0E
(0) (0) (0) (0) (0) (0) (0)
R/W
R/W
R/W
R/W
R/W
R/W
R/W
(0)
R/W
bit 15
SB3E
14
13
12
11
10
9
8
SB2E
SB1E
SB0E
-
-
-
-
(0) (0) (0) (0) (0) (0) (0)
R/W
R/W
R/W
R/W
R/W
R/W
R/W
(0)
R/W
R/W:リード/ライト可能
0 :書込み禁止[初期値]
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
557
第 24 章 フラッシュメモリ
24.6 フラッシュメモリ書込みコントロールレジスタ (FWR0/
FWR1)
MB90990 シリーズ
表 24.6-1 フラッシュメモリ書込みコントロールレジスタ (FWR0/FWR1) の機能
ビット名
機 能
bit11
∼
予約ビット
書込み時は , 必ず "0" を書き込んでください。また , 読出し値は不定です。
bit6
フラッシュメモリの各セクタに対応した誤書込み機能設定ビットです。"1" を
書き込むことにより対応したセクタに書込みが許可されます。また , "0" を書き
込むことにより対応したセクタは誤書込み防止機能が働きます。また , リセッ
トにより初期化され "0" ( 書込み禁止 ) となります。
誤書込み機能設定ビットのフラッシュセクタ対応表
(1M ビットフラッシュメモリ )
bit15
∼
bit12,
bit5
∼
bit0
SB3E ∼ SB0E,
SA5E ∼ SA0E
誤書込み機能設定
ビット
ビット
15
14
13
12
5
4
3
2
1
0
ビット名
SB3E
SB2E
SB1E
SB0E
SA5E
SA4E
SA3E
SA2E
SA1E
SA0E
フラッシュ対応セクタ
SB3
SB2
SB1
SB0
SA5
SA4
SA3
SA2
SA1
SA0
書込み禁止
: "0" の状態。フラッシュメモリ書込みコントロールレジスタ
(FWR0/FWR1) に "0" を書いていない状態で各セクタに対応した
レジスタを書込み許可 ("1") にすることが可能です ( リセット後
の状態 )。
書込み許可 : "1" の状態。対応したセクタにデータを書き込むことが可能で
す。
誤書込み防止 : "0" の状態。フラッシュメモリ書込みコントロールレジスタ
(FWR0/ FWR1) に "0" を書いた状態で各セクタに対応したレジ
スタに "1" を書き込んでも書込み許可 ("1") にすることはできま
せん。
558
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 24 章 フラッシュメモリ
24.6 フラッシュメモリ書込みコントロールレジスタ (FWR0/
FWR1)
図 24.6-2 フラッシュメモリ書込みコントロールレジスタ (FWR0/FWR1) における
フラッシュメモリへの書込み禁止 / 許可 / 誤書込み防止状態の例
MB90990 シリーズ
初期化
レジスタ
書込み
レジスタ
書込み
初期化
RST
書込み禁止
書込み許可
誤書込み防止
書込み禁止
SA0E
書込み禁止
誤書込み防止
書込み禁止
書込み禁止
誤書込み防止
書込み禁止
書込み禁止
書込み許可
書込み禁止
SA1E
SA2E
SA3E
書込み禁止 :
"0" 状態。フラッシュメモリ書込みコントロールレジスタ (FWR0/FWR1) に "0" を書
いていない状態で各セクタに対応したレジスタを書込み許可 ("1") にすることが可
能です ( リセット後の状態 )。
書込み許可 :
"1" の状態。対応したセクタにデータを書き込むことが可能です。
誤書込み防止 :
"0" の状態。フラッシュメモリ書込みコントロールレジスタ (FWR0/FWR1) に "0" を
書いた状態で各セクタに対応したレジスタに"1"を書き込んでも書込み許可 ("1") に
することはできません。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
559
第 24 章 フラッシュメモリ
24.6 フラッシュメモリ書込みコントロールレジスタ (FWR0/
FWR1)
MB90990 シリーズ
■ フラッシュメモリ書込みコントロールレジスタ (FWR0/FWR1) 設定フロー
FMCS:WE ビットを設定し , 書込みをするセクタには "1" を , 誤書込み防止セクタには
"0" をそれぞれフラッシュメモリ書込みコントロールレジスタ (FWR0/FWR1) に設定し
てください。また , ビット操作命令での設定は禁止です。
図 24.6-3 フラッシュメモリ誤書込み設定および書込み手順例
書込み開始
FMCS:WE(bit5)
フラッシュメモリ書込み許可
FWR0/FWR1
フラッシュメモリ誤書込み
防止設定
(誤書込み防止セクタは"0",
書込みセクタは"1")
書込みコマンドシーケンス
①YYYAAAH←XXAAH
②YYY554H←XX55H
③YYYAAAH←XXA0H
④書込みアドレス←書込みデータ
内部アドレス読出し
データポーリング
(DQ7)
次アドレス
Data
Data
0
タイミングリミット
(DQ5)
1
内部アドレス読出し
Data
データポーリング
(DQ7)
Data
書込みエラー
最終アドレス
NO
YES
FMCS:WE(bit5)
フラッシュメモリ書込み禁止
書込み完了
560
YYY : フラッシュメモリ領域中の, フラッシュメモリ
書込みコントロールレジスタFWR0/FWR1で"0"設定
(書込み禁止/誤書込み防止)されていない任意の
アドレスの上位12ビット
X
: 任意の値
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 24 章 フラッシュメモリ
24.6 フラッシュメモリ書込みコントロールレジスタ (FWR0/
FWR1)
■ FMCS:WE の設定について
フラッシュメモリに書き込む際には , FMCS:WE に "1" を設定し , 書込み許可にしてか
らフラッシュメモリ書込みコントロールレジスタ (FWR0/FWR1) の設定を行ってくだ
さい。FMCS:WE が書込み禁止 ("0") の場合 , フラッシュメモリ書込みコントロールレ
ジスタ (FWR0/FWR1) で書込み許可としても , フラッシュメモリに書込み動作は行わ
れません。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
561
第 24 章 フラッシュメモリ
24.7 フラッシュメモリ自動アルゴリズム起動方法
MB90990 シリーズ
フラッシュメモリ自動アルゴリズム起動方法
24.7
フラッシュメモリの自動アルゴリズムを起動するコマンドには , 読出し / リセット ,
書込み , チップ消去 , セクタ消去の 4 種類があり , セクタ消去については一時停止と
再開の制御が可能です。
■ コマンドシーケンス表
表 24.7-1 に,フラッシュメモリの書込み/消去時に使用するコマンドの一覧を示します。
コマンドレジスタに書き込むデータはすべてバイトですが,ワードアクセスで書き込む
ようにしてください。このときの上位バイト分のデータは無視されます。
表 24.7-1 コマンドシーケンス表
コマンド
シーケンス
バス
ライト
アクセス
1st バスライト
サイクル
2nd バスライト
サイクル
3rd バスライト
サイクル
4th バスライト
サイクル
5th バスライト
サイクル
6th バスライト
サイクル
アドレス
データ
アドレス
データ
アドレス
データ
アドレス
データ
アドレス
データ
アドレス
データ
読出し /
リセット *
1
YYYXXXH
XXF0H
-
-
-
-
-
-
-
-
-
-
読出し /
リセット *
4
YYYAAAH
XXAAH
YYY554H
XX55H
YYYAAAH
XXF0H
RA
RD
-
-
-
-
書込み
4
YYYAAAH
XXAAH
YYY554H
XX55H
YYYAAAH
XXA0H
PA
PD
-
-
-
-
チップ消去
6
ZZZAAAH
XXAAH
ZZZ554H
XX55H
ZZZAAAH
XX80H
ZZZAAAH
XXAAH
ZZZ554H
XX55H
ZZZAAAH
XX10H
セクタ消去
6
YYYAAAH
XXAAH
YYY554H
XX55H
YYYAAAH
XX80H
YYYAAAH
XXAAH
YYY554H
XX55H
SA
XX30H
セクタ消去一時停止
アドレス YYYXXXH, データ "XXB0H" 入力で , セクタ消去中の消去一時停止
セクタ消去再開
アドレス YYYXXXH, データ "XX30H" 入力で , セクタ消去一時停止後 , 消去開始
RA: 読出しアドレス
PA: 書込みアドレス
SA: セクタアドレス ( セクタ内の任意の 1 アドレスを指定 )
RD: 読出しデータ
PD: 書込みデータ
YYY: フラッシュメモリ領域中の , フラッシュメモリ書込みコントロールレジスタ FWR0/FWR1 で "0" 設定 ( 書込み禁止 / 誤書込み防止 )
されていない任意のアドレスの上位 12 ビット
ZZZ: フラッシュメモリ領域中の任意のアドレス上位 12 ビット
*: 2 種類の読出し / リセットコマンドはどちらもフラッシュメモリを読出しモードにリセットできます。
<注意事項>
•
表中のアドレスは , CPU メモリマップ上の値です。アドレスおよびデータはすべて 16 進数表記
しています。ただし ,"X" は任意の値です。
•
チップ消去コマンド発行時 , 書込み許可されているセクタと書込み禁止されているセクタが混在
している状態で , 書込み許可されているセクタにアクセスしてチップ消去コマンドを発行した場
合 , 書込み禁止されているセクタも含め , 全セクタの内容が消去されます。
562
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
第 24 章 フラッシュメモリ
24.7 フラッシュメモリ自動アルゴリズム起動方法
■ コマンド発行時の注意点
コマンドシーケンス表のコマンドを発行する際には下記の点に注意してください。
• 各セクタの書込み許可の設定は 1st コマンド発行前に行ってください。
上記の対策が行われない場合 , 正常にコマンドが認識されず , リセットにてフラッシュ
メモリ内のコマンドシーケンサを初期化する必要があります。
• チップ消去コマンドをメインフラッシュの領域 (SA0 ∼ SA5) に発行するとメインフ
ラッシュの領域 (SA0 ∼ SA5) が消去されます。チップ消去コマンドをサテライトフ
ラッシュの領域 (SB0 ∼ SB3) に発行するとサテライトフラッシュの領域 (SB0 ∼ SB3)
が消去されます。
• 自動アルゴリズム実行中に , 読出し / リセットコマンドを発行した場合 , リセットコ
マンドは無視されます。実行中のコマンドを続行します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
563
第 24 章 フラッシュメモリ
24.8 自動アルゴリズム実行状態の確認
24.8
MB90990 シリーズ
自動アルゴリズム実行状態の確認
フラッシュメモリでは , 書込み / 消去のフローを自動アルゴリズムで行うため , フ
ラッシュメモリ内部の動作状態や動作完了したことを知らせるハードウェアがあり
ます。この自動アルゴリズムは , 下記のハードウェアシーケンスフラグによって内蔵
フラッシュメモリの動作状態の確認ができます。
■ ハードウェアシーケンスフラグ
ハードウェアシーケンスフラグは , DQ7, DQ6, DQ5, DQ3 の 4 ビットの出力で構成され
ます。それぞれにデータポーリングフラグ (DQ7), トグルビットフラグ (DQ6), タイミン
グリミット超過フラグ (DQ5), セクタ消去タイマフラグ (DQ3) の機能があります。これ
により , 書込み / チップ・セクタ消去終了 , 消去コードライトが有効かの確認をするこ
とができます。
ハードウェアシーケンスフラグを参照するには , コマンドシーケンス ( 「24.7 フラッ
シュメモリ自動アルゴリズム起動方法」の表 24.7-1 を参照してください ) 設定後にフ
ラッシュメモリ内部の対象セクタのアドレスにリードアクセスすることで参照できま
す。表 24.8-1 にハードウェアシーケンスフラグのビット割当てを示します。
表 24.8-1 ハードウェアシーケンスフラグのビット割当て
ビット No.
7
6
5
4
3
2
1
0
ハードウェアシーケンスフラグ
DQ7
DQ6
DQ5
−
DQ3
−
−
−
自動書込み / チップ・セクタ消去が実行中であるかの判断は , ハードウェアシーケンス
フラグを確認するか , フラッシュメモリコントロールレジスタ (FMCS) の RDY ビット
を確認することで書込みが終了しているかを知ることができ , 書込み / 消去終了後は読
出し / リセット状態に戻ります。実際にプログラムを作成する際には , いずれかのフラ
グで自動書込み / 消去終了を確認後にデータの読出しなどの次処理を行ってください。
また , 2 回目以降のセクタ消去コードライトが有効であるかも , ハードウェア・シーケ
ンス・フラグによって確認できます。次項に各ハードウェアシーケンスフラグの説明
を示します。表 24.8-1 に , ハードウェアシーケンスフラグ機能の一覧を示します。
564
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 24 章 フラッシュメモリ
24.8 自動アルゴリズム実行状態の確認
MB90990 シリーズ
表 24.8-2 ハードウェア • シーケンス • フラグ機能一覧
DQ7
DQ6
DQ5
DQ3
DQ7 →
DATA:7
Toggle →
DATA:6
0→
DATA:5
0→
DATA:3
0→1
Toggle
0→1
1
1
Toggle
0
0
0→1
Toggle
0→1
1
セクタ消去ウェイト→消去開始
1→0
Toggle
0
0→1
消去動作→セクタ消去→一時停止
(消去中のセクタ)
0→1
Toggle →
1
0
1→0
セクタ消去一時停止→消去再開
(消去中のセクタ)
1→0
1→
Toggle
0
0→1
DATA:7
DATA:6
DATA:5
DATA:3
DQ7
Toggle
1
0
0
Toggle
1
1
状態
書込み動作→書込み完了
( 書込みアドレス指定時 )
チップ消去→セクタ消去完了
タイムアウト期間
セクタ消去→消去完了
消去
正常動作時
の状態変化
セクタ消去一時停止中
(消去でないセクタ)
書込み動作
異常動作
チップ消去動作
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
565
第 24 章 フラッシュメモリ
24.8 自動アルゴリズム実行状態の確認
MB90990 シリーズ
データポーリングフラグ (DQ7)
24.8.1
データポーリングフラグ (DQ7) は , 自動アルゴリズム実行が進行中もしくは終了状
態であることをデータポーリング機能によって知らせるためのフラグです。
■ データポーリングフラグ (DQ7)
表 24.8-3 と表 24.8-4 に , データポーリングフラグの状態遷移を示します。
表 24.8-3 データポーリングフラグの状態遷移 ( 正常動作時の状態変化 )
動作状態
書込み動作
→完了
チップ / セク
タ消去→
完了
DQ7
DQ7 →
DATA:7
0→1
セクタ消去
ウェイト→
開始
セクタ消去
→消去一時
停止 ( 消去中
のセクタ )
セクタ消去
一時停止→
再開 ( 消去中
のセクタ )
セクタ消去
一時停止中
( 消去中では
ないセクタ )
0
0→1
1→0
DATA:7
表 24.8-4 データポーリングフラグの状態遷移 ( 異常動作時の状態変化 )
動作状態
書込み動作
チップ / セクタ消去動作
DQ7
DQ7
0
● 書込み動作時
自動書込みアルゴリズム実行中にリードアクセスすると,フラッシュメモリはアドレス
の指し示す番地によらず , 最後に書き込まれたデータの bit7 の反転データを出力しま
す。自動書込みアルゴリズム終了時にリードアクセスすると , フラッシュメモリはアド
レスの指し示す番地の読出し値の bit7 を出力します。
● チップ / セクタ消去動作時
チップ消去 / セクタ消去アルゴリズム実行中に , セクタ消去時は , 現在消去しているセ
クタから , チップ消去時はアドレスの指し示す番地に関係なく , リードアクセスすると ,
フラッシュメモリは "0" を出力します。同様に終了時には "1" を出力します。
● セクタ消去一時停止時
セクタ消去一時停止時にリードアクセスすると,フラッシュメモリはアドレスの指し示
す番地が消去中のセクタであれば "1" を出力し , 消去中のセクタでなければアドレスの
指し示す番地の読出し地の bit7(DATA:7) を出力します。トグルビットフラグ (DQ6) と
ともに参照することで , 現在セクタ一時停止状態であるか , どのセクタが消去中である
かの判定が可能です。
<注意事項>
自動アルゴリズム起動時は , 指定したアドレスへのリードアクセスは無視されます。デー
タの読出しは , データポーリングフラグ (DQ7) の終了を受けてほかのビットの出力が可能
となります。このため , 自動アルゴリズム終了後のデータの読出しは , データポーリング
終了を確認したリードアクセスの次に行うようにしてください。
566
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 24 章 フラッシュメモリ
24.8 自動アルゴリズム実行状態の確認
MB90990 シリーズ
24.8.2
トグルビットフラグ (DQ6)
トグルビットフラグ (DQ6) はデータポーリングフラグ (DQ7) と同様に , 主に自動ア
ルゴリズム実行が進行中もしくは終了状態であることをトグルビット機能によって
知らせるためのフラグです。
■ トグルビットフラグ (DQ6)
表 24.8-5 と表 24.8-6 に , トグルビットフラグの状態遷移を示します。
表 24.8-5 トグルビットフラグの状態遷移 ( 正常動作時の状態変化 )
動作状態
書込み動作
→完了
チップ / セク
タ消去→
完了
セクタ消去
ウェイト→
開始
セクタ消去
→消去一時
停止 ( 消去中
のセクタ )
セクタ消去
一時停止→
再開 ( 消去中
のセクタ )
セクタ消去
一時停止中
( 消去中では
ないセクタ )
DQ6
Toggle →
DATA:6
Toggle →
Stop
Toggle
Toggle → 1
1 → Toggle
DATA:6
表 24.8-6 トグルビットフラグの状態遷移 ( 異常動作時の状態変化 )
動作状態
書込み動作
チップ / セクタ消去動作
DQ6
Toggle
Toggle
● 書込み , チップ / セクタ消去時
自動書込みアルゴリズムおよびチップ / セクタ消去アルゴリズム実行中に連続した
リードアクセスを行うと , フラッシュメモリはアドレスの指し示す番地によらず , リー
ドごとに "1" と "0" を交互に出力するトグル状態を出力します。自動書込みアルゴリズ
ムおよびチップ / セクタ消去アルゴリズム終了時に連続したリードアクセスを行うと ,
フラッシュメモリは bit6 のトグル動作を止め , アドレスの指し示す番地の読出し値の
bit6(DATA:6) を出力します。
● セクタ消去一時停止時
セクタ消去一時停止時にリードアクセスすると,フラッシュメモリはアドレスの指し示
す番地が消去中のセクタに属するならば ,"1" を出力します。消去中のセクタに属さな
いのであれば , アドレスの指し示す番地の読出し値の bit6(DATA:6) を出力します。
<注意事項>
CM44-10149-4
書込みの際 , 書き込もうとしているセクタが書換え保護されているセクタの場合は , 約
2μs のトグル動作をした後 , データを書き換えることなくトグル動作を終わります。
消去の際 , 選択されたすべてのセクタが書換え保護されている場合トグルビットは約
100 μs のトグル動作をし , その後データを書き換えないで読出し / リセット状態に戻
ります。
FUJITSU MICROELECTRONICS LIMITED
567
第 24 章 フラッシュメモリ
24.8 自動アルゴリズム実行状態の確認
24.8.3
MB90990 シリーズ
タイミングリミット超過フラグ (DQ5)
タイミングリミット超過フラグ (DQ5) は , 自動アルゴリズムの実行がフラッシュメ
モリ内部に規定された時間 ( 内部パルス回数 ) を超えてしまったことを知らせるフラ
グです。
■ タイミングリミット超過フラグ (DQ5)
表 24.8-7 と表 24.8-8 に , タイミングリミット超過フラグの状態遷移を示します。
表 24.8-7 タイミングリミット超過フラグの状態遷移 ( 正常動作時の状態変化 )
動作状態
書込み動作
→完了
チップ / セク
タ消去→
完了
セクタ消去
ウェイト→
開始
セクタ消去
→消去一時
停止 ( 消去中
のセクタ )
セクタ消去
一時停止→
再開 ( 消去中
のセクタ )
セクタ消去
一時停止中
( 消去中では
ないセクタ )
DQ5
0 → DATA:5
0→1
0
0
0
DATA:5
表 24.8-8 タイミングリミット超過フラグの状態遷移 ( 異常動作時の状態変化 )
動作状態
書込み動作
チップ / セクタ消去動作
DQ5
1
1
● 書込み , チップ / セクタ消去時
書込み , またはチップ / セクタ消去自動アルゴリズム起動後にリードアクセスすると ,
規定時間 ( 書込み / 消去に要する時間 ) 内であれば "0" を , 規定時間を超えてしまって
いる場合は "1" を出力します。これは , 自動アルゴリズムが実行中か終了状態にあるか
とは無関係ですので , 書込み / 消去が成功したか失敗したかの判定が可能です。すなわ
ち , このフラグが "1" を出力したとき , データポーリング機能もしくはトグルビット機
能により自動アルゴリズムがまだ実行中であれば書込みが失敗していると判断できま
す。
例えば , "0" が書き込まれているフラッシュメモリアドレスに "1" を書き込もうとする
とフェイルが発生します。この場合 , フラッシュメモリはロックされ , 自動アルゴリズ
ムは終了しません。まれに "1" が書き込めたように正常終了する場合があります。し
たがって , データポーリングフラグ (DQ7) から有効なデータが出力されません。また ,
トグルビットフラグ (DQ6) はトグル動作を止めず , タイムリミットを超え , タイミング
リミット超過フラグ (DQ5) は "1" を出力します。この状態はフラッシュメモリが不良
ではなく , 正しく使用されなかったということを表しています。この状態が発生したと
きはリセットコマンドを実行してください。
568
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
第 24 章 フラッシュメモリ
24.8 自動アルゴリズム実行状態の確認
MB90990 シリーズ
セクタ消去タイマフラグ (DQ3)
24.8.4
セクタ消去タイマフラグ (DQ3) は , セクタ消去コマンド起動後 , セクタ消去ウェイ
ト期間中であるか否かを知らせるフラグです。
■ セクタ消去タイマフラグ (DQ3)
表 24.8-9 と 表 24.8-10 に , セクタ消去タイマフラグの状態遷移を示します。
表 24.8-9 セクタ消去タイマフラグの状態遷移 ( 正常動作時の状態変化 )
動作状態
書込み動作
→完了
チップ/セクタ
消去→完了
セクタ消去
ウェイト→
開始
セクタ消去
→消去一時
停止 ( 消去中
のセクタ )
セクタ消去
一時停止→
再開 ( 消去中
のセクタ )
セクタ消去
一時停止中
( 消去中でな
いセクタ )
DQ3
0 → DATA:3
1
0→1
1→0
0→1
DATA:3
表 24.8-10 セクタ消去タイマフラグの状態遷移 ( 異常動作時の状態変化 )
動作状態
書込み動作
チップ / セクタ消去動作
DQ3
0
1
● セクタ消去動作時
セクタ消去コマンド起動後にリードアクセスすると , フラッシュメモリはコマンドを
発行したセクタのアドレス信号の指し示す番地によらず , セクタ消去ウェイト期間中
であれば "0" を , セクタ消去ウェイト期間を超えてしまっている場合は "1" を出力しま
す。
データポーリング機能やトグルビット機能により消去アルゴリズムが実行中を示して
いる場合 , このフラグが "1" であれば内部で制御される消去が始まっています。続けて
のセクタ消去コードのライト , または消去一時停止以外のコマンドは , 消去が終了され
るまで無視されます。
このフラグが "0" であればフラッシュメモリは , 追加のセクタ消去コードのライトを受
け付けます。このことを確認するために , 引き続くセクタ消去コードのライトに先立ち
このフラグの状態をチェックしてください。もし 2 回目の状態チェックで "1" であっ
たなら追加セクタの消去コードは受け付けられてない可能性があります。
● セクタ消去動作時
セクタ消去一時停止中にリードアクセスすると , フラッシュメモリはアドレスの指し
示す番地が , 消去中のセクタに属するならば "0" を出力します。消去中のセクタに属さ
ないのであれば , アドレスの指し示す番地の読出し値の bit3(DATA:3) を出力します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
569
第 24 章 フラッシュメモリ
24.9 フラッシュメモリの書込み / 消去
24.9
MB90990 シリーズ
フラッシュメモリの書込み / 消去
自動アルゴリズムを起動するコマンドを発行し , フラッシュメモリに読出し / リセッ
ト , 書込み , チップ消去 , セクタ消去 , セクタ消去一時停止 , セクタ消去再開のそれ
ぞれの動作を行う手順を説明します。
■ フラッシュメモリ書込み / 消去の詳細説明
フラッシュメモリは読出し / リセット , 書込み , チップ消去 , セクタ消去 , セクタ消去
一時停止 , セクタ消去再開の動作がコマンドシーケンス ( 「24.7 フラッシュメモリ自
動アルゴリズム起動方法」の 表 24.7-1 を参照してください ) のバスへの書込みサイク
ルを行うことで自動アルゴリズムを実行することが可能です。それぞれのバスへの書
込みサイクルは必ず続けて行う必要があります。また , 自動アルゴリズムはデータ・
ポーリング機能などで終了時を知ることができます。正常終了後は読出し / リセット
状態に戻ります。
各動作について , 次項より下記の順に示します。
• 読出し / リセット状態にする
• データを書き込む
• 全データを消去する ( チップ全消去 )
• 任意のデータを消去する ( セクタ消去 )
• セクタ消去を一時停止する
• セクタ消去を再開する
570
FUJITSU MICROELECTRONICS LIMITED
CM44-10149-4
MB90990 シリーズ
24.9.1
第 24 章 フラッシュメモリ
24.9 フラッシュメモリの書込み / 消去
フラッシュメモリの読出し / リセット状態
読出し / リセットコマンドを発行し , フラッシュメモリを読出し / リセット状態にす
る手順について説明します。
■ フラッシュメモリの読出し / リセット状態
フラッシュメモリを読出し / リセット状態にするには , コマンドシーケンス表 ( 「24.7
フラッシュメモリ自動アルゴリズム起動方法」の表 24.7-1 を参照してください ) の読出
し / リセットコマンドをフラッシュメモリ内の対象セクタに続けて送ることで実行可
能です。
読出し / リセットコマンドには 1 回と 4 回のバス動作を行う 2 とおりのコマンドシー
ケンスがありますが , これらの本質的な違いはありません。
読出し / リセット状態はフラッシュメモリの初期状態であり , 電源投入時 , コマンドの
正常終了時は常に読出し / リセット状態になります。読出し / リセット状態はほかのコ
マンドの入力待ち状態です。
読出し/リセット状態では通常のリードアクセスでデータを読み出せます。マスクROM
と同様に CPU からのプログラムアクセスが可能です。通常読出しでのデータ読出しに
このコマンドは必要ありません。何らかの理由でコマンドが正常に終了しなかったと
きなど , 自動アルゴリズムを初期化する場合に主にこのコマンドを使用します。
CM44-10149-4
FUJITSU MICROELECTRONICS LIMITED
571
第 24 章 フラッシュメモリ
24.9 フラッシュメモリの書込み / 消去
24.9.2
MB90990 シリーズ
フラッシュメモリへのデータ書込み
書込みコマンドを発行し , フラッシュメモリへデータを書き込む手順について説明し
ます。
■ フラッシュメモリへのデータを書込み
フラッシュメモリのデータ書込み自動アルゴリズムを起動するには,コマンドシーケン
ス表 ( 「24.7 フラッシュメモリ自動アルゴリズム起動方法」の表 24.7-1 を参照してく
ださい ) の書込みコマンドをフラッシュメモリ内の対象セクタに続けて送ることで実
行可能です。4 サイクル目に目的のアドレスへのデータ書込みが終了した時点で自動ア
ルゴリズムが起動され , 自動書込みが開始します。
● アドレス指定方法
書込みデータサイクルの中で指定する書込みアドレスは , 偶数アドレスのみが可能で
す。奇数アドレスを指定すると正しく書き込むことができません。すなわち , 偶数アド
レスへのワードデータ単位での書込みが必要となります。
書込みはどのようなアドレスの順番でも , またセクタの境界を越えても可能ですが , 1
回の書込みコマンドによって書き込まれるデータは 1 ワードのみです。
● データ書込み上の注意
書込みによって , データ "0" をデータ "1" に戻すことはできません。データ "0" にデー
タ "1" を書き込むとデータポーリングアルゴリズム (DQ7), またはトグル動作 (DQ6) が
終了せず , フラッシュメモリ素子が不良と判定され , 書込み規定時間を超えてタイミン
グリミット超過フラグ (DQ5) がエラーと判定するか , あるいは見かけ上データ "1" が書
き込まれたように見えるかのどちらかとなります。しかし , 読出し / リセット状態で
データを読み出すとデータは "0" のままです。消去動作のみが "0" データを "1" にでき
ます。
自動書込み実行中はすべてのコマンドが無視されます。書込み中にハード