8.7MB

本ドキュメントはCypress (サイプレス) 製品に関する情報が記載されております。
富士通マイクロエレクトロニクス
CONTROLLER MANUAL
CM44-10150-1
F2MC®-16LX
16 ビット・マイクロコントローラ
MB90930 Series
ハードウェアマニュアル
F2MC®-16LX
16 ビット・マイクロコントローラ
MB90930 Series
ハードウェアマニュアル
富士通マイクロエレクトロニクスのマイコンを効率的に開発するための情報を下記 URL にてご紹介いたします。
ご採用を検討中 , またはご採用いただいたお客様に有益な情報を公開しています。
http://edevice.fujitsu.com/micom/jp-support/
富士通マイクロエレクトロニクス株式会社
はじめに
■ 本書の目的と対象読者
富士通マイクロエレクトロニクス製品につきまして , 平素よりご愛顧を賜り厚くお礼
申し上げます。
MB90930 シリーズは , ASIC(Application Specific IC) 対応が可能なオリジナル 16 ビッ
ト・ワンチップマイクロコントローラである F2MC-16LX ファミリの汎用品の 1 つと
して開発された製品です。
本書は , 実際にこの半導体を使って製品を設計する技術者の方を対象に , MB90930 シ
リーズの機能や動作について記載しています。本書をご一読ください。
■ 商標
F2MC は FUJITSU Flexible Microcontroller の略で , 富士通マイクロエレクトロニクス株
式会社の登録商標です。
その他の記載されている社名および製品名などの固有名詞は , 各社の商標または登録
商標です。
i
■ 本書の全体構成
本書は , 以下に示す 27 の章および付録から構成されています。
第 1 章 概要
MB90930 シリーズの特長や基本的な仕様について説明します。
第 2 章 CPU
F2MC-16LX CPU について説明します。
第 3 章 割込み
割込みと拡張インテリジェント I/O サービス (EI2OS) について説明します。
第 4 章 リセット
リセットについて説明します。
第 5 章 クロック
クロックについて説明します。
第 6 章 低消費電力モード
低消費電力モードについて説明します。
第 7 章 モード設定
動作モードとメモリアクセスモードについて説明します。
第 8 章 I/O ポート
I/O ポートの機能と動作について説明します。
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 ) の機能
と動作について説明します。
第 10 章 インプットキャプチャ
インプットキャプチャの動作について説明します。
第 11 章 16 ビットリロードタイマ
16 ビットリロードタイマの機能と動作について説明します。
第 12 章 PPG タイマ
PPG タイマの動作について説明します。
第 13 章 リアルタイム時計タイマ
リアルタイム時計タイマの機能と動作について説明します。
第 14 章 遅延割込み発生モジュール
遅延割込み発生モジュールの機能と動作について説明します。
第 15 章 DTP/ 外部割込み回路
DTP/ 外部割込み回路の機能と動作について説明します。
第 16 章 8/10 ビット A/D コンバータ
8/10 ビット A/D コンバータの機能と動作について説明します。
第 17 章 LIN-UART
LIN-UART の機能と動作について説明します。
ii
第 18 章 CAN コントローラ
CAN コントローラの概要と機能について説明します。
第 19 章 LCD コントローラ / ドライバ
LCD コントローラ / ドライバの機能と動作について説明します。
第 20 章 低電圧 /CPU 動作 検出リセット回路
低電圧 /CPU 動作検出リセット回路の機能と動作について説明します。
第 21 章 ステッピングモータコントローラ
ステッピングモータコントローラの機能と動作について説明します。
第 22 章 サウンドジェネレータ
サウンドジェネレータの機能と動作について説明します。
第 23 章 ROM ミラー機能選択 モジュール
ROM ミラー機能選択モジュールについて説明します。
第 24 章 1M ビットフラッシュメモリ
1M ビットフラッシュメモリの機能や動作について説明します。
第 25 章 フラッシュメモリ品 シリアル書込み接続例
横河ディジタルコンピュータ株式会社製 AF220/AF210/AF120/AF110 フラッシュマ
イコンプログラマを使用した場合のシリアル書込みの接続例について説明します。
第 26 章 ROM セキュリティ機能
ROM セキュリティ機能について説明します。
第 27 章 アドレス一致検出機能
アドレス一致検出機能の機能と動作について説明します。
付録
I/O マップ , 命令などを示します。
iii
•
•
•
•
•
•
•
本資料の記載内容は , 予告なしに変更することがありますので , ご用命の際は営業部門にご確認くださ
い。
本資料に記載された動作概要や応用回路例は , 半導体デバイスの標準的な動作や使い方を示したもので ,
実際に使用する機器での動作を保証するものではありません。したがいまして , これらを使用するにあ
たってはお客様の責任において機器の設計を行ってください。これらの使用に起因する損害などについ
ては , 当社はその責任を負いません。
本資料に記載された動作概要・回路図を含む技術情報は , 当社もしくは第三者の特許権 , 著作権等の知的
財産権やその他の権利の使用権または実施権の許諾を意味するものではありません。また , これらの使用
について , 第三者の知的財産権やその他の権利の実施ができることの保証を行うものではありません。し
たがって , これらの使用に起因する第三者の知的財産権やその他の権利の侵害について , 当社はその責任
を負いません。
本資料に記載された製品は , 通常の産業用 , 一般事務用 , パーソナル用 , 家庭用などの一般的用途に使用
されることを意図して設計・製造されています。極めて高度な安全性が要求され , 仮に当該安全性が確保
されない場合 , 社会的に重大な影響を与えかつ直接生命・身体に対する重大な危険性を伴う用途(原子力
施設における核反応制御 , 航空機自動飛行制御 , 航空交通管制 , 大量輸送システムにおける運行制御 , 生
命維持のための医療機器 , 兵器システムにおけるミサイル発射制御をいう), ならびに極めて高い信頼性
が要求される用途(海底中継器 , 宇宙衛星をいう)に使用されるよう設計・製造されたものではありませ
ん。したがって , これらの用途にご使用をお考えのお客様は , 必ず事前に営業部門までご相談ください。
ご相談なく使用されたことにより発生した損害などについては , 責任を負いかねますのでご了承くださ
い。
半導体デバイスはある確率で故障が発生します。当社半導体デバイスが故障しても , 結果的に人身事故 ,
火災事故 , 社会的な損害を生じさせないよう , お客様は , 装置の冗長設計 , 延焼対策設計 , 過電流防止対策
設計 , 誤動作防止設計などの安全設計をお願いします。
本資料に記載された製品を輸出または提供する場合は , 外国為替及び外国貿易法および米国輸出管理関
連法規等の規制をご確認の上 , 必要な手続きをおとりください。
本書に記載されている社名および製品名などの固有名詞は , 各社の商標または登録商標です。
Copyright ©2009 FUJITSU MICROELECTRONICS LIMITED All rights reserved.
iv
目次
第1章
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
第2章
概要 ............................................................................................................ 1
製品概要 ................................................................................................................................. 2
特長 ........................................................................................................................................ 3
ブロックダイヤグラム............................................................................................................ 6
外形寸法図.............................................................................................................................. 7
端子配列図.............................................................................................................................. 8
端子機能説明 .......................................................................................................................... 9
入出力回路形式 .................................................................................................................... 18
デバイスの取扱いに関する注意事項 .................................................................................... 23
CPU.......................................................................................................... 27
2.1 CPU の概要 .......................................................................................................................... 28
2.2 メモリ空間............................................................................................................................ 29
2.3 メモリマップ ........................................................................................................................ 31
2.4 アドレッシング .................................................................................................................... 33
2.4.1
リニア方式によるアドレス指定 ................................................................................. 34
2.4.2
バンク方式によるアドレス指定 ................................................................................. 35
2.5 多バイト長データのメモリ上の配置 .................................................................................... 37
2.6 レジスタ ............................................................................................................................... 39
2.7 専用レジスタ ........................................................................................................................ 40
2.7.1
アキュムレータ (A)..................................................................................................... 42
2.7.2
スタックポインタ (USP, SSP)................................................................................... 45
2.7.3
プロセッサステータス (PS) ....................................................................................... 47
2.7.4
プログラムカウンタ (PC)........................................................................................... 51
2.7.5
ダイレクトページレジスタ (DPR) ............................................................................. 52
2.7.6
バンクレジスタ (PCB, DTB, USB, SSB, ADB) .......................................................... 53
2.8 汎用レジスタ ........................................................................................................................ 54
2.9 プリフィックスコード.......................................................................................................... 56
第3章
割込み ...................................................................................................... 61
3.1 割込みの概要 ........................................................................................................................ 62
3.2 割込み要因と割込みベクタ................................................................................................... 64
3.3 割込み制御レジスタと周辺機能 ........................................................................................... 66
3.3.1
割込み制御レジスタ (ICR00 ∼ ICR15) ...................................................................... 67
3.3.2
割込み制御レジスタの機能 ........................................................................................ 69
3.4 ハードウェア割込み ............................................................................................................. 72
3.4.1
ハードウェア割込みの動作 ........................................................................................ 75
3.4.2
ハードウェア割込みの動作フロー.............................................................................. 77
3.4.3
ハードウェア割込み使用手順..................................................................................... 78
3.4.4
多重割込み ................................................................................................................. 79
3.4.5
ハードウェア割込み処理時間..................................................................................... 81
3.5 ソフトウェア割込み ............................................................................................................. 82
3.6 拡張インテリジェント I/O サービス (EI2OS) による割込み................................................. 84
3.6.1
拡張インテリジェント I/O サービス (EI2OS) ディスクリプタ (ISD).......................... 86
v
拡張インテリジェント I/O サービス (EI2OS) ディスクリプタ (ISD) の
各レジスタ ................................................................................................................. 87
3.6.3
拡張インテリジェント I/O サービス (EI2OS) の動作 ................................................. 90
3.6.4
拡張インテリジェント I/O サービス (EI2OS) の使用手順 .......................................... 91
3.6.5
拡張インテリジェント I/O サービス (EI2OS) 処理時間.............................................. 92
3.7 未定義命令の実行による例外処理割込み ............................................................................. 94
3.8 割込み処理のスタック動作................................................................................................... 95
3.9 割込み処理のプログラム例................................................................................................... 97
3.6.2
第4章
4.1
4.2
4.3
4.4
4.5
4.6
第5章
リセット................................................................................................. 103
リセットの概要 .................................................................................................................. 104
リセット要因と発振安定待ち時間...................................................................................... 107
外部リセット端子 ............................................................................................................... 109
リセット動作 ...................................................................................................................... 110
リセット要因ビット ........................................................................................................... 112
リセットによる各端子の状態 ............................................................................................. 116
クロック................................................................................................. 117
5.1 クロック ............................................................................................................................. 118
5.2 クロック発生部のブロックダイヤグラム ........................................................................... 120
5.2.1
クロック発生部のレジスタ ...................................................................................... 123
5.3 クロック選択レジスタ (CKSCR)........................................................................................ 124
5.4 PLL/ サブクロック制御レジスタ (PSCCR) ........................................................................ 128
5.5 クロックモード .................................................................................................................. 130
5.6 発振安定待ち時間 ............................................................................................................... 134
5.7 振動子および外部クロックの接続...................................................................................... 135
第6章
低消費電力モード .................................................................................. 137
6.1 低消費電力モードの概要 .................................................................................................... 138
6.2 低消費電力制御回路のブロックダイヤグラム.................................................................... 141
6.3 低消費電力モード制御レジスタ (LPMCR) ......................................................................... 143
6.4 CPU 間欠動作モード .......................................................................................................... 146
6.5 スタンバイモード ............................................................................................................... 147
6.5.1
スリープモード ........................................................................................................ 149
6.5.2
タイムベースタイマモード ...................................................................................... 151
6.5.3
時計モード ............................................................................................................... 153
6.5.4
ストップモード ........................................................................................................ 155
6.6 状態遷移図.......................................................................................................................... 158
6.7 スタンバイモード , リセット時の端子状態 ........................................................................ 160
6.8 低消費電力モード使用上の注意 ......................................................................................... 162
第7章
7.1
7.2
7.3
第8章
8.1
8.2
モード設定 ............................................................................................. 165
モード設定.......................................................................................................................... 166
モード端子 (MD2 ∼ MD0).................................................................................................. 167
モードデータ ...................................................................................................................... 168
I/O ポート............................................................................................... 171
I/O ポート ........................................................................................................................... 172
レジスタと外部兼用端子の割当て...................................................................................... 175
vi
8.3 ポート 0 .............................................................................................................................. 176
8.3.1
ポート 0 のレジスタ (PDR0, DDR0) ........................................................................ 178
8.3.2
ポート 0 の動作説明 ................................................................................................. 179
8.4 ポート 1 .............................................................................................................................. 181
8.4.1
ポート 1 のレジスタ (PDR1, DDR1) ........................................................................ 183
8.4.2
ポート 1 の動作説明 ................................................................................................. 184
8.5 ポート 2 .............................................................................................................................. 186
8.5.1
ポート 2 のレジスタ (PDR2, DDR2) ........................................................................ 188
8.5.2
ポート 2 の動作説明 ................................................................................................. 189
8.6 ポート 3 .............................................................................................................................. 191
8.6.1
ポート 3 のレジスタ (PDR3, DDR3) ........................................................................ 193
8.6.2
ポート 3 の動作説明 ................................................................................................. 194
8.7 ポート 4 .............................................................................................................................. 196
8.7.1
ポート 4 のレジスタ (PDR4, DDR4) ........................................................................ 198
8.7.2
ポート 4 の動作説明 ................................................................................................. 199
8.8 ポート 5 .............................................................................................................................. 201
8.8.1
ポート 5 のレジスタ (PDR5, DDR5) ........................................................................ 204
8.8.2
ポート 5 の動作説明 ................................................................................................. 205
8.9 ポート 6 .............................................................................................................................. 207
8.9.1
ポート 6 のレジスタ (PDR6, DDR6, ADER6) .......................................................... 209
8.9.2
ポート 6 の動作説明 ................................................................................................. 210
8.10 ポート 7 .............................................................................................................................. 212
ポート 7 のレジスタ (PDR7, DDR7, ADER7) .......................................................... 214
8.10.1
8.10.2
ポート 7 の動作説明 ................................................................................................. 216
8.11 ポート 8 .............................................................................................................................. 218
8.11.1
ポート 8 のレジスタ (PDR8, DDR8, ADER8) .......................................................... 221
8.11.2
ポート 8 の動作説明 ................................................................................................. 223
8.12 ポート 9 .............................................................................................................................. 225
8.12.1
ポート 9 のレジスタ (PDR9, DDR9) ........................................................................ 227
8.12.2
ポート 9 の動作説明 ................................................................................................. 228
8.13 ポート C ............................................................................................................................. 230
8.13.1
ポート C のレジスタ (PDRC, DDRC) ...................................................................... 233
8.13.2
ポート C の動作説明 ................................................................................................ 234
8.14 ポート D ............................................................................................................................. 237
8.14.1
ポート D のレジスタ (PDRD, DDRD) ...................................................................... 239
8.14.2
ポート D の動作説明 ................................................................................................ 240
8.15 ポート E.............................................................................................................................. 242
8.15.1
ポート E のレジスタ (PDRE, DDRE) ....................................................................... 244
8.15.2
ポート E の動作説明 ................................................................................................ 245
8.16 入力レベル選択レジスタ (PIL0 ∼ PIL2)............................................................................. 247
8.17 I/O ポートのプログラム例 .................................................................................................. 250
第9章
ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ
( サブクロック用 ).................................................................................. 251
9.1 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマの概要 ..................................... 252
9.2 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマのブロックダイヤグラム ........ 253
9.3 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマのレジスタ一覧....................... 254
9.3.1
ウォッチドッグタイマ制御レジスタ (WDTC).......................................................... 255
9.3.2
タイムベースタイマ制御レジスタ (TBTC)............................................................... 257
vii
9.3.3
時計タイマ制御レジスタ (WTC) .............................................................................. 259
9.4 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマの動作 ..................................... 261
9.4.1
ウォッチドッグタイマの動作................................................................................... 262
9.4.2
タイムベースタイマの動作 ...................................................................................... 264
9.4.3
時計タイマの動作..................................................................................................... 267
9.5 ウォッチドッグタイマ / タイムベースタイマ使用上の注意 ............................................... 268
9.6 ウォッチドッグタイマ / タイムベースタイマのプログラム例 ........................................... 271
第 10 章
インプットキャプチャ ........................................................................... 273
10.1 インプットキャプチャの概要 ............................................................................................. 274
10.1.1
インプットキャプチャのブロックダイヤグラム ...................................................... 275
10.2 インプットキャプチャのレジスタ一覧............................................................................... 277
10.2.1
インプットキャプチャのレジスタ詳細説明 ............................................................. 280
10.2.2
インプットキャプチャエッジレジスタ (ICE) ........................................................... 283
10.2.3
16 ビットフリーランタイマのレジスタ詳細説明..................................................... 287
10.3 動作説明 ............................................................................................................................. 291
10.3.1
16 ビットインプットキャプチャ.............................................................................. 292
10.3.2
16 ビットフリーランタイマ ..................................................................................... 293
第 11 章
16 ビットリロードタイマ ...................................................................... 295
11.1 16 ビットリロードタイマの概要 ........................................................................................ 296
11.2 16 ビットリロードタイマの構成 ........................................................................................ 299
11.3 16 ビットリロードタイマの端子 ........................................................................................ 301
11.4 16 ビットリロードタイマのレジスタ................................................................................. 303
11.4.1
タイマ制御ステータスレジスタ上位 (TMCSR0H ∼ TMCSR3H) ............................ 304
11.4.2
タイマ制御ステータスレジスタ下位 (TMCSR0L ∼ TMCSR3L).............................. 306
11.4.3
16 ビットタイマレジスタ (TMR0 ∼ TMR3) ............................................................ 308
11.4.4
16 ビットリロードレジスタ (TMRLR0 ∼ TMRLR3) ............................................... 309
11.5 16 ビットリロードタイマの割込み .................................................................................... 310
11.6 16 ビットリロードタイマの動作説明................................................................................. 311
11.6.1
内部クロックモード ( リロードモード )................................................................... 313
11.6.2
内部クロックモード ( ワンショットモード )............................................................ 315
11.6.3
イベントカウントモード .......................................................................................... 317
11.7 16 ビットリロードタイマ使用上の注意 ............................................................................. 319
11.8 16 ビットリロードタイマのプログラム例.......................................................................... 320
第 12 章
PPG タイマ ............................................................................................ 323
12.1 PPG タイマの概要.............................................................................................................. 324
12.2 PPG タイマのブロックダイヤグラム................................................................................. 325
12.3 PPG タイマのレジスタ ...................................................................................................... 326
12.3.1
PPG タイマのレジスタ一覧 ..................................................................................... 327
12.3.2
PPG タイマのレジスタ詳細説明.............................................................................. 329
12.4 PPG タイマの割込み .......................................................................................................... 336
12.5 PPG タイマの動作説明 ...................................................................................................... 338
12.5.1
PWM 動作................................................................................................................. 339
12.5.2
ワンショット動作..................................................................................................... 341
12.5.3
割込み要因とタイミング .......................................................................................... 342
viii
第 13 章
リアルタイム時計タイマ........................................................................ 343
13.1 リアルタイム時計タイマの概要 ......................................................................................... 344
13.2 リアルタイム時計タイマのレジスタ .................................................................................. 345
13.2.1
リアルタイム時計タイマコントロールレジスタ ...................................................... 347
13.2.2
サブ秒データレジスタ ............................................................................................. 349
13.2.3
秒 / 分 / 時間 / 日数データレジスタ .......................................................................... 350
13.3 リアルタイム時計タイマの割込み...................................................................................... 352
第 14 章
遅延割込み発生モジュール .................................................................... 353
14.1 遅延割込み発生モジュールの概要...................................................................................... 354
14.2 遅延割込み発生モジュールの動作...................................................................................... 355
第 15 章
DTP/ 外部割込み回路 ............................................................................. 357
15.1 DTP/ 外部割込み回路の概要............................................................................................... 358
15.2 DTP/ 外部割込み回路の構成............................................................................................... 360
15.3 DTP/ 外部割込み回路の端子............................................................................................... 362
15.4 DTP/ 外部割込み回路のレジスタ ....................................................................................... 363
15.4.1
外部割込み要因レジスタ (EIRR) .............................................................................. 364
15.4.2
外部割込み許可レジスタ (ENIR) .............................................................................. 365
15.4.3
外部割込みレベル設定レジスタ (ELVRH/ELVRL) ................................................... 366
15.5 DTP/ 外部割込み回路の動作説明 ....................................................................................... 367
15.5.1
外部割込み機能 ........................................................................................................ 370
15.5.2
DTP 機能 .................................................................................................................. 371
15.6 DTP/ 外部割込み回路使用上の注意.................................................................................... 372
15.7 DTP/ 外部割込み回路のプログラム例 ................................................................................ 374
第 16 章
8/10 ビット A/D コンバータ................................................................... 377
16.1 8/10 ビット A/D コンバータの概要 .................................................................................... 378
16.2 8/10 ビット A/D コンバータのブロックダイヤグラム........................................................ 380
16.3 8/10 ビット A/D コンバータの構成 .................................................................................... 383
16.3.1
A/D 制御ステータスレジスタ上位 (ADCS1)............................................................. 386
16.3.2
A/D 制御ステータスレジスタ下位 (ADCS0)............................................................. 390
16.3.3
A/D データレジスタ (ADCR0/ADCR1)..................................................................... 392
16.3.4
A/D セッティングレジスタ (ADSR0/ADSR1) .......................................................... 393
16.3.5
アナログ入力許可レジスタ (ADER6, 7, 8) ............................................................... 397
16.4 8/10 ビット A/D コンバータの割込み................................................................................. 399
16.5 8/10 ビット A/D コンバータの動作説明 ............................................................................. 400
16.5.1
単発変換モード ........................................................................................................ 401
16.5.2
連続変換モード ........................................................................................................ 403
16.5.3
停止変換モード ........................................................................................................ 405
16.5.4
EI2OS 機能を使用した変換動作............................................................................... 407
16.5.5
A/D 変換データ保護機能 .......................................................................................... 408
16.6 8/10 ビット A/D コンバータ使用上の注意.......................................................................... 412
第 17 章
17.1
17.2
17.3
17.4
LIN-UART .............................................................................................. 413
LIN-UART の概要 ............................................................................................................... 414
LIN-UART の構成 ............................................................................................................... 417
LIN-UART の端子 ............................................................................................................... 422
LIN-UART のレジスタ ........................................................................................................ 424
ix
17.4.1
シリアル制御レジスタ (SCR0 ∼ SCR3).................................................................. 425
17.4.2
LIN-UART シリアルモードレジスタ (SMR) ............................................................. 427
17.4.3
シリアルステータスレジスタ (SSR0 ∼ SSR3) ....................................................... 429
17.4.4
受信データレジスタ / 送信データレジスタ (RDR0 ∼ RDR3/TDR0 ∼ TDR3) ........ 432
17.4.5
拡張ステータス制御レジスタ (ESCR0 ∼ ESCR3) .................................................. 434
17.4.6
拡張通信制御レジスタ (ECCR0 ∼ ECCR3) ............................................................ 436
17.4.7
ボーレートジェネレータレジスタ 0, 1(BGRn0/BGRn1).......................................... 438
17.5 LIN-UART の割込み............................................................................................................ 439
17.5.1
受信割込み発生とフラグセットのタイミング.......................................................... 442
17.5.2
送信割込み発生とフラグセットのタイミング.......................................................... 444
17.6 LIN-UART のボーレート..................................................................................................... 446
17.6.1
ボーレート設定 ........................................................................................................ 448
17.6.2
リロードカウンタ..................................................................................................... 451
17.7 LIN-UART の動作 ............................................................................................................... 453
17.7.1
非同期モード ( 動作モード 0, 1) の動作 ................................................................... 455
17.7.2
同期モード ( 動作モード 2) の動作........................................................................... 459
17.7.3
LIN 機能 ( 動作モード 3) の動作 ............................................................................... 462
17.7.4
シリアル端子直接アクセス ...................................................................................... 466
17.7.5
双方向通信機能 ( ノーマルモード ) .......................................................................... 467
17.7.6
マスタ / スレーブ型通信機能 ( マルチプロセッサモード )....................................... 469
17.7.7
LIN 通信機能............................................................................................................. 472
17.7.8
LIN-UART の LIN 通信フローチャート例 ( 動作モード 3) ........................................ 473
17.8 LIN-UART 使用上の注意..................................................................................................... 475
第 18 章
CAN コントローラ ................................................................................. 477
18.1 CAN コントローラの特長................................................................................................... 478
18.2 CAN コントローラのブロックダイヤグラム ...................................................................... 479
18.3 CAN コントローラのレジスタ分類 .................................................................................... 480
18.3.1
制御ステータスレジスタ (CSR) ............................................................................... 490
18.3.2
ラストイベント表示レジスタ (LEIR) ....................................................................... 494
18.3.3
受信 / 送信エラーカウンタ (RTEC) .......................................................................... 496
18.3.4
ビットタイミングレジスタ (BTR)............................................................................ 497
18.3.5
メッセージバッファ有効レジスタ (BVALR) ............................................................ 500
18.3.6
IDE レジスタ (IDER) ................................................................................................ 501
18.3.7
送信要求レジスタ (TREQR)..................................................................................... 502
18.3.8
送信 RTR レジスタ (TRTRR) ................................................................................... 503
18.3.9
リモートフレーム受信待機レジスタ (RFWTR)........................................................ 504
18.3.10
送信解除レジスタ (TCANR) ..................................................................................... 505
18.3.11
送信完了レジスタ (TCR) .......................................................................................... 506
18.3.12
送信割込み許可レジスタ (TIER) .............................................................................. 507
18.3.13
受信完了レジスタ (RCR).......................................................................................... 508
18.3.14
リモート要求受信レジスタ (RRTRR) ...................................................................... 509
18.3.15
受信オーバランレジスタ (ROVRR).......................................................................... 510
18.3.16
受信割込み許可レジスタ (RIER) .............................................................................. 511
18.3.17
アクセプタンスマスク選択レジスタ (AMSR) .......................................................... 512
18.3.18
アクセプタンスマスクレジスタ 0 および 1 (AMR0/AMR1) ..................................... 514
18.3.19
メッセージバッファ ................................................................................................. 516
18.3.20
ID レジスタ x (x=0 ∼ 15) (IDRx).............................................................................. 517
18.3.21
DLC レジスタ x (x=0 ∼ 15) (DLCRx)....................................................................... 521
x
18.3.22
データレジスタ x (x=0 ∼ 15) (DTRx) ...................................................................... 522
18.4 CAN コントローラの送信................................................................................................... 524
18.5 CAN コントローラの受信................................................................................................... 527
18.6 CAN コントローラの使用方法............................................................................................ 531
18.7 メッセージバッファ (x) による送信方法 ............................................................................ 533
18.8 メッセージバッファ (x) による受信方法 ............................................................................ 535
18.9 マルチレベルメッセージバッファの構成の決定 ................................................................ 537
18.10 CAN ウェイクアップ機能................................................................................................... 539
18.11 CAN コントローラ使用上の注意 ........................................................................................ 540
18.12 CAN プログラム例.............................................................................................................. 541
第 19 章
LCD コントローラ / ドライバ ................................................................ 543
19.1 LCD コントローラ / ドライバの概要 .................................................................................. 544
19.2 LCD コントローラ / ドライバの構成 .................................................................................. 545
19.2.1
LCD コントローラ / ドライバの内部分割抵抗 ......................................................... 547
19.2.2
LCD コントローラ / ドライバの外部分割抵抗 ......................................................... 549
19.3 LCD コントローラ / ドライバの端子 .................................................................................. 551
19.4 LCD コントローラ / ドライバのレジスタ........................................................................... 553
19.4.1
LCD 制御レジスタ下位 (LCRL) ................................................................................ 554
19.4.2
LCD 制御レジスタ上位 (LCRH) ............................................................................... 556
19.4.3
LCD 出力制御レジスタ 2/1 (LOCR2/LOCR1) .......................................................... 558
19.4.4
LCD 出力制御レジスタ 3 (LOCR3) .......................................................................... 561
19.5 LCD コントローラ / ドライバの表示用 RAM...................................................................... 562
19.6 LCD コントローラ / ドライバの動作 .................................................................................. 566
19.6.1
LCD コントローラ / ドライバ動作時の出力波形 (1/2 デューティ ).......................... 568
19.6.2
LCD コントローラ / ドライバ動作時の出力波形 (1/3 デューティ ).......................... 571
19.6.3
LCD コントローラ / ドライバ動作時の出力波形 (1/4 デューティ ).......................... 574
第 20 章
20.1
20.2
20.3
20.4
20.5
20.6
低電圧 /CPU 動作検出リセット回路 ...................................................... 577
低電圧 /CPU 動作検出リセット回路の概要........................................................................ 578
低電圧 /CPU 動作検出リセット回路の構成........................................................................ 580
低電圧 /CPU 動作検出リセット回路のレジスタ................................................................. 582
低電圧 /CPU 動作検出リセット回路の動作........................................................................ 584
低電圧 /CPU 動作検出リセット回路使用上の注意 ............................................................. 585
低電圧 /CPU 動作検出リセット回路のプログラム例 ......................................................... 586
第 21 章
ステッピングモータコントローラ ......................................................... 587
21.1 ステッピングモータコントローラの概要 ........................................................................... 588
21.2 ステッピングモータコントローラのレジスタ.................................................................... 589
21.2.1
PWM 制御レジスタ .................................................................................................. 590
21.2.2
PWM1, PWM2 コンペアレジスタ ............................................................................ 592
21.2.3
PWM1, PWM2 選択レジスタ ................................................................................... 594
21.3 ステッピングモータコントローラの動作 ........................................................................... 597
21.4 ステッピングモータコントローラ使用上の注意 ................................................................ 599
第 22 章
サウンドジェネレータ ........................................................................... 601
22.1 サウンドジェネレータの概要 ............................................................................................. 602
22.2 サウンドジェネレータのレジスタ...................................................................................... 603
22.2.1
サウンド制御レジスタ (SGCRH0/SGCRH1, SGCRL0/SGCRL1) ........................... 604
xi
22.2.2
22.2.3
22.2.4
22.2.5
第 23 章
周波数データレジスタ (SGFR0/SGFR1) ................................................................. 606
振幅データレジスタ (SGAR0/SGAR1) .................................................................... 607
デクリメントグレードレジスタ (SGDR0/SGDR1) .................................................. 608
トーンカウントレジスタ (SGTR0/SGTR1).............................................................. 609
ROM ミラー機能選択モジュール........................................................... 611
23.1 ROM ミラー機能選択モジュールの概要 ............................................................................ 612
23.2 ROM ミラー機能選択レジスタ (ROMM) ............................................................................ 613
第 24 章
1M ビットフラッシュメモリ.................................................................. 617
24.1 1M ビットフラッシュメモリの概要 ................................................................................... 618
24.2 1M ビットフラッシュメモリのセクタ構成......................................................................... 619
24.3 フラッシュメモリコントロールステータスレジスタ (FMCS) ........................................... 620
24.4 フラッシュメモリ書込みコントロールレジスタ (FWR0/FWR1) ....................................... 623
24.5 フラッシュメモリの自動アルゴリズム起動方法 ................................................................ 628
24.6 自動アルゴリズム実行状態の確認...................................................................................... 629
24.6.1
データポーリングフラグ (DQ7) ............................................................................... 630
24.6.2
トグルビットフラグ (DQ6) ...................................................................................... 631
24.6.3
タイミングリミット超過フラグ (DQ5) .................................................................... 632
24.6.4
セクタ消去タイマフラグ (DQ3) ............................................................................... 633
24.7 フラッシュメモリの書込み / 消去....................................................................................... 634
24.7.1
フラッシュメモリを読出し / リセット状態にする方法 ............................................ 635
24.7.2
フラッシュメモリにデータを書き込む方法 ............................................................. 636
24.7.3
フラッシュメモリの全データを消去する方法 ( チップ消去 ) .................................. 638
24.7.4
フラッシュメモリの任意のデータを消去する方法 ( セクタ消去 ) ........................... 639
24.7.5
フラッシュメモリのセクタ消去を一時停止する方法............................................... 641
24.7.6
フラッシュメモリのセクタ消去を再開する方法 ...................................................... 642
24.8 フラッシュセキュリティ機能 ............................................................................................. 643
第 25 章
フラッシュメモリ品シリアル書込み接続例 ........................................... 645
25.1 シリアル書込み接続の基本構成 ......................................................................................... 646
25.2 シングルチップモード時の接続例 ( ユーザ電源使用時 ).................................................... 650
25.3 フラッシュマイコンプログラマとの接続例 ( ユーザ電源使用時 ) ..................................... 652
第 26 章
ROM セキュリティ機能 ......................................................................... 655
26.1 ROM セキュリティ機能の概要........................................................................................... 656
第 27 章
アドレス一致検出機能 ........................................................................... 657
27.1 アドレス一致検出機能の概要 ............................................................................................. 658
27.2 アドレス一致検出機能の応用例 ......................................................................................... 661
27.2.1
プログラムミスの修正例 .......................................................................................... 663
27.2.2
修正処理例 ............................................................................................................... 664
付録
付録 A
付録 B
B.1
B.2
B.3
............................................................................................................... 667
I/O マップ ...................................................................................................................... 668
命令 ............................................................................................................................... 698
命令の種類 .................................................................................................................. 699
アドレッシング ........................................................................................................... 700
直接アドレッシング.................................................................................................... 702
xii
B.4
B.5
B.6
B.7
B.8
B.9
索引
間接アドレッシング.................................................................................................... 709
実行サイクル数 ........................................................................................................... 716
実効アドレスフィールド ............................................................................................ 718
命令一覧表の読み方.................................................................................................... 720
F2MC-16LX 命令一覧表 .............................................................................................. 723
命令マップ .................................................................................................................. 737
............................................................................................................... 759
xiii
xiv
本版での主な変更内容
ページ
―
変更内容(詳細は本文を参照してください。
)
本ハードウェアマニュアルが初版となります。
xv
xvi
第1章
概要
MB90930 シリーズの特長や基本的な仕様について説
明します。
1.1 製品概要
1.2 特長
1.3 ブロックダイヤグラム
1.4 外形寸法図
1.5 端子配列図
1.6 端子機能説明
1.7 入出力回路形式
1.8 デバイスの取扱いに関する注意事項
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
1
第 1 章 概要
1.1
MB90930 シリーズ
製品概要
1.1
MB90930 シリーズの製品概要を示します。
■ 製品概要
表 1.1-1 に MB90930 シリーズの製品概要を示します。
表 1.1-1 MB90930 シリーズ製品概要
特長
MB90V930-102 MB90V930-101 MB90F931
品種構成
評価用品
MB90F931S
MB90931
マスク ROM 品
フラッシュメモリ品
F2MC-16LX CPU
CPU
クロック
1 系統 /2 系統 ( オプションにて選択 , 1 系統品は X0A/X1A はポート )
システムクロック
オンチップ PLL クロック逓倍方式
( × 1, × 2, × 3, × 4, × 6, × 8, PLL 停止時 1/2)
最小命令実行時間 :31.25ns(4MHz 原発振 8 逓倍 )
サブクロック用端子
(X0A, X1A)
あり
なし
あり
なし
あり
ROM
外部
128K バイト
RAM
30K バイト
8K バイト
なし
あり
PGA-299
LQFP-120
なし
-
低電圧 /CPU 動作検出
リセット
パッケージ
エミュレータ専用電源
2
MB90931S
FUJITSU MICROELECTRONICS LIMITED
なし
CM44-10150-1
第 1 章 概要
1.2
MB90930 シリーズ
1.2
特長
MB90930 シリーズの特長を示します。
■ 特長
表 1.2-1 に MB90930 シリーズの特長を示します。
表 1.2-1 MB90930 シリーズの特長 (1 / 3)
機能
特長
16 ビットリロード
タイマ (4 チャネル )
16 ビットリロードタイマ動作 ( トグル出力 , ワンショット出力選択
可能 ) イベントカウント機能を選択可能です。
16 ビットフリーラン
タイマ (1 チャネル )
オーバフロー時に割込み信号を出力します。
動作クロック周波数 :
fsys, fsys/2, fsys/4, fsys/8, fsys/16, fsys/32, fsys/64, fsys/128
(fsys = システムクロック周波数 )
16 ビットインプット
キャプチャ
(8 チャネル )
立上りエッジ , 立下りエッジまたはその両方を検出します。
16 ビットキャプチャレジスタ 8 本
端子入力のエッジ検出で , 16 ビットフリーランタイマのカウンタ値
をラッチして割込み要求を発生します。
PPG タイマ
(6 チャネル )
出力端子 3 本 , 外部トリガ入力端子 1 本
動作クロック周波数 : FCP, FCP/22, FCP/24, FCP/26
LIN UART
(4 チャネル )
専用リロードタイマによって広範囲の通信速度設定
LIN 機能は LIN マスタおよび LIN スレーブとして使用可能
LCD コントローラ
(1 チャネル )
セグメントドライバおよびコモンドライバは , LCD パネル ( 液晶表
示 ) を直接駆動することができます。
A/D コンバータ
(24 チャネル )
CM44-10150-1
10 ビットまたは 8 ビットの分解能 × 24 チャネル ( 入力マルチプ
レックス )
変換時間 : 3 μs 以下 (FCP=32MHz 時 )
外部トリガ起動可能 (P50/INT0/ADTG)
内部タイマによる起動可能 (16 ビットリロードタイマ 1)
FUJITSU MICROELECTRONICS LIMITED
3
第 1 章 概要
1.2
MB90930 シリーズ
表 1.2-1 MB90930 シリーズの特長 (2 / 3)
機能
特長
CAN 仕様バージョン 2.0 パート A およびパート B に準拠します。
エラー時に自動再送します。
リモートフレームに応答して自動伝送します。
データおよび ID 用の順位付けされた 16 個のメッセージバッファの
複数メッセージをサポートします。
アクセプタンスフィルタの柔軟な構成 :
全ビットコンペア / 全ビットマスク /2 個の部分ビットマスク
最高 1Mbps までサポートします。
CAN ウェイクアップ機能
CAN
(1 チャネル )
( 注意事項 ) CAN1 は送受信端子および割込み制御レジスタを共有し
ており , 同時に送受信を行えるのは 2 チャネルとなりま
す。これらの CAN は疑似的に 32 メッセージバッファ
の CAN × 2 チャネルとしてご使用いただけます。
ステッピングモータコ
ントローラ
(4 チャネル )
サウンドジェネレータ
(2 チャネル )
各チャネルに対する高電流出力 4 本
各チャネルに対する同期化済み 8/10 ビット PWM2 本
8 ビット PWM 信号は , 8 ビットリロードカウンタからのトーン周波
数とミックスされます。
PWM 周波数 :125kHz, 62.5kHz, 31.2kHz, 15.6kHz(FCP = 32MHz 時 )
トーン周波数 :PWM 周波数 /2/( リロード値 +1)
4
外部割込み
(8 チャネル )
8 チャネル独立
割込み要因 :
"L" → "H" エッジ /"H" → "L" エッジ /"L" レベル /"H"
レベルを選択可能です。
リアルタイム時計タイ
マ (1 チャネル )
発振クロックで直接動作します。
発振偏差の修正に対応
サブ秒 / 秒 / 分 / 時 / 日レジスタ内蔵
信号割込み
低電圧 /CPU 動作検出
リセット
低電圧検出時自動リセット
CPU 動作検出機能
入力レベル
Automotive(0.8Vcc/0.5Vcc)( 初期値 )
CMOS ヒステリシス (0.8Vcc/0.2Vcc)
CMOS(0.7Vcc/0.3Vcc)(SIN のみ ) を選択可能
入出力ポート
プッシュプル出力とシュミットトリガ入力
入力 / 出力または周辺信号として , ビット単位でプログラム可能で
す。
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 1 章 概要
1.2
MB90930 シリーズ
表 1.2-1 MB90930 シリーズの特長 (3 / 3)
機能
特長
フラッシュメモリ
CM44-10150-1
自動プログラミング , Embedded Algorithm, 書込み / 消去 / 消去中断 /
消去再開コマンドをサポートします。
アルゴリズムの完了を示すフラグ
消去サイクル数 :10,000 回
データ保存期間 :10 年間
ブートブロック構成
各ブロック消去を実行可能です。
外部プログラミング電圧によるブロック保護
フラッシュメモリの内容保護のためのフラッシュセキュリティ機能
FUJITSU MICROELECTRONICS LIMITED
5
第 1 章 概要
1.3
1.3
MB90930 シリーズ
ブロックダイヤグラム
MB90930 シリーズのブロックダイヤグラムを示します。
■ ブロックダイヤグラム
図 1.3-1 に MB90930 シリーズのブロックダイヤグラムを示します。
図 1.3-1 MB90930 シリーズのブロックダイヤグラム
クロック制御回路
CPU
F2MC-16LXコア
ウォッチドッグタイマ
タイムベースタイマ
割込みコントローラ
時計タイマ
(サブ)
低電圧リセット
サウンドジェネレータ0
サウンドジェネレータ1
CPU動作検出リセット
CANコントローラ1
外部割込み
(8チャネル)
ステッピングモータ
コントローラ0
ステッピングモータ
コントローラ1
LIN-UART0
プリスケーラ0
LIN-UART1
プリスケーラ1
LIN-UART3
プリスケーラ3
16ビットPPGタイマ0
F2MC-16LXバス
LIN-UART2
プリスケーラ2
ステッピングモータ
コントローラ2
ステッピングモータ
コントローラ3
A/Dコンバータ
(24チャネル)
16ビットPPGタイマ1
16ビットPPGタイマ2
LCDコントローラ/ドライバ
(32SEG/4COM)
16ビットPPGタイマ3
16ビットPPGタイマ4
16ビットPPGタイマ5
RAM
(8Kバイト)*
16ビットリロードタイマ0
16ビットリロードタイマ1
フラッシュ/ROM
(128Kバイト)
16ビットリロードタイマ2
16ビットリロードタイマ3
リアルタイム時計タイマ
16ビットICU0 (2チャネル)
16ビットICU1 (2チャネル)
16ビットICU2 (2チャネル)
16ビットICU3 (2チャネル)
16ビットフリーランタイマ
6
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 1 章 概要
1.4
MB90930 シリーズ
1.4
外形寸法図
MB90930 シリーズの外形寸法図を示します。
■ 外形寸法図
図 1.4-1 に外形寸法図を示します。
図 1.4-1 外形寸法図
プラスチック・LQFP, 120 ピン
(FPT-120P-M21)
リードピッチ
0.50mm
パッケージ幅×
パッケージ長さ
16.0 × 16.0mm
リード形状
ガルウィング
封止方法
プラスチックモールド
取付け高さ
1.70mm MAX
質量
0.88g
コード(参考)
P-LFQFP120-16×16-0.50
プラスチック・LQFP, 120 ピン
(FPT-120P-M21)
注 1)* 印寸法はレジン残りを含む。
レジン残りは、片側 +0.25(.010)MAX。
注 2)端子幅および端子厚さはメッキ厚を含む。
注 3)端子幅はタイバ切断残りを含まず。
18.00±0.20(.709±.008)SQ
+0.40
* 16.00 –0.10 .630 +.016
–.004 SQ
90
61
60
91
0.08(.003)
Details of "A" part
+0.20
1.50 –0.10
+.008
(Mounting height)
.059 –.004
INDEX
0~8˚
120
LEAD No.
"A"
31
1
30
0.50(.020)
0.22±0.05
(.009±.002)
0.08(.003)
M
0.145
.006
+0.05
–0.03
+.002
–.001
©2002-2008 FUJITSU MICROELECTRONICS LIMITED F120033S-c-4-6
C
2002 FUJITSU LIMITED F120033S-c-4-4
0.60±0.15
(.024±.006)
0.10±0.05
(.004±.002)
(Stand off)
0.25(.010)
単位:mm (inches)
注意:括弧内の値は参考値です。
最新の外形寸法図については , 下記の URL にてご確認ください。
http://edevice.fujitsu.com/package/jp-search/
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
7
第 1 章 概要
1.5
1.5
MB90930 シリーズ
端子配列図
MB90930 シリーズの端子配列図を示します。
■ 端子配列図
図 1.5-1 に端子配列図を示します。
図 1.5-1 端子配列図
P30/SEG06
P31/SEG07
P32/SEG08
P33/SEG09
P34/SEG10
P35/SEG11
P36/SEG12
P37/SEG13
P40/SEG14
P41/SEG15
P42/SEG16
P43/SEG17
P92/X0A*1
P93/X1A*2
VCC
VSS
C
P44/SEG18
P45/SEG19
P46/SEG20
P47/SEG21
P90/SEG22
P91/SEG23
PD0/SIN2
PD1/SOT2
PD2/SCK2
PD3/SIN3
PD4/SOT3
PD5/SCK3
PD6/TOT2
P94/V0
P95/V1
P96/V2
V3
AVCC
AVRH
P50/INT0/ADTG
AVSS
P60/AN0
P61/AN1
P62/AN2
P63/AN3
P64/AN4
P65/AN5
P66/AN6
P67/AN7
VSS
PC0/SIN0/INT4
PC1/SOT0/INT5/IN3
PC2/SCK0/INT6/IN2
PC3/SIN1/INT7
PC4/SOT1
PC5/SCK1/TRG
PC6/PPG0/TOT1/IN7
PC7/PPG1/TIN1/IN6
PE0/TOT3/IN7R
PE1/TIN3IN6R
P51/INT1/RX1
P52/TX1
P53/INT3
RST
MD0
MD1
MD2
DVSS
DVCC
P87/PWM2M3/AN23
P86/PWM2P3/AN22
P85/PWM1M3/AN21
P84/PWM1P3/AN20
P83/PWM2M2/AN19
P82/PWM2P2/AN18
P81/PWM1M2/AN17
P80/PWM1P2/AN16
DVSS
DVCC
P77/PWM2M1/AN15
P76/PWM2P1/AN14
P75/PWM1M1/AN13
P74/PWM1P1/AN12
P73/PWM2M0/AN11
P72/PWM2P0/AN10
P71/PWM1M0/AN09
P70/PWM1P0/AN08
DVSS
DVCC
PE2/SGO1/IN3R
P55/INT2
RSTO
P54/SGA1/IN2R
*1: X0A 端子はオプション対応です。1 系統の場合はありません。
*2: X1A 端子はオプション対応です。1 系統の場合はありません。
8
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 1 章 概要
1.6
MB90930 シリーズ
1.6
端子機能説明
MB90930 シリーズの端子機能説明を示します。
■ 端子機能説明
表 1.6-1 に端子機能説明を示します。
表 1.6-1 端子機能説明 (1 / 9)
端子番号
108
端子名
入出力回路
形式 *1
X0
A
107
X1
高速発振入力端子です。
高速発振出力端子です。
X0A
B
低速発振入力端子です。*2
P92
I
汎用入出力ポートです。
X1A
B
低速発振出力端子です。*3
P93
I
汎用入出力ポートです。
RST
C
リセット入力端子です。
13
14
90
機能
P00
93
F
SEG24
LCD コントローラ / ドライバのセグメント出力端子です。
P01
94
F
SEG25
F
SEG26
F
SEG27
F
SEG28
F
SEG29
F
SEG30
F
SEG31
CM44-10150-1
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P07
100
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P06
99
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P05
98
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P04
97
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P03
96
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P02
95
汎用入出力ポートです。
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
FUJITSU MICROELECTRONICS LIMITED
9
第 1 章 概要
1.6
MB90930 シリーズ
表 1.6-1 端子機能説明 (2 / 9)
端子番号
端子名
入出力回路
形式 *1
P10
101
PPG2
汎用入出力ポートです。
I
インプットキャプチャ ch.5 のトリガ入力端子です。
P11
汎用入出力ポートです。
TOT0
16 ビットリロードタイマ ch.0 の TOT 出力端子です。
I
PPG3
16 ビット PPG ch.3 の出力端子です。
IN4
インプットキャプチャ ch.4 のトリガ入力端子です。
P12
汎用入出力ポートです。
TIN0
I
PPG4
16 ビットリロードタイマ ch.0 の TIN 入力端子です。
16 ビット PPG ch.4 の出力端子です。
P13
104
109
16 ビット PPG ch.2 の出力端子です。
IN5
102
103
機能
I
汎用入出力ポートです。
PPG5
16 ビット PPG ch.5 の出力端子です。
P14
汎用入出力ポートです。
TIN2
I
IN1
インプットキャプチャ ch.1 のトリガ入力端子です。
P15
110
16 ビットリロードタイマ ch.2 の TIN 入力端子です。
I
IN0
汎用入出力ポートです。
インプットキャプチャ ch.0 のトリガ入力端子です。
111
COM0
P
LCD コントローラ / ドライバのコモン出力端子です。
112
COM1
P
LCD コントローラ / ドライバのコモン出力端子です。
113
COM2
P
LCD コントローラ / ドライバのコモン出力端子です。
114
COM3
P
LCD コントローラ / ドライバのコモン出力端子です。
P22
115
F
SEG00
LCD コントローラ / ドライバのセグメント出力端子です。
P23
116
F
SEG01
F
SEG02
F
SEG03
10
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P25
118
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P24
117
汎用入出力ポートです。
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 1 章 概要
1.6
MB90930 シリーズ
表 1.6-1 端子機能説明 (3 / 9)
端子番号
端子名
入出力回路
形式 *1
P26
119
F
SEG04
F
SEG05
F
SEG06
F
SEG07
F
SEG08
F
SEG09
F
SEG10
F
SEG11
F
SEG12
F
SEG13
F
SEG14
F
SEG15
F
SEG16
F
SEG17
F
SEG18
CM44-10150-1
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P44
18
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P43
12
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P42
11
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P41
10
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P40
9
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P37
8
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P36
7
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P35
6
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P34
5
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P33
4
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P32
3
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P31
2
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P30
1
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P27
120
機能
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
FUJITSU MICROELECTRONICS LIMITED
11
第 1 章 概要
1.6
MB90930 シリーズ
表 1.6-1 端子機能説明 (4 / 9)
端子番号
端子名
入出力回路
形式 *1
P45
19
F
SEG19
F
SEG20
37
58
F
LCD コントローラ / ドライバのセグメント出力端子です。
P50
汎用入出力ポートです。
INT0
I
A/D コンバータの外部トリガ入力端子です。
P51
汎用入出力ポートです。
INT1
I
I
TX1
汎用入出力ポートです。
CAN インタフェース 1 の TX 出力端子です。
P53
60
INT1 の外部割込み入力端子です。
CAN インタフェース 1 の RX 入力端子です。
P52
I
汎用入出力ポートです。
INT3
INT3 の外部割込み入力端子です。
P54
汎用入出力ポートです。
SGA1
I
IN2R
サウンドジェネレータ ch.1 の SGA 出力端子です。
インプットキャプチャ ch.2 のトリガ入力端子です。
P55
63
I
汎用入出力ポートです。
INT2
INT2 の外部割込み入力端子です。
P56
汎用入出力ポートです。
SGO0
91
サウンドジェネレータ ch.0 の SGO 出力端子です。
I
FRCK
フリーランタイマのクロック入力端子です。
IN5R
インプットキャプチャ ch.5 のトリガ入力端子です。
P57
汎用入出力ポートです。
SGA0
I
IN4R
H
AN0
サウンドジェネレータ ch.0 の SGA 出力端子です。
インプットキャプチャ ch.4 のトリガ入力端子です。
P60
39
12
INT0 の外部割込み入力端子です。
ADTG
59
92
汎用入出力ポートです。
SEG21
RX1
61
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P47
21
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P46
20
機能
汎用入出力ポートです。
A/D コンバータの入力端子です。
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 1 章 概要
1.6
MB90930 シリーズ
表 1.6-1 端子機能説明 (5 / 9)
端子番号
端子名
入出力回路
形式 *1
P61
40
H
AN1
H
AN2
H
AN3
H
AN4
H
AN5
H
AN6
67
68
69
70
71
汎用入出力ポートです。
A/D コンバータの入力端子です。
P67
46
汎用入出力ポートです。
A/D コンバータの入力端子です。
P66
45
汎用入出力ポートです。
A/D コンバータの入力端子です。
P65
44
汎用入出力ポートです。
A/D コンバータの入力端子です。
P64
43
汎用入出力ポートです。
A/D コンバータの入力端子です。
P63
42
汎用入出力ポートです。
A/D コンバータの入力端子です。
P62
41
機能
H
汎用入出力ポートです。
AN7
A/D コンバータの入力端子です。
P70
汎用出力専用ポートです。
PWM1P0
L
ステッピングモータコントローラ ch.0 の出力端子です。
AN8
A/D コンバータの入力端子です。
P71
汎用出力専用ポートです。
PWM1M0
L
ステッピングモータコントローラ ch.0 の出力端子です。
AN9
A/D コンバータの入力端子です。
P72
汎用出力専用ポートです。
PWM2P0
L
ステッピングモータコントローラ ch.0 の出力端子です。
AN10
A/D コンバータの入力端子です。
P73
汎用出力専用ポートです。
PWM2M0
L
ステッピングモータコントローラ ch.0 の出力端子です。
AN11
A/D コンバータの入力端子です。
P74
汎用出力専用ポートです。
PWM1P1
AN12
CM44-10150-1
L
ステッピングモータコントローラ ch.1 の出力端子です。
A/D コンバータの入力端子です。
FUJITSU MICROELECTRONICS LIMITED
13
第 1 章 概要
1.6
MB90930 シリーズ
表 1.6-1 端子機能説明 (6 / 9)
端子番号
端子名
入出力回路
形式 *1
P75
72
73
74
77
78
79
80
81
82
83
PWM1M1
汎用出力専用ポートです。
L
ステッピングモータコントローラ ch.1 の出力端子です。
AN13
A/D コンバータの入力端子です。
P76
汎用出力専用ポートです。
PWM2P1
L
ステッピングモータコントローラ ch.1 の出力端子です。
AN14
A/D コンバータの入力端子です。
P77
汎用出力専用ポートです。
PWM2M1
L
ステッピングモータコントローラ ch.1 の出力端子です。
AN15
A/D コンバータの入力端子です。
P80
汎用出力専用ポートです。
PWM1P2
L
ステッピングモータコントローラ ch.2 の出力端子です。
AN16
A/D コンバータの入力端子です。
P81
汎用出力専用ポートです。
PWM1M2
L
ステッピングモータコントローラ ch.2 の出力端子です。
AN17
A/D コンバータの入力端子です。
P82
汎用出力専用ポートです。
PWM2P2
L
ステッピングモータコントローラ ch.2 の出力端子です。
AN18
A/D コンバータの入力端子です。
P83
汎用出力専用ポートです。
PWM2M2
L
ステッピングモータコントローラ ch.2 の出力端子です。
AN19
A/D コンバータの入力端子です。
P84
汎用出力専用ポートです。
PWM1P3
L
ステッピングモータコントローラ ch.3 の出力端子です。
AN20
A/D コンバータの入力端子です。
P85
汎用出力専用ポートです。
PWM1M3
L
ステッピングモータコントローラ ch.3 の出力端子です。
AN21
A/D コンバータの入力端子です。
P86
汎用出力専用ポートです。
PWM2P3
AN22
14
機能
L
ステッピングモータコントローラ ch.3 の出力端子です。
A/D コンバータの入力端子です。
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 1 章 概要
1.6
MB90930 シリーズ
表 1.6-1 端子機能説明 (7 / 9)
端子番号
端子名
入出力回路
形式 *1
P87
84
PWM2M3
汎用出力専用ポートです。
L
AN23
F
SEG22
F
SEG23
G
V0
G
V1
G
V2
34
V3
SIN0
-
LCD コントローラ / ドライバの基準電源端子です。
汎用入出力ポートです。
J
UART ch.0 のシリアルデータ入力端子です。
INT4
INT4 の外部割込み入力端子です。
PC1
汎用入出力ポートです。
SOT0
49
UART ch.0 のシリアルデータ出力端子です。
I
INT5
INT5 の外部割込み入力端子です。
IN3
インプットキャプチャ ch.3 のトリガ入力端子です。
PC2
汎用入出力ポートです。
SCK0
50
51
汎用入出力ポートです。
LCD コントローラ / ドライバの基準電源端子です。
PC0
48
汎用入出力ポートです。
LCD コントローラ / ドライバの基準電源端子です。
P96
33
汎用入出力ポートです。
LCD コントローラ / ドライバの基準電源端子です。
P95
32
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P94
31
汎用入出力ポートです。
LCD コントローラ / ドライバのセグメント出力端子です。
P91
23
ステッピングモータコントローラ ch.3 の出力端子です。
A/D コンバータの入力端子です。
P90
22
機能
UART ch.0 のシリアルクロック入出力端子です。
I
INT6
INT6 の外部割込み入力端子です。
IN2
インプットキャプチャ ch.2 のトリガ入力端子です。
PC3
汎用入出力ポートです。
SIN1
J
INT7
INT7 の外部割込み入力端子です。
PC4
52
I
SOT1
CM44-10150-1
UART ch.1 のシリアルデータ入力端子です。
汎用入出力ポートです。
UART ch.0 のシリアルデータ出力端子です。
FUJITSU MICROELECTRONICS LIMITED
15
第 1 章 概要
1.6
MB90930 シリーズ
表 1.6-1 端子機能説明 (8 / 9)
端子番号
端子名
入出力回路
形式 *1
PC5
53
SCK1
汎用入出力ポートです。
I
16 ビット PPG ch.0 ∼ ch.5 の外部トリガ入力端子です。
PC6
汎用入出力ポートです。
PPG0
16 ビット PPG ch.0 の出力端子です。
I
TOT1
16 ビットリロードタイマ ch.1 の TOT 出力端子です。
IN7
インプットキャプチャ ch.7 のトリガ入力端子です。
PC7
汎用入出力ポートです。
PPG1
55
16 ビット PPG ch.1 の出力端子です。
I
TIN1
16 ビットリロードタイマ ch.1 の TIN 入力端子です。
IN6
インプットキャプチャ ch.6 のトリガ入力端子です。
PD0
24
J
SIN2
I
SOT2
F
SCK2
J
SIN3
I
SOT3
F
SCK3
汎用入出力ポートです。
UART ch.3 のシリアルクロック入出力端子です。
PD6
30
汎用入出力ポートです。
UART ch.3 のシリアルデータ出力端子です。
PD5
29
汎用入出力ポートです。
UART ch.3 のシリアルデータ入力端子です。
PD4
28
汎用入出力ポートです。
UART ch.2 のシリアルクロック入出力端子です。
PD3
27
汎用入出力ポートです。
UART ch.2 のシリアルデータ出力端子です。
PD2
26
汎用入出力ポートです。
UART ch.2 のシリアルデータ入力端子です。
PD1
25
I
汎用入出力ポートです。
TOT2
16 ビットリロードタイマ ch.2 の TOT 出力端子です。
PE0
汎用入出力ポートです。
TOT3
IN7R
16
UART ch.1 のシリアルクロック入出力端子です。
TRG
54
56
機能
I
16 ビットリロードタイマ ch.3 の TOT 出力端子です。
インプットキャプチャ ch.7 のトリガ入力端子です。
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 1 章 概要
1.6
MB90930 シリーズ
表 1.6-1 端子機能説明 (9 / 9)
端子番号
端子名
入出力回路
形式 *1
PE1
57
64
TIN3
機能
汎用入出力ポートです。
16 ビットリロードタイマ ch.3 の TIN 入力端子です。
I
IN6R
インプットキャプチャ ch.6 のトリガ入力端子です。
PE2
汎用入出力ポートです。
SGO1
サウンドジェネレータ ch.1 の SGO 出力端子です。
I
IN3R
インプットキャプチャ ch.3 のトリガ入力端子です。
62
RSTO
N
内部リセットの出力です。
65, 75, 85
DVCC
-
高電流出力バッファの専用電源入力端子です。
66, 76, 86
DVSS
-
高電流出力バッファの専用 GND 電源端子です。
35
AVCC
-
A/D コンバータの専用電源入力端子です。
38
AVSS
-
A/D コンバータの専用 GND 電源端子です。
36
AVRH
-
A/D コンバータの Vref+ 入力端子です。Vref- は AVSS 固定です。
89
MD0
D
モード設定用入力端子です。VCC に接続してください。
88
MD1
D
モード設定用入力端子です。VCC に接続してください。
87
MD2
D/E*4
モード設定用入力端子です。VSS に接続してください。
17
C
-
外部コンデンサ用の端子です。0.1 μF のコンデンサを , この端子と VSS
に接続してください。
15, 105
VCC
-
電源入力端子です。
16, 47,
106
VSS
-
GND 電源端子です。
*1: 入出力回路形式については , 「1.7 入出力回路形式」を参照してください。
*2: X0A 端子はオプション対応です。1 系統の場合はありません。
*3: X1A 端子はオプション対応です。1 系統の場合はありません。
*4: 入出力回路形式は , フラッシュメモリ品 / マスク ROM 品は D, 評価用品は E を使用します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
17
第 1 章 概要
1.7
MB90930 シリーズ
入出力回路形式
1.7
各端子の入出力回路形式を示します。
■ 入出力回路形式
表 1.7-1 に各端子の入出力回路形式を示します。
表 1.7-1 入出力回路形式 (1 / 5)
分類
A
回路
備考
高速発振端子
X1
Xout
( フラッシュメモリ品 / マスク ROM 品 )
• 発振帰還抵抗 : 約 1MΩ
X0
スタンバイ制御信号
高速発振端子
X1
Xout
( 評価用品 )
• 発振帰還抵抗 : 約 1MΩ
X0
スタンバイ制御信号
B
低速発振端子
X1A
Xout
• 発振帰還抵抗 : 約 10MΩ
X0A
スタンバイ制御信号
18
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 1 章 概要
1.7
MB90930 シリーズ
表 1.7-1 入出力回路形式 (2 / 5)
分類
回路
備考
C
入力専用端子 ( プルアップ抵抗付き )
• プルアップ抵抗値 : 約 50kΩ
プルアップ抵抗
CMOS ヒステリシス
入力
D
CMOS ヒステリシス
入力
• CMOS ヒステリシス入力
(VIH / VIL=0.8Vcc / 0.2Vcc)
入力専用端子
• CMOS ヒステリシス入力
(VIH / VIL=0.8Vcc / 0.2Vcc)
( 注意事項 ) フラッシュメモリ品の MD2 端子
は本回路形式を使用します。
E
入力専用端子 ( プルダウン抵抗付き )
CMOS ヒステリシス
入力
プルダウン抵抗
• プルダウン抵抗値 : 約 50kΩ
• CMOS ヒステリシス入力
(VIH / VIL=0.8Vcc / 0.2Vcc)
( 注意事項 ) マスク ROM 品と評価用品のみ
MD2 端子は本回路を使用しま
す。
F
LCD 出力兼用汎用ポート
P-ch
Pout
• CMOS 出力 (IOH / IOL = ± 4 mA)
N-ch
Nout
• CMOS ヒステリシス入力
(VIH / VIL=0.8Vcc / 0.2Vcc)
LCD 出力
• Automotive 入力
(VIH / VIL=0.8Vcc / 0.5Vcc)
CMOS ヒステリシス入力
スタンバイ制御信号また
は LCD 入力許可信号
Automotive 入力
スタンバイ制御信号また
は LCD 入力許可信号
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
19
第 1 章 概要
1.7
MB90930 シリーズ
表 1.7-1 入出力回路形式 (3 / 5)
分類
回路
備考
G
LCDC 基準電源兼用汎用ポート
P-ch
• CMOS 出力 (IOH / IOL = ± 4 mA)
Pout
CMOS ヒステリシス入力
N-ch
• CMOS ヒステリシス入力
(VIH / VIL=0.8Vcc / 0.2Vcc)
Nout
LCDC 基準電源入力
• Automotive 入力
(VIH / VIL=0.8Vcc / 0.5Vcc)
CMOS ヒステリシス入力
スタンバイ制御信号または
LCD 出力切換え信号
Automotive 入力
スタンバイ制御信号または
LCD 出力切換え信号
H
A/D コンバータ入力兼用汎用ポート
P-ch
Pout
N-ch
Nout
• CMOS 出力 (IOH / IOL = ± 4 mA)
• CMOS ヒステリシス入力
(VIH / VIL=0.8Vcc / 0.2Vcc)
アナログ入力
• Automotive 入力
(VIH / VIL=0.8Vcc / 0.5Vcc)
• アナログ入力
CMOS ヒステリシス入力
スタンバイ制御信号または
アナログ入力許可信号
Automotive 入力
スタンバイ制御信号または
アナログ入力許可信号
I
汎用ポート
P-ch
N-ch
• CMOS 出力 (IOH / IOL = ± 4 mA)
Pout
• CMOS ヒステリシス入力
(VIH / VIL=0.8Vcc / 0.2Vcc)
Nout
CMOS ヒステリシス入力
• Automotive 入力
(VIH / VIL=0.8Vcc / 0.5Vcc)
スタンバイ制御信号
Automotive 入力
スタンバイ制御信号
20
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 1 章 概要
1.7
MB90930 シリーズ
表 1.7-1 入出力回路形式 (4 / 5)
分類
回路
備考
J
汎用ポート ( シリアル入力 )
P-ch
Pout
N-ch
Nout
• CMOS 出力 (IOH / IOL = ± 4 mA)
• CMOS ヒステリシス入力
(VIH / VIL=0.8Vcc / 0.2Vcc)
CMOS ヒステリシス入力
スタンバイ制御信号
Automotive 入力
• CMOS 入力 (SIN)
(VIH / VIL=0.7Vcc / 0.3Vcc)
• Automotive 入力
(VIH / VIL=0.8Vcc / 0.5Vcc)
スタンバイ制御信号
CMOS 入力 (SIN)
スタンバイ制御信号
L
高電流出力ポートおよび高電流 (SMC 端子 )
Pout
P-ch
• CMOS 出力 (IOH / IOL = ± 30 mA)
高電流
Nout
N-ch
• A/D コンバータ入力
アナログ入力
M
LCDC 出力兼用汎用ポート
P-ch
Pout
N-ch
Nout
( シリアル入力 )
• CMOS 出力 (IOH / IOL = ± 4 mA)
LCDC 出力
CMOS ヒステリシス入力
スタンバイ制御信号または
LCDC 出力切換え信号
Automotive 入力
• CMOS ヒステリシス入力
(VIH / VIL=0.8Vcc / 0.2Vcc)
• CMOS 入力 (SIN)
(VIH / VIL=0.7Vcc / 0.3Vcc)
• Automotive 入力
(VIH / VIL=0.8Vcc / 0.5Vcc)
スタンバイ制御信号または
LCDC 出力切換え信号
CMOS 入力 (SIN)
スタンバイ制御信号または
LCDC 出力切換え信号
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
21
第 1 章 概要
1.7
MB90930 シリーズ
表 1.7-1 入出力回路形式 (5 / 5)
分類
回路
備考
N
フラッシュメモリ品/マスクROM品
評価用品
N-ch オープンドレイン端子
IOL =4 mA
P-ch
N-ch
Nout
N-ch
O
Nout
入力専用端子
Automotive 入力
P
• Automotive 入力
(VIH / VIL=0.8Vcc / 0.5Vcc)
LCDC 出力端子 (COM 端子 )
P-ch
LCDC 出力
N-ch
22
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
1.8
デバイスの取扱いに関する注意事項
第 1 章 概要
1.8
デバイスを取り扱う際には , 次の 11 項目に関して特に注意が必要です。
• 最大定格電圧の厳守 ( ラッチアップの防止 )
• 供給電圧の安定化
• 電源投入時
• 未使用端子の処理
• A/D コンバータの電源端子処理
• 外部クロック使用時
• 電源端子
• A/D コンバータの電源 / アナログ入力の投入順序
• 高電流出力バッファ端子用電源 (DVCC, DVSS) の取扱い
• プルアップ / プルダウン抵抗
• PLL クロックモード動作中の注意
■ 最大定格電圧の厳守 ( ラッチアップの防止 )
MB90930 シリーズの入力端子と出力端子に VCC より高い電圧および VSS より低い電圧を印加し
ないでください。また , VCC と VSS との間に定格を超える電圧を印加しないでください。定格を
超える電圧を印加すると , ラッチアップ現象が発生することがあります。ラッチアップが起きる
と電源電流が激増し , 素子が熱破壊するおそれがあります。使用に際して , 最大定格を超えること
のないように十分注意してください。
また , アナログ電源 (AVCC, AVRH) およびアナログ入力と , 高電流出力バッファ端子用電源
(DVCC) を電源投入する場合および切断する場合は , デジタル電源 (VCC) を超えないようにしてく
ださい。
デジタル電源 (VCC) 投入後のアナログ電源 (AVCC, AVRH) と高電流出力バッファ端子用電源
(DVCC) の投入順序は問いません。
■ 供給電圧の安定化
電源電圧の急激な変化があると誤動作することがありますので , VCC 電源電圧を安定させてくだ
さい。安定化の基準は , 商用周波数 (50 Hz ∼ 60 Hz) での VCC リプル変動 (P-P 値 ) は VCC 電源電
圧値の 10% 以下 , 電源の切換え変化は過渡変動率が 0.1 V/ms 以下になるように電圧変動を抑えて
ください。
■ 電源投入時
内蔵している降圧回路の誤動作を防ぐために , 電源投入時の電圧立上げ時間は 50μs(0.2V と 2.7V
との間 ) 以上としてください。
■ 未使用端子の処理
入力端子を使用しない場合に開放のままにしておくと , 外来ノイズにより誤動作の原因となりま
すので , 2kΩ 以上の抵抗を介してプルアップまたはプルダウンなどの処置をしてください。
また , 使用していない入出力端子については , 出力状態に設定して開放とするか , 入力状態に設定
して入力端子と同じ処理をしてください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
23
第 1 章 概要
1.8
MB90930 シリーズ
■ A/D コンバータの電源端子処理
A/D コンバータを使用しない場合は , AVCC= VCC, AVSS=AVRH= VSS となるように接続してく
ださい。
■ 外部クロックを使用する場合
外部クロックを使用する場合においても , パワーオンリセット , サブクロックモードおよびストッ
プモードから復帰する場合には発振安定待ち時間が必要です。
外部クロックを使用する場合には図 1.8-1 に示すように , X0A 端子のみを駆動して X1A 端子を開
放としてください。
高速発振端子 (X0, X1) は , 外部クロック入力は使用できません。
図 1.8-1 外部クロック使用例電源端子
X0A
開放
X1A
■ 電源端子
ラッチアップを防止するために , 複数ある VCC, VSS 電源端子をデバイス内部で接続しています。
しかし , 不要輻射の低減 , グランドレベルの上昇によるストローブ信号の誤動作防止 , 総出力電流
規格を守るなどのために , 必ず VCC, VSS電源端子を , 外部で同一電源に接続してください ( 図 1.82 を参照してください )。
図 1.8-2 電源端子 (VCC/VSS)
VCC
VSS
VCC
VSS
VSS
VCC
VCC
VSS
VSS
VCC
また , 電流供給源から低いインピーダンスでデバイスの VCC, VSS 電源端子に接続してください。
デバイスの VCC と VSS の間に 0.1μF 程度のバイパスコンデンサを VCC, VSS 電源端子の近くで接
続することで対処できます。
24
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 1 章 概要
1.8
■ A/D コンバータの電源 / アナログ入力の投入順序
A/D コンバータの電源端子 (AVCC, AVRH) およびアナログ入力端子 (AN0 ∼ AN23) への電圧印加は ,
必ずデジタル電源 (VCC) の投入後に行ってください。デバイス電源切断時は A/D コンバータの電
源およびアナログ入力電源を切断した後に , デジタル電源 (VCC) を切断してください。そのとき
, AVRH は AVCC を超えないようにしてください。アナログ入力と兼用している端子を入力ポー
トとして使用する場合には , 入力電圧が AVCC を超えないようにしてください。
■ 高電流出力バッファ端子用電源 (DVCC, DVSS) の取扱い
• フラッシュメモリ品 / マスク ROM 品 (MB90F931/MB90F931S/MB90931/MB90931S)
高電流出力バッファ用電源 (DVCC, DVSS) とデジタル電源 (VCC) を分離しているため , DVCC
は VCC より高い電位に設定できます。
ただし , 高電流出力バッファ端子用電源 (DVCC, DVSS) が , デジタル電源 (VCC) より先に投入
された場合 , DVCC の立上り中にステッピングモータ出力用ポート 7, ポート 8 から一瞬 "H" か
"L" が出力される可能性がありますのでご注意ください。
これを防ぐため , デジタル電源 (VCC) は高電流出力バッファ端子用電源より先に投入してくだ
さい。
高電流出力バッファ端子を汎用ポートとして使用する場合も , 高電流出力バッファ端子用電源
(DVCC, DVSS) を印加してください。
• 評価用品 (MB90V930-102, MB90V930-101)
高電流出力バッファ用電源 (DVCC, DVSS) とデジタル電源 (VCC) を分離していませんので
DVCC は VCC と同じか低い電位に設定してください。
高電流出力バッファ端子用電源 (DVCC, DVSS) の印加は , 必ずデジタル電源 (VCC) の投入後に
行ってください。また , デジタル電源 (VCC) は高電流出力バッファ端子用電源切断の後で切断
してください ( 高電流出力バッファ端子用電源とデジタル電源を同時に投入・切断をすること
は問題ありません )。
高電流出力バッファ端子を汎用ポートとして使用する場合も , 高電流出力バッファ端子用電源
(DVCC, DVSS) を印加してください。
■ プルアップ / プルダウン抵抗
MB90930 シリーズでは , 内部プルアップ / プルダウン抵抗をサポートしていません。必要な場合
には , 外部構成部品を使用してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
25
第 1 章 概要
1.8
MB90930 シリーズ
■ サブクロックモードを使用しない場合の注意
X0A, X1A 端子に発振器を接続しない場合は , X0A 端子にプルダウンの処理をして X1A 端子を開放
にしてください。
■ PLL クロックモード動作中の注意について
MB90930 シリーズで PLL クロックを選択しているときに発振子が外れた場合 , PLL 内部の自励発
振回路の自走周波数で動作を継続する場合があります。この動作は , 保証外の動作です。
■ 初期化について
デバイス内には , パワーオンリセットによってのみ初期化される内部レジスタ類があります。こ
れらの初期化を期待する場合は電源の再投入を行ってください。
■ フラッシュセキュリティ機能について
セキュリティビットはフラッシュメモリの領域内に配置されています。セキュリティビットに保
護コード 01H を書き込むとセキュリティがかかりますので , セキュリティ機能を使用しない場合
はこのアドレスには 01H を書き込まないでください。
セキュリティビットのアドレスは下表を参照してください。
MB90F931/
MB90F931S
26
フラッシュメモリサイズ
セキュリティビットのアドレス
1M ビットフラッシュメモリ搭載
FE0001H
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第2章
CPU
F2MC-16LX CPU について説明します。
2.1 CPU の概要
2.2 メモリ空間
2.3 メモリマップ
2.4 アドレッシング
2.5 多バイト長データのメモリ上の配置
2.6 レジスタ
2.7 専用レジスタ
2.8 汎用レジスタ
2.9 プリフィックスコード
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
27
第 2 章 CPU
2.1
2.1
MB90930 シリーズ
CPU の概要
F2MC-16LX CPU コアは , 民生用・車載用機器などの高速リアルタイム処理が要求される用途
向けに設計された 16 ビット CPU です。F2MC-16LX の命令セットはコントローラ用途向けに
設計されており , 各種制御の高速・高効率処理が可能です。
■ CPU の特長
F2MC-16LX CPU コアは , 16 ビットデータはもちろん , 内部 32 ビットアキュムレータを搭載して
いるため 32 ビット処理も可能です。メモリ空間は , 最大 16M バイト , リニア方式およびバンク方
式のいずれかにてアクセス可能です。また , 命令体系は F2MC-8L の A-T アーキテクチャをベース
に , 高級言語対応命令の追加・アドレッシングモードの拡張・乗除算命令の強化・ビット処理の
充実化により命令が強化されています。次に , F2MC-16LX CPU の特長を示します。
● 最小命令実行時間
31.25ns (4MHz 発振・8 逓倍 )
● 最大メモリ空間
16M バイト , リニア / バンク方式にてアクセス
● コントローラ用途に最適化された命令体系
• 豊富なデータタイプ
: ビット / バイト / ワード / ロングワード
• 拡張されたアドレッシングモード : 23 種類
• 32 ビットアキュムレータの採用による高精度演算 (32 ビット長 ) の強化符号付き乗除算・拡張
RETI 命令
● 強力な割込み機能
8 つのプライオリティレベル ( プログラマブル )
● CPU に依存しない自動転送機能
最大 16 チャネルまでの拡張インテリジェント I/O サービス
● 高級言語 (C 言語 ) / マルチタスクに対応した命令体系
システムスタックポイントの採用 / 命令セットの対称性 / バレルシフト命令
● 実行速度の向上
4 バイトのキュー
<注意事項>
MB90930 シリーズではシングルチップモードのみの使用となるため , 内蔵 ROM, 内蔵 RAM, 内蔵
周辺回路のメモリ空間にしかアクセスできません。
28
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 2 章 CPU
2.2
MB90930 シリーズ
2.2
メモリ空間
F2MC-16LX CPU には 16M バイトのメモリ空間があります。F2MC-16LX CPU が管理する
データ , プログラムおよび I/O は , すべてこの 16M バイトの中に配置されます。メモリ空間の
一部は , 拡張インテリジェント I/O サービス (EI2OS) ディスクリプタ , 汎用レジスタおよびベ
クタテーブルなどの特定用途に使用されます。
■ メモリ空間
データ , プログラムおよび I/O は , すべて F2MC-16LX CPU が持つ 16M バイトのメモリ空間のいず
れかに配置され , CPU は 24 ビットのアドレスバスでこれらのアドレスを示し , 各周辺機能をアク
セスすることができます。
図 2.2-1 に , F2MC-16LX システムとメモリマップの関係例を示します。
図 2.2-1 F2MC-16LX システムとメモリマップの関係例
F2MC-16LX システム
FFFFFFH
ベクタテーブル領域
ROM領域
FFFC00H
プログラム
FF0000H *1
プログラム領域
内
100000H
デ
010000H
外部領域*4
ー
F2MC-16LX
CPU
部
タ
データ
004000H
002000H
000D00H
バ
EI2OS
000380H
000180H
ス
割込み
*2
*3
000100H
周辺回路
汎用ポート
ROM領域
(FFバンクのイメージ)
外部領域*4
0000C0H
0000B0H
000020H
000000H
データ領域
汎用レジスタ
RAM領域
EI2OS
ディスクリプタ領域
外部領域*4
割込み制御レジスタ領域
周辺機能制御レジスタ領域
I/O領域
I/Oポート制御レジスタ領域
*1:品種によって,内蔵ROMの容量が異なります。
*2:品種によって,イメージでアクセスできる領域が異なります。
*3:品種によって,内蔵RAMの容量が異なります。
*4:シングルチップモード時には,アクセスなしになります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
29
第 2 章 CPU
2.2
MB90930 シリーズ
■ ROM 領域
● ベクタテーブル領域 ( アドレス :FFFC00H ∼ FFFFFFH)
• ベクタコール命令 , 割込みベクタおよびリセットベクタのベクタテーブルとして使用します。
• ROM領域の最上位に割り当てられており, それぞれのベクタテーブルのアドレスに対応する処
理ルーチンの開始アドレスをデータとして設定します。
● プログラム領域 ( アドレス : ∼ FFFBFFH)
• 内部プログラム領域として , ROM が内蔵されています。
• 内部 ROM 容量は , 品種によって異なります。
■ RAM 領域
● データ領域 ( アドレス : 000100H ∼ )
• 内部データ領域として , スタティック RAM が内蔵されています。
• 内部 RAM 容量は , 品種によって異なります。
● 汎用レジスタ領域 ( アドレス : 000180H ∼ 00037FH)
• 8 ビット , 16 ビット , 32 ビットの演算や転送に使用する補助的なレジスタを配置します。
• RAM 領域の一部に割り当てられており , 通常の RAM として使用することもできます。
• 汎用レジスタとして使用すると , 汎用レジスタアドレッシングによって短い命令で高速にアク
セスできます。
● 拡張インテリジェント I/O サービス (EI2OS) ディスクリプタ領域
( アドレス : 000100H ∼ 00017FH)
• 転送モード , I/O のアドレス , 転送数およびバッファアドレスを保持します。
• RAM 領域の一部に割り当てられており , 通常の RAM として使用することもできます。
■ I/O 領域
● 割込み制御レジスタ領域 ( アドレス :0000B0H ∼ 0000BFH)
割込み制御レジスタ (ICR00 ∼ ICR15) は , 割込み機能を持つすべての周辺機能に対応し ,
割込みレベルの設定および拡張インテリジェント I/O サービス (EI2OS) の制御をします。
● 周辺機能制御レジスタ領域 ( アドレス :0000C0H ∼ 0000EFH)
内蔵する周辺機能の制御およびデータの入出力をします。
● I/O ポート制御レジスタ領域 ( アドレス :000000H ∼ 00001FH)
I/O ポートの制御およびデータの入出力をします。
30
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 2 章 CPU
2.3
MB90930 シリーズ
2.3
メモリマップ
MB90930 シリーズの品種ごとのメモリマップを示します。
■ メモリマップ
図 2.3-1 に , MB90930 シリーズのメモリマップを示します。
図 2.3-1 MB90930 シリーズのメモリマップ
MB90V930-102
MB90V930-101
000000H
MB90F931/MB90F931S
MB90931/MB90931S
000000H
周辺領域
0000F0H
周辺領域
0000F0H
000100H
000100H
レジスタ
RAM 領域
13.5 K バイト
003700H
002100H
レジスタ
RAM 領域
8 K バイト
003700H
周辺領域
004000H
周辺領域
004000H
RAM 領域
(16 K バイト )
008000H
008000H
ROM 領域
ROM 領域
(FF バンクのイメージ )
(FF バンクのイメージ )
010000H
010000H
F80000H
ROM デコード領域
FFFFFFH
FE0000H
FFFFFFH
Flash / ROM 領域
128 K バイト
: 内部アクセス禁止
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
31
第 2 章 CPU
2.3
MB90930 シリーズ
<注意事項>
• ROM ミラー機能なしを選択した場合には「第 23 章 ROM ミラー機能選択 モジュール」を参照し
てください。
• 00 バンクの上位に FF バンクの ROM データがイメージで見えるようになっていますが , これは C
コンパイラのスモールモデルを有効に生かすためです。FF バンクの下位 16 ビットアドレスが同
じになるようにしてあるので , ポインタで far 指定を宣言しなくても ROM 内のテーブルを参照す
ることができます。例えば , 00C000H をアクセスした場合に , 実際には FFC000H の ROM の内容
がアクセスされることになります。ここで , FF バンクの ROM 領域は 32K バイトを超えるので ,
00 バンクのイメージにすべての領域を見せることができません。したがって , FF8000H ∼
FFFFFFH の ROM データは 008000H ∼ 00FFFFH にイメージとして見えるので , ROM データテーブ
ルは FF8000H ∼ FFFFFFH の領域に格納してください。
32
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 2 章 CPU
2.4
MB90930 シリーズ
2.4
アドレッシング
アドレス生成方式には , リニア方式とバンク方式があります。
リニア方式は , 24 ビットアドレスのすべてを命令により直接指定する方法です。
バンク方式は , 上位 8 ビットアドレスを用途に応じたバンクレジスタにより指定し , 下位 16
ビットアドレスを命令により指定する方法です。
F2MC-16LX シリーズは , 基本的にはバンクアドレッシングとなります。
■ リニアアドレッシングとバンクアドレッシング
リニア方式のアドレッシングは , 16M バイトの空間を連続したアドレス空間としてアクセスする
方式です。バンク方式は , 16M バイトの空間を 64K バイトごとの 256 バンクに分割して管理する
方式です。
リニア方式とバンク方式のメモリ管理の概要を , 図 2.4-1 に示します。
図 2.4-1 リニア方式とバンク方式のメモリ管理
リニア方式
FFFFFFH
バンク方式
FFFFFFH
FF0000H
FEFFFFH
FE0000H
FDFFFFH
FD0000H
123456H
FFバンク
64Kバイト
FEバンク
FDバンク
123456H
12バンク
04FFFFH
040000H
03FFFFH
030000H
02FFFFH
020000H
01FFFFH
010000H
00FFFFH
000000H
000000H
123456H
03バンク
02バンク
01バンク
00バンク
123456H
すべて命令で指定
CM44-10150-1
04バンク
命令で指定
用途に応じたバンクレジスタで指定
FUJITSU MICROELECTRONICS LIMITED
33
第 2 章 CPU
2.4
2.4.1
MB90930 シリーズ
リニア方式によるアドレス指定
リニア方式によるアドレス指定には , オペランドで直接 24 ビットのアドレスを指定する方法
と , 32 ビットの汎用レジスタの下位 24 ビットをアドレスとして引用する方法があります。
■ 24 ビットオペランド指定
図 2.4-2 リニア方式 (24 ビットオペランド指定 ) の例
JMPP 123456H
旧プログラムカウンタ
+プログラムバンク
17
452D
17452DH
新プログラムカウンタ
+プログラムバンク
12
3456
123456H
JMPP 123456H
次の命令
■ 32 ビットレジスタ間接指定
図 2.4-3 リニア方式 (32 ビットレジスタ間接指定 ) の例
MOV A,@RL1+7
旧AL
XXXX
090700H
3AH
+7
新AL
003A
RL1
240906F9H
(上位8ビットは無視)
RL1:32ビット(ロングワード)汎用レジスタ
34
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
2.4.2
バンク方式によるアドレス指定
第 2 章 CPU
2.4
バンク方式は , 16M バイトのメモリ空間を 64K バイトごとの 256 バンクに分割し , バンクレ
ジスタで各空間に対応するバンクアドレスを指定します。アドレスの上位 8 ビットをバンク
アドレス指定により決定し , 下位 16 ビットは命令で指定します。
バンクレジスタには , 用途別に次の 5 種類があります。
• プログラムカウンタバンクレジスタ (PCB)
• データバンクレジスタ (DTB)
• ユーザスタックバンクレジスタ (USB)
• システムスタックバンクレジスタ (SSB)
• アディショナルデータバンクレジスタ (ADB)
■ バンクレジスタとアクセス空間
表 2.4-1 に , 各バンクレジスタのアクセス空間と主な用途を示します。
表 2.4-1 各バンクレジスタのアクセス空間と主な用途
アクセス空間
プログラムカウンタバンク
レジスタ (PCB)
プログラム (PC)
空間
命令コード , ベクタテーブル , 即値デー
タなどを格納します。
FFH
データバンクレジスタ (DTB)
データ (DT)
空間
読み書き可能なデータの格納や , 内外周
辺の制御レジスタ / データレジスタのア
クセスを行います。
00H
スタック (SP)
空間
PUSH/POP 命令や , 割込みのレジスタ退
避などのスタックアクセスに使用される
領域です。コンディションレジスタ内の
スタックフラグ (CCR の S) が , "1" のと
きには SSB を , "0" のときには USB を使
用します。
アディショナル
(AD) 空間
データ (DT) 空間に入りきらなかった
データなどを格納します。
ユーザスタックバンクレジスタ
(USB)
システムスタックバンクレジスタ
(SSB) *
アディショナルデータバンク
レジスタ (ADB)
主な用途
リセット時
初期値
バンクレジスタ名
00H
00H
00H
*: 割込み時のスタックには , 必ず SSB が使用されます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
35
第 2 章 CPU
2.4
MB90930 シリーズ
図 2.4-4 に , バンクに分割されたメモリ空間と各レジスタの関係を示します。詳細は , 「2.7.6 バン
クレジスタ (PCB, DTB, USB, SSB, ADB)」を参照してください。
図 2.4-4 各バンクレジスタの物理アドレス
FFFFFFH
FF0000H
物
理
0FFFFFH
0F0000H
ア
0DFFFFH
ド
0D0000H
プログラム
空間
アディショナル
空間
ユーザ
スタック空間
FFH
:PCB(プログラムカウンタバンクレジスタ)
0FH :ADB(アディショナルデータバンクレジスタ)
0DH
:USB(ユーザスタックバンクレジスタ)
0BH
:DTB(データバンクレジスタ)
レ
0BFFFFH
データ空間
ス
0B0000H
07FFFFH
070000H
システム
スタック空間
07H :SSB(システムスタックバンクレジスタ)
000000H
■ バンクアドレッシングとデフォルト空間
各命令には命令のコード効率を向上するため , アドレス指定方式ごとに表 2.4-2 に示すようなデ
フォルト空間が決められています。デフォルト以外の空間を使用したいときは , 各バンクに対応
しているプリフィックスコードを命令に先行して指定することで , そのプリフィックスコードに
対応した任意のバンク空間をアクセスすることができます。プリフィックスコードの詳細は ,「2.9
プリフィックスコード」を参照してください。
表 2.4-2 アドレッシングとデフォルト空間
デフォルト空間
アドレッシング
プログラム空間
PC 間接 , プログラムアクセス , 分岐系
データ空間
@RW0, @RW1, @RW4, @RW5 を使用したアドレッシング , @A, addr16, dir
スタック空間
PUSHW, POPW, @RW3, @RW7 を使用したアドレッシング
アディショナル空間
@RW2, @RW6 を使用したアドレッシング
36
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 2 章 CPU
2.5
MB90930 シリーズ
2.5
多バイト長データのメモリ上の配置
多バイト長データは , 下位アドレスから順にメモリに書き込まれます。32 ビット長データの
場合には , 下位 16 ビットが先に転送され , 続いて上位 16 ビットが転送されます。
なお , 下位データの書込み直後にリセット信号を入力すると , 上位データが書き込まれないこ
とがあります。
■ RAM 上の多バイト長データの配置
図 2.5-1 に , メモリ上における多バイト長データの構成を示します。データは下位 8 ビットが n 番
地に , 以下 n + 1 番地 , n + 2 番地 , n + 3 番地の順に配置されます。
図 2.5-1 RAM 上の多バイト長データの配置
MSB
"H"
01010101B
LSB
11001100B
11111111B
00010100B
01010101B
11001100B
11111111B
00010100B
n番地
"L"
MSB:最上位ビット
LSB:最下位ビット
■ 多バイト長オペランドの配置
図 2.5-2 に , メモリ上における多バイト長オペランドの構成を示します。
図 2.5-2 多バイト長オペランドの配置
JMPP 123456H
"H"
JMPP 1 2 3 4 5 6H
12H
34H
56H
n番地
63H
"L"
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
37
第 2 章 CPU
2.5
MB90930 シリーズ
■ スタック上の多バイト長データの配置
図 2.5-3 に , スタック上における多バイト長データの構成を示します。
図 2.5-3 スタック上の多バイト長データの配置
PUSHW
RW1,RW3
"H"
PUSHW RW1
RW3
(35A4 H)(6DF0H)
SP
6DH
F0H
35H
A4H
n番地
"L"
RW1:35A4H
RW3:6DF0H
■ 多バイト長データのアクセス
アクセスはすべてバンク内を基本にして行われますので , 多バイト長のデータをアクセスする命
令では , "FFFFH" 番地の次のアドレスは同じバンクの "0000H" 番地になります。図 2.5-4 に , 多バ
イト長データのアクセス命令実行例を示します。
図 2.5-4 多バイト長データのアクセス命令実行例
"H"
実行前のAL
80FFFFH
01H
800000H
・
・
・
23H
? ?
? ?
MOVW A, 080FFFFH
実行後のAL
23H
01H
"L"
38
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 2 章 CPU
2.6
MB90930 シリーズ
2.6
レジスタ
F2MC-16LX のレジスタは大別して , CPU 内部の専用レジスタと , 内蔵 RAM 上の汎用レジス
タの 2 種類に分けられます。
■ 専用レジスタと汎用レジスタ
専用レジスタは CPU 内部の専用ハードウェアで , 使用する用途が CPU のアーキテクチャ上で限定
されているものです。汎用レジスタは , CPU のアドレス空間上に RAM と共存します。アドレス
指定なしでアクセスできるという点では専用レジスタと同じですが , 通常のメモリと同じく , 使用
する用途をユーザが指定することができるものです。デバイス内の専用レジスタと汎用レジスタ
の配置を図 2.6-1 に示します。
図 2.6-1 専用レジスタと汎用レジスタ
CPU
RAM
専用レジスタ
RAM
アキュムレータ
汎用レジスタ
ユーザスタックポインタ
システムスタックポインタ
プロセッサステータス
内
プログラムカウンタ
部
ダイレクトページレジスタ
バ
プログラムカウンタバンクレジスタ
ス
データバンクレジスタ
ユーザスタックバンクレジスタ
システムスタックバンクレジスタ
アディショナルデータバンクレジスタ
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
39
第 2 章 CPU
2.7
2.7
MB90930 シリーズ
専用レジスタ
CPU 内の専用レジスタは , 次の 11 種類のレジスタで構成されています。
• アキュムレータ (A)
• ユーザスタックポインタ (USP)
• システムスタックポインタ (SSP)
• プロセッサステータス (PS)
• プログラムカウンタ (PC)
• ダイレクトページレジスタ (DPR)
• プログラムカウンタバンクレジスタ (PCB)
• データバンクレジスタ (DTB)
• ユーザスタックバンクレジスタ (USB)
• システムスタックバンクレジスタ (SSB) • アディショナルデータバンクレジスタ (ADB)
■ 専用レジスタの構成
図 2.7-1 に専用レジスタの構成を , 表 2.7-1 に専用レジスタの初期値を示します。
図 2.7-1 専用レジスタの構成
AH
AL
:アキュムレータ(A)
演算結果の格納などに使用される16ビット×2本のレジスタです。
連続して32ビットレジスタとしても使用可能です。
USP
:ユーザスタックポインタ(USP)
ユーザスタックアドレスを示す16ビットのポインタです。
SSP
:システムスタックポインタ(SSP)
システムスタックアドレスを示す16ビットのポインタです。
PS
:プロセッサステータス(PS)
システムの状態を示す16ビットのレジスタです。
PC
:プログラムカウンタ(PC)
現在の命令格納位置を示す16ビットのレジスタです。
DPR
:ダイレクトページレジスタ(DPR)
短縮直接アドレッシング時のオペランドアドレスのbit8~bit15を
指定します。8ビットのレジスタです。
PCB
:プログラムカウンタバンクレジスタ(PCB)
プログラム空間を示す8ビットのレジスタです。
DTB
:データバンクレジスタ(DTB)
データ空間を示す8ビットのレジスタです。
USB
:ユーザスタックバンクレジスタ(USB)
ユーザスタック空間を示す8ビットのレジスタです。
SSB
:システムスタックバンクレジスタ(SSB)
システムスタック空間を示す8ビットのレジスタです。
ADB
8ビット
:アディショナルデータバンクレジスタ(ADB)
アディショナル空間を示す8ビットのレジスタです。
16ビット
32ビット
40
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 2 章 CPU
2.7
MB90930 シリーズ
表 2.7-1 専用レジスタの初期値
専用レジスタ
初期値
アキュムレータ (A)
不定
ユーザスタックポインタ (USP)
不定
システムスタックポインタ (SSP)
不定
bit15 ∼ bit13 bit12
プロセッサステータス (PS)
PS
ILM
0
0
0
0
bit8 bit7
∼
RP
0 0 0 0 - 0
bit0
∼
CCR
1
x
x
x
x
x
- : 未定義
X: 不定値
プログラムカウンタ (PC)
ダイレクトページレジスタ (DPR)
プログラムカウンタバンク
レジスタ (PCB)
リセットベクタ中の値 (FFFFDCH, FFFFDDH の内容 )
01H
リセットベクタ中の値 (FFFFDEH の内容 )
データバンクレジスタ (DTB)
00H
ユーザスタックバンクレジスタ
(USB)
00H
システムスタックバンクレジスタ
(SSB)
00H
アディショナルデータバンク
レジスタ (ADB)
00H
<注意事項>
上記の初期値は , デバイスの初期値であり , ICE ( エミュレータなど ) では異なります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
41
第 2 章 CPU
2.7
2.7.1
MB90930 シリーズ
アキュムレータ (A)
アキュムレータ (A) は , 2 つの 16 ビット長の演算用レジスタ (AH および AL) から構成され ,
演算結果やデータの一時記憶などに使用されるレジスタです。
A レジスタは , 32/16/8 ビットのレジスタとして使用でき , メモリやほかのレジスタとの間 ,
または AH-AL レジスタ間で , 各種の演算ができます。また , ワード長以下のデータを AL レ
ジスタに転送すると , 転送前の AL レジスタ中のデータが自動的に AH レジスタに転送される
データ保持機能があります ( 一部データを保持しない命令があります ) 。
■ アキュムレータ (A)
● アキュムレータへのデータ転送
アキュムレータは , 32 ビット ( ロングワード ) , 16 ビット ( ワード ) , 8 ビット ( バイト ) の各データ
を処理することができます。一部例外的に 4 ビットデータ転送命令 (MOVN) もありますが , 8 ビッ
トデータと同様に説明します。
• 32 ビットデータ処理のときは , AH レジスタと AL レジスタが連結して使用されます。
• 16 ビットデータや 8 ビットデータのときは , AL レジスタだけが使用されます。
• AL レジスタへのバイト長以下のデータの転送時には , データは符号拡張または拡張されて 16
ビット長となり , AL レジスタへ格納されます。また , AL レジスタ中のデータは , ワード長と
してもバイト長としても扱えます。
アキュムレータへのデータ転送の様子を図 2.7-2 に示します。また , 具体的な転送例を図 2.7-3 ∼
図 2.7-6 に示します。
図 2.7-2 アキュムレータへのデータ転送
32ビット
AH
AL
32ビットデータ転送
データ転送 データ転送
AH
16ビットデータ転送
AL
データ退避
データ転送
AH
8ビットデータ転送
AL
データ退避
00HまたはFFH* データ転送
(ゼロ拡張または符号拡張)
*: 4ビット転送命令のときは000HまたはFFFHとなります。
42
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 2 章 CPU
2.7
MB90930 シリーズ
● アキュムレータのバイト処理算術演算
バイト処理の算術演算命令を AL レジスタに対して実行すると , 演算前の AL レジスタの上位 8
ビットは無視され , 演算結果の上位 8 ビットはすべて "0" になります。
● アキュムレータの初期値
リセット後の初期値は不定です。
図 2.7-3 アキュムレータ (A) の AL-AH 間の転送例 (8 ビット即値 , 拡張 )
MOV A,3000H
(3000H番地の内容をゼロ拡張し,ALレジスタに格納する命令)
MSB
実行前
AH
AL
XXXXH
2456H
2456H
LSB
88H
77H
B5H
DTB
実行後
B53000H
メモリ空間
X
MSB
LSB
DTB
0088H
:不定値
:最上位ビット
:最下位ビット
:データバンクレジスタ
図 2.7-4 アキュムレータ (A) の AL-AH 間の転送例 (8 ビット即値 , 符号拡張 )
MOVW A,3000H
(3000H番地の内容をALレジスタに格納する命令)
MSB
実行前
AH
AL
XXXXH
2456H
DTB
2456H
実行後
メモリ空間
88H
77H
B53000H
LSB
B5H
X
MSB
LSB
DTB
7788H
:不定値
:最上位ビット
:最下位ビット
:データバンクレジスタ
図 2.7-5 アキュムレータ (A) への 32 ビットデータ転送例 ( レジスタ間接 )
MOVL A,@RW1+6
実行前
AH
XXXXH
(RW1の内容+8ビット長オフセットの結果を番地としてロングワード
長読出しを行い,その内容をAレジスタに格納する命令)
DTB
実行後
8F74H
MSB
AL
XXXXH
2B52H
A61540H
A6153EH
A6H
8FH
2BH
74H
52H
15H
38H
LSB
+6
RW1
X
MSB
LSB
DTB
CM44-10150-1
メモリ空間
:不定値
:最上位ビット
:最下位ビット
:データバンクレジスタ
FUJITSU MICROELECTRONICS LIMITED
43
第 2 章 CPU
2.7
MB90930 シリーズ
図 2.7-6 アキュムレータ (A) の AL-AH 間の転送例 (16 ビット , レジスタ間接 )
(RW1の内容+8ビット長オフセットの結果を番地としてワード長
読出しを行い,その内容をAレジスタに格納する命令)
MOVW A,@RW1+6
AH
実行前
XXXXH
1234H
DTB
実行後
1234H
MSB
AL
2B52H
A61540H
A6153EH
A6H
8FH
2BH
74H
52H
15H
38H
LSB
+6
RW1
X
MSB
LSB
DTB
44
メモリ空間
:不定値
:最上位ビット
:最下位ビット
:データバンクレジスタ
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 2 章 CPU
2.7
MB90930 シリーズ
2.7.2
スタックポインタ (USP, SSP)
スタックポインタには , ユーザスタックポインタ (USP) とシステムスタックポインタ (SSP)
があり , いずれも PUSH 命令 , POP 命令およびサブルーチンを実行するときの , データの退
避先や復帰先のメモリアドレスを示すレジスタです。スタックアドレスの上位 8 ビットは ,
ユーザスタックバンクレジスタ (USB) またはシステムスタックバンクレジスタ (SSB) で指定
されます。
コンディションコードレジスタ (CCR) の S フラグが "0" のときは , USP および USB レジス
タが有効になります。S フラグが "1" のときは , SSP および SSB レジスタが有効になりま
す。
■ スタックの選択
F2MC-16LX では , システムスタックとユーザスタックの 2 種類のスタックを使用できます。
スタッ
クのアドレスは , プロセッサステータス (PS:CCR) 内の S フラグによって , 表 2.7-2 のように決定さ
れます。
表 2.7-2 スタックアドレスの指定
スタックアドレス
S フラグ
上位 8 ビット
下位 16 ビット
0
ユーザスタックバンクレジスタ (USB)
ユーザスタックポインタ (USP)
1
システムスタックバンクレジスタ (SSB)
システムスタックポインタ (SSP)
: 初期値
リセットによって S フラグは "1" に初期化されるため , デフォルトではシステムスタックが使用さ
れます。通常 , 割込みルーチンでのスタック操作にはシステムスタックが使用され , 割込みルーチ
ン以外のスタック操作にはユーザスタックが使用されます。特にスタック空間を分ける必要がな
い場合には , システムスタックだけを使用してください。
<注意事項>
割込みが受け付けられると S フラグが "1" にセットされるため , 割込み時には必ずシステムスタック
が使用されます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
45
第 2 章 CPU
2.7
MB90930 シリーズ
図 2.7-7 に , システムスタックを使ったスタック操作例について示します。
図 2.7-7 スタック操作命令とスタックポインタ
Sフラグが"0"のときのPUSHW A
実行前
AL
A624H
Sフラグ 0
実行後
AL
A624H
Sフラグ 0
MSB
USB
C6H
USP
F328H
SSB
56H
SSP
1234H
USB
C6H
USP
F326H
SSB
56H
SSP
1234H
C6F326H
LSB
XXH
XXH
Sフラグが"0"であるため
ユーザスタックを使用
C6F326H
A6H
24H
Sフラグが"1"のときのPUSHW A
MSB
実行前
AL
A624H
Sフラグ 1
実行後
AL
A624H
Sフラグ 1
X
MSB
LSB
USB
C6H
USP
F328H
SSB
56H
SSP
1234H
USB
C6H
USP
F328H
SSB
56H
SSP
1232H
:不定値
:最上位ビット
:最下位ビット
LSB
561232H
XXH
XXH
561232H
A6H
24H
Sフラグが"1"であるため
システムスタックを使用
<注意事項>
スタックポインタに設定する値には , 原則として偶数アドレスを使用してください。奇数アドレスを
設定すると , ワードアクセスが 2 回に分割されるので効率が低下します。
USP レジスタおよび SSP レジスタのリセット後の初期値は不定です。
■ システムスタックポインタ (SSP)
システムスタックポインタ (SSP) を使用するときは , プロセッサステータス (PS) 中のコンディ
ションコードレジスタ (CCR) 内の S フラグを "1" に設定します。この場合 , スタック操作を行う
ときに使用されるアドレスの上位 8 ビットは , システムスタックバンクレジスタ (SSB) により示
されます。
■ ユーザスタックポインタ (USP)
ユーザスタックポインタ (USP) を使用するときは , プロセッサステータス (PS) 中のコンディショ
ンコードレジスタ (CCR) 内の S フラグを "0" に設定します。この場合 , スタック操作を行うとき
に使用されるアドレスの上位 8 ビットは , ユーザスタックバンクレジスタ (USB) により示されま
す。
46
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 2 章 CPU
2.7
MB90930 シリーズ
2.7.3
プロセッサステータス (PS)
プロセッサステータス (PS) は , CPU を制御するビットと CPU の状態を示す各種ビットから
構成されています。
■ プロセッサステータス (PS) のビット構成
PS レジスタは , 次の 3 つのレジスタで構成されています。
• インタラプトレベルマスクレジスタ (ILM)
• レジスタバンクポインタ (RP)
• コンディションコードレジスタ (CCR)
図 2.7-8 に , プロセッサステータス (PS) のビット構成を示します。
図 2.7-8 プロセッサステータス (PS) のビット構成
ILM
RP
bit15 bit14 bit13 bit12 bit11 bit10 bit9
PS ILM2 ILM1 ILM0 B4 B3 B2 B1
CCR
bit8
B0
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
-
I
0
S
1
T
N
Z
V
C
X
X
X
X
X
- : 未定義
X : 不定値
● インタラプトレベルマスクレジスタ (ILM)
CPU が現在受け付けている割込みのレベルを示し , 各周辺機能の割込み要求に対応して設定され
ている割込み制御レジスタの割込みレベル設定ビット (ICR:IL0 ∼ IL2) の値と比較されます。
● レジスタバンクポインタ (RP)
RAM 領域の中で , 汎用レジスタとして使用するメモリブロック ( レジスタバンク ) の先頭アドレ
スを指定するポインタです。
汎用レジスタは全部で 32 バンクあり , RP に 0 ∼ 31 の値をセットしてバンクを指定します。
● コンディションコードレジスタ (CCR)
命令の実行結果や割込みの発生などによって , セット ("1") またはリセット ("0") される各種フラ
グから構成されています。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
47
第 2 章 CPU
2.7
MB90930 シリーズ
■ コンディションコードレジスタ (PS:CCR)
コンディションコードレジスタ (CCR) は , 演算結果や転送データの内容を示すビットと割込み要
求の受付けを制御するビットによって構成されている 8 ビットレジスタです。
図 2.7-9 に , CCR レジスタのビット構成を示します。命令実行時のコンディションコードレジスタ
(CCR) の状態については , 『プログラミングマニュアル』を参照してください。
図 2.7-9 コンディションコードレジスタ (CCR) のビット構成
ILM
RP
CCR
bit15 bit14 bit13 bit12 bit11 bit10 bit9
PS ILM2 ILM1 ILM0 B4
- : 未定義
X : 不定値
B3
B2
B1
bit8
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
B0
-
I
S
T
N
Z
V
C
-
0
1
X
X
X
X
X
CCR 初期値
-01XXXXXB
割込み許可フラグ
スタックフラグ
スティッキィビットフラグ
ネガティブフラグ
フラグ
オーバフローフラグ
キャリフラグ
● 割込み許可フラグ (I)
ソフトウェア割込み以外のすべての割込み要求に対し , I フラグが "1" のときは割込みが許可され
, "0" のときは割込みが禁止されます。リセットによりクリアされます。
● スタックフラグ (S)
スタック操作に使用されるポインタを示すフラグです。S フラグが "0" のときはユーザスタックポ
インタ (USP) が有効になり , "1" のときはシステムスタックポインタ (SSP) が有効になります。割
込み受付け時およびリセット時にセットされます。
● スティッキィビットフラグ (T)
論理右シフト命令または算術右シフト命令を実行したときに , キャリビットからシフトアウトさ
れたデータに 1 つ以上 "1" があれば "1" となり , それ以外は "0" となります。シフト量がの場合も
"0" となります。
● ネガティブフラグ (N)
演算結果の最上位ビットが "1" のときには "1" にセットされ , "0" のときには "0" にクリアされます。
● フラグ (Z)
演算結果のビットがすべて "0" の場合には "1" にセットされ , それ以外は "0" にクリアされます。
● オーバフローフラグ (V)
演算の実行により , 符号付き数値としてオーバフローが発生すると "1" にセットされ , 発生しない
と "0" にクリアされます。
● キャリフラグ (C)
演算の実行により , 最上位ビットからの桁上りまたは最上位ビットへの桁下りが発生すると "1" に
セットされ , 発生しないと "0" にクリアされます。
48
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 2 章 CPU
2.7
MB90930 シリーズ
■ レジスタバンクポインタ (PS:RP)
レジスタバンクポインタ (RP) は , 現在使用している汎用レジスタバンクの先頭アドレスを示すレ
ジスタで , 汎用レジスタアドレッシング時の実アドレス変換に使用されます。
図 2.7-10 に , レジスタバンクポインタ (RP) のビット構成を示します。
図 2.7-10 レジスタバンクポインタ (RP) のビット構成
ILM
RP
CCR
bit15 bit14 bit13 bit12 bit11 bit10 bit9
PS ILM2 ILM1 ILM0 B4
B3
B2
B1
bit8
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
B0
-
I
S
T
N
Z
V
C
-
0
1
X
X
X
X
X
RP 初期値
00000B
- : 未定義
X : 不定値
■ 汎用レジスタ領域とレジスタバンクポインタ
レジスタバンクポインタは , F2MC-16LX の持つ汎用レジスタと , それが存在する内部 RAM のア
ドレスとの関係を示すポインタです。RP の内容と実アドレスの関係は , 図 2.7-11 に示す変換規則
になっています。
図 2.7-11 汎用レジスタ領域の物理アドレス変換規則
変換式 [ 000180H +(RP)× 10H ]
RP=10H の場合
000370H
レジスタバンク31
:
:
000280H
レジスタバンク16
:
:
000180H
レジスタバンク 0
• RP は , "00H ∼ 1FH" までの値をとることができます。そのため , レジスタバンクの先頭アドレ
スは , "000180H ∼ 00037FH" の範囲に設定できます。
• アセンブラ命令では , RP に転送する 8 ビットの即値転送命令を使用できますが , 実際に使用さ
れるのはそのデータの下位 5 ビットだけです。
• リセット後の RP レジスタの初期値は "00H" になります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
49
第 2 章 CPU
2.7
MB90930 シリーズ
■ インタラプトレベルマスクレジスタ (PS:ILM)
インタラプトレベルマスクレジスタ (ILM) は , CPU が受け付ける割込みのレベルを示す 3 ビット
のレジスタです。
図 2.7-12 に , インタラプトレベルマスクレジスタ (ILM) のビット構成を示します。割込みの詳細
は , 「第 3 章 割込み」を参照してください。
図 2.7-12 インタラプトレベルマスクレジスタ (ILM) のビット構成
ILM
RP
CCR
bit15 bit14 bit13 bit12 bit11 bit10 bit9
PS ILM2 ILM1 ILM0 B4
B3
B2
B1
bit8
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
B0
-
I
S
T
N
Z
V
C
-
0
1
X
X
X
X
X
ILM 初期値
000B
- : 未定義
X : 不定値
インタラプトレベルマスクレジスタ (ILM) は, CPUが現在受け付けている割込みレベルを示し, 各
周辺機能の割込み要求に対応して設定されている割込み制御レジスタ (ICR00 ∼ ICR15) の IL0 ∼
IL2 ビットの値と比較されます。割込み許可フラグが許可 (CCR:I=1) の状態で , このビットが示す
値より小さい値 (割込みレベル) の割込み要求があった場合にのみ, CPUは割込み処理を行います。
• 割込みが受け付けられると , その割込みレベル値がインタラプトレベルマスクレジスタ (ILM)
にセットされ , これ以降の同じかそれより弱いレベルの割込みは受け付けられなくなります。
• インタラプトレベルマスクレジスタ (ILM) は , リセットによりすべて "0" に初期化されるため ,
割込みレベルは最強に設定されており , 割込み禁止の状態になります。
• アセンブラ命令では , インタラプトレベルマスクレジスタ (ILM) に転送する 8 ビットの即値転
送命令を使用できますが , 実際に使用されるのはそのデータの下位 3 ビットだけです。
表 2.7-3 インタラプトレベルマスクレジスタ (ILM) と割込みレベルの高低
50
ILM2
ILM1
ILM0
割込みレベル
割込みレベル高低
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
FUJITSU MICROELECTRONICS LIMITED
低
CM44-10150-1
第 2 章 CPU
2.7
MB90930 シリーズ
2.7.4
プログラムカウンタ (PC)
プログラムカウンタ (PC) は , CPU が次に実行する命令コードのメモリアドレスの下位 16
ビットを示す 16 ビットカウンタです。
■ プログラムカウンタ (PC)
CPU が , 次に実行する命令コードを格納しているアドレスは , 上位 8 ビットをプログラムカウン
タバンクレジスタ (PCB) で指定し , 下位 16 ビットをプログラムカウンタ (PC) で指定します。実
際のアドレスは図 2.7-13 のように , 24 ビットに合成して使用します。PC は条件分岐命令 , サブ
ルーチンコール命令 , 割込み , リセットなどで内容が更新されます。また , オペランドを読み出す
ときのベースポインタとしても使用できます。
図 2.7-13 プログラムカウンタ (PC)
上位8ビット
PCB
FEH
下位16ビット
PC
ABCDH
FEABCDH
次に実行する命令
<注意事項>
PC, PCB ともにプログラム (MOV PC, #FF など ) で直接書き換えることはできません。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
51
第 2 章 CPU
2.7
MB90930 シリーズ
ダイレクトページレジスタ (DPR)
2.7.5
ダイレクトページレジスタ (DPR) は , 短縮直接アドレス指定方式の命令実行時にオペランド
アドレスの bit8 ∼ bit15 (addr8 ∼ addr15) を指定する 8 ビットレジスタです。
■ ダイレクトページレジスタ (DPR)
DPR は , 図 2.7-14 に示すように短縮直接アドレス指定方式の命令実行時にオペランドアドレスの
bit8 ∼ bit15 (addr8 ∼ addr15) を指定します。DPR は 8 ビット長であり , リセットで "01H" に初期化
されます。また , 命令によって , 読出しと書込みができます。
図 2.7-14 ダイレクトページレジスタ (DPR) による物理アドレスの生成
DTBレジスタ
A A A A A A A A
DPRレジスタ
B B B B B B B B
24ビット
MSB
物理アドレス
A A A A A A A A
bit24
MSB
LSB
命令中の直接アドレス
C C C C C C C C
LSB
B B B B B B B B
bit16 bit15
C C C C C C C C
bit8 bit7
bit0
:最上位ビット
:最下位ビット
ダイレクトページレジスタ (DPR) の設定とデータアクセスの例を図 2.7-15 に示します。
図 2.7-15 ダイレクトページレジスタ (DPR) の設定とデータアクセス例
MOV S:56H, #5AH
命令実行結果
上位8ビット 下位8ビット
DTBレジスタ
12H
123458H
5AH
123456H
DPRレジスタ
MSB
LSB
52
34H
:最上位ビット
:最下位ビット
123454H
MSB
FUJITSU MICROELECTRONICS LIMITED
LSB
CM44-10150-1
MB90930 シリーズ
2.7.6
バンクレジスタ (PCB, DTB, USB, SSB, ADB)
第 2 章 CPU
2.7
バンクレジスタは , バンク方式アドレッシングの最上位 8 ビットアドレスを指定するレジスタ
で , 次の 5 つのレジスタで構成されます。
• プログラムカウンタバンクレジスタ (PCB)
• データバンクレジスタ (DTB)
• ユーザスタックバンクレジスタ (USB)
• システムスタックバンクレジスタ (SSB)
• アディショナルデータバンクレジスタ (ADB)
各バンクレジスタは , それぞれプログラム空間 , データ空間 , ユーザスタック空間 , システム
スタック空間およびアディショナル空間の配置されるメモリバンクを示します。
■ バンクレジスタ (PCB, DTB, USB, SSB, ADB)
● プログラムカウンタバンクレジスタ (PCB)
PCB は , プログラム (PC) 空間を指定するバンクレジスタです。
16M バイト全空間に分岐する JMPP,
CALLP, RETP および RETI 命令実行時 , ソフトウェア割込み命令実行時 , ハードウェア割込み時お
よび例外発生時に PCB は書き換わります。
● データバンクレジスタ (DTB)
DTB は , データ (DT) 空間を指定するバンクレジスタです。
● ユーザスタックバンクレジスタ (USB) / システムスタックバンクレジスタ (SSB)
USB および SSB は , スタック (SP) 空間を指定するバンクレジスタです。USB と SSB のどちらが
使用されるかは , プロセッサステータス (PS:CCR) 内の S フラグの値に依存します。詳細は ,「2.7.2
スタックポインタ (USP, SSP)」を参照してください。
● アディショナルデータバンクレジスタ (ADB)
ADB は , アディショナル (AD) 空間を指定するバンクレジスタです。
● 各バンクの設定とデータアクセス
すべてのバンクレジスタはバイト長であり , リセットにより PCB は "FFH" に初期化され , そのほ
かは "00H" に初期化されます。PCB は , 読出しはできますが書込みはできません。PCB 以外のバ
ンクレジスタは読み書き可能です。
<注意事項>
ただし , MB90930 シリーズは , デバイスに内蔵されるメモリ空間までのサポートになります。
各レジスタの動作については , 「2.4.2 バンク方式によるアドレス指定」を参照してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
53
第 2 章 CPU
2.8
2.8
MB90930 シリーズ
汎用レジスタ
汎用レジスタは , "000180H" ∼ "00037FH" の RAM 上に存在し , 16 ビット× 8 本を 1 バンク
として割り当てたメモリブロックです。汎用の 8 ビットレジスタ ( バイトレジスタ (R0 ∼
R7)) , 16 ビットレジスタ ( ワードレジスタ (RW0 ∼ RW7)) または 32 ビットレジスタ ( ロング
ワードレジスタ (RL0 ∼ RL3)) として使用できます。
汎用レジスタは , 短い命令で高速に RAM をアクセスすることができます。レジスタバンクで
ブロック化されているために , 内容の保護や機能単位の分割が容易です。また , ロングワード
レジスタとして使用するときには , 全空間を直接アクセスするリニアポインタとしても使用で
きます。
■ 汎用レジスタの構成
汎用レジスタは , "000180H" ∼ "00037FH" の RAM 上に全部で 32 バンク存在し , レジスタバンクポ
インタ (RP) で使用するバンクを指定します。また , RP を読み出すと現在使用中のバンクが分かり
ます。RP は , 各バンクの先頭アドレスを次式のように決定します。
汎用レジスタの先頭アドレス =000180H + RP × 10H
図 2.8-1 に , 汎用レジスタバンクのメモリ空間内の配置と構成を示します。
図 2.8-1 汎用レジスタバンクのメモリ空間内の配置と構成
内蔵RAM
000380H
000370H
000360H
0002E0H
0002D0H
0002C0H
0002B0H
0001B0H
0001A0H
000190H
000180H
:
レジスタバンク31
バイト
アドレス
レジスタバンク30
02CEH
:
:
:
02CCH
レジスタバンク21
02C8H
バイト
アドレス
R6
R4
R2
R0
02CAH
R7
02CFH
RW7
R5
R3
R1
02CDH
RW6
02CBH
RW5
RW4
02C9H
レジスタバンク20
02C6H
RW3
02C7H
レジスタバンク19
02C4H
02C5H
:
:
:
:
:
02C2H
RW2
RW1
RW0
RP
レジスタバンク 2
レジスタバンク 1
レジスタバンク 0
:
14H
02C0H
LSB
16ビット
02C3H
02C1H
RL3
RL2
RL1
RL0
MSB
変換式[000180H +RP × 10H]
R0
RW0
RL0
MSB
LSB
~ R7 :バイトレジスタ
~ RW7 :ワードレジスタ
~ RL3 :ロングワードレジスタ
: 最上位ビット
: 最下位ビット
<注意事項>
レジスタバンクポインタ (RP) は , リセット後に "00H" に初期化されます。
54
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 2 章 CPU
2.8
MB90930 シリーズ
■ レジスタバンク
レジスタバンクは汎用レジスタ ( バイトレジスタ (R0 ∼ R7), ワードレジスタ (RW0 ∼ RW7), ロン
グワードレジスタ (RL0 ∼ RL3)) として , 各種演算やポインタに使用できます。ロングワードレジ
スタは , メモリの全空間を直接アクセスするリニアポインタとしても使用できます。レジスタバ
ンクのレジスタの内容は , 通常の RAM と同様に , リセットでは初期化されず , リセット前の状態
が保持されます。ただし , パワーオン時は不定となります。表 2.8-1 に , 汎用レジスタの代表的な
機能を示します。
表 2.8-1 汎用レジスタの代表的な機能
レジスタ名
機能
R0 ∼ R7
各種命令のオペランドとして使用
( 注意事項 ) R0 はバレルシフトのカウンタおよびノーマライズ ( 正規化 ) 命
令のカウンタとしても使用
RW0 ∼ RW7
ポインタとして使用
各種命令のオペランドとして使用
( 注意事項 ) RW0 はストリング命令のカウンタとしても使用
RL0 ∼ RL3
ロングポインタとして使用
各種命令のオペランドとして使用
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
55
第 2 章 CPU
2.9
2.9
MB90930 シリーズ
プリフィックスコード
命令の前にプリフィックスコードを置くことにより , その命令の動作の一部を変更することが
できます。プリフィックスコードには次の 3 種類があります。
• バンクセレクトプリフィックス (PCB, DTB, ADB, SPB)
• コモンレジスタバンクプリフィックス (CMR)
• フラグ変化抑止プリフィックス (NCC)
■ プリフィックスコード
● バンクセレクトプリフィックス (PCB, DTB, ADB, SPB)
命令の前にバンクセレクトプリフィックスを置くと , その命令がアクセスするメモリ空間をアド
レス指定方式とは無関係に任意に選択できます。
● コモンレジスタバンクプリフィックス (CMR)
レジスタバンクをアクセスする命令の前に , コモンレジスタバンクプリフィックスを置くと , 現在
の レ ジ ス タ バ ン ク ポ イ ン タ (RP) の 値 に 関 係 な く , そ の 命 令 の レ ジ ス タ ア ク セ ス を す べ て
"000180H" ∼ "00018FH" にあるコモンバンク (RP=0 のときに選択されるレジスタバンク ) に変更で
きます。
● フラグ変化抑止プリフィックス (NCC)
フラグ変化を抑止したい命令の前に , フラグ変化抑止プリフィックスコードを置くと , 命令の実行
に伴うフラグ変化を抑止できます。
■ バンクセレクトプリフィックス (PCB, DTB, ADB, SPB)
データアクセスのときに使用されるメモリ空間は , アドレス指定方式ごとに定められています。
命
令の前にバンクセレクトプリフィックスを置くと , その命令がアクセスするメモリ空間をアドレ
ス指定方式とは無関係に任意に選択できます。バンクセレクトプリフィックスと , 対応するメモ
リ空間を表 2.9-1 に示します。
表 2.9-1 バンクセレクトプリフィックス
バンクセレクト
プリフィックス
選択される空間
PCB
プログラム空間
DTB
データ空間
ADB
アディショナル空間
SPB
コンディションコードレジスタ (CCR) の S フラグの値が "0" のとき
ユーザスタック空間が "1" のときにシステムスタック空間が用いら
れます。
バンクセレクトプリフィックスを使用した場合 , 一部の命令では例外的な動作を行います。表 2.92 に , バンクセレクトプリフィックスの影響を受けない命令を , 表 2.9-3 にバンクセレクトプリ
フィックス使用時に注意すべき命令を示します。
56
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 2 章 CPU
2.9
MB90930 シリーズ
表 2.9-2 バンクセレクトプリフィックスの影響を受けない命令
命令の種類
命令
MOVS
SCEQ
FILS
ストリング命令
スタック操作命令
PUSHW
I/O アクセス命令
MOV
MOVW
MOV
MOV
MOVB
SETB
BBC
WBTC
割込み復帰命令
RETI
A, io
A, io
io, A
io, #imm8
A, io:bp
io:bp
io:bp, rel
io, bp
バンクセレクトプリフィックスの効果
MOVSW
SCWEQ
FILSW
プリフィックスの有無にかかわらず , オ
ペランドで指定されたバンクレジスタが
使用されます。
POPW
プリフィックスの有無にかかわらず , S フ
ラグが "0" のときにはユーザスタックバ
ンク (USB) が , S フラグが "1" のときには
システムスタックバンク (SSB) が使用さ
れます。
MOVX
A, io
MOVW
MOVW
MOVB
CLRB
BBS
WBTS
io, A
io, #imm16
io:bp, A
io:bp
io:bp, rel
io:bp
プリフィックスの有無にかかわらず , I/O
空間 ("000000H" ∼ "0000FFH") がアクセス
されます。
プリフィックスの有無にかかわらず , シ
ステムスタックバンク (SSB) が使用され
ます。
表 2.9-3 バンクセレクトプリフィックス使用時に注意すべき命令
命令の種類
命令
説明
フラグ変更命令
AND CCR, #imm8
OR CCR, #imm8
プリフィックスの効果が次の命令まで及び
ます。
ILM 設定命令
MOV ILM, #imm8
プリフィックスの効果が次の命令まで及び
ます。
PS 復帰命令
POPW PS
PS 復帰命令に対してはバンクセレクトプ
リフィックスを付加しないでください。
■ コモンレジスタバンクプリフィックス (CMR)
複数のタスク間でのデータ交換を容易にするには , そのときのレジスタバンクポインタ (RP) がど
のような値でも , 比較的簡単に, ある定められた同一のレジスタバンクをアクセスする手段が必要
です。そのために , F2MC -16LX では , 各タスクで共通に使用できるレジスタバンクを用意してい
ます。これをコモンバンクといいます。コモンバンクは , "000180H" ∼ "00018FH" 番地にあります。
レジスタバンクをアクセスする命令の前に , コモンレジスタバンクプリフィックス (CMR) を置く
と , 現在のレジスタバンクポインタ (RP) の値に関係なく , その命令のレジスタアクセスをすべて
"000180H" ∼ "00018FH" にあるコモンバンク (RP=0 のときに選択されるレジスタバンク ) に変更で
きます。ただし , 表 2.9-4 に示す命令に対しては注意が必要です。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
57
第 2 章 CPU
2.9
MB90930 シリーズ
表 2.9-4 コモンレジスタバンクプリフィックス (CMR) 使用時に注意すべき命令
命令の種類
命令
MOVSW
SCWEQ
FILSW
説明
ストリング命令
MOVS
SCEQ
FILS
フラグ変更命令
AND CCR, #imm8
OR CCR, #imm8
プリフィックスの効果が次の命令まで及びま
す。
PS 復帰命令
POPW PS
プリフィックスの効果が次の命令まで及びま
す。
ILM 設定命令
MOV ILM, #imm8
プリフィックスの効果が次の命令まで及びま
す。
ストリング命令に対しては , CMR プリ
フィックスを付加しないでください。
■ フラグ変化抑止プリフィックス (NCC)
不要なフラグ変化を抑止するために , フラグ変化抑止プリフィックス (NCC) を使用します。フラ
グ変化を抑止したい命令の前に , NCC プリフィックスを置くと , 命令の実行に伴うフラグ変化を
抑止できます。変化が抑止されるフラグには T, N, Z, V, C があります。ただし , 表 2.9-5 に示す命
令に対しては注意が必要です。
表 2.9-5 フラグ変化抑止プリフィックス (NCC) の使用時に注意すべき命令
命令の種類
命令
ストリング命令
MOVS
SCEQ
FILS
フラグ変更命令
AND CCR, #imm8
OR CCR, #imm8
プリフィックスの有無にかかわらず , コンディショ
ンコードレジスタ (CCR) は命令の仕様どおりに変化
します。プリフィックスの効果が次の命令まで及び
ます。
PS 復帰命令
POPW PS
プリフィックスの有無にかかわらず , コンディショ
ンコードレジスタ (CCR) は命令の仕様どおりに変化
します。プリフィックスの効果が次の命令まで及び
ます。
ILM 設定命令
MOV ILM, #imm8
プリフィックスの効果が次の命令まで及びます。
割込み命令
割込み復帰命令
INT #vct8
INT adder16
RETI
プリフィックスの有無にかかわらず , コンディショ
ンコードレジスタ (CCR) は命令の仕様どおりに変化
します。
コンテキスト
スイッチ命令
JCTX @ A
58
MOVSW
SCWEQ
FILSW
説明
INT9
INTP addr24
ストリング命令に対しては , NCC プリフィックスを
付加しないでください。
プリフィックスの有無にかかわらず , コンディショ
ンコードレジスタ (CCR) は命令の仕様どおりに変化
します。
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 2 章 CPU
2.9
MB90930 シリーズ
■ プリフィックスコードに関する制約
プリフィックスコードの使用には , 次の 3 つの制約があります。
• プリフィックスコードや割込み / ホールド抑止命令の実行中は , 割込み / ホールド要求を受け付
けません。
• 割込み / ホールド命令の前にプリフィックスコードを置いた場合にはプリフィックスコードの
効果が遅延します。
• 競合するプリフィックスコードが連続した場合には最後のものが有効になります。
表 2.9-6 にプリフィックスコードと割込み / ホールド抑止命令を示します。
表 2.9-6 プリフィックスコードと割込み / ホールド抑止命令
プリフィックス
コード
割込み / ホールド抑止命令
( プリフィックスコードの効果を遅延させる命令 )
PCB
DTB
ADB
SPB
CMR
NCC
割込みやホールド要求
を受け付けない命令
MOV
OR
AND
POPW
ILM, #imm8
CCR, #imm8
CCR, #imm8
PS
● 割込み / ホールドの抑止
図 2.9-1 に示すように , プリフィックスコードや割込み / ホールド命令の実行中は , 割込みやホー
ルド要求が発生しても受け付けません。この場合に割込み / ホールド処理が行われるのは , プリ
フィックスコードや割込み / ホールド抑止命令以降 , 初めてこれ以外の命令が実行された後になり
ます。
図 2.9-1 割込み / ホールドの抑止
割込み/ホールド抑止命令
・・・・・・・・・・・・・・・
(a)
・・・
(a) 普通の命令
割込み要求発生
CM44-10150-1
割込み受付け
FUJITSU MICROELECTRONICS LIMITED
59
第 2 章 CPU
2.9
MB90930 シリーズ
● プリフィックスコードの効果遅延
図 2.9-2 に示すように , 割込み / ホールド抑止命令の前にプリフィックスコードを置いた場合には
, プリフィックスコードの効果は割込み / ホールド抑止命令後の最初の命令に対して有効となりま
す。
図 2.9-2 割込み / ホールド抑止命令とプリフィックスコード
割込み/ホールド抑止命令
MOV A,FFH
NCC
・・・・
MOV ILM,#imm8
ADD A,01H
CCR:XXX10XXB
CCR:XXX10XXB
NCCによりCCRは変化しません。
● プリフィックスコードの連続
図 2.9-3 に示すように , 競合するプリフィックスコード (PCB, ADB, DTB, SPB) が連続していた場
合には最後のものが有効になります。
図 2.9-3 プリフィックスコードの連続
プリフィックスコード
・・・
ADB
DTB
PCB
ADD A,01H
・・・
プリフィックスコードは
PCBが有効になります。
60
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第3章
割込み
割込みと拡張インテリジェント I/O サービス
(EI2OS) について説明します。
3.1 割込みの概要
3.2 割込み要因と割込みベクタ
3.3 割込み制御レジスタと周辺機能
3.4 ハードウェア割込み
3.5 ソフトウェア割込み
3.6 拡張インテリジェント I/O サービス (EI2OS) による
割込み
3.7 未定義命令の実行による例外処理割込み
3.8 割込み処理のスタック動作
3.9 割込み処理のプログラム例
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
61
第 3 章 割込み
3.1
3.1
MB90930 シリーズ
割込みの概要
F2MC-16LX にはイベントなどが発生した場合に現在実行中の処理を中断して , 別に定義した
プログラムへ制御を移す 4 つの割込み機能があります。
• ハードウェア割込み
• ソフトウェア割込み
• 拡張インテリジェント I/O サービス (EI2OS) による割込み
• 例外処理
■ 割込みの種類と機能
● ハードウェア割込み
周辺機能からの割込み要求に対して , ユーザの定義した割込み処理用プログラムへ制御を移行す
る機能です。
● ソフトウェア割込み
ソフトウェア割込み専用の命令 (INT 命令など ) の実行によって , ユーザの定義した割込み処理用
プログラムへ制御を移行する機能です。
● 拡張インテリジェント I/O サービス (EI2OS) による割込み
EI2OS は周辺機能とメモリ間の自動データ転送機能です。従来 , 割込み処理プログラムで行ってい
たデータ転送を DMA( ダイレクトメモリアクセス ) のように行うことができます。指定回数のデー
タ転送処理が終了すると , 自動的に割込み処理プログラムを実行します。
EI2OS による割込みは , ハードウェア割込みの一種です。
● 例外処理
例外処理は , 基本的には割込みと同じものであり , 命令の境目で例外事項 ( 未定義命令の実行 ) が
発生したことを検出した段階で , 通常処理を中断して行われます。ソフトウェア割込み命令の
"INT10" と等価です。
62
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.1
MB90930 シリーズ
■ 割込み動作
4 種類の割込み機能の起動および復帰処理を図 3.1-1 に示します。
図 3.1-1 割込み動作の概略フロー
スタート
メインプログラム
YES
有効な
ハードウェア割込み
要求あり
ストリング系
NO
命令実行中*
割込み起動/復帰処理
YES
EI2OS?
次の命令の取込みと
デコード
EI2OS
NO
YES
INT命令か?
NO
EI2OS処理
ソフトウェア
割込み/
例外処理
システムスタックへ
専用レジスタ退避
ハードウェア割込み
受付け禁止 (I=0)
ハードウェア
割込み
YES
システムスタックへ
専用レジスタ退避
指定回数終了か?
または周辺機能からの
終了要求があるか?
NO
CPU割込み処理レベル
(ILM)更新
YES
RETI命令か?
NO
システムスタックから
専用レジスタが復帰し,
割込みルーチン呼出し
前のルーチンへ復帰
通常命令実行
NO
割込み
復帰処理
割込みベクタを
読み出してPC,PCB
を更新し,割込み
ルーチンへ分岐
ストリング系
命令の繰返し完了*
YES
PC更新で次命令へ
ポインタ移動
*: ストリング系命令の実行中は, 1ステップごとに割込み判定を行います。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
63
第 3 章 割込み
3.2
MB90930 シリーズ
割込み要因と割込みベクタ
3.2
F2MC-16LX には , 256 種類の割込み要因に対応する機能があり , メモリの最上位アドレスに
256 組の割込みベクタテーブルを割り当てています。この割込みベクタはすべての割込みで
共有します。
ソフトウェア割込みは , このすべての割込み (INT0 ∼ INT256) を使用することができますが ,
一部の割込みベクタはハードウェア割込みや例外処理割込みで共有されています。また , ハー
ドウェア割込みでは , 各周辺機能に対し , 割込みベクタと割込み制御レジスタ (ICR) が固定さ
れています。
■ 割込みベクタ
割込み処理のときに参照する割込みベクタテーブルは , メモリ領域の最上位アドレス ("FFFC00H" ∼
"FFFFFFH") に割り当てられています。また , 割込みベクタは EI2OS, 例外処理 , ハードウェア割込
みおよびソフトウェア割込みで同じ領域を共有しています。割込み番号と割込みベクタの割当て
を表 3.2-1 に示します。
表 3.2-1 割込みベクタ一覧表
ソフトウェア
割込み命令
ベクタ
アドレス L
ベクタ
アドレス M
ベクタ
アドレス H
モード
データ
割込み
番号
ハードウェア割込み
INT0
FFFFFCH
FFFFFDH
FFFFFEH
未使用
#0
なし
:
:
:
:
:
:
:
INT7
FFFFE0H
FFFFE1H
FFFFE2H
未使用
#7
なし
INT8
FFFFDCH
FFFFDDH
FFFFDEH
FFFFDFH
#8
( リセットベクタ )
INT9
FFFFD8H
FFFFD9H
FFFFDAH
未使用
#9
なし
INT10
FFFFD4H
FFFFD5H
FFFFD6H
未使用
#10
< 例外処理 >
INT11
FFFFD0H
FFFFD1H
FFFFD2H
未使用
#11
ハードウェア割込み #0
INT12
FFFFCCH
FFFFCDH
FFFFCEH
未使用
#12
ハードウェア割込み #1
INT13
FFFFC8H
FFFFC9H
FFFFCAH
未使用
#13
ハードウェア割込み #2
INT14
FFFFC4H
FFFFC5H
FFFFC6H
未使用
#14
ハードウェア割込み #3
:
:
:
:
:
:
:
INT254
FFFC04H
FFFC05H
FFFC06H
未使用
#254
なし
INT255
FFFC00H
FFFC01H
FFFC02H
未使用
#255
なし
<注意事項>
使用されない割込みベクタも , 例外処理などのアドレスに設定してください。
64
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.2
MB90930 シリーズ
■ 割込み要因と割込みベクタ・割込み制御レジスタ
表 3.2-2 に , ソフトウェア割込みを除く割込み要因と , 割込みベクタ・割込み制御レジスタの関係
を示します。
表 3.2-2 割込み要因と割込みベクタ・割込み制御レジスタ
EI2OS
対応
割込み要因
リセット
INT9 命令
例外処理
CAN1 受信
CAN1 送信 / ノードステータス
インプットキャプチャ 0
DTP/ 外部割込み・ch.0/ch.1 検出時
リロードタイマ 0
リロードタイマ 2
インプットキャプチャ 1
DTP/ 外部割込み・ch.2/ch.3 検出時
インプットキャプチャ 2
リロードタイマ 3
インプットキャプチャ 3/4/5/6/7
DTP/ 外部割込み・ch.4/ch.5 検出時 , UART3 受信
PPG タイマ 0
DTP/ 外部割込み・ch.6/ch.7 検出時 , UART3 送信
PPG タイマ 1
リロードタイマ 1
PPG タイマ 2/3/4/5
リアルタイム時計タイマ
時計タイマ ( サブクロック )
フリーランタイマオーバフロー / クリア
A/D コンバータ変換終了
サウンドジェネレータ 0/1
タイムベースタイマ
UART2 受信
UART2 送信
UART1 受信
UART1 送信
UART0 受信
UART0 送信
フラッシュメモリステータス
遅延割込み発生モジュール
割込みベクタ
番号
アドレス
#08
#09
#10
#11
#12
#13
#14
#15
#16
#17
#18
#19
#20
#21
#22
#23
#24
#25
#26
#27
#28
#29
08H
09H
0AH
0BH
0CH
0DH
0EH
0FH
10H
11H
12H
13H
14H
15H
16H
17H
18H
19H
1AH
1BH
1CH
1DH
FFFFDCH
FFFFD8H
FFFFD4H
FFFFD0H
FFFFCCH
FFFFC8H
FFFFC4H
FFFFC0H
FFFFBCH
FFFFB8H
FFFFB4H
FFFFB0H
FFFFACH
FFFFA8H
FFFFA4H
FFFFA0H
FFFF9CH
FFFF98H
FFFF94H
FFFF90H
FFFF8CH
FFFF88H
×
#30
1EH
FFFF84H
×
#31
#32
#33
#34
#35
#36
#37
#38
#39
#40
1FH
20H
21H
22H
23H
24H
25H
26H
27H
28H
FFFF80H
FFFF7CH
FFFF78H
FFFF74H
FFFF70H
FFFF6CH
FFFF68H
FFFF64H
FFFF60H
FFFF5CH
#41
29H
FFFF58H
#42
2AH
FFFF54H
×
×
×
×
×
×
×
×
×
×
割込み制御レジスタ
ICR
アドレス
-
-
ICR00
0000B0H*1
ICR01
0000B1H*1
ICR02
0000B2H*1
ICR03
0000B3H*1
ICR04
0000B4H*1
ICR05
0000B5H*1
ICR06
0000B6H*1
ICR07
0000B7H*1
ICR08
0000B8H*1
ICR09
0000B9H*1
ICR10
0000BAH*1
ICR11
0000BBH*1
ICR12
0000BCH*1
ICR13
0000BDH*1
ICR14
0000BEH*1
ICR15
0000BFH*1
優先度
*2
高い
低い
×
: 使用可能 ,
停止機能付き , : 使用可能 , × : 使用不可
:ICR を共有する割込み要因を使用しないときに使用可能
*1: • ICR レジスタを共用している周辺機能は , 割込みレベルが同一になります。
• ICR レジスタを共用している周辺機能で拡張インテリジェント I/O サービス (EI2OS) を使用する場合は , どちらか一
方しか利用できません。
• ICR レジスタを共用している周辺機能の場合 , 片方で拡張インテリジェント I/O サービス (EI2OS) を指定すると , も
う一方での割込みの使用はできなくなります。
*2: 同時に同じレベルの割込みが発生した場合の優先度です。
EI2OS
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
65
第 3 章 割込み
3.3
3.3
MB90930 シリーズ
割込み制御レジスタと周辺機能
割込み制御レジスタ (ICR00 ∼ ICR15) は , 割込みコントローラ内にあり , 割込み機能を持つ
すべての周辺機能に対応して存在します。このレジスタは , 割込みと拡張インテリジェント
I/O サービス (EI2OS) の制御を行います。
■ 割込み制御レジスタ一覧
表 3.3-1 に , 割込み制御レジスタと対応する周辺機能の一覧を示します。
表 3.3-1 割込み制御レジスタ一覧
アドレス
0000B0H
レジスタ
略称
対応する周辺機能
割込み制御レジスタ 00
ICR00
0000B1H
割込み制御レジスタ 01
ICR01
使用禁止
CAN1
0000B2H
割込み制御レジスタ 02
ICR02
インプットキャプチャ 0, DTP/ 外部割込み 0/1
0000B3H
割込み制御レジスタ 03
ICR03
リロードタイマ 0/2
0000B4H
割込み制御レジスタ 04
ICR04
インプットキャプチャ 1, DTP/ 外部割込み 2/3
0000B5H
割込み制御レジスタ 05
ICR05
リロードタイマ 3
0000B6H
割込み制御レジスタ 06
ICR06
インプットキャプチャ 3/4/5/6/7, DTP/ 外部割込み 4/5, UART3
0000B7H
割込み制御レジスタ 07
ICR07
PPG タイマ 0, DTP/ 外部割込み 6/7, UART3
0000B8H
割込み制御レジスタ 08
ICR08
PPG タイマ 1, リロードタイマ 1
0000B9H
割込み制御レジスタ 09
ICR09
PPG タイマ 2/3/4/5, リアルタイム時計タイマ , 時計タイマ
0000BAH
割込み制御レジスタ 10
ICR10
フリーランタイマ , A/D コンバータ
0000BBH
割込み制御レジスタ 11
ICR11
0000BCH
割込み制御レジスタ 12
ICR12
タイムベースタイマ , サウンドジェネレータ 0/1
UART2
0000BDH
割込み制御レジスタ 13
ICR13
UART1
0000BEH
割込み制御レジスタ 14
ICR14
UART0
0000BFH
割込み制御レジスタ 15
ICR15
フラッシュメモリ , 遅延割込み発生モジュール
■ 割込み制御レジスタの機能
割込み制御レジスタ (ICR) には , それぞれ次に示す 4 つの機能があります。
• 対応する周辺機能の割込みレベルの設定
• 対応する周辺機能の割込みを通常割込みにするか , 拡張インテリジェント I/O サービス (EI2OS)
にするかの選択
• 拡張インテリジェント I/O サービス (EI2OS) のチャネルの選択
• 拡張インテリジェント I/O サービス (EI2OS) のステータスの表示
割込み制御レジスタ (ICR) は , 図 3.3-1 と図 3.3-2 に示すように , 書込み時と読出し時で一部機能が
異なります。
<注意事項>
割込み制御レジスタ (ICR) に対するリードモディファイライト (RMW) 系命令でのアクセスは , 誤動
作を引き起こしますので行わないでください。
66
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.3
MB90930 シリーズ
3.3.1
割込み制御レジスタ (ICR00 ∼ ICR15)
割込み制御レジスタは , 割込み機能を持つすべての周辺機能に対応し , 割込み要求発生時の処
理を制御します。このレジスタは書込み時と読出し時では , 一部の機能が異なります。
■ 割込み制御レジスタ (ICR00 ∼ ICR15)
図 3.3-1 割込み制御レジスタ (ICR00 ∼ ICR15) 書込み時
書込み時
アドレス MSB
~
0000B0H
0000BFH
ICS3 ICS2 ICS1 ICS0 ISE
IL2
LSB
初期値
IL0
00000111B
IL1
IL2
IL1
IL0
割込みレベル設定ビット
0
0
0
割込みレベル0 (最強)
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
1
1
1
割込みレベル7 (割込みなし)
EI2OS許可ビット
ISE
0
割込み発生時に割込みシーケンスを起動
1
割込み発生時にEI2OSを起動
ICS3 ICS2 ICS1 ICS0
MSB : 最上位ビット
LSB : 最下位ビット
: 初期値
CM44-10150-1
EI2OSチャネル選択ビット
チャネル ディスクリプタアドレス
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
67
第 3 章 割込み
3.3
MB90930 シリーズ
図 3.3-2 割込み制御レジスタ (ICR00 ∼ ICR15) 読出し時
読出し時
アドレス
~
0000B0H
0000BFH
MSB
−
LSB
−
S1
S0
ISE
IL2
IL1
IL0
68
--000111B
IL2
IL1
IL0
割込みレベル設定ビット
0
0
0
割込みレベル0 (最強)
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
1
1
1
割込みレベル7 (割込みなし)
EI2OS許可ビット
ISE
MSB : 最上位ビット
LSB : 最下位ビット
−
: 未定義
: 初期値
初期値
0
割込み発生時に割込みシーケンスを起動
1
割込み発生時にEI2OSを起動
EI2OSステータス
S1
S0
0
0
EI2OS動作中あるいは非起動時
0
1
カウント終了による停止状態
1
0
予約
1
1
周辺機能からの要求による停止状態
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.3
MB90930 シリーズ
3.3.2
割込み制御レジスタの機能
割込み制御レジスタ (ICR00 ∼ ICR15) は , 次に示す 4 つの機能を持つビットで構成されてい
ます。
• 割込みレベル設定ビット (IL2 ∼ IL0)
• 拡張インテリジェント I/O サービス (EI2OS) 許可ビット (ISE)
• 拡張インテリジェント I/O サービス (EI2OS) チャネル選択ビット (ICS3 ∼ ICS0)
• 拡張インテリジェント I/O サービス (EI2OS) ステータスビット (S1, S0)
■ 割込み制御レジスタ (ICR) の構成
図 3.3-3 に , 割込み制御レジスタ (ICR) のビット構成図を示します。
図 3.3-3 割込み制御レジスタ (ICR) の構成
割込み制御レジスタ (ICR) 書込み時
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
初期値
0000B0H ∼ 0000BFH
ICS3
ICS2
ICS1
ICS0
ISE
IL2
IL1
IL0
00000111B
W
W
W
W
R/W
R/W
R/W
R/W
割込み制御レジスタ (ICR) 読出し時
アドレス
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
初期値
0000B0H ∼ 0000BFH
-
-
S1
S0
ISE
IL2
IL1
IL0
--000111B
-
-
R
R
R/W
R/W
R/W
R/W
R/W:
R:
W:
-:
リード / ライト可能
リードオンリ
ライトオンリ
未定義
ICS3 ∼ ICS0 ビットは , 拡張インテリジェント I/O サービス (EI2OS) を起動する場合にのみ有効と
なります。EI2OS を起動する場合は ISE ビットを "1" に設定し , 起動しない場合は ISE ビットを
"0" に設定してください。EI2OS を起動しない場合は , ICS3 ∼ ICS0 を設定しなくてもかまいません。
ICS1 と ICS0 は書込み時にのみ , S1 と S0 は読出し時にのみ , それぞれ有効です。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
69
第 3 章 割込み
3.3
MB90930 シリーズ
■ 割込み制御レジスタの機能
● 割込みレベル設定ビット (IL2 ∼ IL0)
対応する周辺機能の割込みレベルを指定します。リセットによりレベル 7( 割込みなし ) に初期化
されます。割込みレベル設定ビットと各割込みレベルとの関係を表 3.3-2 に示します。
表 3.3-2 割込みレベル設定ビットと割込みレベルの対応
IL2
IL1
IL0
割込みレベル
0
0
0
0( 最高割込み )
0
0
0
1
1
0
1
1
0
0
1
0
1
0
1
1
1
0
6( 最低割込み )
1
1
1
7( 割込みなし )
● 拡張インテリジェント I/O サービス (EI2OS) 許可ビット (ISE)
割込み要求の発生時にこのビットが "1" の場合に EI2OS が起動され , "0" の場合は割込みシーケン
スが起動されます。また , EI2OS の終了条件が成立 (S1, S0 ビットが "00B" 以外 ) した場合に , ISE
ビットがクリアされます。対応する周辺機能に EI2OS の機能がない場合には , ソフトウェアで ISE
ビットを "0" にしておく必要があります。ISE ビットはリセットで "0" に初期化されます。
● 拡張インテリジェント I/O サービス (EI2OS) チャネル選択ビット (ICS3 ∼ ICS0)
書込み専用のビットで , EI2OS のチャネルを指定します。ここで設定された値によって , EI2OS ディ
スクリプタのアドレスが決定します。ICS ビットはリセットで , "0000B" に初期化されます。表 3.33 に EI2OS チャネル選択ビットとディスクリプタアドレスの対応を示します。
表 3.3-3 EI2OS チャネル選択ビットとディスクリプタアドレスの対応
70
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
CM44-10150-1
第 3 章 割込み
3.3
MB90930 シリーズ
● 拡張インテリジェント I/O サービス (EI2OS) ステータスビット (S1, S0)
読出し専用のビットです。EI2OS 終了時にこの値を調べると , 動作状態や終了状態を判別すること
ができます。リセットで "00B" に初期化されます。表 3.3-4 に , S1, S0 ビットと EI2OS ステータス
の関係について示します。
表 3.3-4 EI2OS ステータスビット (S1, S0) と EI2OS ステータスの関係
CM44-10150-1
S1
S0
0
0
EI2OS 動作中あるいは非起動時
0
1
1
1
0
1
カウント終了による停止状態
予約
周辺機能からの要求による停止状態
EI2OS ステータス
FUJITSU MICROELECTRONICS LIMITED
71
第 3 章 割込み
3.4
3.4
MB90930 シリーズ
ハードウェア割込み
ハードウェア割込みは , 周辺機能からの割込み要求信号に対応して , CPU がそれまで実行し
ていたプログラムの実行を一時中断し , ユーザの定義した割込み処理用プログラムに制御を移
行する機能です。また , 拡張インテリジェント I/O サービス (EI2OS) や外部割込みなどもハー
ドウェア割込みの一種として実行されます。
■ ハードウェア割込みの機能
● ハードウェア割込みの機能
ハードウェア割込みは , 周辺機能が出力する割込み要求信号の割込みレベルと , CPU のプロセッ
サステータス (PS) 内のインタラプトレベルマスクレジスタ (ILM) の比較およびプロセッサステー
タス (PS) 内の I フラグの内容をハードウェアで参照し , 割込みが受け付けられるかどうかを判定
します。
ハードウェア割込みが受け付けられると , 自動的に CPU 内部のレジスタ類をシステムスタックへ
退避し , インタラプトレベルマスクレジスタ (ILM) に現在要求している割込みレベルを格納した
後 , 対応する割込みベクタへ分岐します。
● 多重割込み
ハードウェア割込みは多重に起動できます。
● 拡張インテリジェント I/O サービス (EI2OS)
EI2OS は , メモリ -I/O 間の自動転送機能ですが , 指定回数の転送完了時に , ハードウェア割込みが
起動されます。なお , EI2OS は多重に起動されることはなく , ある EI2OS の処理中は , ほかの割込
み要求および EI2OS 要求はすべて保留されます。
● 外部割込み
外部割込みは , 周辺機能 ( 割込み要求検出回路 ) を通じて , ハードウェア割込みとして受け付けら
れます。
● 割込みベクタ
割込み処理の際に参照する割込みベクタテーブルは , メモリの "FFFC00H" ∼ "FFFFFFH" に割り当
ててあり , ソフトウェア割込みと共用しています。
割込み番号と割込みベクタの割当てについては , 「3.2 割込み要因と割込みベクタ」を参照してく
ださい。
72
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.4
MB90930 シリーズ
■ ハードウェア割込みの構造
ハードウェア割込みに関連する機構は , 表 3.4-1 に示す 4 つの部分に分かれて存在します。ハード
ウェア割込みを使用する場合はあらかじめ , プログラムでこの 4 箇所を設定する必要があります。
表 3.4-1 ハードウェア割込みに関連する機構
ハードウェア割込みに関連する機構
機能
周辺機能
割込み許可ビット , 割込み要求ビット
周辺機能からの割込み要求の制御
割込みコントローラ
割込み制御レジスタ (ICR)
割込みレベルの設定および EI2OS の制御
CPU
割込み許可フラグ (I)
割込み許可状態の識別
インタラプトレベルマスクレジスタ (ILM)
割込み要求レベルと現割込みレベルの比較
マイクロコード
割込み処理ルーチンの実行
割込みベクタテーブル
割込み処理時の分岐先アドレスを格納
メモリ上の
FFFC00H ∼ FFFFFFH
■ ハードウェア割込み抑止
ハードウェア割込みは , 以下の条件の場合 , 割込み要求の受付けが抑止されます。
● 周辺機能制御レジスタ領域への書込み中のハードウェア割込み抑止
周辺機能制御レジスタ領域への書込み中はハードウェア割込み要求を受け付けません。これは各
周辺機能の割込み制御レジスタ関係の書換えを行っている最中の割込み要求に対して , CPU が割
込み関係で誤動作を起こすことを避けるためです。周辺機能制御レジスタ領域とは , "000000H ∼
0000FFH" の I/O アドレッシング領域のことではなく , 周辺機能制御レジスタの制御レジスタおよ
びデータレジスタに割り当てられている領域のことを示します。
図 3.4-1 に , 周辺機能制御レジスタ領域への書込み中のハードウェア割込み動作について示しま
す。
図 3.4-1 周辺機能制御レジスタ領域への書込み中のハードウェア割込み要求
周辺機能制御レジスタ領域への書込み命令
.....
MOV A, #08
MOV io, A
ここで割込み
要求を発生
CM44-10150-1
MOV A, 2000H
割込みに
分岐しない
FUJITSU MICROELECTRONICS LIMITED
割込み処理
割込みに
分岐する
73
第 3 章 割込み
3.4
MB90930 シリーズ
● 割込み抑止命令のハードウェア割込み抑止
表 3.4-2 に示す 10 種類のハードウェア割込み抑止命令は , ハードウェア割込み要求の有無を検出
せずに割込み要求を無視します。これらの命令を実行中に有効なハードウェア割込み要求が発生
しても , 割込み処理は , この命令以降 , 初めてこれ以外の種類の命令が実行された後になります。
表 3.4-2 ハードウェア割込み抑止命令
プリフィック
スコード
割込みやホールド要
求を受け付けない命
令
PCB
DTB
ADB
SPB
CMR
NCC
割込み / ホールド抑止命令
( プリフィックスコードの効果を遅延させる命令 )
MOV
OR
AND
POPW
ILM, #imm8
CCR, #imm8
CCR, #imm8
PS
● ソフトウェア割込み実行中のハードウェア割込み抑止
ソフトウェア割込みを起動すると , I フラグを "0" にクリアするために , ほかの割込み要求を受け
付けられません。
74
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
3.4.1
ハードウェア割込みの動作
第 3 章 割込み
3.4
ハードウェア割込み要求発生から , 割込み処理完了までの動作について説明します。
■ ハードウェア割込みの起動
● 周辺機能の動作 ( 割込み要求の発生 )
ハードウェア割込み要求の機能を持つ周辺機能には , 割込み要求のあり / なしを示す「割込み要求
フラグ」と , CPU への割込み要求の許可 / 禁止を選択する「割込み許可フラグ」があります。割
込み要求フラグは周辺機能固有のイベントの発生によりセットされ , 割込み許可フラグが「許可」
であった場合に割込みコントローラに割込み要求を発生します。
● 割込みコントローラの動作 ( 割込み要求の制御 )
割込みコントローラは , 同時に受け取った割込み要求の割込みレベル (IL) どうしを比較し , 最も高
いレベルの要求 (IL の値の最も小さいもの ) を採択して CPU に通知します。同一レベルの要求が
複数あった場合には , 割込み番号が小さいものを優先します。
● CPU の動作 ( 割込み要求の受付けと割込み処理 )
CPU は受け取った割込みレベル (ICR:IL2 ∼ IL0) とインタラプトレベルマスクレジスタ (ILM) とを
比較し , IL < ILM で , なおかつ割込みが許可 (PS レジスタ内の I ビットが "1") されている場合に , 現
在実行中の命令が終了後 , 割込み処理マイクロコードを起動します。割込み処理マイクロコード
の先頭で , 割込み制御レジスタ (ICR) の ISE ビットを参照し , ISE が "0" であれば引き続き割込み
処理を実行します (ISE が "1" の場合は EI2OS を起動 )。
割込み処理では , まず , システムスタック (SSB と SSP の示すシステムスタック領域 ) に専用レジ
スタ (A, DPR, ADB, DTB, PCB, PC, PS の 12 バイト ) の内容を退避します。次に , 割込みベクタの
プログラムカウンタ (PCB, PC) へのロード , ILM の更新 , スタックフラグ (S) の設定 (CCR の S フ
ラグを "1" とし , システムスタックを有効にする ) を行います。
■ ハードウェア割込みからの復帰
割込み処理プログラムの中で , 割込み要因となった周辺機能の割込み要求フラグをクリアして
RETI 命令を実行すると , システムスタックに退避している 12 バイトデータを専用レジスタに戻
し , 割込み分岐前に実行していた処理に復帰します。割込み要求フラグをクリアすることで , 周辺
機能が割込みコントローラに出力していた割込み要求は自動的に取り下げられます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
75
第 3 章 割込み
3.4
MB90930 シリーズ
■ ハードウェア割込みの動作
図 3.4-2 に , ハードウェア割込みの発生から割込み処理完了までの動作を示します。
図 3.4-2 ハードウェア割込みの動作
内部データバス
(7)
PS, PC ⋅ ⋅
マイクロコード
PS
IR
F2MC-16LX CPU
(6)
I
ILM
チェック
(5)
比較器
(4)
(3)
ほかの周辺機能
⋅⋅
⋅
割込み要求を発生した周辺機能
許可FF
AND
要因FF
(8)
レベル
比較器
割込み
レベルIL
(2)
(1)
割込みコントローラ
RAM
IL
PS
I
ILM
IR
FF
: 割込み制御レジスタ(ICR)の割込みレベル設定ビット
: プロセッサステータス
: 割込み許可フラグ
: インタラプトレベルマスクレジスタ
: インストラクションレジスタ
: フリップフロップ
(1) 周辺機能の内部で割込み要因が発生します。
(2) 周辺機能内の割込み許可ビットを参照し , 割込み許可になっていると周辺から割込みコント
ローラに割込み要求を発生します。
(3) 割込み要求を受け取った割込みコントローラは , 同時に要求のあった割込みの優先順位を判
定した上で , 該当する割込み要求に対応する割込みレベル (IL) を CPU に転送します。
(4) CPU は , 割込みコントローラから要求のあった割込みレベル (IL) をインタラプトレベルマス
クレジスタ (ILM) と比較します。
(5) 比較した結果が現在の割込み処理レベルより優先順位が高い場合にはコンディションコード
レジスタ (CCR) の I フラグの内容をチェックします。
(6) (5) のチェックの結果 , I フラグが割込み許可 (I ビットが "1") の場合には現在実行中の命令の
実行が終了するまで待ち , 終了し次第 ILM に要求されたレベル (IL) を設定します。
(7) レジスタを退避し , 割込み処理ルーチンへ分岐します。
(8) ユーザの割込み処理ルーチン内のソフトウェアによって , (1) で発生した割込み要因をクリア
し , RETI 命令を実行することで割込み処理が終了します。
76
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.4
MB90930 シリーズ
3.4.2
ハードウェア割込みの動作フロー
周辺機能から割込み要求が発生すると , 割込みコントローラは割込みレベルを CPU に伝達し
て , CPU が割込みを受け付けられる状態の場合には , 現在実行中の命令を一時中断して割込
み処理ルーチンを実行 , または拡張インテリジェント I/O サービス (EI2OS) を起動します。ま
た , INT 命令によるソフトウェア割込みが発生した場合には CPU の状態にかかわらず , 割込
み処理ルーチンを実行します。INT 命令によるソフトウェア割込みが発生した場合にはハード
ウェア割込みが禁止されます。
■ ハードウェア割込みの動作フロー
図 3.4-3 に , ハードウェア割込みの動作フローを示します。
図 3.4-3 ハードウェア割込みの動作フロー
スタート
メインプログラム
I&IF&IE = 1
AND
ILM > IL
ストリング系
命令実行中*
YES
割込み起動/復帰処理
NO
次の命令の取込みと
デコード
YES
ISE = 1
EI2OS
NO
YES
INT命令か?
NO
EI2OS処理
ソフトウェア
割込み/
例外処理
システムスタックへ
専用レジスタ退避
I←0
(ハードウェア割込みの禁止)
ハードウェア
割込み
YES
指定回数終了か?
または周辺機能からの
終了要求があるか?
システムスタックへ
専用レジスタ退避
NO
ILM ← IL
(受け付けられた割込み
要求の割込みレベルを
ILMに転送)
YES
RETI命令か?
NO
通常命令実行
(割込み処理を含む)
NO
割込み
復帰処理
システムスタックから
専用レジスタが復帰し,
割込みルーチン呼出し
前のルーチンへ復帰
S←1
(システムスタックを
有効にする)
PCB, PC ← 割込みベクタ
(割込み処理ルーチンへ
分岐)
ストリング系
命令の繰返し完了*
YES
PC更新で次命令へ
ポインタ移動
*
: ストリング系命令の実行中は, 1ステップごとに
割込み判定を行います。
I
: コンディションコードレジスタ(CCR)の
割込み許可フラグ
IF : 周辺機能の割込み要求フラグ
IE : 周辺機能の割込み許可フラグ
ILM : インタラプトレベルマスクレジスタ(PS中の)
ISE : 割込み制御レジスタ(ICR)のEI2OS許可フラグ
IL
: 割込み制御レジスタ(ICR)の割込みレベル設定ビット
CM44-10150-1
S
: コンディションコードレジスタ(CCR)の
スタックフラグ
PCB : プログラムカウンタバンクレジスタ
PC : プログラムカウンタ
FUJITSU MICROELECTRONICS LIMITED
77
第 3 章 割込み
3.4
3.4.3
MB90930 シリーズ
ハードウェア割込み使用手順
ハードウェア割込みを使用するには , システムスタック領域 , 周辺機能および割込み制御レジ
スタ (ICR) などの設定が必要です。
■ ハードウェア割込み使用手順
ハードウェア割込み使用手順の一例を , 図 3.4-4 に示します。
図 3.4-4 ハードウェア割込み使用手順
スタート
(1)
システムスタック領域の設定
(2)
周辺機能の初期設定
(3)
割込みコントローラ内の
ICRの設定
割込み処理プログラム
(4)
(5)
周辺機能の動作開始設定
割込み許可ビットを許可
に設定
スタック処理
割込みベクタへ分岐
(7)
ハードウェア
による処理
PS内のILM, Iの設定
(8)
周辺機能への割込み
に対する処理(割込み処
理ルーチンの実行)
(9)
割込み要因のクリア
(10)
割込み復帰命令(RETI)
メインプログラム
(6)
割込み要求発生
メインプログラム
(1)
システムスタック領域を設定します。
(2)
割込み要求を発生可能な周辺機能の初期設定をします。
(3)
割込みコントローラ内の割込み制御レジスタ (ICR) を設定します。
(4)
周辺機能を動作開始状態にし , 割込み許可ビットを許可に設定します。
(5)
割込みレベルマスクレジスタ (ILM) および割込み許可フラグ (I) を割込み受付け可能に設定
します。
(6)
周辺機能の割込み発生で , ハードウェア割込み要求が発生します。
(7)
ハードウェア割込み処理で , レジスタの退避が行われ , 割込み処理プログラムに分岐します。
(8)
割込み処理プログラムで , 割込み発生に対する周辺機能への処理を行います。
(9)
周辺機能の割込み要求を解除します。
(10) 割込み復帰命令を実行し , 分岐前のプログラムに復帰します。
78
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
3.4.4
多重割込み
第 3 章 割込み
3.4
ハードウェア割込みでは , 周辺機能からの複数の割込み要求に対して , 割込み制御レジスタ
(ICR) の割込みレベル設定ビット (IL0, IL1, IL2) に異なる割込みレベルを設定することで多重
割込みを実現できます。ただし , 拡張インテリジェント I/O サービス (EI2OS) の多重起動はで
きません。
■ 多重割込み動作
割込み処理ルーチン実行中に , より高いレベルの割込み要求が発生すると, 現在の割込み処理を中
断し , より強い割込み要求を受け付けます。高いレベルの割込みが終了すると , 元の割込み処理に
戻ります。割込みレベルは 0 ∼ 7 まで設定できますが , レベル 7 に設定した場合には CPU は割込
み要求を受け付けません。
割込み処理実行中に , その割込みと同等かより低いレベルの割込み処理が発生した場合 , I フラグ
か ILM を変更しない限り現在の割込みが終了するまで新しい割込み要求は保留されます。また ,
割込み処理ルーチン内でコンディションコードレジスタ (CCR) の I フラグを割込み禁止 (CCR の I
が "0") にするか , インタラプトレベルマスクレジスタ (ILM) を割込み禁止 (ILM が "000") に設定
すると割込み中の多重割込みの起動を一時的に禁止することができます。
<注意事項>
拡張インテリジェント I/O サービス (EI2OS) は多重起動できません。拡張インテリジェント I/O サー
ビス (EI2OS) の処理中は , ほかの割込み要求および拡張インテリジェント I/O サービス要求はすべて
保留されます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
79
第 3 章 割込み
3.4
MB90930 シリーズ
■ 多重割込みの例
多重割込み処理の例として , A/D コンバータよりタイマ割込みを優先させる場合を想定し , A/D コ
ンバータの割込みレベルを 2 に , タイマ割込みレベルを 1 に設定します。上記設定の場合 , A/D コ
ンバータの割込み処理中にタイマ割込みが発生すると , 図 3.4-5 のような処理を行います。
図 3.4-5 多重割込みの例
メインプログラム
A/D割込み処理
割込みレベル2
(ILM=010)
周辺初期化 (1)
A/D割込み発生 (2)
タイマ割込み処理
割込みレベル1
(ILM=001)
(3) タイマ割込み発生
中断
(4) タイマ割込み処理
再開
メイン処理再開 (8)
(6) A/D割込み処理
(5) タイマ割込み復帰
(7) A/D割込み復帰
● A/D 割込み発生
A/D コンバータ割込み処理開始時に , インタラプトレベルマスクレジスタ (ILM) が自動的に A/D
コンバータの割込みレベル (ICR の IL2 ∼ IL0) と同じ値 ( 例では 2) になります。この場合 , レベル
1 またはレベル 0 の割込み要求が発生すると , この割込み処理を優先して行います。
● 割込み処理の終了
割込み処理が終了して復帰命令(RETI)を実行すると, スタック内に退避した専用レジスタ(A, DPR,
ADB, DTB, PCB, PC, PS) の値が復帰してインタラプトレベルマスクレジスタ (ILM) は中断前の値
になります。
80
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.4
MB90930 シリーズ
3.4.5
ハードウェア割込み処理時間
ハードウェア割込み要求が発生して割込み処理ルーチンが実行されるまでには , 現在実行中の
命令が終了するまでの時間と割込みハンドリング時間が必要です。
■ ハードウェア割込み処理時間
割込み要求が発生してから割込みが受け付けられて割込み処理ルーチンが実行されるまでには ,
割込み要求サンプル待ち時間と割込みハンドリング時間 ( 割込み処理準備に要する時間 ) が必要で
す。図 3.4-6 に , 割込み処理時間を示します。
図 3.4-6 割込み処理時間
通常命令実行
CPUの動作
割込み要求
サンプル待ち時間
割込み待ち時間
割込み処理
割込み処理ルーチン
割込み処理時間
(θマシンサイクル)*
割込み要求発生
: 命令最終サイクル,ここで割込み要求をサンプルします。
* : 1マシンサイクルは, マシンクロック(φ)の1クロック周期に相当します。
● 割込み要求サンプル待ち時間
割込み要求が発生してから現在実行中の命令が終了するまでの時間を指します。割込み要求が発
生しているかどうかは , 各命令の最後のサイクルで割込み要求をサンプリングして判断します。
そ
のため , 各命令の実行中に CPU が割込み要求を認識することができずに待ち時間が発生します。
なお , 割込み要求サンプル待ち時間は , 最も実行サイクルの長い POPW RW0,…RW7 命令 (45 マシ
ンサイクル ) 開始直後に割込み要求が発生した場合に最大となります。
● 割込みハンドリング時間 (θ マシンサイクル )
CPU は , 割込み要求を受け付けてから , 専用レジスタのシステムスタックへの退避および割込み
ベクタの取込みなどを行うため , θ マシンサイクルの割込みハンドリング時間を必要とします。割
込みハンドリング時間は , 以下の式によって求められます。
割込み起動時 :θ = 24 + 6 × Z マシンサイクル
割込み復帰時 : θ = 11 + 6 × Z マシンサイクル (RETI 命令 )
割込みハンドリング時間は , スタックポインタの指しているアドレスによって異なります。表 3.43 に割込みハンドリング時間の補正値 (Z) を示します。
1 マシンサイクルは , マシンクロック (φ) の 1 クロック周期に相当します。
表 3.4-3 割込みハンドリング時間の補正値 (Z)
スタックポインタが指しているアドレス
CM44-10150-1
補正値 (Z)
外部 , 8 ビットの場合
+4
外部 , 偶数アドレスの場合
+1
外部 , 奇数アドレスの場合
+4
内部 , 偶数アドレスの場合
0
内部 , 奇数アドレスの場合
+2
FUJITSU MICROELECTRONICS LIMITED
81
第 3 章 割込み
3.5
3.5
MB90930 シリーズ
ソフトウェア割込み
ソフトウェア割込みは , ソフトウェア割込み命令 (INT 命令 ) を実行すると , CPU がそれまで
実行していたプログラムからユーザの定義した割込み処理用プログラムへ制御を移行する機
能です。ソフトウェア割込みの実行中にはハードウェア割込みは停止します。
■ ソフトウェア割込みの起動
● ソフトウェア割込みの起動
ソフトウェア割込みの起動には INT 命令を使用します。ソフトウェア割込み要求には割込み要求
フラグおよび許可フラグはなく , INT 命令を実行すると常に割込み要求が発生します。
● ハードウェア割込みの抑止
INT 命令には割込みレベルがないので , インタラプトレベルマスクレジスタ (ILM) の更新は行われ
ません。INT 命令実行中は , コンディションコードレジスタ (CCR) の I フラグを "0" に設定し , ハー
ドウェア割込みをマスクします。ソフトウェア割込み処理中もハードウェア割込みを許可する場
合は , ソフトウェア割込み処理ルーチンの中で I フラグを "1" に設定してください。
● ソフトウェア割込みの動作
CPU が INT 命令を取り込んで実行すると , ソフトウェア割込み処理用マイクロコードを起動しま
す。このマイクロコードにより , CPU 内部のレジスタ類をシステムスタックに退避し , ハードウェ
ア割込みをマスク (CCR の I フラグを "0") した後に対応する割込みベクタへ分岐します。
割込み番号と割込みベクタの割当てについては , 「3.2 割込み要因と割込みベクタ」を参照してく
ださい。
■ ソフトウェア割込みからの復帰
割込み処理プログラムの中で割込み復帰命令 (RETI 命令 ) を実行すると , システムスタックに退避
している 12 バイトデータを専用レジスタに戻して , 割込み分岐前に実行していた処理に復帰しま
す。
82
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.5
MB90930 シリーズ
■ ソフトウェア割込みの動作
図 3.5-1 に , ソフトウェア割込みの発生から割込み処理完了までの動作を示します。
図 3.5-1 ソフトウェア割込みの動作
内部データバス
PS,PC…
(2) マイクロコード
(1)
PS
I
S
IR
キュー
フェッチ
F2MC-16LX
RAM
PS
I
S
IR
: プロセッサステータスレジスタ
: 割込み許可フラグ
: スタックフラグ
: インストラクションレジスタ
(1)
ソフトウェア割込み命令を実行します。
(2)
ソフトウェア割込み命令に対応したマイクロコードに従って , 専用レジスタを退避するなど
の必要な処理を行った後に分岐処理を行います。
(3)
ユーザの割込み処理ルーチン内の RETI 命令で割込み処理が終了します。
■ ソフトウェア割込みに関する注意事項
プログラムカウンタバンクレジスタ (PCB) が "FFH" である場合 , CALLV 命令のベクタ領域は
INT #vct8 命令のテーブルと重なります。ソフトウェアを作成するときに , CALLV 命令と INT #vct8
命令のアドレスの重複に注意してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
83
第 3 章 割込み
3.6
3.6
MB90930 シリーズ
拡張インテリジェント I/O サービス (EI2OS) による割込み
拡張インテリジェント I/O サービス (EI2OS) は , 周辺機能 (I/O) とメモリとの間で自動データ
転送を行う機能で , データ転送終了時にハードウェア割込みを発生します。
■ 拡張インテリジェント I/O サービス (EI2OS)
拡張インテリジェント I/O サービス (EI2OS) は , ハードウェア割込みの一種です。これは , 周辺機
能 (I/O) とメモリとの間で自動データ転送を行う機能です。従来は割込み処理プログラムで行って
いた周辺機能 (I/O) とのデータのやりとりを DMA( ダイレクトメモリアクセス ) のように行い , 終
了時に終了条件を設定した後 , 自動的に割込み処理ルーチンに分岐します。ユーザは , EI2OS 起動
時と終了時にのみプログラムを作成することになり , 途中のデータ転送プログラムは不要となり
ます。
● 拡張インテリジェント I/O サービス (EI2OS) の利点
割込み処理ルーチンで行っていたデータ転送と比べると , 次のような利点があります。
• 転送プログラムを作成する必要がないため , プログラム全体のサイズを小さくできます。
• 周辺機能 (I/O) の状態によって転送を停止できるので , 不要なデータを転送する必要がありません。
• バッファアドレスのインクリメントおよび更新なしを選択できます。
• I/O レジスタアドレスのインクリメントおよび更新なしを選択できます。
● 拡張インテリジェント I/O サービス (EI2OS) の終了割込み
EI2OS によるデータ転送が終了すると , 終了条件を割込み制御レジスタ (ICR) の S1, S0 ビットに設
定し , 自動的に割込み処理ルーチンへ分岐します。
割込み処理プログラムで , EI2OS ステータス (ICR の S1, S0 ビット ) をチェックすることによって ,
EI2OS の終了要因を判断することができます。
割込み番号や割込みベクタは , 各周辺で固定されています。詳細は「3.2 割込み要因と割込みベク
タ」を参照してください。
● 割込み制御レジスタ (ICR)
割込みコントローラ内にあり , EI2OS の起動 , EI2OS のチャネル指定および EI2OS 終了時の状態表
示を行います。
● 拡張インテリジェント I/O サービス (EI2OS) ディスクリプタ (ISD)
RAM 上の "000100H" ∼ "00017FH" にあり , 転送モード , I/O のアドレスや転送数 , バッファアドレ
スを保持する 8 バイトデータで , 16 チャネル分あります。割込み制御レジスタ (ICR) でチャネル
を指定します。
<注意事項>
拡張インテリジェント I/O サービス (EI2OS) が動作している場合には CPU のプログラム実行を停止
します。
84
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.6
MB90930 シリーズ
■ 拡張インテリジェント I/O サービス (EI2OS) の動作
図 3.6-1 に , EI2OS の動作を示します。
図 3.6-1 拡張インテリジェント I/O サービス (EI2OS) の動作
メモリ空間
by IOA
I/O
レジスタ
I/Oレジスタ
CPU
周辺機能(I/O)
(5)
割込み要求
(3)
ISD
by ICS
(2)
(3)
(1)
割込み制御レジスタ(ICR)
割込みコントローラ
by BAP
(4)
ISD
IOA
BAP
ICS
DCT
バッファ
by DCT
: EI2OSディスクリプタ
: I/Oアドレスポインタ
: バッファアドレスポインタ
: 割込み制御レジスタ(ICR)のEI2OSチャネル選択ビット
: データカウンタ
(1)
I/O が転送を要求します。
(2)
割込みコントローラがディスクリプタを選択します。
(3)
転送元や転送先をディスクリプタから読み出します。
(4)
I/O とメモリ間で転送が行われます。
(5)
割込み要因は自動的にクリアされます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
85
第 3 章 割込み
3.6
3.6.1
MB90930 シリーズ
拡張インテリジェント I/O サービス (EI2OS) ディスクリプタ (ISD)
拡張インテリジェント I/O サービス (EI2OS) ディスクリプタ (ISD) は , 内部 RAM の
"000100H" ∼ "00017FH" に存在し , 8 バイト ✕16 チャネルで構成されています。
■ 拡張インテリジェント I/O サービス (EI2OS) ディスクリプタ (ISD) の構成
EI2OS ディスクリプタ (ISD) は , 8 バイト 16 チャネルで構成されており , 各 ISD は図 3.6-2 のよう
な構造になっています。チャネル番号と ISD のアドレスの対応は , 表 3.6-1 のとおりです。
図 3.6-2 EI2OS ディスクリプタ (ISD) の構成
MSB
LSB
データカウンタ上位8ビット(DCTH)
H
データカウンタ下位8ビット(DCTL)
I/Oレジスタアドレスポインタ上位8ビット(IOAH)
I/Oレジスタアドレスポインタ下位8ビット(IOAL)
EI2OSステータスレジスタ(ISCS)
バッファアドレスポインタ上位8ビット(BAPH)
バッファアドレスポインタ中位8ビット(BAPM)
ISD先頭アドレス
(000100H + 8 ✕ ICS)
バッファアドレスポインタ下位8ビット(BAPL)
L
表 3.6-1 チャネル番号とディスクリプタアドレスの対応
チャネル番号
86
ディスクリプタアドレス
0
000100H
1
000108H
2
000110H
3
000118H
4
000120H
5
000128H
6
000130H
7
000138H
8
000140H
9
000148H
10
000150H
11
000158H
12
000160H
13
000168H
14
000170H
15
000178H
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.6
MB90930 シリーズ
3.6.2
拡張インテリジェント I/O サービス (EI2OS) ディスクリプタ
(ISD) の各レジスタ
拡張インテリジェント I/O サービス (EI2OS) ディスクリプタ (ISD) は , 次のレジスタから構成
されています。
• データカウンタ (DCT)
• I/O レジスタアドレスポインタ (IOA)
• 拡張インテリジェント I/O サービス (EI2OS) ステータスレジスタ (ISCS)
• バッファアドレスポインタ (BAP)
各レジスタの初期値は , リセット時には不定となるので注意してください。
■ データカウンタ (DCT)
データカウンタ (DCT) は 16 ビット長のレジスタで , 転送データ数に対応したカウンタとなります。
各データの転送後に , カウンタは 1 デクリメント ( 減値 ) します。このカウンタが 0 になると EI2OS
の動作は終了します。データカウンタ (DCT) で指定できる最大転送数は , 65,536 個 (64K バイト )
です。図 3.6-3 に , DCT の構成を示します。
図 3.6-3 データカウンタ (DCT) の構成
DCTH
DCTL
bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
初期値
DCT B15 B14 B13 B12 B11 B10 B09 B08 B07 B06 B05 B04 B03 B02 B01 B00 XXXXXXXXXXXXXXXXB
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
R/W: リード / ライト可能
X:
不定値
■ I/O レジスタアドレスポインタ (IOA)
I/O レジスタアドレスポインタ (IOA) は 16 ビット長のレジスタで , バッファとのデータ転送を行
う I/O レジスタの下位アドレス (A15 ∼ A00) を示します。上位アドレス (A23 ∼ A16) はすべて "0"
であり , "000000H" から "00FFFFH" 番地までの任意の I/O をアドレスで指定できます。図 3.6-4 に ,
IOA の構成を示します。
図 3.6-4 I/O レジスタアドレスポインタ (IOA) の構成
IOAH
IOAL
bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
初期値
IOA A15 A14 A13 A12 A11 A10 A09 A08 A07 A06 A05 A04 A03 A02 A01 A00 XXXXXXXXXXXXXXXXB
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
R/W: リード / ライト可能
X:
不定値
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
87
第 3 章 割込み
3.6
MB90930 シリーズ
■ 拡張インテリジェント I/O サービス (EI2OS) ステータスレジスタ (ISCS)
拡張インテリジェント I/O サービス (EI2OS) ステータスレジスタ (ISCS) は , 8 ビット長で , バッファ
アドレスポインタと I/O レジスタアドレスポインタの更新 / 固定 , 転送データ形式 ( バイト / ワー
ド ), 転送方向を示します。図 3.6-5 に , ISCS の構成を示します。
図 3.6-5 EI2OS ステータスレジスタ (ISCS) の構成
bit7
bit6
bit5
予約 予約 予約
bit4
bit3
bit2
bit1
bit0
初期値
IF
BW
BF
DIR
SE
XXXXXXXXB
R/W R/W R/W R/W R/W R/W R/W R/W
EI2OS終了制御ビット
SE
0
周辺機能からの要求で終了しません
1
周辺機能からの要求で終了します
データ転送方向指定ビット
DIR
0
I/Oレジスタアドレスポインタ→バッファアドレスポインタ
1
バッファアドレスポインタ→ I/Oレジスタアドレスポインタ
BAP更新/固定選択ビット
BF
0
データ転送後にバッファアドレスポインタが更新されます*1
1
データ転送後にバッファアドレスポインタが更新されません
転送データ長指定ビット
BW
0
バイト
1
ワード
IF
IOA更新/固定選択ビット
0
データ転送後にI/Oレジスタアドレスポインタが更新されます*2
1
データ転送後にI/Oレジスタアドレスポインタは更新されません
予約
予約ビット
これらのビットには必ず"0"を書き込んでください
R/W : リード/ライト可能
X : 不定値
*1 : バッファアドレスポインタは,下位16ビットだけ変化してインクリメントだけ可能です。
*2 : アドレスポインタはインクリメントだけ可能です。
88
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.6
MB90930 シリーズ
■ バッファアドレスポインタ (BAP)
バッファアドレスポインタ (BAP) は , 24 ビットのレジスタで , EI2OS による次回の転送で使用する
アドレスを保持します。BAP は EI2OS の各チャネルに対してそれぞれ独立に存在するので , EI2OS
の各チャネルは 16M バイトの任意のアドレスと I/O の間でデータを転送できます。EI2OS ステータ
スレジスタ (ISCS) の BF ビット (EI2OS ステータスレジスタの BAP 更新 / 固定選択ビット ) で " 更
新あり " とした場合には BAP は下位 16 ビット (BAPM, BAPL) だけ変化し , 上位 8 ビット (BAPH)
は変化しません。
バッファアドレスポインタ (BAP) で指定できる領域は , "000000H" ∼ "FFFFFFH" です。
図 3.6-6 に , バッファアドレスポインタ (BAP) の構成を示します。
図 3.6-6 バッファアドレスポインタ (BAP) の構成
BAP
bit23 ∼ bit16
bit15 ∼ bit8
bit7 ∼ bit0
初期値
BAPH
BAPM
BAPL
XXXXXXH
(R/W)
(R/W)
(R/W)
R/W: リード / ライト可能
X:
不定値
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
89
第 3 章 割込み
3.6
3.6.3
MB90930 シリーズ
拡張インテリジェント I/O サービス (EI2OS) の動作
周辺機能から割込み要求が発生し対応する割込み制御レジスタ (ICR) で EI2OS の起動が設定
されていると , CPU は EI2OS によるデータ転送を行います。指定回数のデータ転送が終了す
ると , 自動的にハードウェア割込み処理を行います。
■ 拡張インテリジェント I/O サービス (EI2OS) の処理手順
図 3.6-7 に , CPU 内部のマイクロコードによる EI2OS の動作フローを示します。
図 3.6-7 拡張インテリジェント I/O サービス (EI2OS) の動作フロー
周辺機能から
割込み要求を発生
ISE = 1
NO
YES
割込みシーケンス
ISD/ISCSリード
周辺機能から
の終了要求
YES
DIR = 1
YES
NO
IOAで示されるデータ
(データ転送)
BAPで示されるメモリ
IF = 0
BAPで示されるデータ
(データ転送)
IOAで示されるメモリ
YES
NO
BF = 0
DCT = 00
NO
YES
周辺機能割込み要求
のクリア
CPU動作復帰
ISD : EI OSディスクリプタ
ISCS : EI2OSステータスレジスタ
IF
: EI2OSステータスレジスタ(ISCS)の
IOA更新/固定選択ビット
BW : EI2OSステータスレジスタ(ISCS)の
転送データ長指定ビット
BF : EI2OSステータスレジスタ(ISCS)の
BAP更新/固定選択ビット
DIR : EI2OSステータスレジスタ(ISCS)の
データ転送方向指定ビット
SE : EI2OSステータスレジスタ(ISCS)の
EI2OS終了制御ビット
90
IOA更新
更新値は
BWによる
BAP更新
(-1)
S1/S0を"00B"に設定
2
更新値は
BWによる
YES
NO
DCTデクリメント
YES
SE = 1
NO
NO
EI2OS終了処理
S1/S0を"01B"に設定
S1/S0を"11B"に設定
ISEを"0"にクリア
割込みシーケンス
DCT : データカウンタ
IOA : I/Oレジスタアドレスポインタ
BAP : バッファアドレスポインタ
ISE : 割込み制御レジスタ(ICR)のEI2OS許可ビット
S1,S0 : 割込み制御レジスタ(ICR)のEI2OSステータスビット
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.6
MB90930 シリーズ
3.6.4
拡張インテリジェント I/O サービス (EI2OS) の使用手順
拡張インテリジェント I/O サービス (EI2OS) を使用するには , システムスタック領域 , 拡張イ
ンテリジェント I/O サービス (EI2OS) ディスクリプタ (ISD), 周辺機能および割込み制御レジ
スタ (ICR) などの設定が必要です。
■ 拡張インテリジェント I/O サービス (EI2OS) の使用手順
図 3.6-8 に , 拡張インテリジェント I/O サービス (EI2OS) 使用手順を示します。
図 3.6-8 拡張インテリジェント I/O サービス (EI2OS) 使用手順
ソフトウェアによる処理
ハードウェアによる処理
開 始
システムスタック領域の設定
初
期
設
定
EI2OSディスクリプタの設定
周辺機能の初期設定
割込み制御レジスタ
(ICR)の設定
内蔵リソースの動作開始
割込み許可ビットの設定
PS内のILM, Iの設定
ユーザプログラムの実行
S1,S0 = 00B
(割込み要求) and (ISE=1)
データ転送
カウントアウトまたは
リソースからの終了要求に
よる割込みへ分岐の判定
(割込みベクタへ分岐)
拡張インテリジェントI/O
サービスの再設定
(チャネルの切換えなど)
NO
YES
S1,S0 = 01B or
S1,S0 = 11B
バッファ中のデータの処理
RETI
ISE : 割込み制御レジスタ(ICR)のEI2OS許可ビット
S1,S0: 割込み制御レジスタ(ICR)のEI2OSステータスビット
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
91
第 3 章 割込み
3.6
3.6.5
MB90930 シリーズ
拡張インテリジェント I/O サービス (EI2OS) 処理時間
拡張インテリジェント I/O サービス (EI2OS) の処理に必要な時間は次の要因によって変化します。
•
•
•
•
•
EI2OS ステータスレジスタ (ISCS) の設定
I/O レジスタアドレスポインタ (IOA) の示すアドレス ( 領域 )
バッファアドレスポインタ (BAP) の示すアドレス ( 領域 )
外部アクセス時の外部データバス幅
転送データのデータ長
また , EI2OS によるデータ転送終了時にはハードウェア割込みが起動するため , 割込みハンド
リング時間が加算されます。
■ 拡張インテリジェント I/O サービス (EI2OS) 処理時間 (1 回の転送時間 )
● データ転送継続時
データ転送継続時の EI2OS 処理時間は , EI2OS ステータスレジスタ (ISCS) の設定によって , 表 3.62 のようになります。
表 3.6-2 拡張インテリジェント I/O サービス実行時間
EI2OS 終了制御ビット (SE) の設定
IOA 更新 / 固定選択ビット (IF) の設定
周辺からの終了要求により終了
固定
更新
周辺からの終了要求を無視
固定
更新
32
34
33
固定
34
36
35
更新
単位 : マシンサイクル (1 マシンサイクルは , マシンクロック (φ) の 1 クロック周期に相当します。)
35
37
BAP アドレス更新 / 固定
選択ビット (BF) の設定
さらに , 表 3.6-3 に示すように , EI2OS 実行時の条件によって補正が必要です。
表 3.6-3 EI2OS 実行時間のデータ転送の補正値
内部アクセス
I/O レジスタアドレスポインタ
内部アクセス
バッファアドレスポインタ
外部アクセス
B:
8:
偶:
奇:
92
外部アクセス
B/ 偶
奇
B/ 偶
8/ 奇
B/ 偶
0
+2
+1
+4
奇
B/ 偶
+2
+4
+3
+6
+1
+3
+2
+5
8/ 奇
+4
+6
+5
+8
バイトデータ転送
外部バス幅 8 ビット・ワード転送
偶数アドレス・ワード転送
奇数アドレス・ワード転送
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.6
MB90930 シリーズ
● データカウンタ (DCT) のカウント終了時 ( 最終回のデータ転送終了時 )
EI2OS によるデータ転送終了時には , ハードウェア割込みが起動するため , 割込みハンドリング時
間が加算されます。カウント終了時の EI2OS の処理時間は , 次の式で算出されます。
カウント終了時の EI2OS 処理時間 =
データ転送終了時の EI2OS 処理時間+ (21+6 × Z) マシンサイクル
↑
割込みハンドリング時間
1 マシンサイクルは , マシンクロック (φ) の 1 クロック周期に相当します。
割込みハンドリング時間は , スタックポインタの指しているアドレスによって異なります。表 3.64 に , 割込みハンドリング時間の補正値 (Z) を示します。
表 3.6-4 割込みハンドリング時間の補正値 (Z)
スタックポインタが指しているアドレス
補正値 (Z)
外部 , 8 ビットの場合
+4
外部 , 偶数アドレスの場合
+1
外部 , 奇数アドレスの場合
+4
内部 , 偶数アドレスの場合
0
内部 , 奇数アドレスの場合
+2
● 周辺機能 (I/O) からの終了要求によるデータ転送の終了時
周辺機能 (I/O) からの終了要求で , EI2OS によるデータ転送を途中で終了した場合 (ICR:S1, S0=11B)
にはデータ転送を行わずにハードウェア割込みを起動します。
この場合の EI2OS 処理時間は次の式で算出されます。式中の Z は , 割込みハンドリング時間の補
正値 ( 表 3.6-4 を参照 ) です。
途中終了時の EI2OS 処理時間 =36 + 6 × Z マシンサイクル
1 マシンサイクルは , マシンクロック (φ) の 1 クロック周期に相当します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
93
第 3 章 割込み
3.7
3.7
MB90930 シリーズ
未定義命令の実行による例外処理割込み
F2MC-16LX では , 未定義命令の実行で例外処理が行われます。例外処理は , 基本的には割込
みと同じもので , 命令の境目で例外事項が発生したことを検出した段階で通常処理を中断して
例外処理を行います。
一般的に , 例外処理は予想外の動作を行った結果によって発生するもので , デバッグ時や緊急
時の復旧ソフトウェアの起動などだけに使用することをお勧めします。
■ 未定義命令の実行による例外処理割込み
● 例外処理の動作
F2MC-16LX では , 命令マップで定義していないコードをすべて未定義命令として扱います。未定
義命令を実行すると , ソフトウェア割込み命令の "INT #10" と等価な処理を行います。
例外処理では , 割込みルーチンへ分岐する前に次の処理が行われます。
• システムスタックに A, DPR, ADB, DTB, PCB, PC, PS レジスタを退避します。
• コンディションコードレジスタ (CCR) の I フラグを "0" にクリアしてハードウェア割込みをマ
スクします。
• コンディションコードレジスタ (CCR) の S フラグを "1" にセットしてシステムスタックを有効
にします。
スタックに退避したプログラムカウンタ (PC) の値は , 未定義命令を格納しているアドレスそのも
のです。2 バイト以上の命令コードでは , 未定義であることが識別できたコードを格納しているア
ドレスになります。例外処理ルーチン内で , 例外要因の種類を判定する必要がある場合には , この
PC 値を使用してください。
● 例外処理からの復帰
例外処理から RETI 命令で復帰させると , PC が未定義命令を指しているために , 再度 , 例外処理に
入ります。ソフトウェアリセットするなどの対策を実施してください。
94
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.8
MB90930 シリーズ
3.8
割込み処理のスタック動作
割込みが受け付けられると , 割込み処理に分岐する前に専用レジスタの内容をシステムスタッ
クに自動的に退避します。割込み処理終了時のスタックからの復帰も自動的に行われます。
■ 割込み処理開始時のスタック動作
割込みが受け付けられると , CPU は現在の専用レジスタ類の内容を次に示す順番で自動的にシス
テムスタックに退避させます。
1) アキュムレータ (A)
2) ダイレクトページレジスタ (DPR)
3) アディショナルデータバンクレジスタ (ADB)
4) データバンクレジスタ (DTB)
5) プログラムカウンタバンクレジスタ (PCB)
6) プログラムカウンタ (PC)
7) プロセッサステータスレジスタ (PS)
図 3.8-1 に , 割込み処理開始時のスタック動作を示します。
図 3.8-1 割込み処理開始時のスタック動作
割込み直前
SSB
アドレス
00H
割込み直後
メモリ
SSB
08FFH
08FEH
SSP
08FEH
A
0000H
08FEH
AH
AL
DPR 01H
ADB 00H
DTB
PCB FFH
00H
PC
803FH
PS
20E0H
08F2H
アドレス
00H
08FFH
08FEH
SP
XXH
XXH
XXH
XXH
XXH
XXH
XXH
XXH
XXH
XXH
XXH
XXH
H
SSP
08F2H
A
0000H
08FEH
AH
AL
DPR 01H
ADB 00H
DTB
PCB FFH
00H
L
PC
803FH
PS
20E0H
メモリ
バイト
08F2H
SP
00H
00H
08H
FEH
01H
00H
00H
FFH
80H
3FH
20H
E0H
バイト
AH
AL
DPR
ADB
DTB
PCB
PC
PS
更新後
のSP
■ 割込み処理復帰時のスタック動作
割込み処理終了時に割込み復帰命令 (RETI) を実行すると , 割込み処理開始時とは反対の順番で PS,
PC, PCB, DTB, ADB, DPR, A の値がスタックから復帰し , 専用レジスタが割込み開始直前の状態に
戻ります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
95
第 3 章 割込み
3.8
MB90930 シリーズ
■ スタック領域
● スタック領域の確保
スタック領域は , 割込み処理のほかにサブルーチンコール命令 (CALL) やベクタコール命令
(CALLV) を実行する場合のプログラムカウンタ (PC) の退避 / 復帰や , PUSHW, POPW 命令による
一時的なレジスタ類の退避 / 復帰にも使われます。スタック領域は , データ領域とともに RAM 上
に確保します。
図 3.8-2 にスタック領域を示します。
図 3.8-2 スタック領域
ベクタテーブル
(リセット・割込み ベクタコール命令)
FFFFFFH
FFFC00H
ROM領域
FF0000 H*1
~
~
~
~
000D00H *2
内蔵RAM領域
スタック領域
000380 H
汎用レジスタ
バンク領域
000180 H
000100 H
0000C0H
000000 H
内蔵I/O領域
*1: 品種によって, 内蔵ROM容量が異なります。
*2: 品種によって, 内蔵RAM容量が異なります。
<注意事項>
• スタックポインタ (SSP, USP) にアドレスを設定する場合には , 原則として偶数アドレスを設定し
てください。
• システムスタック領域 , ユーザスタック領域およびデータ領域は , お互いに重なり合わないように
配置してください。
● システムスタックとユーザスタック
割込み処理では , システムスタック領域を使用します。割込み発生時にユーザスタック領域を使
用していても , 強制的にシステムスタックに切り換えられます。このため , ユーザスタック領域を
主に使用するシステムであっても , システムスタック領域を正しく設定しておく必要があります。
特に , スタック空間を分ける必要がない場合には , システムスタックだけを使用してください。
96
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.9
MB90930 シリーズ
3.9
割込み処理のプログラム例
割込み処理のプログラム例を示します。
■ 割込み処理のプログラム例
外部割込み 0(INT0) 命令を利用した割込みプログラムの一例です。
以下にプログラムのコーディング例を示します。
[ コーディング例 ]
DDR5
EQU
000015H
; ポート 5 方向レジスタ
ENIR
EQU
000030H
; DTP/ 割込み許可レジスタ
EIRR
EQU
000031H
; DTP/ 割込み要因レジスタ
ELVRL
EQU
000032H
; 要求レベル設定レジスタ
ICR02
EQU
0000B2H
; 割込み制御レジスタ 02
STACK
SSEG
RW
STACK_T RW
STACK
; スタック
100
1
ENDS
;---------- メインプログラム ----------------------------------------------CODE
CSEG
START:
MOV
RP, #0
; 汎用レジスタは先頭バンク
; を使用
MOV
ILM, #07H
; PS 内 ILM をレベル 7 に設定
MOV
A, #!STACK_T
; システムスタックの設定
MOV
SSB, A
MOVW
A, #STACK_T
; スタックポインタの設定 , この場合は
MOVW
SP, A
; S フラグ= 1 のため SSP
; にセットされる
MOV
DDR5, #00000000B
; P50/INT0 端子を入力に設定
AND
CCR, #0E0H
; PS 内 CCR の bit0 ∼ bit4 をクリア
OR
CCR, #40H
; PS 内 CCR の I フラグをセットして
; 割込み許可
MOV
I:ICR02, #00H
; 割込みレベル 0( 最強 ) とする
MOV
I:ELVR, #00000001B
; INT0 を "H" レベル要求とする
MOV
I:EIRR, #00H
; INT0 の割込み要因をクリア
MOV
I:ENIR, #01H
; INT0 の入力許可
:
LOOP:
NOP
; ダミーループ
NOP
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
97
第 3 章 割込み
3.9
MB90930 シリーズ
NOP
NOP
BRA
LOOP
; 無条件ジャンプ
;---------- 割込みプログラム ------------------------------------------ED_INT1:
MOV
I:EIRR, #00H
; INT0 の新規受付け禁止
NOP
NOP
NOP
NOP
NOP
NOP
; 割込みから復帰
RETI
CODE
ENDS
;---------- ベクタ設定 ---------------------------------------------VECT
CSEG
ABS=0FFH
ORG
0FFBCH
; 割込み #16(10H) にベクタ
; を設定
VECT
DSL
ED_INT1
ORG
0FFDCH
DSL
START
DB
00H
; シングルチップモードに設定
ENDS
END
98
; リセットベクタ設定
START
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.9
MB90930 シリーズ
■ 拡張インテリジェント I/O サービス (EI2OS) のプログラム例処理仕様
1. INT0端子に入力される信号の "H"レベルを検出して拡張インテリジェントI/O サービス (EI2OS)
を起動します。
2. INT0端子に"H"レベルが入力されると, EI2OSが起動されてポート0のデータをメモリの"3000H"
番地に転送します。
3. 転送データバイト数は 100 バイトで , 100 バイト転送後 , EI2OS 転送終了による割込みが発生し
ます。
以下にプログラムのコーディング例を示します。
[ コーディング例 ]
.SECTION IO,IO, LOCATE=0x000000
.ORG
0015H
.RES.B
01H
.ORG
0030H
ENIR
.RES.B
01H
; DTP/ 割込み許可レジスタ
EIRR
.RES.B
01H
; DTP/ 割込み要因レジスタ
ELVR
.RES.B
01H
; 要求レベル設定レジスタ
.ORG
00B2H
.RES.B
01H
.ORG
0100H
BAPL
.RES.B
01H
; バッファアドレスポインタ下位
BAPM
.RES.B
01H
; バッファアドレスポインタ中位
BAPH
.RES.B
01H
; バッファアドレスポインタ上位
ISCS
.RES.B
01H
; EI2OS ステータス
IOAL
.RES.B
01H
; I/O アドレスポインタ下位
IOAH
.RES.B
01H
; I/O アドレスポインタ上位
DCTL
.RES.B
01H
; データカウンタ下位
DCTH
.RES.B
01H
; データカウンタ上位
DDR5
ICR02
.SECTION STACK,STACK
.RES.B
STACKT .RES.B
; ポート 5 方向レジスタ
; 割込み制御レジスタ 02
; スタック
0FEH
01H
;---------- メインプログラム ----------------------------------------------.SECTION PROG,CODE
START:
AND
CCR, #0BFH
; PS 内 CCR の I フラグをクリアして
; 割込みを禁止
MOV
RP, #00
MOV
A, #bnksym STACKT
; レジスタバンクポインタを設定
; システムスタックの設定
MOV
CM44-10150-1
SSB, A
FUJITSU MICROELECTRONICS LIMITED
99
第 3 章 割込み
3.9
MB90930 シリーズ
MOVW
A, #STACKT
; スタックポインタの設定 ,
MOVW
SP, A
; この場合は S フラグが "1" のため
; SSP にセットされる
MOV
I:DDR5, #00000000B
; P50/INT0 端子を入力に設定
; バッファアドレスをセット (003000H)
MOV
BAPL, #00H
MOV
BAPM, #30H
MOV
BAPH, #00H
MOV
ISCS, #00010001B
; I/O アドレス更新なし , バイト転送 ,
; バッファアドレス更新あり
; I/O →バッファに転送 ,
; 周辺機能 ( リソース ) による終了あり
MOV
; 転送元アドレスをセット ( ポート
IOAL, #00H
; 0:000000H)
MOV
IOAH, #00H
MOV
DCTL, #064H
MOV
DCTH, #00H
MOV
I:ICR02, #00001000B
; 転送バイト数をセット (100 バイト )
; EI2OS ch.0, EI2OS 許可
; 割込みレベル 0( 最高レベル )
MOV
I:ELVR, #00000001B
; INT0 を "H" レベル要求とする
MOV
I:EIRR, #00H
; INT0 の割込み要因をクリア
MOV
I:ENIR, #01H
; INT0 の割込み許可
MOV
ILM, #07H
; PS 内 ILM をレベル 7 に設定
AND
CCR, #0E0H
; PS 内 CCR の bit0 ∼ bit4 をクリア
OR
CCR, #040H
; PS 内 CCR の I フラグをセットして
; 割込み許可
:
LOOP:
LOOP ; 無限ループ
BRA
;---------- 割込みプログラム ------------------------------------------WARI
CLRB
EIRR:0
; DTP/ 割込み要求フラグのクリア
:
ユーザ処理
; EI2OS の終了要因をチェック ,
:
; バッファ中のデータの処理 , EI2OS の
; 再設定など
RETI
;---------- ベクタ設定 ---------------------------------------------.SECTION
100
VECT,CODE,
LOCATE=0xFFFF54
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 3 章 割込み
3.9
MB90930 シリーズ
CM44-10150-1
; 割込み #16(10H) にベクタを設定
.ORG
0FFFFBCH
.DATA.E
WARI
.ORG
0FFFFDCH
; リセットベクタ設定
.DATA.E
START
;
.DATA.B
00H
; モードデータ設定
END
START
FUJITSU MICROELECTRONICS LIMITED
101
第 3 章 割込み
3.9
102
MB90930 シリーズ
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第4章
リセット
リセットについて説明します。
4.1 リセットの概要
4.2 リセット要因と発振安定待ち時間
4.3 外部リセット端子
4.4 リセット動作
4.5 リセット要因ビット
4.6 リセットによる各端子の状態
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
103
第 4 章 リセット
4.1
4.1
MB90930 シリーズ
リセットの概要
リセット要因が発生すると , CPU は直ちに現在実行中の処理を中断し , リセット解
除待ち状態になります。リセット解除後は , リセットベクタで示されたアドレスか
ら処理を開始します。
リセットには , 次の 6 つの要因があります。
• 電源投入 ( パワーオン )
• RST 端子からの外部リセット要求
• ソフトウェアリセット要求
• ウォッチドッグタイマのオーバフロー
• 電源電圧の低下検出
• CPU 動作検出機能カウンタのオーバフロー
■ リセット要因
リセットの要因について表 4.1-1 に示します。
表 4.1-1 リセット要因
リセット
発生要因
マシンクロック
ウォッチ
ドッグタイマ
CPU
動作検出
発振安定
待ち
パワーオン
電源投入時
メインクロック
(MCLK)
停止
停止
あり
外部端子
RST端子への"L"レベル
入力
メインクロック
(MCLK)
停止
停止
なし
ソフトウェア
低消費電力モード制御
レジスタ (LPMCR) の
内部リセット信号発生
ビット (RST) に "0" を
書き込む
メインクロック
(MCLK)
停止
停止
なし
ウォッチ
ドッグタイマ
ウォッチドッグタイマ
オーバフロー
メインクロック
(MCLK)
停止
停止
なし
低電圧検出
電源電圧の低電圧検出
時 (4.0 ± 0.3V)
メインクロック
(MCLK)
停止
停止
なし
CPU 動作
検出機能
CPU 動作検出機能カウ
ンタのオーバフロー
メインクロック
(MCLK)
停止
停止
なし
MCLK: メインクロック ( 発振クロックの 2 分周クロック )
104
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 4 章 リセット
4.1
● パワーオンリセット
パワーオンリセットは , 電源投入時に発生するリセットです。発振安定待ち時間は 216
発振クロックサイクル (216/HCLK) 固定です。発振安定待ち時間が経過した後にリセッ
ト動作を行います。
● 外部リセット
外部リセットは , 外部リセット端子 (RST 端子 ) に "L" レベルを入力することでリセッ
トを発生します。RST 端子への "L" レベル入力時間は , 16 マシンサイクル (16/φ) 以上
必要です。外部リセットでは発振安定待ち時間をとりません。
<注意事項>
RST 端子によるリセット要求の発生の場合に限り , 書込み動作中 ( 転送系命令実行中 MOV
など ) にリセット要因が発生した場合 , 命令の終了後にリセット解除待ち状態になります。
そのため , 書込み中にリセットが入力されても正常に書込みを終了します。ただし , スト
リング系命令 (MOVS など ) は , 指定したカウンタ分の転送が完了する前にリセットを受
け付けるので , すべてのデータが転送されることは保証されません。
● ソフトウェアリセット
ソフトウェアリセットは , 低消費電力モード制御レジスタ (LPMCR) の内部リセット信
号発生ビット (RST) に "0" を書き込むことによって , 内部リセットを発生します。ソフ
トウェアリセットでは発振安定待ち時間をとりません。
● ウォッチドッグリセット
ウォッチドッグリセットは , ウォッチドッグタイマの起動後 , 定められた時間内に
ウォッチドッグタイマ制御レジスタ (WDTC) のウォッチドッグ制御ビット (WTE) に "0"
の書込みがない場合にウォッチドッグタイマのオーバフローによってリセットを発生
します。ウォッチドッグリセットは発振安定待ち時間をとりません。
● 低電圧検出リセット
低電圧検出リセットは , 電源電圧が所定の値より低くなった場合に発生するリセット
です。4.0V 検出電圧では発振安定待ち時間をとりません。この機能は電源投入から常
に機能します。
● CPU 動作検出リセット
CPU 動作検出リセットは , 電源投入後に定められた時間内に低電圧 /CPU 動作検出リ
セット制御レジスタ (LVRC) の CPU 動作検出回路クリアビット (CL) に "0" の書込みが
ない場合に CPU 動作検出機能カウンタのオーバフローによってリセットを発生しま
す。この機能は電源投入から常に機能します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
105
第 4 章 リセット
4.1
MB90930 シリーズ
クロックの定義
HCLK : 発振クロック周波数
MCLK : メインクロック周波数
φ
: マシンクロック周波数 (CPU 動作クロック )
1/φ
: マシンサイクル (CPU 動作クロック周期 )
詳細は , 「5.1 クロック」を参照してください。
<注意事項>
ストップモードでリセットが発生した場合には , 216/HCLK( 約 16.39ms, HCLK=4MHz 発
振子使用時 ) の発振安定待ち時間が必要です。
詳細は , 「5.1 クロック」を参照してください。
106
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
4.2
リセット要因と発振安定待ち時間
第 4 章 リセット
4.2
MB90930 シリーズには 6 種類のリセット要因があり , リセット時の発振安定待ち時
間がリセット要因によってそれぞれ異なります。
■ リセット要因と発振安定待ち時間
表 4.2-1 にリセット要因と発振安定待ち時間について示します。
表 4.2-1 リセット要因と発振安定待ち時間
リセット
リセット要因
213/HCLK( 約 2.05ms)+ 216/HCLK( 約 16.39ms)=
約 18.44ms
( 注意事項 ) 213/HCLK( 約 2.05ms) は降圧回路
の安定時間
パワーオン
電源立上げ
ウォッチドッグ
ウォッチドッグタイマの
オーバフロー
外部
RST 端子からの "L" 入力
低電圧検出
低電源電圧の検出 (4.0 ± 0.3V)
CPU 動作検出
CPU 動作検出タイマの
オーバフロー
ソフトウェア
低消費電力モード制御レジス
タ (LPMCR) の RST ビットへの
"0" 書込み
HCLK
WS1, WS0
発振安定待ち時間
( ) 内は発振クロック周波数 4MHz 時
なし : WS1, WS0 ビットは "11B" に初期化され
ます。
なし : ただし , WS1, WS0 ビットは "11B" に初
期化されます。
なし : WS1, WS0 ビットは "11B" に初期化され
ます。
なし : ただし , WS1, WS0 ビットは "11B" に初
期化されます。
なし : ただし , WS1, WS0 ビットは "11B" に初
期化されます。
: 発振クロック周波数
: クロック選択レジスタ (CKSCR ) の発振安定待ち時間選択ビット
図 4.2-1 に , パワーオンリセット時の発振安定待ち時間について示します。
図 4.2-1 パワーオンリセット時の発振安定待ち時間
VCC
213/HCLK
216/HCLK
CLK
CPU動作
降圧回路の
安定待ち時間
発振安定
待ち時間
HCLK :発振クロック周波数
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
107
第 4 章 リセット
4.2
MB90930 シリーズ
表 4.2-2 クロック選択レジスタ (CKSCR) の設定による発振安定待ち時間
WS1
WS0
0
0
215/HCLK( 約 8.19ms)
0
1
213/HCLK( 約 2.05ms)
1
0
214/HCLK( 約 4.10ms)
1
216/HCLK( 約 16.39ms) ( パワーオンリセット以外 )
213/HCLK( 約 2.05ms)+ 216/HCLK( 約 16.39ms)= 約 18.44ms
( パワーオンリセット時 )
1
発振安定待ち時間 ( ) 内は発振クロック周波数 4MHz 時
HCLK: 発振クロック周波数
<注意事項>
セラミックや水晶などの振動子は発振を開始してから固有の振動数に安定するまで , 一般
に数 ms から十数 ms の発振安定待ち時間が必要です。そのため , 使用する振動子に合わ
せた値を設定してください。詳細は , 「5.1 クロック」を参照してください。
■ 発振安定待ちリセット状態
電源投入時のリセット , ストップモード中のリセットに対するリセット動作は , タイム
ベースタイマによって作られる発振安定待ち時間が経過してからとなります。このと
き , 外部リセット入力が解除されていない場合は , 外部リセット解除後にリセット動作
を行います。
108
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 4 章 リセット
4.3
MB90930 シリーズ
4.3
外部リセット端子
外部リセット端子 (RST 端子 ) はリセット入力専用端子で , "L" レベルの入力によっ
て内部リセットを発生します。MB90930 シリーズは , CPU 動作クロックに同期して
リセットがかかりますが , 外部端子のみ非同期でリセットがかかります。
■ 外部リセット端子のブロックダイヤグラム
図 4.3-1 内部リセットのブロックダイヤグラム
RST
CPU動作クロック
(PLL逓倍回路, HCLKの2分周)
P-ch
同期化回路
端子
N-ch
入力バッファ
クロック同期
内部リセット信号
HCLK:発振クロック
<注意事項>
書込み動作中のリセットによるメモリ破壊を防ぐため, RST端子入力の受付けをメモリが
破壊されないサイクルで行います。また , 内部回路の初期化にはクロックが必要です。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
109
第 4 章 リセット
4.4
4.4
MB90930 シリーズ
リセット動作
リセットが解除されると , モード端子の設定でモードデータとリセットベクタの読
出し先を選択して , モードフェッチを行います。このモードフェッチで , CPU の動
作モードとリセット動作終了後の実行開始アドレスが決定されます。電源投入時 ,
ストップモードからのリセットによる復帰では , 発振安定待ち時間が経過してから
モードフェッチを行います。
■ リセット動作の概要
図 4.4-1 に , リセット動作フローを示します。
図 4.4-1 リセット動作フロー
パワーオンリセット
ストップモード
低電圧検出リセット
外部リセット
ソフトウェアリセット
ウォッチドッグタイマリセット
CPU動作検出リセット
リセット中
発振安定待ちリセット状態
モードフェッチ
(リセット動作)
モードデータ取込み
リセットベクタ取込み
通常動作
(RUN状態)
リセットベクタが示す
アドレスから命令コードを
取り込んで命令を実行
■ モード端子
モード端子 (MD2 ∼ MD0) は , リセットベクタとモードデータの取込み方法を指定しま
す。リセットベクタとモードデータの取込みはリセットシーケンスで行います。モー
ド端子の詳細は , 「7.2 モード端子 (MD2 ∼ MD0)」を参照してください。
■ モードフェッチ
リセットが解除されると , CPU はリセットベクタとモードデータを CPU コア内の該当
レジスタ内にハードウェア転送します。リセットベクタとモードデータは , "FFFFDCH" ∼
"FFFFDFH" の 4 バイトに割り当てられています。CPU は , リセット解除で直ちにこれ
らのアドレスをバスに出力し , リセットベクタとモードデータを取り込みます。この
モードフェッチで , CPU はリセットベクタが指すアドレスから処理を開始します。
図 4.4-2 に , リセットベクタとモードデータの転送を示します。
110
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 4 章 リセット
4.4
MB90930 シリーズ
図 4.4-2 リセットベクタとモードデータの転送
メモリ空間
F2MC-16LX CPUコア
モード
レジスタ
FFFFDFH
モードデータ
FFFFDEH
リセットベクタビット23~16
FFFFDDH
リセットベクタビット15~8
FFFFDCH
リセットベクタビット7~0
マイクロROM
リセットシーケンス
PCB
PC
● モードデータ ( アドレス :FFFFDFH)
モードレジスタの内容を変更できるのはリセット動作だけで , モードレジスタの設定
はリセット動作以降に有効となります。モードデータの詳細は , 「7.3 モードデータ」
を参照してください。
● リセットベクタ ( アドレス :FFFFDCH ∼ FFFFDEH)
リセット動作終了後の実行開始アドレスを書き込んでおきます。この内容のアドレス
から実行を開始します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
111
第 4 章 リセット
4.5
4.5
MB90930 シリーズ
リセット要因ビット
リセット発生要因は , ウォッチドッグタイマ制御レジスタ (WDTC) および低電圧 /
CPU 動作検出リセット制御レジスタ (LVRC) を読み出すことで識別することができ
ます。
■ リセット要因ビット
図 4.5-1 に示すように , それぞれのリセット要因には対応したフリップフロップがあり
ます。これらの内容は , ウォッチドッグタイマ制御レジスタ (WDTC) を読み出すと得
られます。リセット解除後にリセット発生要因を識別する必要がある場合には , ウォッ
チドッグタイマ制御レジスタ (WDTC) の読出し値をソフトウェアで処理した上で , 適
切なプログラムへ分岐するようにしてください。
図 4.5-1 リセット要因ビットのブロックダイヤグラム
定期的なクリアなし
電源電圧低下
CPU動作検出
リセット
要求検出回路
RST端子
低電圧検出回路
電源投入
定期的な
クリアなし
RST="L"
パワーオン
発生検出回路
外部リセット
要求検出回路
ウォッチドッグ
タイマリセット
発生検出回路
RSTビットセット
LPMCR: RSTビット
書込み検出回路
クリア
ウォッチドッグ
タイマ制御レジスタ
(WDTC)
S
R
F/F
Q
S
R
F/F
Q
S
F/F
Q
R
S
F/F
Q
R
遅延回路
ウォッチドッグタイマ
制御レジスタ
(WDTC)読出し
内部データバス
S :セット
R :リセット
Q :出力
F/F :フリップフロップ
112
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 4 章 リセット
4.5
MB90930 シリーズ
■ リセット要因ビットとリセット要因の対応
ウォッチドッグタイマ制御レジスタ (WDTC) のリセット要因ビットの構成を , 図 4.5-2
に , リセット要因ビットの内容とリセット要因の対応を表 4.5-1 に示します。詳細は
「9.3.1 ウォッチドッグタイマ制御レジスタ (WDTC)」を参照してください。
図 4.5-2 リセット要因ビットの構成 ( ウォッチドッグタイマ制御レジスタ )
ウォッチドッグタイマ制御レジスタ(WDTC)
アドレス bit15 .....................bit8 bit7
0000A8H
(TBTC)
bit6
PONR
-
R
-
bit5
bit4
bit3
WRST ERST SRST WTE
R
R
R
bit1
bit0
初期値
WT1
WT0
X-XXX111B
W
W
bit2
W
R :リードオンリ
W :ライトオンリ
X :不定値
表 4.5-1 リセット要因ビットの内容とリセット要因の対応
PONR
WRST
ERST
SRST
パワーオンリセット要求の発生
1
X
X
X
ウォッチドッグタイマオーバフローによる
リセット要求の発生
△
1
△
△
△
△
1
△
△
△
△
1
リセット要因
RST 端子からの外部リセット要求 , 低電圧検
出 (4.0V) リセット要求の発生* 1
CPU
動作検出リセット要求の発生* 2
ソフトウェアリセット要求の発生
△ : 前の状態を保持
X : 不定値
*1 : 低電圧検出リセット要求の発生の場合は , 低電圧 /CPU 動作検出リセット制御
レジスタ (LVRC) の LVRF ビットも "1" になります。
*2 : CPU 動作検出リセット要求の発生の場合は , 低電圧 /CPU 動作検出リセット制
御レジスタ (LVRC) の CPUF ビットも "1" になります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
113
第 4 章 リセット
4.5
MB90930 シリーズ
■ リセット要因ビットの状態
図 4.5-3 リセット要因ビットの状態
(5)
(2)
(3)
(4)
ビットのクリア 低電圧(4.0V)検出 ビットのクリア 低電圧(1.4V)検出
時のフラグ状態
時のフラグ状態
(1)
電源投入時
VCC=4.0V
VCC=1.4V
VCC
(1)
PONR ビット
(Power-on=1
または
RAMF = 1)
(2)
(3)
(4)
(5)
1
→
0
→
0
→
0
→
1
ERST ビット
( 外部リセット
入力 , CPU 動作
検出または
LVRF=1)
"1" または
"0"
→
0
→
1
→
0
→
1
LVRF ビット *
( 低電圧検出 ,
4V ± 0.3V)
"1" または
"0"
→
0
→
1
→
0
→
1
* : LVRF ビットは低電圧 /CPU 動作検出リセット制御レジスタ (LVRC) 内にあります。
(1) 電源投入時
電源が投入されると , パワーオンリセットビット (PONR) と ERST, LVRF ビットが "1" にセットされ
ます。しかし , 通常のスタートアップによらないで電源が投入された場合には ERST, LVRF ビット
が "0" にセットされることがあります。
(2) ビットのクリア (WDTC レジスタの読出しと , LVRF ビットへの "0" 書込みによりビットがクリアさ
れます )。
(3) 低電圧 (VCC = 4V ± 0.3V) が検出されたとき
低電圧 (VCC = 4V ± 0.3V) が検出されたとき , LVRF ビット , ERST ビットが "1" にセットされます。
(4) ビットのクリア (WDTC レジスタの読出しと LVRF ビットへの "0" 書込みにより , ビットがクリアさ
れます )。
114
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 4 章 リセット
4.5
■ リセット要因ビットの注意事項
● 複数のリセット要因が発生した場合
リセット要因が複数発生する場合には, ウォッチドッグタイマ制御レジスタ(WDTC)の
対応するそれぞれのリセット要因ビットが "1" にセットされます。例えば , RST 端子か
らの外部リセット要求の発生とウォッチドッグタイマのオーバフローが同時に発生し
た場合には , ERST ビットと WRST ビットの両方が "1" になります。
● リセット要因ビットのクリア
リセット要因ビットは , ウォッチドッグタイマ制御レジスタ (WDTC) を読み出したと
きにのみクリアされます。それぞれのリセット要因に対応するビットに発生したフラ
グは , その後ほかの要因でリセットが発生してもクリアされずに , "1" のままとなりま
す。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
115
第 4 章 リセット
4.6
4.6
MB90930 シリーズ
リセットによる各端子の状態
リセットによる各端子の状態について説明します。
■ リセット中の端子の状態
リセット中の端子の状態は , モード端子 (MD2 ∼ MD0=011B) の設定によって決定され
ます。
リセット中の各端子の状態は , 「6.7 スタンバイモード , リセット時の端子状態」を参
照してください。
● 内部ベクタモード設定時
I/O 端子 ( 周辺機能端子 ) はすべてハイインピーダンスになり , モードデータの読出し
先は内部 ROM になります。
■ モードデータ読出し後の端子の状態
モードデータ読出し後の端子の状態は , モードデータ (M1, M0=00B) によって決定され
ます。
● シングルチップモード選択時 (M1, M0=00B)
I/O 端子 ( 周辺機能端子 ) はすべてハイインピーダンスになり , モードデータの読出し
先は内部 ROM になります。
<注意事項>
リセット要因が発生したときにハイインピーダンスになる端子は , その端子に接続した機
器が誤動作しないように配慮してください。
116
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第5章
クロック
クロックについて説明します。
5.1 クロック
5.2 クロック発生部のブロックダイヤグラム
5.3 クロック選択レジスタ (CKSCR)
5.4 PLL/ サブクロック制御レジスタ (PSCCR)
5.5 クロックモード
5.6 発振安定待ち時間
5.7 振動子および外部クロックの接続
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
117
第 5 章 クロック
5.1
5.1
MB90930 シリーズ
クロック
クロック発生部は ,CPU や周辺機能の動作クロックである内部クロックを制御します。クロッ
ク発生部で生成されたクロックをマシンクロックとよび , マシンクロックの 1 周期をマシンサ
イクルとよび , 発振クロックの 2 分周をメインクロックとよびます。低速振動子から供給され
るクロックの4分周または 2 分周をサブクロック ,PLL 発振によるクロックを PLL クロック
とよびます。
■ クロック
クロック発生部には発振回路が内蔵されており , 発振端子に振動子を接続することによって発振
クロックを発生します。外部から発振端子に入力したクロックを発振クロックとすることもでき
ます。また , PLL クロック逓倍回路を内蔵しており , 発振クロックの逓倍クロックを 6 種類発生
できます。クロック発生部では , 発振安定待ち時間の制御 , PLL クロック逓倍制御 , クロックセレ
クタによる内部クロックの切換え動作を行います。
● 発振クロック (HCLK)
高速発振端子 (X0, X1) に振動子を接続して発生させたクロックです。
● メインクロック (MCLK)
発振クロックを 2 分周したクロックです。タイムベースタイマとクロックセレクタへの入力ク
ロックとなります。
● サブクロック (SCLK)
低速発振端子 (X0A, X1A) に振動子を接続するか , 外部クロックを入力して発生させたクロック
を 4 分周または 2 分周したクロックです。サブクロックの分周比は PLL/ サブクロック制御レジ
スタ (PSCCR) の SCDS ビットで設定されます。時計タイマの動作クロック , または低速のマシン
クロックとしても使用できます。
● PLL クロック (PCLK)
発振クロックを PLL クロック逓倍回路 (PLL 発振回路 ) によって逓倍したクロックです。逓倍率
選択ビット (CKSCR:CS1, CS0, PSCCR:CS2) の設定によって 6 種類のクロックから選択できます。
● マシンクロック
CPU と周辺機能の動作クロックです。マシンクロックの 1 周期をマシンサイクル (1/φ) としていま
す。メインクロック , サブクロック , 6 種類の PLL クロックから 1 種類を選択できます。
<注意事項>
動作電圧が 5V の場合 , 発振クロックは 3MHz ∼ 16MHz の発振ができます。CPU および周辺機能の
最大動作周波数は 32MHz のため , 最大動作周波数を超える逓倍率を設定した場合にはデバイスは正
常に動作しません。PLL 発振は 4MHz ∼ 32MHz の範囲で発振しますが , PLL 発振範囲は動作電圧お
よび逓倍率によって異なります。詳細は「データシート」を参照してください。
118
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 5 章 クロック
5.1
MB90930 シリーズ
■ クロック供給マップ
CPU や周辺機能の動作クロックとして , クロック発生部で生成したマシンクロックを供給してい
ます。CPU と周辺機能の動作は , メインクロックとサブクロック , および PLL クロックの切換え
( クロックモード ) や PLL クロックの逓倍率の切換えの影響を受けます。一部の周辺機能にはタ
イムベースタイマの分周出力が供給されており , 各周辺で動作クロックを選択できるようになっ
ています。
クロック供給マップを図 5.1-1 に示します。
図 5.1-1 クロック供給マップ
周辺機能
時計タイマ
ウォッチドッグ
タイマ
タイムベースタイマ
8/16ビット
PPGタイマ0~5
端子 PPG0~PPG5
クロック発生部
PLL逓倍回路
PCLK(PLLクロック)
X0A*1
端子
X1A*2
端子
16ビット
リロードタイマ0~3
端子 TOT0~TOT3
端子
クロックセレクタ
クロック
発生回路
端子 TIN0~TIN3
端子
4/2分周
クロックモジュレータ
SCLK
(サブクロック)
A/Dコンバータ(24チャネル)
端子 AN0~AN3
リアルタイム時計タイマ
端子
端子
クロック
発生回路
2分周
HCLK
(発振クロック)
端子 SCK0~SCK3
クロックセレクタ
MCLK
(メインクロック)
UART0~UART3
(マシンクロック)
端子 SIN0~SIN3
端子 SOT0~SOT3
入出力タイマ
フリーランタイマ
インプットキャプチャ
0~7
端子 IN0~IN7
端子 IN2R~IN7R
端子 PWM1P0~PWM1P3
SMC0~SMC3
端子 PWM1M0~PWM1M3
端子 PWM2P0~PWM2P3
端子 PWM2M0~PWM2M3
HCLK
MCLK
PCLK
φ
φc
*1
*2
:発振クロック
:メインクロック
:PLLクロック
:マシンクロック
:CAN1クロック
:X0A端子はオプション対応です。1系統品の場合はありません。
:X1A端子はオプション対応です。1系統品の場合はありません。
CM44-10150-1
発振安定待ち制御
FUJITSU MICROELECTRONICS LIMITED
119
第 5 章 クロック
5.2
5.2
MB90930 シリーズ
クロック発生部のブロックダイヤグラム
クロック発生部は , 次のブロックで構成されています。
• 発振クロック発生回路
• PLL 逓倍回路
• クロックセレクタ
• クロック選択レジスタ (CKSCR)
• PLL/ サブクロック制御レジスタ (PSCCR)
• 発振安定待ち時間セレクタ
■ クロック発生部のブロックダイヤグラム
クロック発生部のブロックダイヤグラムを図 5.2-1 に示します。なお , スタンバイ制御回路 , タイ
ムベースタイマの回路も含まれます。
120
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 5 章 クロック
5.2
MB90930 シリーズ
図 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)
2分周
X0 端子
発振クロック
(HCLK)
X1 端子
発振クロック
発振回路
X0A*1 端子
サブクロック
(SCLK)
4分周/
2分周
4分周
512分周
2分周
メイン
クロック
タイムベースタイマ
1024分周
2分周
2分周
2分周
2分周
4分周
ウォッチドッグタイマへ
8分周
2分周
2分周
時計タイマ
X1A*2 端子
サブクロック
SCDS
発振回路
PLL/サブクロック
制御レジスタ
(PSCCR):bit10
*1 : X0A端子はオプション対応です。1系統品の場合はありません。
*2 : X1A端子はオプション対応です。1系統品の場合はありません。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
121
第 5 章 クロック
5.2
MB90930 シリーズ
● 発振クロック発生回路
高速発振端子 (X0, X1) に振動子を接続して発振クロック (HCLK) を発生します。
● サブクロック発生回路
低速発振端子 (X0A, X1A) に振動子を接続するか , 外部クロックを入力してサブクロック (SCLK)
を発生します (X0A, X1A 端子はオプション対応です。1 系統品の場合はありません )。
● PLL 逓倍回路
PLL 発振で発振クロックを逓倍して , PLL クロック (PCLK) としてクロックセレクタに供給しま
す。
● クロックセレクタ
メインクロック , サブクロック , 6 種類の PLL クロックから CPU および周辺機能に供給するク
ロックを選択します。
● クロック選択レジスタ (CKSCR)
発振クロックと PLL クロックの切換え , メインクロックとサブクロックの切換え , 発振安定待ち
時間の選択 , および PLL クロックの逓倍率の選択を行います。
● PLL/ サブクロック制御レジスタ (PSCCR)
PLL クロックの逓倍率の選択 ( クロック選択レジスタの CS0 ビット , CS1 ビットと本レジスタの
CS2 ビットの設定によって選択されます ) およびサブクロック分周比の設定 (4 分周 /2 分周 ) を行
います。
● 発振安定待ち時間セレクタ
発振クロックの発振安定待ち時間を選択します。4 種類のタイムベースタイマ出力から選択しま
す。
122
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 5 章 クロック
5.2
MB90930 シリーズ
5.2.1
クロック発生部のレジスタ
クロック発生部のレジスタを説明します。
■ クロック発生部のレジスタと初期値の一覧
図 5.2-2 にクロック選択レジスタと初期値の一覧を示します。
図 5.2-2 クロック選択レジスタと初期値の一覧
bit
15
14
13
12
11
10
9
8
クロック選択レジスタ(CKSCR)
1
1
1
1
1
1
0
0
PLLクロック制御レジスタ(PSCCR)
-
-
-
-
0
0
0
0
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
123
第 5 章 クロック
5.3
MB90930 シリーズ
クロック選択レジスタ (CKSCR)
5.3
クロック選択レジスタ (CKSCR) は , メインクロックとサブクロック , および PLL クロックの
切換え , 発振安定待ち時間の選択 , および PLL クロックの逓倍率の選択を行います。
■ クロック選択レジスタ (CKSCR)
図 5.3-1 クロック選択レジスタ (CKSCR)
8
アドレス bit 15 14 13 12 11 10 9
000A1H
SCM MCM WS1 WS0 SCS MCS CS1 CS0
R
R
初期値
11111100B
R/W R/W R/W R/W R/W R/W
CS2(PSCCRレジスタ:bit8)
bit9 bit8
CS2 CS0 CS0
逓倍率選択ビット
1×HCLK
0
0
0
0
0
1
2×HCLK
0
1
0
3×HCLK
0
1
1
4×HCLK
1
1
0
6×HCLK
1
1
8×HCLK
1
bit10
MCS
0
1
bit11
SCS
0
1
PLLクロック選択ビット
PLLクロックを選択
メインクロックを選択
サブクロック選択ビット
サブクロックを選択
メインクロックを選択
bit13 bit12
WS1 WS0
発振安定待ち時間選択ビット
( )内は発振クロック(HCLK)周波数4MHz時の算出例
0
0
215/HCLK(約8.19ms)
0
1
213/HCLK(約2.05ms)
1
0
214/HCLK(約4.10ms)
1
1
216/HCLK(約16.38ms,パワーオンリセット以外)
216/HCLK+213/HCLK
(約18.44ms,パワーオンリセットのみ)
bit14
PLLクロック動作ビット
MCM
0
PLLクロックで動作中
1
メインクロックまたはサブクロックで動作中
HCLK:発振クロック
R/W :リード /ライト 可能
R
:リードオンリ
:初期値
124
bit15
SCM
0
1
サブクロック動作ビット
サブクロックで動作中
メインクロックまたはPLLクロックで動作中
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 5 章 クロック
5.3
MB90930 シリーズ
表 5.3-1 クロック選択レジスタ (CKSCR) の機能 (1 / 3)
ビット名
bit15
SCM:
サブクロック動作
フラグビット
bit14
MCM:
PLL クロック動作
フラグビット
bit13,
bit12
WS1, WS0:
発振安定待ち時間選択
ビット
機能
マシンクロックとして , メインクロックまたはサブクロックのどちら
が選択されているかを表示します。
• サブクロック動作フラグビット (CKSCR: SCM) が "0", サブクロック
選択ビット (CKSCR: SCS) が "1" の場合は , サブクロックからメイ
ンクロックへの移行期間中であることを示します。また , サブク
ロック動作フラグビット (CKSSCR: SCM) が "1", サブクロック選択
ビット (CKSCR: SCS) が "0" の場合には , メインクロックからサブ
クロックへの移行期間中であることを示します。
• 書込みは動作に影響ありません。
マシンクロックとして , メインクロックまたは PLL クロックのどちら
が選択されているかを示します。
• PLL クロック動作フラグビット (CKSCR:MCM) が "1" で , PLL ク
ロック選択ビット (CKSCR:MCS) が "0" の場合には , PLL クロック
発振安定待ち時間中であることを示します。
• 書込みは動作に影響ありません。
ストップモード解除時 , サブクロックモードからメインクロックモー
ドへの移行時 , およびサブクロックモードから PLL クロックモードへ
の移行時の発振クロックの発振安定待ち時間を選択します。
4 種類のタイムベースタイマ出力から選択します。
すべてのリセットにより , 初期値に戻ります。
( 注意事項 )
発振安定待ち時間は , 使用されている振動子に合わせて適切な時間
を設定してください。詳しくは ,「4.2 リセット要因と発振安定待ち
時間」を参照してください。
メインクロックモードからPLL クロックモードに切り換えた場合の
発振安定待ち時間は , 214/HCLK( 発振クロック周波数 4MHz で動作
している場合 : 約 4.1ms) 固定です。サブクロックモードから PLL ク
ロックモードに切り換えた場合および PLL ストップモードから PLL
クロックモードに復帰する場合の発振安定待ち時間は , 本ビットに
設定された値に従います。
PLL クロック発振安定待ち時間は , 214/HCLK 以上必要ですので , サ
ブクロックモードからPLL クロックモードに切り換える場合および
PLL ストップモードに移行する場合は , 本ビットには "10B" または
"11B" を設定してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
125
第 5 章 クロック
5.3
MB90930 シリーズ
表 5.3-1 クロック選択レジスタ (CKSCR) の機能 (2 / 3)
ビット名
bit11
SCS:
サブクロック
選択ビット
機能
マシンクロックとして , メインクロックまたはサブクロックのどちら
かを選択するかを設定します。
• メインクロックからサブクロックに切り換えた場合は (CKSCR:
SCS=1 → 0), サブクロックに同期をとって 1/SCLK
( 発振クロック周波数 32.768 kHz, 4 分周設定で動作している場合 :
約 122 μs)
サブクロックモードに切り換わります。
• サブクロックからメインクロックに切り換えた場合は (CKSCR:
SCS=0 → 1), メインクロックの発振安定待ち時間が発生した後にメ
インクロックモードに切り換わります。タイムベースタイマは自動
的にクリアされます。
すべてのリセットにより , 初期値に戻ります。
( 注意事項 )
・MCS ビット ,SCS ビットがともに "0" の場合には ,SCS ビットが優
先されてサブクロックモードに設定されます。
・サブクロック選択ビット (CKSCR: MCS) および PLL クロック選択
ビット (CKSCR: SCS) がともに "0" の場合には , サブクロックが優
先されます。
・メインクロックからサブクロックに切り換える場合は (CKSCR: SCS=1 → 0), タイムベースタイマの割込み許可ビット (TBTC: TBIE), またはインタラプトレベルマスクレジスタ (ILM: ILM2 ∼ ILM0) により , タイムベースタイマ割込みを禁止してから書き込
んでください。
・電源投入時 , またはストップモードからの解除時は , サブクロック
の発振安定待ち時間 214/SCLK(発振クロック周波数 32.768 kHz, 4 分
周設定で動作している場合 : 約 2 秒 ) が発生します。したがって ,
その間にメインクロックモードからサブクロックモードに切り換
えた場合には , 発振安定待ち時間が発生します。
bit10
126
MCS:
PLL クロック選択ビッ
ト
マシンクロックとして , メインクロックまたは PLL クロックのどちら
を選択するかを設定します。
メインクロックから PLL クロックに切り換えた場合には
(CKSCR:MCS=1 → 0), PLL クロックの発振安定待ち時間が発生した後
に PLL クロックモードに移行します。タイムベースタイマは自動的に
クリアされます。メインクロックモードから PLL クロックモードに切
り換えた場合の発振安定待ち時間は , 214/HCLK( 発振クロック周波数
4MHz で動作している場合 : 約 4.1ms) 固定です。
すべてのリセットにより , 初期値に戻ります。
( 注意事項 )
・MCS ビット ,SCS ビットがともに "0" の場合には ,SCS ビットが優
先されてサブクロックモードに設定されます。
・メインクロックから PLL クロックに切り換える場合は (CKSCR:MCS=1 → 0), タイムベースタイマの割込み許可ビット (TBTC:TBIE), またはインタラプトレベルマスクレジスタ (ILM:ILM2 ∼ ILM0) により , タイムベースタイマ割込みを禁止し
てから書き込んでください。
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 5 章 クロック
5.3
MB90930 シリーズ
表 5.3-1 クロック選択レジスタ (CKSCR) の機能 (3 / 3)
ビット名
機能
•
•
•
PLL/ サブクロック制御レジスタ (PSCCR) の CS2 ビットとともに
PLL クロックの逓倍率を選択するビットです。
PLL クロックの逓倍率を 6 種類から選択できます。
すべてのリセットにより , 初期値に戻ります。
CS0, CS1 および CS2 の設定
CS2
bit9,
bit8
CS1, CS0:
逓倍率選択ビット
CS1
CS0
PLL クロック逓倍率
×1
×2
×3
×4
×6
×8
0
0
0
0
0
1
0
1
0
0
1
1
1
1
0
1
1
1
( 注意事項 )
PLL クロックが選択されている場合 (CKSCR:MCS=0) には書込みが
抑止されます。逓倍率を書き換える場合は , いったん PLL クロック
選択ビット (CKSCR:MCS) に "1" を書き込んだ後に逓倍率選択ビッ
ト (CKSCR:CS1, CS0) を書き換えてから PLL クロック選択ビット
(CKSCR:MCS) を "0" に戻してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
127
第 5 章 クロック
5.4
5.4
MB90930 シリーズ
PLL/ サブクロック制御レジスタ (PSCCR)
PLL/ サブクロック制御レジスタは , PLL の逓倍率およびサブクロックの分周比を選択します。
本レジスタは書込み専用です。読出し値は全ビット "1" になります。
■ PLL/ サブクロック制御レジスタ (PSCCR)
図 5.4-1 に PLL/ サブクロック制御レジスタ (PSCCR) の構成を示し , 表 5.4-1 では PLL/ サブクロッ
ク制御レジスタ (PSCCR) の各ビットの機能について説明します。
図 5.4-1 PLL/ サブクロック制御レジスタ (PSCCR) の構成
アドレス
0000CFH
bit 15
14
13
12
-
-
-
-
-
-
-
-
11
10
9
8
予約 SCDS 予約 CS2
W
W
W
初期値
XXXX0000B
W
bit8
CS2
0
1
逓倍率選択ビット
クロック選択レジスタ(CKSCR)参照
bit9
予約
0
予約ビット
常に"0"を書いてください。
読出し値は常に"1"です。
bit10
SCDS
W :ライトオンリ
X
:不定値
- :未定義
:初期値
128
サブクロック分周選択ビット
0
4分周
1
2分周
bit11
予約
0
予約ビット
常に"0"を書いてください。
読出し値は常に"1"です。
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 5 章 クロック
5.4
MB90930 シリーズ
表 5.4-1 PLL/ サブクロック制御レジスタ (PSCCR) の各ビットの機能説明
ビット名
機能
bit15
∼
bit12
未定義
これらのビットは使用しません。
• これらのビットへの書込みは何の効果もありません。
• 読出し値は常に "1" です。
bit11
予約ビット
•
•
bit10
SCDS:
サブクロック
分周選択ビット
bit9
予約ビット
bit8
CS2:
逓倍率選択ビット
常に "0" を書いてください。
読出し値は常に "1" です。
サブクロックの分周比を選択します。
・"0" を書き込むと 4 分周が選択されます。
・"1" を書き込むと 2 分周が選択されます。
・読出し値は常に "1" です。
・すべてのリセット要因で "0" に初期化されます。
•
•
常に "0" を書いてください。
読出し値は常に "1" です。
•
このビットとクロック選択レジスタ (CKSCR) の CS1, CS0 ビットで
PLL の逓倍率を決めます。
CS2
CS1
CS0
PLL クロック逓倍率
0
0
0
0
1
1
0
0
1
1
1
1
0
1
0
1
0
1
×1
×2
×3
×4
×6
×8
• 読出し値は常に "1" です。
• すべてのリセット要因で "0" に初期化されます。
( 注意事項 )
MCS または MCM ビットが "0" のときに , このビットの値を変える
ことは禁止です。メインクロックモード時に変更してください。
( 注意事項 ) PSCCR は書込み専用レジスタです。読出し値は書込み値とは異なります。
リードモディファイライト (RMW) 系命令 (SETB/CLRB 命令など ) を使用しないでください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
129
第 5 章 クロック
5.5
5.5
MB90930 シリーズ
クロックモード
クロックモードには , メインクロックモードと PLL クロックモードがあります。
■ クロックモード
● メインクロックモード
メインクロックモードは , CPU および周辺機能の動作クロックとして発振端子 (X0, X1) に振動子
を接続して発生させたクロック ( 発振クロック ) を 2 分周したクロックを使用します。
● サブクロックモード
サブクロックモードは , CPU および周辺リソースの動作クロックとして低速発振端子 (X0A, X1A)
に振動子を接続, または外部クロックを入力して発生させたクロックを4/2 分周したクロックを使
用します。サブクロックの分周比は PLL/ サブクロック制御レジスタ (PSCCR) の SCDS ビットで
選択できます (X0A, X1A 端子はオプション対応です。1 系統品の場合はありません )。
● 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" に書き換えた場合は , サブクロックのエッ
ジが検出されたタイミングでメインクロックからサブクロックに移行します。
● サブクロックモードからメインクロックモードへの移行
サブクロック選択ビット (CKSCR: SCS) を "0" から "1" に書き換えた場合には , メインクロック発
振安定待ち時間後にサブクロックからメインクロックに移行します。
● PLL クロックモードからサブクロックモードへの移行
サブクロック選択ビット (CKSCR: SCS) を "1" から "0" に書き換えた場合には , PLL クロックから
サブクロックに移行します。
130
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 5 章 クロック
5.5
● サブクロックモードから PLL クロックモードへの移行
サブクロック選択ビット (CKSCR: SCS) を "0" から "1" に書き換えた場合には , メインクロック発
振安定待ち時間後にサブクロックからメインクロックに移行します。
■ PLL クロック逓倍率の選択
逓倍率選択ビット (CKSCR: CS1, CS0, PSCCR: CS2) に "000B" ∼ "011B", "110B", "111B" の値を書
き込むことによって, 6 種類(1 倍∼ 4 倍, 6 倍, および8 倍) のPLL クロック逓倍率を設定できます。
■ マシンクロック
PLL 逓倍回路から出力される PLL クロック , メインクロック , サブクロックがマシンクロックと
なります。このマシンクロックが CPU および周辺機能に供給されます。メインクロック , PLL ク
ロック , サブクロックは PLL クロック選択ビット (CKSCR:MCS) およびサブクロック選択ビット
(CKSCR:SCS) への書込みによりいずれかを選択できます。
<注意事項>
• マシンクロックは , PLL クロック選択ビット (CKSCR:MCS) を書き換えても即座には切り換わり
ません。マシンクロックに依存する周辺機能を操作する場合は , マシンクロックを切り換えた後に
PLL クロック動作フラグビット (CKSCR:MCM) の値を参照して , マシンクロックが確実に切り換
わったことを確認してから操作してください。
• PLL クロック選択ビット (CKSCR:MCS) が "0"(PLL クロックモード ) で , サブクロック選択ビット
(CKSCR:SCS)が "0"( サブクロックモード ) の場合は ,SCS ビットが優先されてサブクロックモー
ドとなります。
• クロックモードを切り換えた場合には切換えが完了するまでは , ほかのクロックモードおよび低
消費電力モードへの切換えを行わないでください。切換えの完了はクロック選択レジスタ
(CKSCR) の MCM ビットを参照して確認してください。切換えが完了する前に , ほかのクロック
モードおよび低消費電力モードへの切換えを行った場合には切り換わらない場合があります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
131
第 5 章 クロック
5.5
MB90930 シリーズ
図 5.5-1 に , マシンクロックの切換えによる状態遷移図を示します。
図 5.5-1 マシンクロック選択の状態遷移図
Main
MCS = 1
MCM = 1
SCS = 1
SCM = 1
CS1, CS0 = xxB
CS2=x
(10)
(12)
(20)
(13)
(8)
(9)
(9)
(9)
(9)
(9)
132
(11)
(1)
Main --> PLLx
MCS = 0
MCM = 1
SCS = 1
SCM = 1
CS1, CS0 = xxB
CS2 = x
(9)
Main --> Sub
MCS = 1
MCM = 1
SCS = 0
SCM = 1
CS1, CS0 = xxB
CS2 = x
(2)
(3)
(4)
(5)
(6)
(7)
Sub --> Main
MCS = 1
MCM = 1
SCS = 1
SCM = 0
CS1, CS0 = xxB
CS2 = x
(12)
(11)
Sub
MCS = X
MCM = 1
SCS = 0
SCM = 0
CS1, CS0 = xxB
CS2 = x
(10)
(14)
(15)
(16)
(17)
(18)
(19)
Sub --> PLL
MCS = 0
MCM = 1
SCS = 1
SCM = 0
CS1, CS0 = xxB
CS2 = 0
PLL1 --> Main
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 = 00B (10)
CS2 = 0
PLL1 --> Sub
MCS = 1
MCM = 0
SCS = 0
SCM = 1
CS1, CS = 00B
CS2 = 0
PLL2 --> Main
MCS = 1
MCM = 0
SCS = 1
SCM = 1
CS1, CS0 = 01B
CS2 = 0
PLL2: Multiplied
MCS = 0
MCM = 0
SCS = 1
(10)
(8) SCM = 1
CS1, CS0 = 01B
CS2 = 0
PLL2 --> Sub (21)
MCS = 1
MCM = 0
SCS = 0
SCM = 1
CS1, CS0 = 01B
CS2 = 0
PLL3 --> Main
MCS = 1
MCM = 0
SCS = 1
SCM = 1
CS1, CS0 = 10B
CS2 = 0
PLL3: Multiplied
MCS = 0
MCM = 0
SCS = 1
(10)
(8) SCM = 1
CS1, CS0 = 10B
CS2 = 0
PLL3 --> Sub
MCS = 1
MCM = 0
SCS = 0
SCM = 1
CS1, CS0 =10B
CS2 = 0
PLL4 --> Main
MCS = 1
MCM = 0
SCS = 1
SCM = 1
CS1, CS0 = 11B
CS2 = 0
PLL4: Multiplied
MCS = 0
MCM = 0
SCS = 1
(10)
(8) SCM = 1
CS1, CS0 = 11B
CS2 = 0
PLL4 --> Sub (21)
MCS = 1
MCM = 0
SCS = 0
SCM = 1
CS1, CS0 = 11B
CS2 = 0
PLL6 --> Main
MCS = 1
MCM = 0
SCS = 1
SCM = 1
CS1, CS0 = 10B
CS2 = 1
PLL6: Multiplied
MCS = 0
MCM = 0
SCS = 1
(10)
(8) SCM = 1
CS1, CS0 = 10B
CS2 = 1
PLL6 --> Sub (21)
MCS = 1
MCM = 0
SCS = 0
SCM = 1
CS1, CS0 =10B
CS2 = 1
PLL6 --> Main
MCS = 1
MCM = 0
SCS = 1
SCM = 1
CS1, CS0 = 11B
CS2 = 1
PLL8: Multiplied
MCS = 0
MCM = 0
SCS = 1
(10)
(8) SCM = 1
CS1, CS0 = 11B
CS2 = 1
PLL8 --> Sub
(21)
MCS = 1
MCM = 0
SCS = 0
SCM = 1
CS1, CS0 =11B
CS2 = 1
FUJITSU MICROELECTRONICS LIMITED
(21)
(21)
CM44-10150-1
第 5 章 クロック
5.5
MB90930 シリーズ
(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) の逓倍率選択ビット
<注意事項>
• マシンクロックの初期値はメインクロック (CKSCR: MCS=1, SCS=1) です。
• SCS, MCS ともに "0" のときは SCS が優先されてサブクロックが選択されます。
• サブクロックモードから PLL クロックモードに切り換えるときは , CKSCR: WS1, WS0 を "10B"
または "11B" に設定してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
133
第 5 章 クロック
5.6
5.6
MB90930 シリーズ
発振安定待ち時間
発振クロックが停止している電源投入時あるいはストップモードからの復帰時には , 発振開始
後 , 発振クロックが安定するまでの時間 ( 発振安定待ち時間 ) が必要となります。また , クロッ
クモードをメインクロックモードから PLL クロックモード , メインクロックモードからサブク
ロックモード , サブクロックモードからメインクロックモード , サブクロックモードから PLL
クロックモードに切り換えた場合にも発振安定待ち時間が必要です。
■ 発振安定待ち時間の動作
セラミックや水晶などの振動子は , 発振を開始してから安定した固有の振動数 ( 発振周波数 ) にな
るまでに数 ms から数十 ms の時間が必要です。したがって , 発振開始直後にいったん , CPU の動
作を禁止して , 発振安定待ち時間が経過して発振が安定した時点で CPU にマシンクロックを供給
するようにします。
ただし , 振動子の種類 ( セラミック , 水晶など ) によって発振安定待ち時間は異なります。使用す
る振動子に合わせて適切な発振安定待ち時間を選択する必要があります。発振安定待ち時間は , ク
ロック選択レジスタ (CKSCR) で設定できます。
クロックモードをメインクロックから PLL クロック , メインクロックからサブクロック , サブク
ロックからメインクロック , サブクロックから PLL クロックに切り換えた場合 , 発振安定待ち時
間の間 , CPU は切換え前のクロックで動作しています。発振安定待ち時間が経過すると , 各クロッ
クモードに切り換わります。発振開始直後の発振動作を図 5.6-1 に示します。
図 5.6-1 発振安定待ち時間経過直後の発振動作
振動子の発振時間
発振安定
待ち時間
通常動作開始または
PLL クロックへの切換え
X1
発振開始
134
発振安定
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 5 章 クロック
5.7
MB90930 シリーズ
5.7
振動子および外部クロックの接続
MB90930 シリーズはシステムクロック発生回路を内蔵しており , 発振端子に振動子を接続す
ることによって内部クロックを発生します。また , 低速発振端子のみ外部で生成したクロック
を , 入力することもできます。
■ 振動子および外部クロックの接続
● 水晶振動子またはセラミック振動子の接続例
図 5.7-1 水晶振動子またはセラミック振動子の接続例
X0
X1
C1
C2
MB90930シリーズ
X0A*1
X1A*2
C3
C4
*1: X0A 端子はオプション対応です。1 系統品の場合はありません。
*2: X1A 端子はオプション対応です。1 系統品の場合はありません。
図 5.7-2 外部クロックの接続例
X0A*1
X1A*2
MB90930シリーズ
*1: X0A 端子はオプション対応です。1 系統品の場合はありません。
*2: X1A 端子はオプション対応です。1 系統品の場合はありません。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
135
第 5 章 クロック
5.7
136
MB90930 シリーズ
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第6章
低消費電力モード
低消費電力モードについて説明します。
6.1 低消費電力モードの概要
6.2 低消費電力制御回路のブロックダイヤグラム
6.3 低消費電力モード制御レジスタ (LPMCR)
6.4 CPU 間欠動作モード
6.5 スタンバイモード
6.6 状態遷移図
6.7 スタンバイモード , リセット時の端子状態
6.8 低消費電力モード使用上の注意
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
137
第 6 章 低消費電力モード
6.1
MB90930 シリーズ
低消費電力モードの概要
6.1
動作クロックの選択とクロックの動作制御による , 次のような CPU 動作モードを備
えています。
• クロックモード (PLL クロック , メインクロック , サブクロックの各モード )
• CPU 間欠動作モード (PLL クロック間欠動作 , メインクロック間欠動作 , サブク
ロック間欠動作の各モード )
• スタンバイモード ( スリープ , タイムベースタイマ , 時計 , ストップの各モード )
■ CPU 動作モードと消費電流
CPU 動作モードと消費電流の関係を図 6.1-1 に示します。
図 6.1-1 CPU 動作モードと消費電流
消費電流
数10mA
CPU
動作モード
8逓倍クロック
PLLクロックモード
6逓倍クロック
4逓倍クロック
3逓倍クロック
2逓倍クロック
1逓倍クロック
PLLクロック間欠動作モード
8逓倍クロック
6逓倍クロック
4逓倍クロック
3逓倍クロック
2逓倍クロック
1逓倍クロック
メインクロックモード(1/2クロックモード)
メインクロック間欠動作モード
サブクロックモード
サブクロック間欠動作モード
数mA
スタンバイモード
スリープモード
タイムベースタイマモード
時計モード
数μA
低消費電力モード
ストップモード
(注意事項) 図は,各種モードのイメージを示したもので,実際の消費電流とは異なる部分があります。
138
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 6 章 低消費電力モード
6.1
■ クロックモード
● PLL クロックモード
発振クロック (HCLK) の PLL 逓倍クロックで CPU および周辺機能を動作させるモード
です。
● メインクロックモード
発振クロック (HCLK) の 2 分周クロックで CPU および周辺機能を動作させるモードで
す。メインクロックモードでは , PLL 逓倍回路が停止します。
● サブクロックモード
サブクロック (SCLK) の 4 分周クロックで CPU および周辺機能を動作させるモードで
す。サブクロックモードでは , メインクロックおよび PLL 逓倍回路が停止します。
<参考>
クロックモードについては , 「5.5 クロックモード」を参照してください。
■ CPU 間欠動作モード
周辺機能には高速クロックを供給したまま CPU を間欠動作させ , 消費電力を低減する
モードです。CPU 間欠動作モードは , CPU がレジスタ , 内蔵メモリ , 周辺機能および外
部アクセスを行う場合には CPU にだけ間欠クロックを入力するモードです。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
139
第 6 章 低消費電力モード
6.1
MB90930 シリーズ
■ スタンバイモード
スタンバイモードは, 低消費電力制御回路によるCPUへのクロックの供給停止 (スリー
プモード ) や , CPU と周辺機能へのクロックの供給停止 ( タイムベースタイマモード )
または発振クロックの停止 ( ストップモード ) によって消費電力を低減します。
● PLL スリープモード
PLL スリープモードは , PLL クロックモードにおいて CPU の動作クロックを停止させ
るモードで , CPU 以外は PLL クロックで動作します。
● メインスリープモード
メインスリープモードは , メインクロックモードにおいて CPU の動作クロックを停止
させるモードで , CPU 以外はメインクロックで動作します。
● サブスリープモード
サブスリープモードは , サブクロックモードにおいて CPU の動作クロックを停止させ
るモードで , CPU 以外はサブクロックの 4 分周クロックで動作します。
● タイムベースタイマモード
タイムベースタイマモードは発振クロックとタイムベースタイマ以外の動作を停止さ
せるモードで , タイムベースタイマと時計タイマ以外の機能が停止します。
● 時計モード
時計タイマのみを動作させるモードです。サブクロックのみ動作し , メインクロックお
よび PLL 逓倍回路が停止します。
● ストップモード
ストップモードは原発振を停止させるモードで , すべての機能が停止します。
<注意事項>
ストップモードでは発振クロックが停止するため , 最も低消費電力でデータを保持するこ
とができます。
クロックモードを切り換えた場合, 切換えが完了するまでは, ほかのクロッ
クモードおよび低消費電力モードへの切換えを行わないでください。切換えの完了はク
ロック選択レジスタ (CKSCR) の MCM ビットおよび SCM ビットを参照して確認してく
ださい。切換えが完了する前に , ほかのクロックモードおよび低消費電力モードへの切換
えを行った場合には切り換わらない場合があります。
140
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 6 章 低消費電力モード
6.2
MB90930 シリーズ
6.2
低消費電力制御回路のブロックダイヤグラム
低消費電力制御回路は , 次の 7 つのブロックで構成されています。
• CPU 間欠動作セレクタ
• スタンバイ制御回路
• CPU クロック制御回路
• 周辺クロック制御回路
• 端子ハイインピーダンス制御回路
• 内部リセット発生回路
• 低消費電力モード制御レジスタ (LPMCR)
■ 低消費電力制御回路のブロックダイヤグラム
図 6.2-1 に , 低消費電力制御回路のブロックダイヤグラムを示します。
図 6.2-1 低消費電力制御回路のブロックダイヤグラム
低消費電力モード制御レジスタ(LPMCR)
STP
RST
SLP
SPL
RST
TMD
CG1
CG0
予約
端子
端子ハイ
インピーダンス
制御回路
端子Hi-Z制御
内部リセット
発生回路
内部リセット
CPU間欠動作
セレクタ
間欠サイクル選択
CPUクロック
制御回路
2
ストップ,スリープ信号
スタンバイ
制御回路
割込み解除
CPUクロック
ストップ信号
マシンクロック
周辺クロック
制御回路
周辺クロック
発振安定待ち解除
クロック発生部
クロックセレクタ
発振安定
待ち時間
セレクタ
2
2
PLL逓倍回路
SCM
MCM
WS1
WS0
SCS
MCS
CS1
CS0
クロック選択レジスタ(CKSCR)
X0 端子
X1 端子
HCLK
CM44-10150-1
2分周
4分周
4分周
4分周
2分周
タイムベースタイマ
4分周
サブ
クロック
発生回路
1024分周
MCLK
システム
クロック
発生回路
X0A* 端子
X1A* 端子
2分周
ウォッチドッグタイマへ
SCLK
HCLK: 発振クロック
MCLK: メインクロック
SCLK: サブクロック
*:
X0A,X1A端子はオプション対応です。1系統品の場合はありません。
FUJITSU MICROELECTRONICS LIMITED
141
第 6 章 低消費電力モード
6.2
MB90930 シリーズ
● CPU 間欠動作セレクタ
CPU 間欠動作モードにおける一時停止クロック数を選択します。
● スタンバイ制御回路
CPU クロック制御回路および周辺クロック制御回路を制御し , 低消費電力モードへの
移行および解除を行います。
● CPU クロック制御回路
CPU および周辺クロック制御回路周辺機能に供給するクロックを制御する回路です。
● 周辺クロック制御回路
周辺機能に供給するクロックを制御する回路です。
● 端子ハイインピーダンス制御回路
タイムベースタイマモードおよびストップモードにおいて , 外部端子をハイインピー
ダンスにする回路です。プルアップオプションの選択された端子に対しては , ストップ
モードではプルアップ抵抗を切り離します。
● 内部リセット発生回路
内部リセット信号を発生させる回路です。
● 低消費電力モード制御レジスタ (LPMCR)
スタンバイモードへの移行 / 解除および CPU 間欠動作機能の設定などを行うレジスタ
です。
142
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 6 章 低消費電力モード
6.3
MB90930 シリーズ
6.3
低消費電力モード制御レジスタ (LPMCR)
低消費電力モード制御レジスタ (LPMCR) は , 低消費電力モードへの移行 / 解除およ
び CPU 間欠動作モードにおける CPU クロック一時停止サイクル数の設定などを行
うレジスタです。
■ 低消費電力モード制御レジスタ (LPMCR)
図 6.3-1 に 低消費電力モード制御レジスタ (LPMCR) の構成を , 表 6.3-1 に各ビットの
機能を示します。
図 6.3-1 低消費電力モード制御レジスタ (LPMCR) の構成
アドレス bit15
0000A0H
bit8 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
初期値
00011000B
(CKSCR)
STP
R/W
SLP
SPL
RST
TMD
CG1
CG0
予約
R/W
R/W
R/W
R/W
R/W
R/W
R/W
予約ビット
予約
書込み/読出しは動作に影響しません。
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)
TMD
タイムベースタイマモードに移行
1
変化なし,ほかへの影響なし
RST
内部リセット信号発生ビット
0
3マシンサイクルの内部リセット信号を発生
1
変化なし,ほかへの影響なし
SPL
:リード/ライト可能
:初期値
CM44-10150-1
端子状態指定ビット
(時計・タイムベースタイマ・ストップモード時)
0
保持
1
ハイインピーダンス
SLP
R/W
時計・タイムベースタイマモードビット
0
スリープモードビット
0
変化なし,ほかへの影響なし
1
スリープモードに移行
STP
0
1
ストップモードビット
変化なし,ほかへの影響なし
ストップモードに移行
FUJITSU MICROELECTRONICS LIMITED
143
第 6 章 低消費電力モード
6.3
MB90930 シリーズ
表 6.3-1 低消費電力モード制御レジスタ (LPMCR) の各ビットの機能説明
ビット名
bit7
bit6
bit5
bit4
bit3
bit2,
bit1
bit0
機 能
・ストップモードへの移行を指示するビットです。
・このビットに "1" を書き込むと , ストップモードへ移行します。
・このビットに "0" を書き込んでも意味を持ちません。
STP:
・リセット , タイムベースタイマ解除またはストップ解除で "0" にクリア
ストップモードビット
されます。
・このビットを読み出すと , 常に "0" が読み出されます。
・スリープモードへの移行を指示するビットです。
・このビットに "1" を書き込むとスリープモードに移行します。
・このビットに "0" を書き込んでも意味を持ちません。
SLP:
・リセット , スリープ解除またはストップ解除で "0" にクリアされます。
スリープモードビット
STP ビットと SLP ビットに同時に "1" を書き込んだ場合にはストップ
モードに移行します。
・このビットを読み出すと , 常に "0" が読み出されます。
・このビットはタイムベースタイマモードまたはストップモードの場合に
SPL:
のみ有効です。
端子状態指定
・このビットが
"0" の場合には , 外部端子のレベルを保持します。
ビット ( 時計・
・このビットが
"1"
の場合には , 外部端子をハイインピーダンスにします。
タイムベースタイマ・
ストップモード時 )
・リセットで "0" に初期化されます。
・このビットに "0" を書き込むと 3 マシンサイクルの内部リセット信号を
RST:
発生します。
内部リセット
・このビットに "1" を書き込んでも意味を持ちません。
信号発生ビット
・このビットを読み出すと , 常に "1" が読み出されます。
・時計モード , タイムベースタイマモードへの移行を指示するビットです。
・メインクロックモードまたは PLL クロックモードにおいて , このビット
に "0" を書き込むことにより , タイムベースタイマモードに移行します。
TMD:
時計・タイムベースタイマ ・サブクロック時に , このビットに "0" を書き込むことにより時計モード
モードビット
に移行します。
・リセットまたは割込み要求発生で "1" に初期化されます。
・このビットを読み出すと , 常に "1" が読み出されます。
・CPU 間欠動作機能の CPU クロックの一時停止サイクル数を設定する
ビットです。
CG1, CG0:
・1 命令ごとに指定サイクル数 CPU クロック供給を停止します。
CPU クロック一時停止
・4 種類のクロック数から選択できます。
サイクル数選択ビット
・リセットで "00B" に初期化されます。
予約:
予約ビット
書込み / 読出しは意味を持ちません。
<注意事項>
ストップモード , 時計モード , タイムベースタイマモード時に周辺機能とポートを兼用し
ている端子をハイインピーダンスに設定する場合は , 周辺機能の出力を禁止に設定した後 ,
低消費電力モード制御レジスタ (LPMCR) の STP ビットを "1" または TMD ビットを "0" に
設定してください。対象となる端子を以下に示します。
対象端子:P00/SEG24 ∼ P07/SEG31, P10/PPG2/IN5, P11/TOT0/PPG3/IN4, P12/TIN0/
PPG4, P13/PPG5, P22/SEG00 ∼ P27/SEG05, P30/SEG06 ∼ P37/SEG13,
P40/SEG14 ∼ P47/SEG21, P90/SEG22, P91/SEG23, PD1/SOT2, PD2/SCK2,
PD4/SOT3, PD5/SCK3, PD6/TOT2, PE0/TOT3, P52/TX1/TX3, P54/TX0/TX2/
SGA1, PE2/SGO1, P70/PWM1P0, P71/PWM1M0, P72/PWM2P0, P73/PWM2M0,
P74/PWM1P1, P75/PWM1M1, P76/PWM2P1, P77/PWM2M1, P80/PWM1P2,
P81/PWM1M2, P82/PWM2P2, P83/PWM2M2, P84/PWM1P3, P85/PWM1M3,
P86/PWM2P3, P87/PWM2M3, P56/SGO0/FRCK, P57/SGA0, PC7/PPG1/
TIN1/IN6, PC6/PPG0/TOT1/IN7, PC5/SCK1/TRG, PC4/SOT1, PC2/SCK0/
INT6/IN2, PC1/SOT0/INT5/IN3
144
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 6 章 低消費電力モード
6.3
MB90930 シリーズ
■ 低消費電力モード制御レジスタへのアクセス
低消費電力モード制御レジスタへの書込みで , 低消費電力モード ( ストップモード , ス
リープモード , タイムベースタイマモード , 時計モード ) に遷移しますが , 低消費電力
モードへの遷移に使用する命令は表 6.3-2 の命令を使用してください。
表 6.3-2 の命令による低消費電力モード遷移命令の直後には , 必ず下記
内の命
令列を配置してください。
; 表 6.3-2 の低消費電力モード遷移命令
MOV LPMCR, #H’xx
NOP
NOP
JMP $+3
; 次の命令へのジャンプ
MOV A, #H’10
; 任意の命令
内の命令列以外が配置されるとスタンバイモード解除後の動作は保証されま
せん。
C 言語を使用して低消費電力モード制御レジスタをアクセスする場合は ,「6.8 低消費
電力モード使用上の注意」
「■ スタンバイモード遷移のための低消費電力モード制御レ
ジスタ (LPMCR) へアクセスする際の注意事項」を参照してください。
低消費電力モード制御レジスタ (LPMCR) にワード単位で書き込む場合は , 偶数アドレ
スで書き込んでください。奇数アドレスで書込みを行うと , 誤動作の原因となることが
あります。
表 6.3-2 に示す以外の機能を制御する場合には , どの命令を使用してもかまいません。
● STP, SLP, TMD ビットの優先順位
ストップモード要求とスリープモード要求およびタイムベースタイマモード要求を同
時に行った場合には次の優先順位で要求を処理します。
ストップモード要求>タイムベースタイマモード要求>スリープモード要求
表 6.3-2 低消費電力モードへ遷移する場合に使用する命令一覧
MOV io,#imm8
MOV io,A
MOV @RLi+disp8,A
MOVW io,#imm16
MOVW io,A
MOVW @RLi+disp8,A
SETB io:bp
CLRB io:bp
CM44-10150-1
MOV dir,#imm8
MOV dir,A
MOV eam,#imm8
MOV addr16,A
MOV eam,Ri
MOV eam,A
MOVW dir,#imm16
MOVW dir,A
MOVW eam,#imm16
MOVW addr16,A
MOVW eam,RWi
MOVW eam,A
SETB dir:bp
CLRB dir:bp
SETB addr16:bp
CLRB addr16:bp
FUJITSU MICROELECTRONICS LIMITED
145
第 6 章 低消費電力モード
6.4
6.4
MB90930 シリーズ
CPU 間欠動作モード
CPU 間欠動作モードは , 外部バスや周辺機能を高速動作させたまま CPU を間欠動作
させることで , 消費電力を低減するモードです。
■ CPU 間欠動作モード
CPU 間欠動作モードは , レジスタ , 内蔵メモリ (ROM, RAM) , I/O, 周辺機能および外部
バスアクセスを行う場合 , CPU に供給するクロックを一命令実行ごとに一定期間停止
させ , 内部バスサイクルの起動を遅らせるモードです。周辺機能に高速の周辺クロック
を供給したまま , CPU の実行速度を下げると低消費電力で処理できます。
低消費電力モード制御レジスタ (LPMCR の CG1, CG0) で , CPU に供給するクロックの
一時停止サイクル数を選択します。
外部バス動作そのものは , 周辺機能と同じクロックを使用します。
CPU 間欠動作モードを使用した場合の命令実行時間の算出は , レジスタ , 内蔵メモリ ,
内蔵周辺機能および外部バスアクセスを行う場合の命令実行回数に , 一時停止サイク
ル数をかけた補正値を通常の実行時間に加えることで 求めることができます。図 6.4-1
に CPU 間欠動作時のクロックを示します。
図 6.4-1 CPU 間欠動作時のクロック
周辺クロック
CPUクロック
一時停止サイクル
1命令実行
サイクル
内部バス起動
146
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 6 章 低消費電力モード
6.5
MB90930 シリーズ
6.5
スタンバイモード
スタンバイモードには , スリープ (PLL スリープ , メインスリープ , サブスリープ ) ,
時計 , ストップの各モードがあります。
■ スタンバイモードの動作状態
表 6.5-1 に , スタンバイモードの動作状態を示します。
表 6.5-1 スタンバイモードの動作状態
スタンバイモード
スリープ
モード
タイム
ベース
タイマ
モード
時計
モード
移行
条件
PLL
スリープモード
SCS=1
MCS=0
SLP=1
メイン
スリープモード
SCS=1
MCS=1
SLP=1
サブ
スリープモード
SCS=0
SLP=1
タイムベース
タイマモード
(SPL=0)
SCS=1
TMD=0
メイン
サブ
マシン
クロック クロック クロック
SCS=1
TMD=0
時計モード
(SPL=0)
SCS=0
TMD=0
時計モード
(SPL=1)
SCS=0
TMD=0
ストップモード
(SPL=0)
STP=1
周辺
端子
動作
動作
解除方法
動作
動作
停止
動作
保持
動作
タイムベース
タイマモード
(SPL=1)
CPU
停止
リセット
割込み
*1
停止
Hi-Z
停止
保持
*2
停止
Hi-Z
停止
ストップ
モード
*1
*2
SPL
SLP
STP
TMD
MCS
SCS
Hi-Z
保持
停止
ストップモード
(SPL=1)
停止
STP=1
Hi-Z
: タイムベースタイマ , 時計タイマは動作します。
: 時計タイマは動作します。
: 低消費電力モード制御レジスタ (LPMCR) の端子状態指定ビット
: 低消費電力モード制御レジスタ (LPMCR) のスリープビット
: 低消費電力モード制御レジスタ (LPMCR) の時計ストップビット
: 低消費電力モード制御レジスタ (LPMCR) の時計・タイムベースタイマモードビット
: クロック選択レジスタ (CKSCR) の PLL クロック選択ビット
: クロック選択レジスタ (CKSCR) のサブクロック選択ビット
: ハイインピーダンス
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
147
第 6 章 低消費電力モード
6.5
MB90930 シリーズ
<注意事項>
ストップモード , 時計モード , タイムベースタイマモード時に , 周辺機能とポートを兼用
している端子をハイインピーダンスに設定する場合は , 周辺機能の出力を禁止に設定した
後に低消費電力モード制御レジスタ (LPMCR) の STP ビットを "1" または TMD ビットを
"0" に設定してください。対象となる端子を以下に示します。
対象端子: P00/SEG24 ∼ P07/SEG31, P10/PPG2/IN5, P11/TOT0/PPG3/IN4, P12/TIN0/
PPG4, P13/PPG5, P22/SEG00 ∼ P27/SEG05, P30/SEG06 ∼ P37/SEG13,
P40/SEG14 ∼ P47/SEG21, P90/SEG22, P91/SEG23, PD1/SOT2, PD2/SCK2,
PD4/SOT3, PD5/SCK3, PD6/TOT2, PE0/TOT3, P52/TX1/TX3, P54/TX0/TX2/
SGA1, PE2/SGO1, P70/PWM1P0, P71/PWM1M0, P72/PWM2P0, P73/PWM2M0,
P74/PWM1P1, P75/PWM1M1, P76/PWM2P1, P77/PWM2M1, P80/PWM1P2,
P81/PWM1M2, P82/PWM2P2, P83/PWM2M2, P84/PWM1P3, P85/PWM1M3,
P86/PWM2P3, P87/PWM2M3, P56/SGO0/FRCK, P57/SGA0, PC7/PPG1/TIN1/
IN6, PC6/PPG0/TOT1/IN7, PC5/SCK1/TRG, PC4/SOT1, PC2/SCK0/INT6/IN2,
PC1/SOT0/INT5/IN3
148
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
6.5.1
スリープモード
第 6 章 低消費電力モード
6.5
スリープモードは , CPU の動作クロックを停止させるモードで , CPU 以外は動作を
続行します。低消費電力モード制御レジスタ (LPMCR) でスリープモードへの移行を
指示すると , PLL クロックモードを設定している場合は PLL スリープモードに移行
し , メインクロックモードを設定している場合はメインスリープモードに , サブク
ロックモードを設定している場合はサブスリープモードに移行します。
■ スリープモードへの移行
低消費電力モード制御レジスタ (LPMCR) の SLP ビットに "1", TMD ビットに "1", STP
ビットに "0" を書き込むとスリープモードに移行します。スリープモードに移行する
場合には , クロック選択レジスタ (CKSCR) が MCS=0, SCS=1 の場合には PLL スリープ
モードに , MCS=1, SCS=1 の場合にはメインスリープモードに , SCS=0 の場合にはサブ
スリープモードに移行します。
<注意事項>
SLP ビットと STP ビットに同時に "1" を書き込むと , STP ビットを優先してストップモー
ドに移行します。SLP ビットに "1", TMD ビットに "0" を同時に書き込むと , TMD ビット
を優先してタイムベースタイマモードまたは時計モードに移行します。
● データ保持機能
スリープモードでは , アキュムレータなどの専用レジスタと内部 RAM の内容を保持し
ます。
● 割込み要求発生中の動作
低消費電力モード制御レジスタ (LPMCR) の SLP ビットに "1" を書き込んだ場合に , 割
込み要求が発生している場合はスリープモードに移行しません。そのため , CPU は割
込みを受け付けない状態の場合には次の命令を実行し , 受け付ける状態の場合には即
座に割込み処理ルーチンに分岐します。
● 端子状態
スリープモード中は直前の状態を保持します。
■ スリープモードの解除
低消費電力制御回路は , リセット入力または割込みの発生によってスリープモードを
解除します。
● リセットによる復帰
リセットによりメインクロックモードに初期化されます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
149
第 6 章 低消費電力モード
6.5
MB90930 シリーズ
● 割込みによる復帰
スリープモード中に, 周辺回路などから割込みレベルが7より高い割込み要求が発生す
るとスリープモードを解除します。スリープモードの解除後は , 通常の割込み処理と同
じ扱いとなります。コンディションコードレジスタ (CCR) の I フラグ , インタラプトレ
ベルマスクレジスタ (ILM) および割込み制御レジスタ (ICR) の設定によって割込みが
受け付けられる場合には , CPU は割込み処理を実行します。割込みが受け付けられな
い場合には , スリープモードを指定した命令の次の命令から処理を続行します。
図 6.5-1 に , 割込み発生によるスリープモードの解除を示します。
図 6.5-1 割込み発生によるスリープモードの解除
周辺機能の割込み
イネーブルフラグ設定
INT発生(IL<7)
スリープ解除しない
NO
スリープ解除しない
YES
YES
I=0
次の命令実行
スリープ解除する
NO
ILM<IL
YES
次の命令実行
NO
割込み実行
<注意事項>
割込み処理を実行する場合 , 通常はスリープモードを指定した命令の次の命令を実行した
後に割込み処理に移行します。
図 6.5-2 に , スリープモードの解除 ( 外部リセット ) を示します。
図 6.5-2 スリープモードの解除 ( 外部リセット )
RST端子
スリープモード
メインクロック
発振中
PLLクロック
発振中
CPUクロック
CPU動作
PLLクロック
停止中
スリープモード解除
150
リセットシーケンス
処理
リセット解除
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
6.5.2
タイムベースタイマモード
第 6 章 低消費電力モード
6.5
タイムベースタイマモードは , 原発振とタイムベースタイマ , 時計タイマ以外の動作
を停止させるモードで , タイムベースタイマと時計タイマ以外のすべての機能を停
止します。
■ タイムベースタイマモードへの移行
PLL クロックモードまたはメインクロックモードの場合 (CKSCR の SCS=1) に , 低消費
電力モード制御レジスタ (LPMCR) の TMD ビットに "0" を書き込むとタイムベースタ
イマモードに移行します。
● データ保持機能
タイムベースタイマモードでは , アキュムレータなどの専用レジスタと内部 RAM の内
容を保持します。
● 割込み要求発生中の動作
低消費電力モード制御レジスタ (LPMCR) の TMD ビットに "0" を書き込んだ場合に , 割
込み要求が発生しているときはタイムベースタイマモードに移行しません。
● 端子状態
タイムベースタイマモード中の外部端子を直前の状態に保持するか , ハイインピーダ
ンス状態にするかを低消費電力モード制御レジスタ (LPMCR) の SPL ビットで制御で
きます。
<注意事項>
タイムベースタイマモード時に周辺機能とポートを兼用している端子をハイインピーダ
ンスに設定する場合は , 周辺機能の出力を禁止に設定した後に低消費電力モード制御レジ
スタ(LPMCR)のTMDビットを"0"に設定してください。対象となる端子を以下に示します。
対象端子: P00/SEG24 ∼ P07/SEG31, P10/PPG2/IN5, P11/TOT0/PPG3/IN4, P12/TIN0/
PPG4, P13/PPG5, P22/SEG00 ∼ P27/SEG05, P30/SEG06 ∼ P37/SEG13,
P40/SEG14 ∼ P47/SEG21, P90/SEG22, P91/SEG23, PD1/SOT2, PD2/SCK2,
PD4/SOT3, PD5/SCK3, PD6/TOT2, PE0/TOT3, P52/TX1/TX3, P54/TX0/TX2/
SGA1, PE2/SGO1, P70/PWM1P0, P71/PWM1M0, P72/PWM2P0, P73/PWM2M0,
P74/PWM1P1, P75/PWM1M1, P76/PWM2P1, P77/PWM2M1, P80/PWM1P2,
P81/PWM1M2, P82/PWM2P2, P83/PWM2M2, P84/PWM1P3, P85/PWM1M3,
P86/PWM2P3, P87/PWM2M3, P56/SGO0/FRCK, P57/SGA0, PC7/PPG1/TIN1/
IN6, PC6/PPG0/TOT1/IN7, PC5/SCK1/TRG, PC4/SOT1, PC2/SCK0/INT6/IN2,
PC1/SOT0/INT5/IN3
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
151
第 6 章 低消費電力モード
6.5
MB90930 シリーズ
■ タイムベースタイマモードの解除
低消費電力制御回路は , リセット入力または割込みの発生でタイムベースタイマモー
ドを解除します。
● リセットによる復帰
リセットによりメインクロックモードに初期化されます。
● 割込みによる復帰
タイムベースタイマモード中に周辺回路などから割込みレベルが "7" より高い割込み
要求が発生すると ( 割込み制御レジスタ ICR:IL2, IL1, IL0 が "111B" 以外 ) , 低消費電
力制御回路はタイムベースタイマモードを解除します。タイムベースタイマモードの
解除後は , 通常の割込み処理と同じ扱いとなります。コンディションコードレジスタ
(CCR) の I フラグ , インタラプトレベルマスクレジスタ (ILM) および割込み制御レジス
タ (ICR) の設定により割込みが受け付けられる場合には割込み処理を実行します。割
込みが受け付けられない場合にはタイムベースタイマモードに入る前の次の命令から
処理を続行します。
<注意事項>
割込み処理を実行する場合 , 通常はタイムベースタイマモードを指定した命令の次の命令
を実行した後に割込み処理に移行します。ただし , タイムベースタイマモードへの移行と
外部バスホールド要求の受付けが同時であった場合 , 次の命令を実行する前に割込み処理
に移行することがあります。
図 6.5-3 に , タイムベースタイマモードからの復帰動作を示します。
図 6.5-3 タイムベースタイマモードの解除 ( 外部リセット )
RST端子
タイムベース
タイマモード
メインクロック
発振中
PLLクロック
発振安定待ち
CPUクロック
メインクロック
CPU動作
停止中
リセットシーケンス
発振中
PLLクロック
処理
リセット解除
タイムベースタイマモード解除
152
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
6.5.3
時計モード
第 6 章 低消費電力モード
6.5
時計モードは , サブクロックと時計タイマ以外の動作を停止させるモードで , チップ
のほぼ全機能を停止します。
2 系統品のみで使用可能なモードです。
■ 時計モードへの移行
サブクロックモード時 (CKSCR:SCS=0) に , 低消費電力モード制御レジスタ (LPMCR)
の TMD ビットに "0" を書き込むことにより時計モードに移行します。
● データ保持機能
時計モードでは , アキュムレータなどの専用レジスタと内部 RAM の内容を保持しま
す。
● 割込み要求発生中の動作
低消費電力モード制御レジスタ (LPMCR) の TMD ビットに "0" を設定した場合に , 割
込み要求が発生している場合には時計モードに移行しません。
● 端子状態
時計モード中の外部端子を直前の状態に保持するか , ハイインピーダンス状態にする
かを低消費電力モード制御レジスタ (LPMCR) の SPL ビットで制御できます。
<注意事項>
時計モード時に周辺機能とポートを兼用している端子をハイインピーダンスに設定する
場合は , 周辺機能の出力を禁止に設定した後低消費電力モード制御レジスタ (LPMCR) の
TMD ビットを "0" に設定してください。対象となる端子を以下に示します。
対象端子: P00/SEG24 ∼ P07/SEG31, P10/PPG2/IN5, P11/TOT0/PPG3/IN4, P12/TIN0/
PPG4, P13/PPG5, P22/SEG00 ∼ P27/SEG05, P30/SEG06 ∼ P37/SEG13,
P40/SEG14 ∼ P47/SEG21, P90/SEG22, P91/SEG23, PD1/SOT2, PD2/SCK2,
PD4/SOT3, PD5/SCK3, PD6/TOT2, PE0/TOT3, P52/TX1/TX3, P54/TX0/TX2/
SGA1, PE2/SGO1, P70/PWM1P0, P71/PWM1M0, P72/PWM2P0, P73/PWM2M0,
P74/PWM1P1, P75/PWM1M1, P76/PWM2P1, P77/PWM2M1, P80/PWM1P2,
P81/PWM1M2, P82/PWM2P2, P83/PWM2M2, P84/PWM1P3, P85/PWM1M3,
P86/PWM2P3, P87/PWM2M3, P56/SGO0/FRCK, P57/SGA0, PC7/PPG1/TIN1/
IN6, PC6/PPG0/TOT1/IN7, PC5/SCK1/TRG, PC4/SOT1, PC2/SCK0/INT6/IN2,
PC1/SOT0/INT5/IN3
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
153
第 6 章 低消費電力モード
6.5
MB90930 シリーズ
■ 時計モードの解除
低消費電力制御回路は , リセット入力または割込みの発生で時計モードを解除します。
● リセットによる復帰
リセット要因による時計モードの解除の場合は , 時計モードを解除した上で発振安定
待ちリセット状態になります。リセットシーケンスは発振安定待ち時間の経過後に実
行されます。
● 割込みによる復帰
時計モード中に周辺回路などから割込みレベルが "7" より高い割込み要求が発生する
と ( 割込み制御レジスタ ICR:IL2, IL1, IL0 が "111B" 以外 ) , 低消費電力制御回路は時
計モードを解除して即座にサブクロックモードに移行します。サブクロックモードに
移行後は , 通常の割込み処理と同じ扱いとなります。コンディションコードレジスタ
(CCR) の I フラグ , インタラプトレベルマスクレジスタ (ILM) および割込み制御レジス
タ (ICR) を設定して割込みが受け付けられる場合には割込み処理を実行します。割込
みが受け付けられない場合には時計モードに入る前の次の命令から処理を続行しま
す。
<注意事項>
割込み処理を実行する場合 , 通常は時計モードを指定した命令の次の命令を実行した後に
割込み処理に移行します。
図 6.5-4 に , 時計モードの解除 ( 外部リセット ) を示します。
図 6.5-4 時計モードの解除 ( 外部リセット )
RST端子
時計モード
メインクロック
発振安定待ち
PLLクロック
停止中
サブクロック
発振中
CPUクロック
CPU動作
発振中
メインクロック
停止中
リセット
シーケンス
処理
リセット解除
時計モード解除
154
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
6.5.4
ストップモード
第 6 章 低消費電力モード
6.5
ストップモードは , 原発振を停止させるモードで , すべての機能を停止します。した
がって , 最も低消費電力でデータを保持することができます。
■ ストップモードへの移行
低消費電力モード制御レジスタ (LPMCR) の STP ビットに "1" を書き込むとストップ
モードに移行します。
● データ保持機能
ストップモードでは , アキュムレータなどの専用レジスタと内部 RAM の内容を保持し
ます。
● 割込み要求発生中の動作
低消費電力モード制御レジスタ (LPMCR) の STP ビットに "1" を設定した場合に , 割込
み要求が発生しているときはストップモードに移行しません。
● 端子状態の設定
ストップモード中の外部端子を直前の状態に保持するか , ハイインピーダンス状態に
するかを低消費電力モード制御レジスタ (LPMCR) の SPL ビットで制御できます。
<注意事項>
ストップモード時に周辺機能とポートを兼用している端子をハイインピーダンスに設定
する場合は , 周辺機能の出力を禁止に設定した後に低消費電力モード制御レジスタ
(LPMCR) の STP ビットを "1" に設定してください。対象となる端子を以下に示します。
対象端子: P00/SEG24 ∼ P07/SEG31, P10/PPG2/IN5, P11/TOT0/PPG3/IN4, P12/TIN0/
PPG4, P13/PPG5, P22/SEG00 ∼ P27/SEG05, P30/SEG06 ∼ P37/SEG13,
P40/SEG14 ∼ P47/SEG21, P90/SEG22, P91/SEG23, PD1/SOT2, PD2/SCK2,
PD4/SOT3, PD5/SCK3, PD6/TOT2, PE0/TOT3, P52/TX1/TX3, P54/TX0/TX2/
SGA1, PE2/SGO1, P70/PWM1P0, P71/PWM1M0, P72/PWM2P0, P73/PWM2M0,
P74/PWM1P1, P75/PWM1M1, P76/PWM2P1, P77/PWM2M1, P80/PWM1P2,
P81/PWM1M2, P82/PWM2P2, P83/PWM2M2, P84/PWM1P3, P85/PWM1M3,
P86/PWM2P3, P87/PWM2M3, P56/SGO0/FRCK, P57/SGA0, PC7/PPG1/TIN1/
IN6, PC6/PPG0/TOT1/IN7, PC5/SCK1/TRG, PC4/SOT1, PC2/SCK0/INT6/IN2,
PC1/SOT0/INT5/IN3
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
155
第 6 章 低消費電力モード
6.5
MB90930 シリーズ
■ ストップモードの解除
低消費電力制御回路は , リセット入力または割込みの発生によりストップモードを解
除します。ストップモードから復帰する場合は , 発振クロック (HCLK) およびサブク
ロック (SCLK) が停止しているため , メインクロック発振安定待ち時間またはサブク
ロック発振安定待ち時間を経て , ストップモードが解除されます。
● リセットによる復帰
リセット要因によるストップモード解除の場合は , ストップモードを解除した上で発
振安定待ちリセット状態になります。リセットシーケンスは発振安定待ち時間の経過
後に実行されます。
● 割込みによる復帰
ストップモード中に周辺回路などから割込みレベルが "7" より高い割込み要求が発生
すると ( 割込み制御レジスタ ICR:IL2, IL1, IL0 が "111B" 以外 ) , 低消費電力制御回路
はストップモードを解除します。ストップモードの解除後は , クロック選択レジスタ
(CKSCR) の WS1, WS0 ビットで指定されたメインクロックの発振安定待ち時間を経過
した後に通常の割込み処理と同じ扱いとなります。コンディションコードレジスタ
(CCR) の I フラグ , インタラプトレベルマスクレジスタ (ILM) および割込み制御レジス
タ (ICR) を設定して割込みが受け付けられる場合には割込み処理を実行します。割込
みが受け付けられない場合にはストップモードに入る前の次の命令から処理を続行し
ます。
<注意事項>
• 割込み処理を実行する場合 , 通常はストップモードを指定した命令の次の命令を実行
した後に割込み処理に移行します。ただし , ストップモードへの移行と外部バスホール
ド要求の受付けが同時であった場合には , 次の命令を実行する前に割込み処理に移行
することがあります。
• PLL ストップモード中は , メインクロックおよび PLL 逓倍回路が停止しているため ,
PLL ストップモードから復帰する場合は , メインクロック発振安定待ち時間およびPLL
クロック発振安定待ち時間を確保する必要があります。この場合の発振安定待ち時間
は , クロック選択レジスタの発振安定待ち時間選択ビット (CKSCR:WS1, WS0) に設
定された値に従って , メインクロック発振安定待ち時間および PLL クロック発振安定
待ち時間を同時にカウントしますので, CKSCR:WS1, WS0 ビットには発振安定待ち時
間の長い方に合わせて値を設定してください。ただし , PLL クロック発振安定待ち時間
は 214/HCLK 以上必要ですので , CKSCR:WS1, WS0 ビットには "10B" または "11B" を
設定してください。
156
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 6 章 低消費電力モード
6.5
MB90930 シリーズ
図 6.5-5 に , ストップモードの解除 ( 外部リセット ) を示します。
図 6.5-5 ストップモードの解除 ( 外部リセット )
RST端子
ストップモード
メインクロック
PLLクロック
発振安定待ち
停止中
CPUクロック
CPU動作
発振中
メインクロック
停止中
リセット
シーケンス
処理
リセット解除
ストップモード解除
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
157
第 6 章 低消費電力モード
6.6
MB90930 シリーズ
状態遷移図
6.6
図 6.6-1 に , MB90930 シリーズの動作状態の遷移図と遷移条件を示します。
■ 状態遷移図
図 6.6-1 状態遷移図
電源投入
パワーオンリセット
外部リセット,ウォッチドッグタイマリセット,
CPU動作検出リセット,ソフトウェアリセット
電源電圧低下
低電圧検出リセット
*
リセット
SCS=1
発振安定待ち終了
SCS=0
発振安定待ち終了
MCS=0
メインクロック
モード
SCS=0
MCS=1
SLP=1
割込み
メインスリープモード
TMD=0
サブクロックモード
PLLクロックモード
割込み
SCS=1
SLP=1
割込み
PLLスリープモード
割込み
TMD=0
メインストップモード
割込み
発振安定待ち終了
メインクロック発振安定待ち
割込み
TMD=0
時計モード
タイマモード
STP=1
STP=1
STP=1
サブスリープモード
PLLタイムベース
メインタイムベース
タイマモード
割込み
SLP=1
PLLストップモード
割込み
発振安定待ち終了
PLLクロック発振安定待ち
サブストップモード
割込み
発振安定待ち終了
サブクロック発振安定待ち
*:2系統品のみで使用できるモードです。
158
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 6 章 低消費電力モード
6.6
MB90930 シリーズ
■ 低消費電力モードの動作状態
表 6.6-1 に , 低消費電力モードの動作状態を示します。
表 6.6-1 低消費電力モードの動作状態
動作状態
PLL
メイン
サブ
クロック クロック クロック
PLL
CPU
周辺
時計
タイム
ベース
タイマ
動作
動作
クロック
ソース
動作
動作
PLL スリープ
動作
動作
動作
PLL タイムベース
タイマ *1
PLL
クロック
停止
PLL ストップ
停止
停止
停止
PLL 発振安定待ち
動作
動作
動作
メイン
停止
停止
停止
動作
動作
動作
動作
動作
動作
メインスリープ
動作
動作
メインタイムベース
タイマ *2
メイン
クロック
停止
停止
メインストップ
停止
停止
メイン発振安定待ち
動作
動作
停止
サブ
停止
停止
動作
動作
動作
動作
サブスリープ
時計
動作
動作
停止
停止
停止
サブ
クロック
動作
メイン
クロック
停止
サブストップ
停止
サブ発振安定待ち
動作
パワーオンリセット
停止
停止
動作
停止
動作
リセット
動作
停止
停止
動作
動作
*1:PLL クロックモード時
*2: メインクロックモード時
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
159
第 6 章 低消費電力モード
6.7
6.7
MB90930 シリーズ
スタンバイモード , リセット時の端子状態
スタンバイモード , リセット時の端子の状態をメモリアクセスモードごとに示しま
す。
■ シングルチップモード時の端子状態
表 6.7-1 に , シングルチップモード時の各端子状態について示します。
表 6.7-1 シングルチップモード時の各端子状態
スタンバイモード時
品種名
端子名
スリープ時
ストップ / 時計 /
タイムベースタイマ時
SPL=0
リセット時
SPL=1
P00 ∼ P07
P10 ∼ P15
P36 ∼ P37
P40 ∼ P47
P52, P54, P56,
P57
P60 ∼ P67
評価用品 ,
マスク ROM 品
およびフラッ
シュメモリ品
P22 ∼ P27
P30 ∼ P35
P70 ∼ P77
P80 ∼ P87
直前の状態を
保持 *2
入力遮断*3/ 出力 Hi-Z
直前の状態を
保持 *2
入力不可 *4/ 出力 Hi-Z
P90 ∼ P96
PC4 ∼ PC7
PD0 ∼ PD6
PE0 ∼ PE2
P50, P51, P53,
P55
PC0 ∼ PC3
COM0 ∼
COM3
入力可能 *1 ( 外部割込み許可時 )
出力 "L"
出力 "L"
出力 "L"
出力 "L"
*1:" 入力可能 " とは , 入力機能が可能な状態であることを意味するので , プルアップ , プルダウン処理を行う
か外部からの入力が必要です。出力ポートとして使用している場合にはほかのポートと同じです。
*2:" 直前の状態を保持 " とは , このモードになる直前に出力していた状態をそのまま保持することを意味しま
す。ただし , 入力状態であった場合には入力不可となるので注意してください。
" 出力していた状態をそのまま保持 " とは , 出力のある内蔵周辺が動作中の場合にはその値を , ポートなど
として出力している場合にはその値をそれぞれ保持することを意味します。
*3:" 入力遮断 " とは端子からすぐの入力ゲートの動作を禁止する状態を示し , " 出力 Hi-Z" とは端子駆動用ト
ランジスタを駆動禁止状態にして端子をハイインピーダンスにすることを意味します。
*4:" 入力不可 " とは , 端子からすぐの入力ゲート動作は許可状態にあるが , 内部回路が動作していないので ,
端子への入力値が内部で受け付けられない状態を意味します。
160
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 6 章 低消費電力モード
6.7
<注意事項>
ストップモード , 時計モード , タイムベースタイマモード時に周辺機能とポートを兼用し
ている端子をハイインピーダンスに設定する場合は , 周辺機能の出力を禁止に設定した後
に低消費電力モード制御レジスタ (LPMCR) の STP ビットを "1" または TMD ビットを "0"
に設定してください。対象となる端子を以下に示します。
対象端子: P00/SEG24 ∼ P07/SEG31, P10/PPG2/IN5, P11/TOT0/PPG3/IN4, P12/TIN0/
PPG4, P13/PPG5, P22/SEG00 ∼ P27/SEG05, P30/SEG06 ∼ P37/SEG13,
P40/SEG14 ∼ P47/SEG21, P90/SEG22, P91/SEG23, PD1/SOT2, PD2/SCK2,
PD4/SOT3, PD5/SCK3, PD6/TOT2, PE0/TOT3, P52/TX1/TX3, P54/TX0/TX2/
SGA1, PE2/SGO1, P70/PWM1P0, P71/PWM1M0, P72/PWM2P0, P73/PWM2M0,
P74/PWM1P1, P75/PWM1M1, P76/PWM2P1, P77/PWM2M1, P80/PWM1P2,
P81/PWM1M2, P82/PWM2P2, P83/PWM2M2, P84/PWM1P3, P85/PWM1M3,
P86/PWM2P3, P87/PWM2M3, P56/SGO0/FRCK, P57/SGA0, PC7/PPG1/TIN1/
IN6, PC6/PPG0/TOT1/IN7, PC5/SCK1/TRG, PC4/SOT1, PC2/SCK0/INT6/IN2,
PC1/SOT0/INT5/IN3
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
161
第 6 章 低消費電力モード
6.8
6.8
MB90930 シリーズ
低消費電力モード使用上の注意
低消費電力モードを使用する場合には , 次に示す内容に関して注意が必要です。
• スタンバイモードへの移行と割込み
• スタンバイモードに移行する場合の注意
• スタンバイモードの割込みによる解除
• ストップモード解除時
• 発振安定待ち時間
• クロックモードの切換え
• スタンバイモード遷移のための低消費電力モード制御レジスタ (LPMCR) にアク
セスする際の注意事項
■ スタンバイモードへの移行と割込み
周辺機能から CPU に対して割込み要求が発生していると , 低消費電力モード制御レジ
スタ (LPMCR:STP=1, SLP=1) , または (LPMCR:TMD=0) としても無視されるため , 各
スタンバイモードには移行しません ( 割込み処理後にも, スタンバイモードへの移行は
しません ) 。この場合 , 割込みレベルが "7" より高ければ , 割込み要求が CPU に受け付
けられるかどうかには関係しません。また , CPU が割込み処理中であっても , その割込
み要求フラグビットがクリアされており , ほかに割込み要求がない場合には , スタンバ
イモードに移行することができます。
■ スタンバイモードに移行する場合の注意
ストップモード , 時計モード , タイムベースタイマモード時に周辺機能とポートを兼用
している端子をハイインピーダンスに設定する場合は , 以下の手順に従って設定して
ください。
1) 周辺機能の出力を禁止します。
2) 低消費電力モード制御レジスタ (LPMCR) の SPL ビットを "1", STP ビットを "1"
または TMD ビットを "0" に設定します。
■ スタンバイモードの割込みによる解除
スリープ , タイムベースタイマおよびストップモード中に , 周辺機能などから割込みレ
ベルが "7" より高い割込み要求が発生するとスタンバイモードは解除されます。これ
は CPU が割込みを受け付けるかどうかとは関係しません。
スタンバイモード解除後は , 通常の割込み動作として , 割込み要求に対応する割込みレ
ベル設定ビット (ICR:IL2, IL1, IL0) の優先度がインタラプトレベルマスクレジスタ
(ILM) より高く , コンディションコードレジスタの割込み許可フラグが許可 (CCR:I=1)
されている場合は割込み処理ルーチンに分岐します。割込みが受け付けられない場合
は , スタンバイモードを指定した命令の次の命令から動作を再開します。
割込み処理を実行する場合 , 通常はスタンバイモードを指定した命令の次の命令を実
行した後に割込み処理に移行します。ただし , スタンバイモードに移行した場合の条件
によっては , 次の命令を実行する前に割込み処理に移行することがあります。
復帰直後に割込み処理ルーチンに分岐させない場合は , スタンバイモード設定の前に
割込み禁止をするなどの対策をしてください。
162
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 6 章 低消費電力モード
6.8
■ ストップモード解除時
ストップモードに入る前に , 外部割込みの割込み入力要因の設定に従った入力により
解除することができます。入力要因として "H" レベル , "L" レベル , 立上りエッジ , 立
下りエッジを選択できます。
■ 発振安定待ち時間
● 発振クロック発振安定待ち時間
ストップモード中は , 原発振用の発振器が停止しているため , 発振安定待ち時間を確保
してください。発振安定待ち時間としては , クロック選択レジスタ (CKSCR) の WS1,
WS0 ビットで選択された時間をとります。WS1, WS0 ビットに "00B" を設定するのは ,
メインクロックモードの場合のみにしてください。
● 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-10150-1
FUJITSU MICROELECTRONICS LIMITED
163
第 6 章 低消費電力モード
6.8
MB90930 シリーズ
■ スタンバイモード遷移のための低消費電力モード制御レジスタ (LPMCR) へアクセ
スする際の注意事項
● アセンブラ言語を使用して低消費電力モード制御レジスタ (LPMCR) にアクセスする場合
• 低消費電力モード制御レジスタ (LPMCR) においてスタンバイモードに移行する設
定を行う場合は , 表 6.3-2 の命令を使用してください。
• 表 6.3-2 の命令による低消費電力モード遷移命令の直後には , 必ず下記
命令列を配置してください。
MOV LPMCR, #H’xx
内の
; 表 6.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);
/* LPMCR の SLP ビットに "1" をセット */
__asm("NOP");
__asm("NOP");
__asm("JMP $+3");
/* 次の命令へのジャンプ */
(3) スタンバイモードに遷移させる命令を #pragma asm ∼ #pragma endasm 間に記述し ,
スタンバイモード遷移命令の後に 2 個の NOP と JMP 命令を挿入してください。
例 ストップモード遷移の場合
#pragma asm
MOV I:_IO_LPMCR, #H’98
NOP
/* LPMCR の STP ビットに "1" をセット */
NOP
JMP $+3
#pragma endasm
164
/* 次の命令へのジャンプ */
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第7章
モード設定
動作モードとメモリアクセスモードについて説明
します。
7.1 モード設定
7.2 モード端子 (MD2 ∼ MD0)
7.3 モードデータ
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
165
第 7 章 モード設定
7.1
7.1
MB90930 シリーズ
モード設定
F2MC-16LX には , アクセス方式 , アクセス領域において各種のモードがあります。
リセット時のモード端子の設定とモードフェッチされたモードデータによって各
モードが設定されます。
■ モード設定
F2MC-16LX では , アクセス方式 , アクセス領域において各種のモードがあり , 本モ
ジュールでは図 7.1-1 に示すような分類になっています。
図 7.1-1 モードの分類
動作モード
RUNモード
バスモード
シングルチップモード
Flash書込みモード
■ 動作モード
動作モードとは , デバイスの動作状態を制御するモードを示すもので , モード設定用端
子 (MD2 ∼ MD0) とモードデータ内の M1, M0 ビットの内容で指定します。動作モード
を選択することで通常動作を起動することができます。
■ バスモード
バスモードとは , 内部 ROM の動作と外部アクセス機能の動作を制御するモードを示す
もので , モード設定用端子 (MD2 ∼ MD0) とモードデータ内の M1, M0 ビットの内容で
指定します。モード設定用端子 (MD2 ∼ MD0) は , リセットベクタおよびモードデータ
を読み出すときのバスモードを指定するものでモードデータ内の M1, M0 ビットは通
常動作時のバスモードを指定するものです。
■ RUN モード
RUN モードは , CPU 動作モードのことをいいます。RUN モードには , メインクロック
モードや PLL クロックモードのほかに各種の低消費電力モードがあります。詳細は ,
「第 6 章 低消費電力モード」を参照してください。
166
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 7 章 モード設定
7.2
MB90930 シリーズ
7.2
モード端子 (MD2 ∼ MD0)
モード端子は MD2 ∼ MD0 の 3 つの外部端子で , リセットベクタとモードデータの
取込み方法を指定します。
■ モード端子 (MD2 ∼ MD0)
モード端子で , リセットベクタの読出しを外部データバスとするか , 内部データバスと
するかの選択および外部データバス選択時のバス幅の選択を行います。Flash メモリ内
蔵品の場合は , 内蔵 Flash メモリにプログラムなどを書き込むための Flash メモリ書込
みモードの指定もモード端子で行います。モード端子の設定を表 7.2-1 に示します。
表 7.2-1 モード端子の設定
リセットベクタ
アクセス領域
外部データ
バス幅
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
フラッシュライタ
書込みモード
−
−
−
モード名
備考
設定禁止
内部ベクタモード
内部
モードデータ
リセットシーケンス以降は
モードデータで制御
設定禁止
MD2 ∼ MD0 : 0=Vss, 1=Vcc としてください。
<注意事項>
MB90930 シリーズでは , シングルチップモードのみでの使用となりますので MD2 ∼ MD0
を "011B" に設定してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
167
第 7 章 モード設定
7.3
7.3
MB90930 シリーズ
モードデータ
モードデータは , "FFFFDFH" 番地のメモリ上にあり , リセットシーケンス後の動作
を指定します。モードデータは , モードフェッチで CPU に自動的に取り込まれま
す。
■ モードデータ
リセットシーケンス実行中に , "FFFFDFH" 番地のモードデータを CPU コア内のモード
レジスタに取り込みます。CPU は , このモードデータでメモリアクセスモードを設定し
ます。
モードレジスタの内容を変更できるのはリセットシーケンスだけです。
また , モー
ドデータの設定は , リセットシーケンス以降に有効となります。図 7.3-1 にモードデー
タの構成を示します。
図 7.3-1 モードデータの構成
bit 7
6
5
4
3
2
1
0
M1
M0
0
0
0
0
0
0
モードデータ
機能拡張ビット(予約領域)
バスモード設定ビット
■ バスモード設定ビット
リセットシーケンス終了後の動作モードの指定を行うビットです。各ビットと機能の
関係は , 表 7.3-1 のようになっています。
表 7.3-1 バスモード設定ビットとその機能
M1
M0
0
0
0
1
1
0
1
1
機能
シングルチップモード
( 設定禁止 )
<注意事項>
MB90930 シリーズでは , シングルチップモードのみでの使用となりますので M1, M0 を
"00B" に設定してください。
168
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 7 章 モード設定
7.3
MB90930 シリーズ
シングルチップモード時のアクセス領域と物理アドレスの対応を図 7.3-2 に示します。
図 7.3-2 シングルチップモードによるアクセス領域と物理アドレスの関係
000000H
000000H
周辺領域
周辺領域
0000F0H
000100H
0000F0H
000100H
レジスタ
レジスタ
RAM領域
RAM領域
アドレス#2
003700H
003700H
周辺領域
周辺領域
004000H
004000H
RAM領域
008000H
010000H
008000H
ROM領域
(FFバンクのイメージ)
アドレス#1
010000H
ROM領域
(FFバンクのイメージ)
アドレス#1
ROM領域*
FFFFFFH
ROM領域*
:内部アクセス
:アクセス禁止
FFFFFFH
MB90V930-102/MB90V930-101
(評価用品)
MB90F931/MB90F931S (フラッシュメモリ品)
MB90931/MB90931S (マスクROM品)
型格
アドレス#1
アドレス#2
FE0000H
MB90F931/MB90F931S(FLASH 128Kバイト)
MB90931/MB90931S (MASK 128Kバイト)
MB90V930-102/MB90V930-101
FE0000H
002100H
002100H
-
003700H
■ モード端子とモードデータの関係
表 7.3-2 に , モード端子とモードデータの関係を示します。
表 7.3-2 モード端子とモードデータの関係
モード
MD2
MD1
MD0
M1
M0
シングルチップモード
0
1
1
0
0
<注意事項>
MB90930 シリーズはシングルチップモードのみでの使用となります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
169
第 7 章 モード設定
7.3
170
MB90930 シリーズ
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第8章
I/O ポート
I/O ポートの機能と動作について説明します。
8.1 I/O ポート
8.2 レジスタと外部兼用端子の割当て
8.3 ポート 0
8.4 ポート 1
8.5 ポート 2
8.6 ポート 3
8.7 ポート 4
8.8 ポート 5
8.9 ポート 6
8.10 ポート 7
8.11 ポート 8
8.12 ポート 9
8.13 ポート C
8.14 ポート D
8.15 ポート E
8.16 入力レベル選択レジスタ (PIL0 ∼ PIL2)
8.17 I/O ポートのプログラム例
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
171
第 8 章 I/O ポート
8.1
8.1
MB90930 シリーズ
I/O ポート
I/O ポートは , 汎用入出力ポート ( パラレル I/O ポート ) として使用できます。ポート数は ,
MB90930 シリーズでは 13 ポート (93 本 ) あります。各ポートは周辺機能および入出力端子
と兼用になっています。
■ I/O ポートの機能
I/O ポートには , ポートデータレジスタ (PDR) によって CPU からのデータを I/O 端子に出力した
り , I/O 端子に入力された信号を CPU に取り込んだりする機能があります。また , ポートはポート
方向レジスタ (DDR) によって I/O 端子の入出力の方向をビット単位で任意に設定することができ
ます。以下に各ポートの機能と , 兼用される周辺機能を示します。
• ポート 0:
汎用入出力ポート / 周辺機能 (LCD) 兼用
• ポート 1:
汎用入出力ポート / 周辺機能 (PPG/ リロードタイマ /ICU/ リアルタイム時計タイマ ) 兼用
• ポート 2:
汎用入出力ポート / 周辺機能 (LCD) 兼用
• ポート 3:
汎用入出力ポート / 周辺機能 (LCD) 兼用
• ポート 4:
汎用入出力ポート / 周辺機能 (LCD) 兼用
• ポート 5:
汎用入出力ポート / 周辺機能 ( 外部割込み入力端子 /CAN/ サウンドジェネレータ /ADC トリガ
入力端子 / フリーランタイマクロック入力 ) 兼用
• ポート 6:
汎用入出力ポート / 周辺機能 ( アナログ入力端子 ) 兼用
• ポート 7:
汎用入出力ポート / 周辺機能 ( ステッピングモータコントローラ / アナログ入力端子 ) 兼用
• ポート 8:
汎用入出力ポート / 周辺機能 ( ステッピングモータコントローラ / アナログ入力端子 ) 兼用
• ポート 9:
汎用入出力ポート / 周辺機能 (LCD) 兼用
• ポート C:
汎用入出力ポート / 周辺機能 ( 外部割込み入力端子 /LIN-UART/PPG) 兼用
• ポート D:
汎用入出力ポート / 周辺機能 (LIN-UART) 兼用
• ポート E:
汎用入出力ポート / 周辺機能 ( リロードタイマ / サウンドジェネレータ /ICU) 兼用
172
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.1
MB90930 シリーズ
表 8.1-1 に各ポートの機能一覧を示します。
表 8.1-1 各ポートの機能一覧
ポート名
端子名
入力形式
出力形式
機能
P00/SEG24 ∼
P07/SEG31
ポート 2
P22/SEG00 ∼
P27/SEG05
P30/SEG06 ∼
ポート 3
P37/SEG13
ポート 4
CMOS
P40/SEG14 ∼
P47/SEG21
ポート 6
P60/AN0 ∼
P67/AN7
P04
P03
P02
P01
P00
SEG27
SEG26
SEG25
SEG24
-
-
-
-
-
-
-
-
-
-
P15
P14
P13
P12
P11
P10
-
-
IN0
IN1
PPG5
PPG4
PPG3
PPG2
-
-
-
TIN2
-
TIN0
IN4
IN5
-
-
-
-
-
-
TOT0
-
汎用入出力ポート
P27
P26
P25
P24
P23
p22
-
-
周辺機能
SEG05
SEG04
SEG03
SEG02
SEG01
SEG0
-
-
汎用入出力ポート
P37
P36
P35
P34
P33
P32
P31
P30
周辺機能
SEG13
SEG12
SEG11
SEG10
SEG09
SEG08
SEG07
SEG06
汎用入出力ポート
P47
P46
P45
P44
P43
P42
P41
P40
周辺機能
SEG21
SEG20
SEG19
SEG18
SEG17
SEG16
SEG15
SEG14
P57
P56
P55
P54
P53
P52
P51
P50
SGA0
SGO0
INT2
SGA1
INT3
TX1
INT1
INT0
IN4R
FRCK
-
IN2R
-
-
RX1
ADTG
-
IN5R
-
-
-
-
-
-
汎用入出力ポート
P67
P66
P65
P64
P63
P62
P61
P60
周辺機能
AN7
AN6
AN5
AN4
AN3
AN2
AN1
AN0
P77
P76
P75
P74
P73
P72
P71
P70
周辺機能
汎用出力ポート
P80/PWM1P2 ∼
ポート 8
P87/PWM2M3
ポート 9
P90/SEG22 ∼
P96/SEG23
周辺機能
CMOS
( ヒステリシス )
(Automotive レベル *)
PC0/SIN0 ∼
ポート C
PC7/PPG1
CMOS
AN13
AN12
AN11
AN10
AN9
AN8
P86
P85
P84
P83
P82
P81
P80
PWM2M PWM2P PWM1M PWM1P PWM2M PWM2P PWM1M PWM1P
3
3
3
3
2
2
2
2
AN22
AN21
AN20
AN19
AN18
AN17
P96
P95
P94
P93
P92
P91
P90
周辺機能
-
V2
V1
V0
-
-
SEG23
SEG22
汎用入出力ポート
周辺機能
PE0/TOT3 ∼
PE2/SGO1
AN14
P87
-
汎用入出力ポート
ポート E
AN15
AN23
周辺機能
PD0/SIN2 ∼
PD6/TOT2
PWM2M PWM2P PWM1M PWM1P PWM2M PWM2P PWM1M PWM1P
1
1
1
1
0
0
0
0
汎用入出力ポート
汎用入出力ポート
ポート D
bit0
SEG28
汎用出力ポート
P70/PWM1P0 ∼
ポート 7
P77/PWM2M1
bit1
P05
周辺機能
アナログ・CMOS
( ヒステリシス )
(Automotive レベル *)
bit2
SEG29
汎用入出力ポート
P50/INT0 ∼
ポート 5
P57/SGA0
bit3
P06
周辺機能
CMOS
( ヒステリシス )
(Automotive レベル *)
bit4
SEG30
周辺機能
P10/PPG2 ∼
P15/IN0
bit5
P07
汎用入出力ポート
ポート 1
bit6
SEG31
汎用入出力ポート
ポート 0
bit7
周辺機能
AN16
PC7
PC6
PC5
PC4
PC3
PC2
PC1
PC0
PPG1
PPG0
SCK1
SOT1
SIN1
SCK0
SOT0
SIN0
TIN1
TOT1
TRG
-
INT7
INT6
INT5
INT4
IN6
IN7
-
-
-
IN2
IN3
-
-
PD6
PD5
PD4
PD3
PD2
PD1
PD0
-
TOT2
SCK3
SOT3
SIN3
SCK2
SOT2
SIN2
-
-
-
-
-
-
-
-
-
-
-
-
-
PE2
PE1
PE0
-
-
-
-
-
SGO1
TIN3
TOT3
-
-
-
-
-
IN3R
IN6R
IN7R
: 初期状態で有効となる機能
*: Automotive レベルは , 入力電圧の規格です。規格値はデータシート「■ 電気的特性 3. 直流規格」を参照してく
ださい。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
173
第 8 章 I/O ポート
8.1
MB90930 シリーズ
<注意事項>
ポート 6/7/8 は , アナログ入力端子と兼用になっています。汎用ポートとして使用する場合は , 必ず対
応するアナログ入力許可レジスタ (ADER6/7/8) のビットに "0" を書き込んでください。リセットで
ADER6/7/8 のビットは "1" に初期化されます。
ポート 9 の P94 ∼ P96 は初期状態では LCD コントローラ / ドライバの基準電源端子 V0 ∼ V2 が有
効になっています。
これらを汎用ポートとして使用する場合は , LCD 出力制御レジスタ , LOCR3 の対応するビットを "0"
に設定してください。
174
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.2
MB90930 シリーズ
8.2
レジスタと外部兼用端子の割当て
I/O ポートの設定に関連するレジスタの一覧を示します。
■ I/O ポートのレジスタ一覧
表 8.2-1 に , 各ポートのレジスタ一覧を示します。
表 8.2-1 各ポートのレジスタ一覧
レジスタ名
リードライト
アドレス
初期値
ポート 0 データレジスタ (PDR0)
R/W
000000H
XXXXXXXXB
ポート 1 データレジスタ (PDR1)
R/W
000001H
--XXXXXXB
ポート 2 データレジスタ (PDR2)
R/W
000002H
XXXXXX--B
ポート 3 データレジスタ (PDR3)
R/W
000003H
XXXXXXXXB
ポート 4 データレジスタ (PDR4)
R/W
000004H
XXXXXXXXB
ポート 5 データレジスタ (PDR5)
R/W
000005H
XXXXXXXXB
ポート 6 データレジスタ (PDR6)
R/W
000006H
XXXXXXXXB
ポート 7 データレジスタ (PDR7)
R/W
000007H
XXXXXXXXB
ポート 8 データレジスタ (PDR8)
R/W
000008H
XXXXXXXXB
ポート 9 データレジスタ (PDR9)
R/W
000009H
-XXXXXXXB
ポート C データレジスタ (PDRC)
R/W
00000CH
XXXXXXXXB
ポート D データレジスタ (PDRD)
R/W
00000DH
-XXXXXXXB
ポート E データレジスタ (PDRE)
R/W
00000EH
-----XXXB
ポート 0 方向レジスタ (DDR0)
R/W
000010H
00000000B
ポート 1 方向レジスタ (DDR1)
R/W
000011H
--000000B
ポート 2 方向レジスタ (DDR2)
R/W
000012H
000000--B
ポート 3 方向レジスタ (DDR3)
R/W
000013H
00000000B
ポート 4 方向レジスタ (DDR4)
R/W
000014H
00000000B
ポート 5 方向レジスタ (DDR5)
R/W
000015H
00000000B
ポート 6 方向レジスタ (DDR6)
R/W
000016H
00000000B
ポート 7 方向レジスタ (DDR7)
R/W
000017H
00000000B
ポート 8 方向レジスタ (DDR8)
R/W
000018H
00000000B
ポート 9 方向レジスタ (DDR9)
R/W
000019H
-0000000B
ポート C 方向レジスタ (DDRC)
R/W
00001CH
00000000B
ポート D 方向レジスタ (DDRD)
R/W
00001DH
-0000000B
ポート E 方向レジスタ (DDRE)
R/W
00001EH
-----000B
アナログ入力許可レジスタ (ADER6)
R/W
00001AH
11111111B
アナログ入力許可レジスタ (ADER7)
R/W
00001BH
11111111B
アナログ入力許可レジスタ (ADER8)
R/W
00001FH
11111111B
R/W: リード / ライト可能
X: 不定値
-:
未定義
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
175
第 8 章 I/O ポート
8.3
8.3
MB90930 シリーズ
ポート 0
ポート 0 は , 周辺機能入出力兼用の汎用入出力ポートです。各端子は , 周辺機能とポートを
ビット単位で切り換えて使用できます。ここでは , 汎用入出力ポートとしての機能を中心に説
明します。ポート 0 の構成 , 端子 , 端子のブロックダイヤグラム , レジスタを示します。
■ ポート 0 の構成
ポート 0 は , 次の 3 つの要素から構成されます。
• 汎用入出力端子 / 周辺機能入出力端子 (P00/SEG24 ∼ P07/SEG31)
• ポート 0 データレジスタ (PDR0)
• ポート 0 方向レジスタ (DDR0)
■ ポート 0 の端子
ポート 0 の入出力端子は , 周辺機能入出力端子と兼用になっています。周辺機能入出力端子とし
て使用する場合には汎用入出力ポートとしては使用できません。表 8.3-1 にポート 0 の端子を示
します。
表 8.3-1 ポート 0 の端子
ポート名
ポート 0
端子名
P00/SEG24
P01/SEG25
P02/SEG26
P03/SEG27
P04/SEG28
P05/SEG29
P06/SEG30
P07/SEG31
ポート機能
P00
P01
P02
P03
P04
P05
P06
P07
汎用入出力
入出力形式
周辺機能
SEG24
SEG25
SEG26
SEG27
SEG28
SEG29
SEG30
SEG31
LCDC
入力
出力
CMOS ヒステリシス /
Automotive レベル *
CMOS
回路形式
F
: 初期状態で有効となる機能
*: Automotive レベルは , 入力電圧の規格です。規格値はデータシート「■ 電気的特性 3. 直流規格」を参照してく
ださい。
回路形式については「1.7 入出力回路形式」を参照してください。
176
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.3
MB90930 シリーズ
■ ポート 0 の端子のブロックダイヤグラム
図 8.3-1 に , ポート 0 の端子のブロックダイヤグラムを示します。
図 8.3-1 ポート 0 の端子のブロックダイヤグラム
周辺機能出力
周辺機能出力許可
PDR(ポートデータレジスタ)
P-ch
PDRリード
内部データバス
出力ラッチ
PDRライト
端子
DDR(ポート方向レジスタ)
N-ch
方向ラッチ
DDRライト
DDRリード
スタンバイ制御(SPL=1)
またはLCD出力許可
<注意事項>
周辺機能の出力許可ビットを許可すると , DDR0 レジスタの値にかかわらず強制的に周辺機能の出力
端子となります。
■ ポート 0 のレジスタ
ポート 0 のレジスタには , PDR0 および DDR0 があります。各レジスタを構成するビットは , ポー
ト 0 の端子に 1 対 1 で対応しています。表 8.3-2 にポート 0 のレジスタと端子の対応を示します。
表 8.3-2 ポート 0 のレジスタと端子の対応
ポート名
ポート 0
CM44-10150-1
関連するレジスタのビットと対応する端子
PDR0, DDR0
対応する端子
bit7
P07
bit6
P06
bit5
P05
FUJITSU MICROELECTRONICS LIMITED
bit4
P04
bit3
P03
bit2
P02
bit1
P01
177
bit0
P00
第 8 章 I/O ポート
8.3
MB90930 シリーズ
ポート 0 のレジスタ (PDR0, DDR0)
8.3.1
ポート 0 のレジスタについて説明します。
■ ポート 0 のレジスタの機能
● ポート 0 データレジスタ (PDR0)
PDR0 レジスタは , 端子の状態を示します。
● ポート 0 方向レジスタ (DDR0)
DDR0 レジスタは , ビットごとの端子の入出力方向を設定します。ポート ( 端子 ) に対応するビッ
トに "1" を書き込むと出力ポートになり , "0" を書き込むと入力ポートになります。
<注意事項>
出力端子を持つ周辺機能を使用する場合, 端子に対応する各周辺機能の出力許可ビットが許可されて
いる場合は DDR0 レジスタの設定値に関係なく , 周辺機能出力端子となります。
表 8.3-3 ポート 0 のレジスタの機能
レジスタ名
データ
0
端子状態が "L"
レベル
1
端子状態が "H"
レベル
0
方向ラッチが
"0"
1
方向ラッチが
"1"
ポート 0 データレジス
タ (PDR0)
ポート 0 方向レジスタ
(DDR0)
読出し時
書込み時
R/W
アドレス
初期値
出力ラッチに "0" を設定
し , 出力ポート時に端子
に "L" レベルを出力する
出力ラッチに "1" を設定
し , 出力ポート時に端子
に "H" レベルを出力す
る
出力バッファを "OFF"
にして入力ポートにす
る
出力バッファを "ON" に
して出力ポートにする
R/W
000000H
XXXXXXXXB
R/W
000010H
00000000B
R/W: リード / ライト可能
X:
不定値
178
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
8.3.2
ポート 0 の動作説明
第 8 章 I/O ポート
8.3
ポート 0 の動作を説明します。
■ ポート 0 の動作
● 出力ポート時の動作
対応する DDR0 レジスタのビットに "1" を書き込むと出力ポートになります。
出力ポート時に PDR0 レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持され ,
そのまま端子に出力されます。
PDR0 レジスタを読み出すと , 端子の値 (PDR 内の出力ラッチと同じ値 ) が読み出せます。
<注意事項>
ポートデータレジスタでリードモディファイライト (RMW) 系命令 ( ビットセット命令など ) を使用
すると , 目的とするビットは指定した値となり , DDR レジスタで出力に設定されているビットは影響
を受けませんが , DDR レジスタで入力に設定されているビットは , 端子の入力値が出力ラッチに書き
込まれて出力してしまいます。したがって , 入力として使用していたビットを出力に切り換える場合
は , PDR レジスタに出力データを書き込んでから DDR レジスタを出力にセットしてください。
● 入力ポート時の動作
対応する DDR0 レジスタのビットに "0" を書き込むと入力ポートになります。
入力ポート時は出力バッファが "OFF" となり , 端子はハイインピーダンスになります。
PDR0 レジスタにデータを書き込むと , PDR 内の出力ラッチにデータが保持されますが , 端子には出
力されません。
PDR0 レジスタを読み出すと , 端子のレベル値 ("L" または "H") を読み出せます。
● 周辺機能出力時の動作
周辺機能出力として使用する場合は , 周辺機能の出力許可ビットで設定を行います。入出力の切
換えは周辺機能の出力許可ビットが優先されるので , DDR0 レジスタに "0" が書き込まれている
ビットでも , 各周辺機能の出力が許可されていると周辺機能出力になります。周辺機能の出力を
許可したときでも端子の値を読み出せるので周辺機能の出力値を知ることができます。
● リセット時の動作
CPU がリセットされると , DDR0 レジスタの値はクリアされます。このため , 出力バッファはすべ
て "OFF"( 入力ポート ) となり , 端子はハイインピーダンスになります。
PDR0 レジスタは , リセットでは初期化されません。このため , 出力ポートとして使用する場合に
は PDR0 レジスタに出力データを書き込んでから , 対応する DDR0 レジスタに "1" を書き込んでく
ださい。
● ストップ , タイムベースタイマモード時の動作
ストップモードまたはタイムベースタイマモードに移行した時点で , 低消費電力モード制御レジ
スタの端子状態指定ビット (LPMCR の SPL) に "1" が書き込まれていると , 端子はハイインピーダ
ンスになります。これは , DDR0 レジスタの値に関係なく , 強制的に出力バッファが "OFF" となる
ためです。なお , 入力開放によるリークを防ぐため , 入力は固定してあります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
179
第 8 章 I/O ポート
8.3
MB90930 シリーズ
表 8.3-4 に , ポート 0 の端子状態を示します。
表 8.3-4 ポート 0 の端子状態
端子名
通常動作
スリープモード
ストップモード ,
タイムベースタイマモード
(SPL=0)
ストップモード ,
タイムベースタイマモード
(SPL=1)
P00/SEG24 ∼
P07/SEG31
汎用入出力ポート
汎用入出力ポート
汎用入出力ポート
入力遮断 / 出力 Hi-Z
SPL: 低消費電力モード制御レジスタの端子状態指定ビット (LPMCR の SPL)
Hi-Z: ハイインピーダンス
表 8.3-5 ポート 0 の端子出力優先順位
端子名
優先度 1
優先度 2
優先度 3
優先度 4
P00/SEG24
P01/SEG25
P02/SEG26
P03/SEG27
SEG24
SEG25
SEG26
SEG27
P00
P01
P02
P03
-
-
P04/SEG28
P05/SEG29
P06/SEG30
P07/SEG31
SEG28
SEG29
SEG30
SEG31
P04
P05
P06
P07
-
-
( 注意事項 ) 優先度 1 が最も優先度が高く , 優先度 4 が最も優先度が低くなります。
180
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.4
MB90930 シリーズ
8.4
ポート 1
ポート 1 は , 周辺機能入力兼用の汎用入出力ポートです。各端子は , 周辺機能とポートをビッ
ト単位で切り換えて使用できます。ここでは , 汎用入出力ポートとしての機能を中心に説明し
ます。ポート 1 の構成 , 端子 , 端子のブロックダイヤグラム , レジスタを示します。
■ ポート 1 の構成
ポート 1 は , 次の 3 つの要素から構成されます。
• 汎用入出力端子 / 外部割込み入力端子 (P10/PPG2/IN5 ∼ P15/IN0)
• ポート 1 データレジスタ (PDR1)
• ポート 1 方向レジスタ (DDR1)
■ ポート 1 の端子
ポート 1 の端子は , 周辺機能入出力端子と兼用になっています。周辺機能入出力端子として使用
する場合は , 汎用入出力ポートとしては使用できません。表 8.4-1 にポート 1 の端子を示します。
表 8.4-1 ポート 1 の端子
ポート名
ポート 1
端子名
ポート機能
周辺機能
P10/PPG2/IN5
P10
PPG2
P11/TOT0/PPG3/IN4
P11
TOT0
P12/TIN0/PPG4
P12
TIN0
P13/PPG5
P13
P14/TIN2/IN1
P14
P15/IN0
P15
汎用入
出力
PPG
RLT
PPG5
PPG
TIN2
RLT
IN5
ICU
IN4
ICU
IN1
IN0
PPG3
PPG
PPG4
PPG
RTC
入出力形式
回路形式
CMOS ヒス
テリシス / CMOS
Automotive
レベル *
I
ICU
: 初期状態で有効となる機能
*: Automotive レベルは , 入力電圧の規格です。規格値はデータシート「■ 電気的特性 3. 直流規格」を参照してく
ださい。
回路形式については「1.7 入出力回路形式」を参照してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
181
第 8 章 I/O ポート
8.4
MB90930 シリーズ
■ ポート 1 の端子のブロックダイヤグラム
図 8.4-1 に , ポート 1 の端子のブロックダイヤグラムを示します。
図 8.4-1 ポート 1 の端子のブロックダイヤグラム
周辺機能入力
周辺機能出力
周辺機能出力許可
PDR(ポートデータレジスタ)
P-ch
PDRリード
内部データバス
出力ラッチ
PDRライト
端子
DDR(ポート方向レジスタ)
N-ch
方向ラッチ
DDRライト
DDRリード
スタンバイ制御(SPL=1)
■ ポート 1 のレジスタ
ポート 1 のレジスタには , PDR1 および DDR1 があります。各レジスタを構成するビットは , ポー
ト 1 の端子に 1 対 1 で対応しています。表 8.4-2 にポート 1 のレジスタと端子の対応を示します。
表 8.4-2 ポート 1 のレジスタと端子の対応
ポート名
ポート 1
182
関連するレジスタのビットと対応する端子
PDR1, DDR1
対応する端子
bit7
-
bit6
-
bit5
P15
FUJITSU MICROELECTRONICS LIMITED
bit4
P14
bit3
P13
bit2
P12
bit1
P11
CM44-10150-1
bit0
P10
第 8 章 I/O ポート
8.4
MB90930 シリーズ
8.4.1
ポート 1 のレジスタ (PDR1, DDR1)
ポート 1 のレジスタについて説明します。
■ ポート 1 のレジスタの機能
● ポート 1 データレジスタ (PDR1)
PDR1 レジスタは , 端子の状態を示します。
● ポート 1 方向レジスタ (DDR1)
DDR1 レジスタは , ビットごとの端子の入出力方向を設定します。ポート ( 端子 ) に対応するビッ
トに "1" を書き込むと出力ポートになり , "0" を書き込むと入力ポートになります。
<注意事項>
• 出力端子を持つ周辺機能を使用する場合に端子に対応する各周辺機能の出力許可ビットが許可さ
れている場合は , DDR1 レジスタの設定値に関係なく , 周辺機能出力端子となります。
• 入力端子を持つ周辺機能を使用する場合には , 各周辺機能の入力端子に対応する DDR1 レジスタ
のビットに "0" を書き込んで入力ポートにしてください。
表 8.4-3 ポート 1 のレジスタの機能
レジスタ名
データ
読出し時
書込み時
0
端子状態が "L" レ
ベル
出力ラッチに "0" を設定し ,
出力ポート時に端子に "L"
レベルを出力する
ポート 1 データレジス
タ (PDR1)
ポート 1 方向レジスタ
(DDR1)
1
端子状態が "H"
レベル
0
方向ラッチが "0"
1
方向ラッチが "1"
出力ラッチに "1" を設定し ,
出力ポート時に端子に "H"
レベルを出力する
出力バッファを "OFF" にし
て入力ポートにする
出力バッファを "ON" にし
て出力ポートにする
R/W
アドレス
R/W
000001H
--XXXXXXB
R/W
000011H
--000000B
初期値
R/W: リード / ライト可能
X:
不定値
-:
未定義
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
183
第 8 章 I/O ポート
8.4
MB90930 シリーズ
ポート 1 の動作説明
8.4.2
ポート 1 の動作を説明します。
■ ポート 1 の動作
● 出力ポート時の動作
対応する DDR1 レジスタのビットを "1" にすると , 出力ポートになります。
出力ポート時に PDR1 レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持され ,
そのまま端子に出力されます。
PDR1 レジスタを読み出すと , 端子の値 (PDR 内の出力ラッチと同じ値 ) を読み出せます。
<注意事項>
ポートデータレジスタでリードモディファイライト (RMW) 系命令 ( ビットセット命令など ) を使用
すると , 目的とするビットは指定した値となり , DDR レジスタで出力に設定されているビットは影響
を受けませんが , DDR レジスタで入力に設定されているビットは , 端子の入力値が出力ラッチに書き
込まれて出力してしまいます。したがって , 入力として使用していたビットを出力に切り換える場合
には , PDR レジスタに出力データを書き込んでから DDR レジスタを出力にセットしてください。
● 入力ポート時の動作
対応する DDR1 レジスタのビットに "0" を書き込むと , 入力ポートになります。
入力ポート時は出力バッファが "OFF" となり , 端子はハイインピーダンスになります。
PDR1 レジスタにデータを書き込むと , PDR 内の出力ラッチにデータが保持されますが , 端子には出
力されません。
PDR1 レジスタを読み出すと , 端子のレベル ("L" または "H") を読み出せます。
● 周辺機能出力時の動作
周辺機能出力として使用する場合は , 周辺機能の出力許可ビットで設定を行います。入出力の切
換えは周辺機能の出力許可ビットが優先されるので , DDR1 レジスタに "0" が書き込まれている
ビットでも各周辺機能の出力が許可されていると周辺機能出力になります。周辺機能の出力を許
可したときでも端子の値の読出しは可能なため , 周辺機能の出力値を知ることができます。
● 周辺機能入力時の動作
周辺機能入力と兼用のポートでは , 周辺機能の入力には , 常に端子の値が入力されています。外部
からの信号を周辺機能で使用するときは , DDR1 レジスタに "0" を書き込んで入力ポートとしてく
ださい。
184
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.4
MB90930 シリーズ
● リセット時の動作
CPU がリセットされると , DDR1 レジスタの値はクリアされます。このため , 出力バッファはすべ
て "OFF"( 入力ポート ) となり , また , プルアップ抵抗もカットされるため , 端子はハイインピーダ
ンスになります。
PDR1 レジスタは , リセットでは初期化されません。このため , 出力ポートとして使用する場合に
は PDR1 レジスタに出力データを書き込んでから , 対応する DDR1 レジスタに "1" を書き込んでく
ださい。
● ストップ , タイムベースタイマモード時の動作
ストップモードまたはタイムベースタイマモードに移行した時点で , 低消費電力モード制御レジ
スタの端子状態指定ビット (LPMCR の SPL) に "1" が書き込まれていると , 端子はハイインピーダ
ンスになります。これは , DDR1 レジスタの値に関係なく , 強制的に出力バッファが "OFF" となる
ためです。なお , 入力開放によるリークを防ぐため , 入力は固定してあります。
表 8.4-4 に , ポート 1 の端子状態を示します。
表 8.4-4 ポート 1 の端子状態
端子名
通常動作
スリープモード
ストップモード ,
タイムベースタイマモード
(SPL=0)
ストップモード ,
タイムベースタイマモード
(SPL=1)
P10/PPG2/IN5 ∼
P15/IN0
汎用入出力ポート
汎用入出力ポート
汎用入出力ポート
入力遮断 / 出力 Hi-Z
SPL: 低消費電力モード制御レジスタの端子状態指定ビット (LPMCR の SPL)
Hi-Z: ハイインピーダンス
<注意事項>
ストップモードまたはタイムベースタイマモード時に周辺機能とポートを兼用している端子をハイ
インピーダンスに設定する場合は, 周辺機能の出力を禁止に設定した後に低消費電力モード制御レジ
スタ (LPMCR) の STP ビットを "1" または TMD ビットを "0" に設定してください。
表 8.4-5 ポート 1 の端子出力優先順位
端子名
優先度 1
優先度 2
優先度 3
優先度 4
P10/PPG2/IN5
P11/TOT0/PPG3/IN4
P12/TIN0/PPG4
P13/PPG5
P14/TIN2/IN1
P15/IN0
PPG2
PPG3
PPG4
PPG5
P14
P15
P10
TOT0
P12
P13
-
P11
-
-
( 注意事項 ) 優先度 1 が最も優先度が高く , 優先度 4 が最も優先度が低くなります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
185
第 8 章 I/O ポート
8.5
8.5
MB90930 シリーズ
ポート 2
ポート 2 は , 周辺機能入出力兼用の汎用入出力ポートです。各端子は , 周辺機能とポートを
ビット単位で切り換えて使用できます。ここでは , 汎用入出力ポートとしての機能を中心に説
明します。ポート 2 の構成 , 端子 , 端子のブロックダイヤグラム , レジスタを示します。
■ ポート 2 の構成
ポート 2 は , 次の 3 つの要素から構成されます。
• 汎用入出力端子 / 周辺機能入出力端子 (P22/SEG00 ∼ P27/SEG05)
• ポート 2 データレジスタ (PDR2)
• ポート 2 方向レジスタ (DDR2)
■ ポート 2 の端子
ポート 2 の入出力端子は , 周辺機能入出力端子と兼用になっています。周辺機能入出力端子とし
て使用する場合には汎用入出力ポートとしては使用できません。表 8.5-1 にポート 2 の端子を示し
ます。
表 8.5-1 ポート 2 の端子
ポート名
端子名
P22/SEG00
P23/SEG01
ポート 2
P24/SEG02
P25/SEG03
P26/SEG04
P27/SEG05
ポート機能
P22
P23
P24
P25
P26
P27
汎用入出力
入出力形式
周辺機能
SEG00
SEG01
SEG02
SEG03
SEG04
SEG05
LCDC
入力
出力
CMOS ヒステリシス /
Automotive レベル *
CMOS
回路形式
F
: 初期状態で有効となる機能
*: Automotive レベルは , 入力電圧の規格です。規格値はデータシート「■ 電気的特性 3. 直流規格」を参照してく
ださい。
回路形式については「1.7 入出力回路形式」を参照してください。
186
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.5
MB90930 シリーズ
■ ポート 2 の端子のブロックダイヤグラム
図 8.5-1 に , ポート 2 の端子のブロックダイヤグラムを示します。
図 8.5-1 ポート 2 の端子のブロックダイヤグラム
周辺機能出力
LCD出力
周辺機能出力許可
PDR(ポートデータレジスタ)
P-ch
PDRリード
内部データバス
出力ラッチ
PDRライト
端子
DDR(ポート方向レジスタ)
N-ch
方向ラッチ
DDRライト
DDRリード
スタンバイ制御(SPL=1)
またはLCD出力許可
<注意事項>
周辺機能の出力許可ビットを許可すると , DDR2 レジスタの値にかかわらず強制的に周辺機能の出力
端子となります。
■ ポート 2 のレジスタ
ポート 2 のレジスタには , PDR2 および DDR2 があります。各レジスタを構成するビットは , ポー
ト 2 の端子に 1 対 1 で対応しています。表 8.5-2 にポート 2 のレジスタと端子の対応を示します。
表 8.5-2 ポート 2 のレジスタと端子の対応
ポート名
ポート 2
CM44-10150-1
関連するレジスタのビットと対応する端子
PDR2, DDR2
対応する端子
bit7
P27
bit6
P26
bit5
P25
FUJITSU MICROELECTRONICS LIMITED
bit4
P24
bit3
P23
bit2
P22
bit1
-
187
bit0
-
第 8 章 I/O ポート
8.5
MB90930 シリーズ
ポート 2 のレジスタ (PDR2, DDR2)
8.5.1
ポート 2 のレジスタについて説明します。
■ ポート 2 のレジスタの機能
● ポート 2 データレジスタ (PDR2)
PDR2 レジスタは , 端子の状態を示します。
● ポート 2 方向レジスタ (DDR2)
DDR2 レジスタは , ビットごとの端子の入出力方向を設定します。ポート ( 端子 ) に対応するビッ
トに "1" を書き込むと出力ポートになり , "0" を書き込むと入力ポートになります。
<注意事項>
出力端子を持つ周辺機能を使用する場合には端子に対応する各周辺機能の出力許可ビットが許可さ
れている場合は , DDR2 レジスタの設定値に関係なく , 周辺機能出力端子となります。
表 8.5-3 ポート 2 のレジスタの機能
レジスタ名
データ
0
端子状態が "L"
レベル
1
端子状態が "H"
レベル
0
方向ラッチが "0"
ポート 2 データレジス
タ (PDR2)
ポート 2 方向レジスタ
(DDR2)
読出し時
1
方向ラッチが "1"
書込み時
出力ラッチに "0" を設定し ,
出力ポート時に端子に "L"
レベルを出力する
出力ラッチに "1" を設定し ,
出力ポート時に端子に "H"
レベルを出力する
出力バッファを "OFF" にし
て入力ポートにする
出力バッファを "ON" にし
て出力ポートにする
R/W
アドレス
R/W
000002H
XXXXXX--B
R/W
000012H
000000--B
初期値
R/W: リード / ライト可能
X:
不定値
-:
未定義
188
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
8.5.2
ポート 2 の動作説明
第 8 章 I/O ポート
8.5
ポート 2 の動作を説明します。
■ ポート 2 の動作
● 出力ポート時の動作
対応する DDR2 レジスタのビットに "1" を書き込むと出力ポートになります。
出力ポート時に PDR2 レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持され ,
そのまま端子に出力されます。
PDR2 レジスタを読み出すと , 端子の値 (PDR 内の出力ラッチと同じ値 ) を読み出せます。
<注意事項>
ポートデータレジスタでリードモディファイライト (RMW) 系命令 ( ビットセット命令など ) を使用
すると , 目的とするビットは指定した値となり , DDR レジスタで出力に設定されているビットは影響
を受けませんが , DDR レジスタで入力に設定されているビットは , 端子の入力値が出力ラッチに書き
込まれて出力してしまいます。したがって , 入力として使用していたビットを出力に切り換える場合
は , PDR レジスタに出力データを書き込んでから DDR レジスタを出力にセットしてください。
● 入力ポート時の動作
対応する DDR2 レジスタのビットに "0" を書き込むと入力ポートになります。
入力ポート時は出力バッファが "OFF" となり , 端子はハイインピーダンスになります。
PDR2 レジスタにデータを書き込むと , PDR 内の出力ラッチにデータが保持されますが , 端子には出
力されません。
PDR2 レジスタを読み出すと , 端子のレベル ("L" または "H") を読み出せます。
● 周辺機能出力時の動作
周辺機能出力として使用する場合は , 周辺機能の出力許可ビットで設定を行います。入出力の切
換えは周辺機能の出力許可ビットが優先されるので , DDR2 レジスタに "0" が書き込まれている
ビットでも , 各周辺機能の出力が許可されていると周辺機能出力になります。周辺機能の出力を
許可したときでも端子の値を読み出せるので , 周辺機能の出力値を知ることができます。
● リセット時の動作
CPU がリセットされると , DDR2 レジスタの値がクリアされます。このため , 出力バッファはすべ
て "OFF"( 入力ポート ) となり , 端子はハイインピーダンスになります。
PDR2 レジスタは , リセットでは初期化されません。このため , 出力ポートとして使用する場合に
は PDR2 レジスタに出力データを書き込んでから , 対応する DDR2 レジスタに "1" を書き込んでく
ださい。
● ストップ , タイムベースタイマモード時の動作
ストップモードまたはタイムベースタイマモードに移行した時点で , 低消費電力モード制御レジ
スタの端子状態指定ビット (LPMCR の SPL) に "1" が書き込まれていると端子はハイインピーダン
スになります。これは , DDR2 レジスタの値に関係なく , 強制的に出力バッファが "OFF" となるた
めです。なお , 入力開放によるリークを防ぐため , 入力は固定してあります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
189
第 8 章 I/O ポート
8.5
MB90930 シリーズ
表 8.5-4 に , ポート 2 の端子状態を示します。
表 8.5-4 ポート 2 の端子状態
端子名
通常動作
スリープモード
ストップモード ,
タイムベースタイマモード
(SPL=0)
ストップモード ,
タイムベースタイマモード
(SPL=1)
P22/SEG00 ∼
P27/SEG05
汎用入出力ポート
汎用入出力ポート
汎用入出力ポート
入力遮断 / 出力 Hi-Z
SPL: 低消費電力モード制御レジスタの端子状態指定ビット (LPMCR の SPL)
Hi-Z: ハイインピーダンス
表 8.5-5 ポート 2 の端子出力優先順位
端子名
優先度 1
優先度 2
優先度 3
優先度 4
P22/SEG00
P23/SEG01
P24/SEG02
P25/SEG03
SEG00
SEG01
SEG02
SEG03
P22
P23
P24
P25
-
-
P26/SEG04
P27/SEG05
SEG04
SEG05
P26
P27
-
-
( 注意事項 ) 優先度 1 が最も優先度が高く , 優先度 4 が最も優先度が低くなります。
190
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.6
MB90930 シリーズ
8.6
ポート 3
ポート 3 は , 周辺機能入出力兼用の汎用入出力ポートです。各端子は , 周辺機能とポートを
ビット単位で切り換えて使用できます。ここでは , 汎用入出力ポートとしての機能を中心に説
明します。ポート 3 の構成 , 端子 , 端子のブロックダイヤグラム , レジスタを示します。
■ ポート 3 の構成
ポート 3 は , 次の 3 つの要素から構成されます。
• 汎用入出力端子 / 周辺機能入出力端子 (P30/SEG06 ∼ P37/SEG13)
• ポート 3 データレジスタ (PDR3)
• ポート 3 方向レジスタ (DDR3)
■ ポート 3 の端子
ポート 3 の入出力端子は , 周辺機能入出力端子と兼用になっています。周辺機能入出力端子とし
て使用する場合には汎用入出力ポートとしては使用できません。表 8.6-1 にポート 3 の端子を示し
ます。
表 8.6-1 ポート 3 の端子
入出力形式
ポート名
ポート 3
端子名
P30/SEG06
P31/SEG07
P32/SEG08
P33/SEG09
P34/SEG10
P35/SEG11
P36/SEG12
P37/SEG13
ポート機能
P30
P31
P32
P33
P34
P35
P36
P37
汎用入出力
周辺機能
SEG06
SEG07
SEG08
SEG09
SEG10
SEG11
SEG12
SEG13
LCDC
回路形式
入力
出力
CMOS ヒステリシス /
Automotive レベル *
CMOS
F
: 初期状態で有効となる機能
*: Automotive レベルは , 入力電圧の規格です。規格値はデータシート「■ 電気的特性 3. 直流規格」を参照してく
ださい。
回路形式については「1.7 入出力回路形式」を参照してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
191
第 8 章 I/O ポート
8.6
MB90930 シリーズ
■ ポート 3 の端子のブロックダイヤグラム
図 8.6-1 に , ポート 3 の端子のブロックダイヤグラムを示します。
図 8.6-1 ポート 3 の端子のブロックダイヤグラム
周辺機能出力
LCD出力
周辺機能出力許可
PDR(ポートデータレジスタ)
P-ch
PDRリード
内部データバス
出力ラッチ
PDRライト
端子
DDR(ポート方向レジスタ)
N-ch
方向ラッチ
DDRライト
DDRリード
スタンバイ制御(SPL=1)
またはLCD出力許可
<注意事項>
周辺機能の出力許可ビットを許可すると , DDR3 レジスタの値にかかわらず強制的に周辺機能の出力
端子となります。
■ ポート 3 のレジスタ
ポート 3 のレジスタには , PDR3 および DDR3 があります。各レジスタを構成するビットは , ポー
ト 3 の端子に 1 対 1 で対応しています。表 8.6-2 にポート 3 のレジスタと端子の対応を示します。
表 8.6-2 ポート 3 のレジスタと端子の対応
ポート名
ポート 3
192
関連するレジスタのビットと対応する端子
PDR3, DDR3
対応する端子
bit7
P37
bit6
P36
bit5
P35
FUJITSU MICROELECTRONICS LIMITED
bit4
P34
bit3
P33
bit2
P32
bit1
P31
CM44-10150-1
bit0
P30
第 8 章 I/O ポート
8.6
MB90930 シリーズ
8.6.1
ポート 3 のレジスタ (PDR3, DDR3)
ポート 3 のレジスタについて説明します。
■ ポート 3 のレジスタの機能
● ポート 3 データレジスタ (PDR3)
PDR3 レジスタは , 端子の状態を示します。
● ポート 3 方向レジスタ (DDR3)
DDR3 レジスタは , ビットごとの端子の入出力方向を設定します。ポート ( 端子 ) に対応するビッ
トに "1" を書き込むと出力ポートになり , "0" を書き込むと入力ポートになります。
<注意事項>
出力端子を持つ周辺機能を使用する場合に端子に対応する各周辺機能の出力許可ビットが許可され
ている場合は , DDR3 レジスタの設定値に関係なく , 周辺機能出力端子となります。
表 8.6-3 ポート 3 のレジスタの機能
レジスタ名
データ
読出し時
0
端子状態が "L" レ
ベル
出力ラッチに "0" を設定
し , 出力ポート時に端子
に "L" レベルを出力する
1
端子状態が "H" レ
ベル
出力ラッチに "1" を設定
し , 出力ポート時に端子
に "H" レベルを出力する
0
方向ラッチが "0"
出力バッファを "OFF" に
して入力ポートにする
方向ラッチが "1"
出力バッファを "ON" に
して出力ポートにする
ポート 3 データレジス
タ (PDR3)
ポート 3 方向レジスタ
(DDR3)
1
書込み時
R/W
アドレス
初期値
R/W
000003H
XXXXXXXXB
R/W
000013H
00000000B
R/W: リード / ライト可能
X:
不定値
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
193
第 8 章 I/O ポート
8.6
MB90930 シリーズ
ポート 3 の動作説明
8.6.2
ポート 3 の動作を説明します。
■ ポート 3 の動作
● 出力ポート時の動作
対応する DDR3 レジスタのビットに "1" を書き込むと出力ポートになります。
出力ポート時に PDR3 レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持され ,
そのまま端子に出力されます。
PDR3 レジスタを読み出すと , 端子の値 (PDR 内の出力ラッチと同じ値 ) を読み出せます。
<注意事項>
ポートデータレジスタでリードモディファイライト (RMW) 系命令 ( ビットセット命令など ) を使用
すると , 目的とするビットは指定した値となり , DDR レジスタで出力に設定されているビットは影響
を受けませんが , DDR レジスタで入力に設定されているビットは , 端子の入力値が出力ラッチに書き
込まれ , 出力してしまいます。したがって , 入力として使用していたビットを出力に切り換える場合
は , PDR レジスタに出力データを書き込んでから DDR レジスタを出力にセットしてください。
● 入力ポート時の動作
対応する DDR3 レジスタのビットに "0" を書き込むと入力ポートになります。
入力ポート時は出力バッファが "OFF" となり , 端子はハイインピーダンスになります。
PDR3 レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持されますが , 端子には出
力されません。
PDR3 レジスタを読み出すと , 端子のレベル ("L" または "H") を読み出せます。
● 周辺機能出力時の動作
周辺機能出力として使用する場合は , 周辺機能の出力許可ビットで設定を行います。入出力の切
換えは周辺機能の出力許可ビットが優先されるので , DDR3 レジスタに "0" が書き込まれている
ビットでも , 各周辺機能の出力が許可されていると周辺機能出力になります。周辺機能の出力を
許可したときでも端子の値を読み出せるので , 周辺機能の出力値を知ることができます。
● リセット時の動作
CPU がリセットされると , DDR3 レジスタの値はクリアされます。このため , 出力バッファはすべ
て "OFF"( 入力ポート ) となり , 端子はハイインピーダンスになります。
PDR3 レジスタは , リセットでは初期化されません。このため , 出力ポートとして使用する場合に
は PDR3 レジスタに出力データを書き込んでから , 対応する DDR3 レジスタに "1" を書き込んでく
ださい。
● ストップ , タイムベースタイマモード時の動作
ストップモードまたはタイムベースタイマモードに移行した時点で , 低消費電力モード制御レジ
スタの端子状態指定ビット (LPMCR の SPL) に "1" が書き込まれていると , 端子はハイインピーダ
ンスになります。これは , DDR3 レジスタの値に関係なく , 強制的に出力バッファが "OFF" となる
ためです。なお , 入力開放によるリークを防ぐため , 入力は固定してあります。
194
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.6
MB90930 シリーズ
表 8.6-4 に , ポート 3 の端子状態を示します。
表 8.6-4 ポート 3 の端子状態
端子名
通常動作
スリープモード
ストップモード ,
タイムベースタイマモード
(SPL=0)
ストップモード ,
タイムベースタイマモード
(SPL=1)
P30/SEG06 ∼
P37/SEG13
汎用入出力ポート
汎用入出力ポート
汎用入出力ポート
入力遮断 / 出力 Hi-Z
SPL: 低消費電力モード制御レジスタの端子状態指定ビット (LPMCR の SPL)
Hi-Z: ハイインピーダンス
表 8.6-5 ポート 3 の端子出力優先順位
端子名
優先度 1
優先度 2
優先度 3
優先度 4
P30/SEG06
P31/SEG07
P32/SEG08
P33/SEG09
SEG06
SEG07
SEG08
SEG09
P30
P31
P32
P33
-
-
P34/SEG10
P35/SEG11
P36/SEG12
P37/SEG13
SEG10
SEG11
SEG12
SEG13
P34
P35
P36
P37
-
-
( 注意事項 ) 優先度 1 が最も優先度が高く , 優先度 4 が最も優先度が低くなります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
195
第 8 章 I/O ポート
8.7
8.7
MB90930 シリーズ
ポート 4
ポート 4 は , 周辺機能入出力兼用の汎用入出力ポートです。各端子は , 周辺機能とポートを
ビット単位で切り換えて使用できます。ここでは , 汎用入出力ポートとしての機能を中心に説
明します。ポート 4 の構成 , 端子 , 端子のブロックダイヤグラム , レジスタを示します。
■ ポート 4 の構成
ポート 4 は , 次の 3 つの要素から構成されます。
• 汎用入出力端子 / 周辺機能入出力端子 (P40/SEG14 ∼ P47/SEG21)
• ポート 4 データレジスタ (PDR4)
• ポート 4 方向レジスタ (DDR4)
■ ポート 4 の端子
ポート 4 の入出力端子は , 周辺機能入出力端子と兼用になっています。周辺機能入出力端子とし
て使用する場合には汎用入出力ポートとしては使用できません。表 8.7-1 にポート 4 の端子を示し
ます。
表 8.7-1 ポート 4 の端子
ポート名
ポート 4
端子名
P40/SEG14
P41/SEG15
P42/SEG16
P43/SEG17
P44/SEG18
P45/SEG19
P46/SEG20
P47/SEG21
ポート機能
P40
P41
P42
P43
P44
P45
P46
P47
汎用入出力
入出力形式
周辺機能
SEG14
SEG15
SEG16
SEG17
SEG18
SEG19
SEG20
SEG21
LCDC
入力
出力
CMOS ヒステリシス /
Automotive レベル *
CMOS
回路形式
F
: 初期状態で有効となる機能
*: Automotive レベルは , 入力電圧の規格です。規格値はデータシート「■ 電気的特性 3. 直流規格」を参照してく
ださい。
回路形式については「1.7 入出力回路形式」を参照してください。
196
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.7
MB90930 シリーズ
■ ポート 4 の端子のブロックダイヤグラム
図 8.7-1 に , ポート 4 の端子のブロックダイヤグラムを示します。
図 8.7-1 ポート 4 の端子のブロックダイヤグラム
周辺機能出力
PDR(ポートデータレジスタ)
周辺機能出力許可
LCD出力
P-ch
PDRリード
内部データバス
出力ラッチ
PDRライト
端子
DDR(ポート方向レジスタ)
N-ch
方向ラッチ
DDRライト
DDRリード
スタンバイ制御(SPL=1)
またはLCD出力許可
<注意事項>
周辺機能の出力許可ビットを許可すると , DDR4 レジスタの値にかかわらず強制的に周辺機能の出力
端子となります。
■ ポート 4 のレジスタ
ポート 4 のレジスタには , PDR4 および DDR4 があります。各レジスタを構成するビットは , ポー
ト 4 の端子に 1 対 1 で対応しています。表 8.7-2 にポート 4 のレジスタと端子の対応を示します。
表 8.7-2 ポート 4 のレジスタと端子の対応
ポート名
ポート 4
CM44-10150-1
関連するレジスタのビットと対応する端子
PDR4, DDR4
対応する端子
bit7
P47
bit6
P46
bit5
P45
FUJITSU MICROELECTRONICS LIMITED
bit4
P44
bit3
P43
bit2
P42
bit1
P41
197
bit0
P40
第 8 章 I/O ポート
8.7
MB90930 シリーズ
ポート 4 のレジスタ (PDR4, DDR4)
8.7.1
ポート 4 のレジスタについて説明します。
■ ポート 4 のレジスタの機能
● ポート 4 データレジスタ (PDR4)
PDR4 レジスタは , 端子の状態を示します。
● ポート 4 方向レジスタ (DDR4)
DDR4 レジスタは , ビットごとの端子の入出力方向を設定します。ポート ( 端子 ) に対応するビッ
トに "1" を書き込むと出力ポートになり , "0" を書き込むと入力ポートになります。
<注意事項>
出力端子を持つ周辺機能を使用する場合に端子に対応する各周辺機能の出力許可ビットが許可され
ている場合は , DDR4 レジスタの設定値に関係なく , 周辺機能出力端子となります。
表 8.7-3 ポート 4 のレジスタの機能
レジスタ名
データ
読出し時
0
端子状態が "L" レ
ベル
出力ラッチに "0" を設定
し , 出力ポート時に端子
に "L" レベルを出力する
1
端子状態が "H"
レベル
出力ラッチに "1" を設定
し , 出力ポート時に端子
に "H" レベルを出力する
0
方向ラッチが "0"
出力バッファを "OFF" に
して入力ポートにする
方向ラッチが "1"
出力バッファを "ON" に
して出力ポートにする
ポート 4 データレジス
タ (PDR4)
ポート 4 方向レジスタ
(DDR4)
1
書込み時
R/W
アドレス
初期値
R/W
000004H
XXXXXXXXB
R/W
000014H
00000000B
R/W: リード / ライト可能
X:
不定値
198
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
8.7.2
ポート 4 の動作説明
第 8 章 I/O ポート
8.7
ポート 4 の動作を説明します。
■ ポート 4 の動作
● 出力ポート時の動作
対応する DDR4 レジスタのビットに "1" を書き込むと出力ポートになります。
出力ポート時に PDR4 レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持され ,
そのまま端子に出力されます。
PDR4 レジスタを読み出すと , 端子の値 (PDR 内の出力ラッチと同じ値 ) を読み出せます。
<注意事項>
ポートデータレジスタでリードモディファイライト (RMW) 系命令 ( ビットセット命令など ) を使用
すると , 目的とするビットは指定した値となり , DDR レジスタで出力に設定されているビットは影響
を受けませんが , DDR レジスタで入力に設定されているビットは , 端子の入力値が出力ラッチに書き
込まれ , 出力してしまいます。したがって , 入力として使用していたビットを出力に切り換える場合
は , PDR レジスタに出力データを書き込んでから DDR レジスタを出力にセットしてください。
● 入力ポート時の動作
対応する DDR4 レジスタのビットに "0" を書き込むと入力ポートになります。
入力ポート時は出力バッファが "OFF" となり , 端子はハイインピーダンスになります。
PDR4 レジスタにデータを書き込むと , PDR 内の出力ラッチにデータが保持されますが , 端子には出
力されません。
PDR4 レジスタを読み出すと , 端子のレベル ("L" または "H") を読み出せます。
● 周辺機能出力時の動作
周辺機能出力として使用する場合は , 周辺機能の出力許可ビットで設定を行います。入出力の切
換えは周辺機能の出力許可ビットが優先されるので , DDR4 レジスタに "0" が書き込まれている
ビットでも , 各周辺機能の出力が許可されていると周辺機能出力になります。周辺機能の出力を
許可したときでも端子の値を読み出せるので , 周辺機能の出力値を知ることができます。
● リセット時の動作
CPU がリセットされると , DDR4 レジスタの値はクリアされます。このため , 出力バッファはすべ
て "OFF"( 入力ポート ) となり , 端子はハイインピーダンスになります。
PDR4 レジスタは , リセットでは初期化されません。このため , 出力ポートとして使用する場合に
は PDR4 レジスタに出力データを書き込んでから , 対応する DDR4 レジスタに "1" を書き込んでく
ださい。
● ストップ , タイムベースタイマモード時の動作
ストップモードまたはタイムベースタイマモードに移行した時点で , 低消費電力モード制御レジ
スタの端子状態指定ビット (LPMCR の SPL) に "1" が書き込まれていると , 端子はハイインピーダ
ンスになります。これは , DDR4 レジスタの値に関係なく , 強制的に出力バッファが "OFF" となる
ためです。なお , 入力開放によるリークを防ぐため , 入力は固定してあります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
199
第 8 章 I/O ポート
8.7
MB90930 シリーズ
表 8.7-4 に , ポート 4 の端子状態を示します。
表 8.7-4 ポート 4 の端子状態
端子名
通常動作
スリープモード
ストップモード ,
タイムベースタイマモード
(SPL=0)
ストップモード ,
タイムベースタイマモード
(SPL=1)
P40/SEG14 ∼
P47/SEG21
汎用入出力ポート
汎用入出力ポート
汎用入出力ポート
入力遮断 / 出力 Hi-Z
SPL: 低消費電力モード制御レジスタの端子状態指定ビット (LPMCR の SPL)
Hi-Z: ハイインピーダンス
表 8.7-5 ポート 4 の端子出力優先順位
端子名
優先度 1
優先度 2
優先度 3
優先度 4
P40/SEG14
P41/SEG15
P42/SEG16
P43/SEG17
SEG14
SEG15
SEG16
SEG17
P40
P41
P42
P43
-
-
P44/SEG18
P45/SEG19
P46/SEG20
P47/SEG21
SEG18
SEG19
SEG20
SEG21
P44
P45
P46
P47
-
-
( 注意事項 ) 優先度 1 が最も優先度が高く , 優先度 4 が最も優先度が低くなります。
200
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
8.8
ポート 5
第 8 章 I/O ポート
8.8
ポート 5 は , 周辺機能入出力兼用の汎用入出力ポートです。各端子は , 周辺機能とポートを
ビット単位で切り換えて使用できます。ここでは , 汎用入出力ポートとしての機能を中心に説
明します。ポート 5 の構成 , 端子 , 端子のブロックダイヤグラム , レジスタを示します。
■ ポート 5 の構成
ポート 5 は , 次の 3 つの要素から構成されます。
• 汎用入出力端子 / 周辺機能入力端子 (P50/INT0/ADTG ∼ P57/SGA0/IN4R)
• ポート 5 データレジスタ (PDR5)
• ポート 5 方向レジスタ (DDR5)
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
201
第 8 章 I/O ポート
8.8
MB90930 シリーズ
■ ポート 5 の端子
ポート 5 の入出力端子は , 周辺機能入力端子と兼用になっていますので , 周辺機能入出力端子とし
て使用する場合には汎用入出力ポートとしては使用できません。表 8.8-1 にポート 5 の端子を示し
ます。
表 8.8-1 ポート 5 の端子
ポート名
ポート 5
端子名
ポート機能
P50/
P50
INT0/
ADTG
P51/
P51
INT1/
RX1
P52/TX1 P52
P53/INT3 P53
P54/
SGA1/
P54
IN2R
INT0
INT1
P55/INT2 P55
P56/
SGO0/
FRCK/
IN5R
P57/
SGA0/
IN4R
P56
入力
出力
回路形式
ADTG A/D
外部割
込み
INT3
汎用
入出力
入出力形式
周辺機能
RX1
TX1
-
SGA1
SG
INT2
外部割
込み
SGO0
IN2R
CAN1
CMOS ヒス
テリシス / CMOS
Automotive
レベル *
ICU
FRCK FRT
I
IN5R ICU
SG
P57
SGA0
IN4R
ICU
: 初期状態で有効となる機能
*: Automotive レベルは , 入力電圧の規格です。規格値はデータシート「■ 電気的特性 3. 直流規格」を参照してく
ださい。
回路形式については「1.7 入出力回路形式」を参照してください。
202
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.8
MB90930 シリーズ
■ ポート 5 の端子のブロックダイヤグラム
図 8.8-1 に , ポート 5 の端子のブロックダイヤグラムを示します。
図 8.8-1 ポート 5 の端子のブロックダイヤグラム
周辺機能入力
周辺機能出力
周辺機能出力許可
PDR(ポートデータレジスタ)
P-ch
PDRリード
内部データバス
出力ラッチ
PDRライト
端子
DDR(ポート方向レジスタ)
N-ch
方向ラッチ
DDRライト
DDRリード
スタンバイ制御(SPL=1)
■ ポート 5 のレジスタ
ポート 5 のレジスタには , PDR5 および DDR5 があります。各レジスタを構成するビットは , ポー
ト 5 の端子に 1 対 1 で対応しています。表 8.8-2 に , ポート 5 のレジスタと端子の対応を示します。
表 8.8-2 ポート 5 のレジスタと端子の対応
ポート名
ポート 5
CM44-10150-1
関連するレジスタのビットと対応する端子
PDR5, DDR5
対応する端子
bit7
P57
bit6
P56
bit5
P55
FUJITSU MICROELECTRONICS LIMITED
bit4
P54
bit3
P53
bit2
P52
bit1
P51
203
bit0
P50
第 8 章 I/O ポート
8.8
MB90930 シリーズ
ポート 5 のレジスタ (PDR5, DDR5)
8.8.1
ポート 5 のレジスタについて説明します。
■ ポート 5 のレジスタの機能
● ポート 5 データレジスタ (PDR5)
PDR5 レジスタは , 端子の状態を示します。
● ポート 5 方向レジスタ (DDR5)
DDR5 レジスタは , ビットごとの端子の入出力方向を設定します。ポート ( 端子 ) に対応するビッ
トに "1" を書き込むと出力ポートになり , "0" を書き込むと入力ポートになります。
<注意事項>
• 出力端子を持つ周辺機能を使用する場合に端子に対応する各周辺機能の出力許可ビットが許可さ
れている場合は , DDR5 レジスタの設定値に関係なく , 周辺機能出力端子となります。
• 入力端子を持つ周辺機能を使用する場合には各周辺機能の入力端子に対応する DDR5 レジスタの
ビットに "0" を書き込んで入力ポートとしてください。
表 8.8-3 ポート 5 のレジスタの機能
レジスタ名
データ
読出し時
書込み時
0
端子状態が "L" レ
ベル
出力ラッチに "0" を設定
し , 出力ポート時に端子
に "L" レベルを出力する
ポート 5 データレジ
スタ (PDR5)
ポート 5 方向レジス
タ (DDR5)
1
端子状態が "H" レ
ベル
0
方向ラッチが "0"
1
方向ラッチが "1"
出力ラッチに "1" を設定
し , 出力ポート時に端子
に "H" レベルを出力す
る
出力バッファを "OFF"
にして入力ポートにす
る
R/W
アドレス
R/W
000005H
XXXXXXXXB
R/W
000015H
00000000B
初期値
出力バッファを "ON" に
して出力ポートにする
R/W: リード / ライト可能
X:
不定値
204
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
8.8.2
ポート 5 の動作説明
第 8 章 I/O ポート
8.8
ポート 5 の動作を説明します。
■ ポート 5 の動作
● 出力ポート時の動作
対応する DDR5 レジスタのビットに "1" を書き込むと出力ポートになります。
出力ポート時に PDR5 レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持され ,
そのまま端子に出力されます。
PDR5 レジスタを読み出すと , 端子の値 (PDR 内の出力ラッチと同じ値 ) を読み出せます。
<注意事項>
ポートデータレジスタでリードモディファイライト (RMW) 系命令 ( ビットセット命令など ) を使用
すると , 目的とするビットは指定した値となり , DDR レジスタで出力に設定されているビットは影響
を受けませんが , DDR レジスタで入力に設定されているビットは , 端子の入力値が出力ラッチに書き
込まれ , 出力してしまいます。したがって , 入力として使用していたビットを出力に切り換える場合
は , PDR レジスタに出力データを書き込んでから DDR レジスタを出力にセットしてください。
● 入力ポート時の動作
対応する DDR5 レジスタのビットに "0" を書き込むと入力ポートになります。
入力ポート時は出力バッファが "OFF" となり , 端子はハイインピーダンスになります。
PDR5 レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持されますが , 端子には出
力されません。
PDR5 レジスタを読み出すと , 端子のレベル ("L" または "H") を読み出せます。
● 周辺機能出力時の動作
周辺機能出力として使用する場合は , 周辺機能の出力許可ビットで設定を行います。入出力の切
換えは周辺機能の出力許可ビットが優先されるので , DDR5 レジスタに "0" が書き込まれている
ビットでも , 各周辺機能の出力が許可されていると周辺機能出力になります。周辺機能の出力を
許可したときでも端子の値を読み出せるので , 周辺機能の出力値を知ることができます。
● 周辺機能入力時の動作
周辺機能入力と兼用のポートでは , 周辺機能の入力には , 常に端子の値が入力されています。外部
からの信号を周辺機能で使用するときは , DDR5 レジスタに "0" を設定して入力ポートとしてくだ
さい。
● リセット時の動作
CPU がリセットされると , DDR5 レジスタの値はクリアされます。このため , 出力バッファはすべ
て "OFF"( 入力ポート ) となり , 端子はハイインピーダンスになります。
PDR5 レジスタは , リセットでは初期化されません。このため , 出力ポートとして使用する場合に
は PDR5 レジスタに出力データを書き込んでから , 対応する DDR5 レジスタに "1" を書き込んでく
ださい。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
205
第 8 章 I/O ポート
8.8
MB90930 シリーズ
● ストップ , タイムベースタイマモード時の動作
ストップモードまたはタイムベースタイマモードに移行した時点で , 低消費電力モード制御レジ
スタの端子状態指定ビット (LPMCR の SPL) に "1" が書き込まれていると , 端子はハイインピーダ
ンスになります。これは , DDR5 レジスタの値に関係なく , 強制的に出力バッファが "OFF" となる
ためです。なお , 入力開放によるリークを防ぐため , 入力は固定してあります。
表 8.8-4 に , ポート 5 の端子状態を示します。
表 8.8-4 ポート 5 の端子状態
端子名
P50/INT0/ADTG ∼
P57/SGA0
P50/INT0, P51/INT1,
P53/INT3, P55/INT2
( 外部割込み設定時 )
通常動作
スリープモード
ストップモード ,
タイムベースタイマモード
(SPL=0)
ストップモード ,
タイムベースタイマモード
(SPL=1)
汎用入出力ポート
汎用入出力ポート
汎用入出力ポート
入力遮断 / 出力 Hi-Z
汎用入出力ポート
汎用入出力ポート
汎用入出力ポート
入力可能 / 出力 Hi-Z
SPL: 低消費電力モード制御レジスタの端子状態指定ビット (LPMCR の SPL)
Hi-Z: ハイインピーダンス
表 8.8-5 ポート 5 の端子出力優先順位
端子名
P50/INT0/ADTG
P51/INT1
P52/TX1
P53/INT3
P54/SGA1/IN2R
P55/INT2
P56/SGO0/FRCK/IN5R
P57/SGA0/IN4R
優先度 1
優先度 2
優先度 3
優先度 4
P50
P51
TX1
P53
SGA1
P55
SGO0
SGA0
P52
P54
P56
P57
-
-
( 注意事項 ) 優先度 1 が最も優先度が高く , 優先度 4 が最も優先度が低くなります。
206
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.9
MB90930 シリーズ
8.9
ポート 6
ポート 6 は , A/D コンバータのアナログ入力兼用の汎用入出力ポートです。各端子は , アナロ
グ入力とポートをビット単位で切り換えて使用できます。ここでは , 汎用入出力ポートとして
の機能を中心に説明します。ポート 6 の構成 , 端子 , 端子のブロックダイヤグラム , レジスタ
を示します。
■ ポート 6 の構成
ポート 6 は , 次の 4 つの要素から構成されます。
• 汎用入出力端子 / アナログ入力端子 (P60/AN0 ∼ P67/AN7)
• ポート 6 データレジスタ (PDR6)
• ポート 6 方向レジスタ (DDR6)
• アナログ入力許可レジスタ (ADER6)
■ ポート 6 の端子
ポート 6 の入出力端子は , アナログ入力端子と周辺機能入出力端子との兼用になっています。ア
ナログ入力を使用する場合には汎用入出力ポートとしては使用できません。また , 汎用ポートと
して使用するときは , アナログ入力端子としては使用しないでください。表 8.9-1 に , ポート 6 の
端子を示します。
表 8.9-1 ポート 6 の端子
入出力形式
ポート名
端子名
ポート機能
周辺機能
回路形式
入力
ポート 6
P60/AN0/
P60
OUT0
AN0
アナログ
入力 0
P61/AN1/
P61
OUT1
AN1
アナログ
入力 1
P62/AN2/
P62
OUT2
AN2
アナログ
入力 2
P63/AN3/
P63
OUT3
AN3
アナログ
入力 3
AN4
アナログ
入力 4
P65/AN5/
P65
OUT1R
AN5
アナログ
入力 5
P66/AN6/
P66
OUT2R
AN6
アナログ
入力 6
P67/AN7/
P67
OUT3R
AN7
アナログ
入力 7
P64/AN4/
P64
OUT0R
汎用入
出力
出力
CMOS ヒステ
リシス /
Automotive
CMOS
レベル * /
アナログ入力
H
: 初期状態で有効となる機能
*: Automotive レベルは , 入力電圧の規格です。規格値はデータシート「■ 電気的特性 3. 直流規格」を参照してく
ださい。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
207
第 8 章 I/O ポート
8.9
MB90930 シリーズ
回路形式については「1.7 入出力回路形式」を参照してください。
■ ポート 6 の端子のブロックダイヤグラム
図 8.9-1 に , ポート 6 の端子のブロックダイヤグラムを示します。
図 8.9-1 ポート 6 の端子のブロックダイヤグラム
ADER6
アナログ入力
PDR(ポートデータレジスタ)
PDRリード
内部データ バ ス
P-ch
出力ラッチ
PDRライト
端子
DDR(ポート方向レジスタ)
N-ch
方向ラッチ
DDRライト
DDRリード
スタンバイ制御(SPL=1)
<注意事項>
入力ポートとして使用する端子は, 対応するDDR6レジスタのビットに"0"を書き込んで, かつADER6
レジスタの対応するビットに "0" を書き込んでください。
アナログ入力端子として使用する端子は , 対応する DDR6 レジスタのビットに "0" を書き込んで , か
つ ADER6 レジスタの対応するビットに "1" を書き込んでください。このときの PDR6 レジスタの読
出し値は "0" になります。
■ ポート 6 のレジスタ
ポート 6 のレジスタには , PDR6, DDR6 および ADER6 があります。各レジスタを構成するビット
は , ポート 6 の端子に 1 対 1 で対応しています。表 8.9-2 に , ポート 6 のレジスタと端子の対応を
示します。
表 8.9-2 ポート 6 のレジスタと端子の対応
ポート名
ポート 6
208
関連するレジスタのビットと対応する端子
PDR6, DDR6, ADER6
対応する端子
bit7
P67
bit6
P66
bit5
P65
FUJITSU MICROELECTRONICS LIMITED
bit4
P64
bit3
P63
bit2
P62
bit1
P61
CM44-10150-1
bit0
P60
第 8 章 I/O ポート
8.9
MB90930 シリーズ
8.9.1
ポート 6 のレジスタ (PDR6, DDR6, ADER6)
ポート 6 のレジスタについて説明します。
■ ポート 6 のレジスタの機能
● ポート 6 データレジスタ (PDR6)
PDR6 レジスタは , 端子の状態を示します。
● ポート 6 方向レジスタ (DDR6)
DDR6 レジスタは , ビットごとの端子の入出力方向を設定します。ポート ( 端子 ) に対応するビッ
トに "1" を書き込むと出力ポートになり , "0" を書き込むと入力ポートになります。
● ADER6 レジスタ (ADER6)
ADER6 レジスタは , ビットごとにポートとして使用するか , アナログ入力として使用するかを設
定します。端子に対応するビットに "1" を書き込むとアナログ入力になり , "0" を書き込むと入出
力ポートになります。
<注意事項>
• ポート入出力時に , 中間レベルの信号が入力されると入力リーク電流が流れますので , アナログ入
力を行う端子は必ず ADER6 の対応するビットに "1" を書き込んでください。
• リセットにより DDR6 レジスタはクリアされ , ADER6 レジスタはセットされてアナログ入力とな
ります。
表 8.9-3 ポート 6 のレジスタの機能
レジスタ名
データ
アナログ入力許可レジ
スタ (ADER6)
書込み時
0
DDR6 に "0" を書き込むとハ
端子状態が "L" レ イインピーダンス状態になる
DDR6 に "1" を書き込むと
ベル
"L" レベルを出力する
1
DDR6 に "0" を書き込むとハ
端子状態が "H" レ イインピーダンス状態になる
DDR6 に "1" を書き込むと
ベル
"H" レベルを出力する
0
方向ラッチが "0"
出力バッファを "OFF" にし
て入力ポートにする
方向ラッチが "1"
出力バッファを "ON" にして
出力ポートにする
ポート 6 データレジス
タ (PDR6)
ポート 6 方向レジスタ
(DDR6)
読出し時
1
0
ポート入出力モード
1
アナログ入力モード
R/W
アドレス
初期値
R/W
000006H
XXXXXXXXB
R/W
000016H
00000000B
R/W
00001AH
11111111B
R/W: リード / ライト可能
X:
不定値
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
209
第 8 章 I/O ポート
8.9
MB90930 シリーズ
ポート 6 の動作説明
8.9.2
ポート 6 の動作を説明します。
■ ポート 6 の動作
● 出力ポート時の動作
対応する DDR6 レジスタのビットに "1" を書き込むと出力ポートになります。
出力ポート時に PDR6 レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持され ,
そのまま端子に出力されます。
PDR6 レジスタを読み出すと , 端子の値 (PDR 内の出力ラッチと同じ値 ) を読み出せます。
<注意事項>
ポートデータレジスタでリードモディファイライト (RMW) 系命令 ( ビットセット命令など ) を使用
すると , 目的とするビットは指定した値となり , DDR レジスタで出力に設定されているビットは影響
を受けませんが , DDR レジスタで入力に設定されているビットは , 端子の入力値が出力ラッチに書き
込まれ , 出力してしまいます。したがって , 入力として使用していたビットを出力に切り換える場合
は , PDR レジスタに出力データを書き込んでから DDR レジスタに "1" を書き込んでください。
● 入力ポート時の動作
対応する DDR6 レジスタのビットに "0" を書き込むと入力ポートになります。
入力ポート時は出力バッファが "OFF" となり , 端子はハイインピーダンスになります。
PDR6 レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持されますが , 端子には出
力されません。
PDR6 レジスタを読み出すと , 端子のレベル値 ("L" または "H") を読み出せます。
● アナログ入力時の動作
アナログ入力として使用するには , アナログ入力端子に対応する ADER6 レジスタのビットに "1"
を書き込んでください。これによって , 汎用ポートとしての動作が禁止され , アナログ入力端子と
して使用できるようになります。この状態で PDR6 を読み出すと , 読出し値は "0" になります。
● リセット時の動作
CPU がリセットされると , DDR6 レジスタの値はクリア , ADER6 レジスタの値はセットされてア
ナログ入力モードになります。汎用ポートとして使用する場合には , 事前に ADER6 レジスタに
"0" を書き込んでポート入出力モードにしてください。
● 周辺機能出力時の動作
周辺機能出力として使用する場合は , 周辺機能の出力許可ビットで設定を行います。PDR6 レジス
タを読み出すと , 端子の値 ( 周辺機能の出力値 ) を読み出せます。汎用ポートとして使用する場合
には , 事前に ADER6 レジスタに "0" を書き込んでポート入出力モードにしてください。
210
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.9
MB90930 シリーズ
● ストップ , タイムベースタイマモード時の動作
ストップモードまたはタイムベースタイマモードに移行した時点で , 低消費電力モード制御レジ
スタの端子状態指定ビット (LPMCR の SPL) に "1" が書き込まれていると , 端子はハイインピーダ
ンスになります。これは , 強制的に出力バッファが "OFF" となるためです。なお , 入力開放による
リークを防ぐため , 入力は固定してあります。
表 8.9-4 にポート 6 の端子状態を示します。
表 8.9-4 ポート 6 の端子状態
端子名
通常動作
スリープモード
ストップモード ,
タイムベースタイマモード
(SPL=0)
ストップモード ,
タイムベースタイマモード
(SPL=1)
P60/AN0 ∼
P67/AN7
汎用入出力ポート
汎用入出力ポート
汎用入出力ポート
入力遮断 / 出力 Hi-Z
SPL: 低消費電力モード制御レジスタの端子状態指定ビット (LPMCR の SPL)
Hi-Z: ハイインピーダンス
表 8.9-5 ポート 6 の端子出力優先順位
端子名
優先度 1
優先度 2
優先度 3
優先度 4
P60/AN0
P61/AN1
P62/AN2
P63/AN3
P64/AN4
P65/AN5
P66/AN6
P60
P61
P62
P63
P64
P65
P66
-
-
-
P67/AN7
P67
-
-
-
( 注意事項 ) 優先度 1 が最も優先度が高く , 優先度 4 が最も優先度が低くなります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
211
第 8 章 I/O ポート
8.10
8.10
MB90930 シリーズ
ポート 7
ポート 7 は , 周辺機能兼用の汎用出力専用ポートです。各端子は , 周辺機能とポートをビット
単位で切り換えて使用できます。ここでは , 汎用出力専用ポートとしての機能を中心に説明し
ます。ポート 7 の構成 , 端子 , 端子のブロックダイヤグラム , レジスタを示します。
■ ポート 7 の構成
ポート 7 は , 次の 4 つの要素から構成されます。
• 汎用出力端子 / 周辺機能端子 (P70/PWM1P0/AN8 ∼ P77/PWM2M1/AN15)
• ポート 7 データレジスタ (PDR7)
• ポート 7 方向レジスタ (DDR7)
• アナログ入力許可レジスタ (ADER7)
■ ポート 7 の端子
ポート 7 の端子は , 周辺機能端子と兼用になっています。周辺機能端子として使用する場合には
汎用入出力ポートとしては使用できません。表 8.10-1 にポート 7 の端子を示します。
表 8.10-1 ポート 7 の端子
ポート名
端子名
P70/
PWM1P0/
AN8
P71/
PWM1M0/
AN9
ポート 7
P72/
PWM2P0/
AN10
P73/
PWM2M0/
AN11
P74/
PWM1P1/
AN12
P75/
PWM1M1/
AN13
P76/
PWM2P1/
AN14
P77/
PWM2M1/
AN15
ポート機能
入出力形式
周辺機能
P70
PWM1P0
AN8
アナログ
入力 8
P71
PWM1M0
AN9
アナログ
入力 9
P72
PWM2P0
AN10
アナログ
入力 10
P73
PWM2M0
AN11
アナログ
入力 11
汎用出力
ステッピ
ングモー
タコント
ローラ
AN12
アナログ
入力 12
PWM1M1
AN13
アナログ
入力 13
P76
PWM2P1
AN14
アナログ
入力 14
P77
PWM2M1
AN15
アナログ
入力 15
P74
PWM1P1
P75
入力
出力
( アナログ
入力 )
-
回路形式
: 初期状態で有効となる機能
回路形式については「1.7 入出力回路形式」を参照してください。
212
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
L
第 8 章 I/O ポート
8.10
MB90930 シリーズ
■ ポート 7 の端子のブロックダイヤグラム
図 8.10-1 に , ポート 7 の端子のブロックダイヤグラムを示します。
図 8.10-1 ポート 7 の端子のブロックダイヤグラム
周辺機能出力
PDR(ポートデータレジスタ)
アナログ入力
周辺機能出力許可
P-ch
PDRリード
内部データバス
出力ラッチ
PDRライト
端子
DDR(ポート方向レジスタ)
N-ch
方向ラッチ
DDRライト
DDRリード
スタンバイ制御(SPL=1)
RST
周辺機能の出力許可ビットを許可すると, DDR7レジスタの値にかかわらず強制的に周辺機能の出
力端子となります。
■ ポート 7 のレジスタ
ポート 7 のレジスタには , PDR7 および DDR7 があります。各レジスタを構成するビットは , ポー
ト 7 の端子に 1 対 1 で対応しています。
表 8.10-2 に , ポート 7 のレジスタと端子の対応を示します。
表 8.10-2 ポート 7 のレジスタと端子の対応
ポート名
ポート 7
CM44-10150-1
関連するレジスタのビットと対応する端子
PDR7, DDR7
対応する端子
bit7
P77
bit6
P76
bit5
P75
FUJITSU MICROELECTRONICS LIMITED
bit4
P74
bit3
P73
bit2
P72
bit1
P71
213
bit0
P70
第 8 章 I/O ポート
8.10
MB90930 シリーズ
ポート 7 のレジスタ (PDR7, DDR7, ADER7)
8.10.1
ポート 7 のレジスタについて説明します。
■ ポート 7 のレジスタの機能
● ポート 7 データレジスタ (PDR7)
PDR7 レジスタは , 端子の状態を示します。
● ポート 7 方向レジスタ (DDR7)
DDR7 レジスタは , ビットごとの端子の入出力方向を設定します。ポート ( 端子 ) に対応するビッ
トに "1" を書き込むと出力ポートになり , "0" を書き込むとハイインピーダンス状態になります。
● ADER7 レジスタ (ADER7)
ADER7 レジスタは , ビットごとにポートとして使用するか , アナログ入力として使用するかを設
定します。端子に対応するビットに "1" を書き込むとアナログ入力になり , "0" を書き込むと入出
力ポートになります。
<注意事項>
端子に対応する周辺機能 ( ステッピングモータコントローラ ) の出力許可ビットが許可されている場
合は , DDR7 レジスタの設定値に関係なく , 周辺機能出力端子となります。
表 8.10-3 ポート 7 のレジスタの機能 (1 / 2)
レジスタ名
データ
読出し時
0
フラッシュメモリ品
出力ラッチに "0" を設定
PWM 出力許可時 : 周辺機能出
し , 出力ポート時に端子
力値が "L"
に "L" レベルを出力す
PWM 出力禁止時 : PDR 値が "0"
る
1
フラッシュメモリ品
出力ラッチに "1" を設定
PWM 出力許可時 : 周辺機能出
し , 出力ポート時に端子
力値が "H"
に "H" レベルを出力す
PWM 出力禁止時 : PDR 値が "1"
る
ポート 7
データレジ
スタ
(PDR7)
0
方向ラッチが "0"
ポート 7 方
向レジスタ
(DDR7)
1
214
書込み時
方向ラッチが "1"
出力バッファを "OFF"
にする
リセットにより "L" 出
力を解除する
出力バッファを "ON" に
して出力ポートにする
リセットにより "L" 出
力を解除する
FUJITSU MICROELECTRONICS LIMITED
R/W
アドレス
初期値
R/W
000007H
XXXXXXXXB
R/W
000017H
00000000B
CM44-10150-1
第 8 章 I/O ポート
8.10
MB90930 シリーズ
表 8.10-3 ポート 7 のレジスタの機能 (2 / 2)
レジスタ名
アナログ入
力許可レジ
スタ
(ADER7)
データ
読出し時
0
ポート入出力モード
1
アナログ入力モード
書込み時
R/W
アドレス
初期値
R/W
00001BH
11111111B
R/W: リード / ライト可能
X:
不定値
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
215
第 8 章 I/O ポート
8.10
8.10.2
MB90930 シリーズ
ポート 7 の動作説明
ポート 7 の動作を説明します。
■ ポート 7 の動作
● 出力ポート時の動作
PDR7 レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持され , そのまま端子に
出力されます。
PDR7 レジスタを読み出すと端子の値 (PDR 内の出力ラッチと同じ値 ) を読み出せます。
● アナログ入力時の動作
アナログ入力として使用するには , アナログ入力端子に対応する ADER7 レジスタのビットに "1"
を書き込んでください。これによって , 汎用ポートとしての動作が禁止され , アナログ入力端子と
して使用できるようになります。この状態で PDR7 を読み出すと , 読出し値は "0" になります。
● 周辺機能出力時の動作
周辺機能出力として使用する場合は , 周辺機能の出力許可ビットで設定します。PDR7 レジスタを
読み出すと , 端子の値 ( 周辺機能の出力値 ) を読み出せます。汎用ポートとして使用する場合には ,
事前に ADER7 レジスタに "0" を書き込んでポート入出力モードにしてください。
● リセット時の動作
CPU がリセットされると , DDR7 レジスタの値はクリア , ADER7 レジスタの値はセットされてア
ナログ入力モードになります。汎用ポートとして使用する場合には , 事前に ADER7 レジスタに
"0" を書き込んでポート入出力モードにしてください。
● ストップ , タイムベースタイマモード時の動作
ストップモードまたはタイムベースタイマモードに移行した時点で , 低消費電力モード制御レジ
スタの端子状態指定ビット (LPMCR の SPL) に "1" が書き込まれていると , 端子はハイインピーダ
ンスになります。これは強制的に出力バッファが "OFF" となるためです。
表 8.10-4 に , ポート 7 の端子状態を示します。
表 8.10-4 ポート 7 の端子状態
端子名
通常動作
スリープモード
ストップモード ,
タイムベースタイマモード
(SPL=0)
ストップモード ,
タイムベースタイマモード
(SPL=1)
P70/PWM1P0 ∼
P77/PWM2M1
汎用出力ポート
汎用出力ポート
汎用出力ポート
出力 Hi-Z
SPL: 低消費電力モード制御レジスタの端子状態指定ビット (LPMCR の SPL)
Hi-Z: ハイインピーダンス
216
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.10
MB90930 シリーズ
表 8.10-5 ポート 7 の端子出力優先順位
端子名
優先度 1
優先度 2
優先度 3
優先度 4
P70/PWM1P0/AN8
P71/PWM1M0/AN9
P72/PWM2P0/AN10
P73/PWM2M0/AN11
PWM1P0
PWM1M0
PWM2P0
PWM2M0
P70
P71
P72
P73
-
-
P74/PWM1P1/AN12
P75/PWM1M1/AN13
P76/PWM2P1/AN14
P77/PWM2M1/AN15
PWM1P1
PWM1M1
PWM2P1
PWM2M1
P74
P75
P76
P77
-
-
( 注意事項 ) 優先度 1 が最も優先度が高く , 優先度 4 が最も優先度が低くなります。
■ ポート 7 の出力ドライバ駆動電源
ポート 7 の出力ドライバ駆動電源は高電流出力バッファ端子用電源 (DVcc, DVss) です。
● フラッシュメモリ品 / マスク ROM 品
フラッシュメモリ品で DVcc と Vcc は分離されており , DVcc を Vcc より高い電位にも設定するこ
とが可能です。
● 評価用品
評価用品では DVcc と Vcc は分離されていないため , DVcc は Vcc と同じか低い電位に設定してく
ださい。
<注意事項>
フラッシュメモリ品 / マスク ROM 品で , Vcc が立ち上がっていない状態で DVcc が立ち上がった場
合 , DVcc の立上り中にポート 7 から一瞬 "H" か "L" を出力する可能性があります。これを防ぐため ,
Vcc と DVcc を同時に , もしくは Vcc を DVcc より先に立ち上げることを推奨します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
217
第 8 章 I/O ポート
8.11
8.11
MB90930 シリーズ
ポート 8
ポート 8 は , 周辺機能兼用の汎用出力専用ポートです。各端子は , 周辺機能とポートをビット
単位で切り換えて使用できます。ここでは , 汎用出力専用ポートとしての機能を中心に説明し
ます。ポート 8 の構成 , 端子 , 端子のブロックダイヤグラム , レジスタを示します。
■ ポート 8 の構成
ポート 8 は , 次の 4 つの要素から構成されます。
• 汎用出力端子 / 周辺機能端子 (P80/PWM1P2/AN16 ∼ P87/PWM2M3/AN23)
• ポート 8 データレジスタ (PDR8)
• ポート 8 方向レジスタ (DDR8)
• アナログ入力許可レジスタ (ADER8)
■ ポート 8 の端子
ポート 8 の端子は , 周辺機能端子と兼用になっています。周辺機能出力端子として使用する場合
には汎用出力ポートとしては使用できません。表 8.11-1 にポート 8 の端子を示します。
218
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.11
MB90930 シリーズ
表 8.11-1 ポート 8 の端子
ポート名
端子名
P80/
PWM1P2/
AN16
P81/
PWM1M2/
AN17
P82/
PWM2P2/
AN18
ポート 8
P83/
PWM2M2/
AN19
P84/
PWM1P3/
AN20
P85/
PWM1M3/
AN21
P86/
PWM2P3/
AN22
P87/
PWM2M3/
AN23
ポート機能
入出力形式
周辺機能
P80
PWM1P2
AN16
アナロ
グ入力
16
P81
PWM1M2
AN17
アナロ
グ入力
17
P82
PWM2P2
AN18
アナロ
グ入力
18
P83
PWM2M2
AN19
アナロ
グ入力
19
AN20
アナロ
グ入力
20
汎用出力
ステッピ
ングモー
タコント
ローラ
P84
PWM1P3
P85
PWM1M3
AN21
アナロ
グ入力
21
P86
PWM2P3
AN22
アナロ
グ入力
22
P87
PWM2M3
AN23
アナロ
グ入力
23
入力
出力
アナ
ログ
入力
-
回路形式
L
: 初期状態で有効となる機能
回路形式については「1.7 入出力回路形式」を参照してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
219
第 8 章 I/O ポート
8.11
MB90930 シリーズ
■ ポート 8 の端子のブロックダイヤグラム
図 8.11-1 に , ポート 8 の端子のブロックダイヤグラムを示します。
図 8.11-1 ポート 8 の端子のブロックダイヤグラム
周辺機能出力
アナログ入力
周辺機能出力許可
PDR(ポートデータレジスタ)
P-ch
PDRリード
内部データバス
出力ラッチ
PDRライト
端子
DDR(ポート方向レジスタ)
N-ch
方向ラッチ
DDRライト
DDRリード
スタンバイ制御(SPL=1)
RST
周辺機能の出力許可ビットを許可すると, DDR8レジスタの値にかかわらず強制的に周辺機能の出
力端子となります。
■ ポート 8 のレジスタ
ポート 8 のレジスタには , PDR8 および DDR8 があります。各レジスタを構成するビットは , ポー
ト 8 の端子に 1 対 1 で対応しています。
表 8.11-2 に , ポート 8 のレジスタと端子の対応を示します。
表 8.11-2 ポート 8 のレジスタと端子の対応
ポート名
ポート 8
220
関連するレジスタのビットと対応する端子
PDR8, DDR8
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
対応する端子
P87
P86
P85
P84
P83
P82
P81
P80
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.11
MB90930 シリーズ
8.11.1
ポート 8 のレジスタ (PDR8, DDR8, ADER8)
ポート 8 のレジスタについて説明します。
■ ポート 8 のレジスタの機能
● ポート 8 データレジスタ (PDR8)
PDR8 レジスタは , 端子の状態を示します。
● ポート 8 方向レジスタ (DDR8)
DDR8 レジスタは , ビットごとの端子の入出力方向を設定します。ポート ( 端子 ) に対応するビッ
トに "1" を書き込むと出力ポートになり , "0" を書き込むとハイインピーダンス状態になります。
● ADER8 レジスタ (ADER8)
ADER8 レジスタは , ビットごとにポートとして使用するか , アナログ入力として使用するかを設
定します。端子に対応するビットに "1" を書き込むとアナログ入力になり , "0" を書き込むと入出
力ポートになります。
<注意事項>
端子に対応する周辺機能 ( ステッピングモータコントローラ ) の出力許可ビットが許可されている場
合は , DDR8 レジスタの設定値に関係なく , 周辺機能出力端子となります。
表 8.11-3 ポート 8 のレジスタの機能 (1 / 2)
レジスタ名
データ
0
ポート 8
データレジ
スタ
(PDR8)
1
CM44-10150-1
読出し時
書込み時
フラッシュメモリ品
PWM 出力許可時 : 周辺機能
出力値が "L"
PWM 出力禁止時 : PDR 値が
"0"
出力ラッチに "0" を設定
し , 出力ポート時に端子
に "L" レベルを出力する
フラッシュメモリ品
PWM 出力許可時 : 周辺機能
出力値が "H"
PWM 出力禁止時 : PDR 値が
"1"
R/W
R/W
アドレス
000008H
初期値
XXXXXXXXB
出力ラッチに "1" を設定
し , 出力ポート時に端子
に "H" レベルを出力する
FUJITSU MICROELECTRONICS LIMITED
221
第 8 章 I/O ポート
8.11
MB90930 シリーズ
表 8.11-3 ポート 8 のレジスタの機能 (2 / 2)
レジスタ名
データ
0
読出し時
方向ラッチが "0"
出力バッファを "OFF" に
する
リセットにより "L" 出力
を解除する
方向ラッチが "1"
出力バッファを "ON" に
して出力ポートにする
リセットにより "L" 出力
を解除する
ポート 8 方
向レジスタ
(DDR8)
1
アナログ入
力許可レジ
スタ
(ADER8)
書込み時
0
ポート入出力モード
1
アナログ入力モード
R/W
R/W
R/W
アドレス
000018H
00001FH
初期値
00000000B
11111111B
R/W: リード / ライト可能
X:
不定値
222
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
8.11.2
ポート 8 の動作説明
第 8 章 I/O ポート
8.11
ポート 8 の動作を説明します。
■ ポート 8 の動作
● 出力ポート時の動作
対応する DDR8 レジスタのビットに "1" を書き込むと出力ポートになります。
出力ポート時に PDR8 レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持され ,
そのまま端子に出力されます。
PDR8 レジスタを読み出すと , 端子の値 (PDR 内の出力ラッチと同じ値 ) を読み出せます。
● アナログ入力時の動作
アナログ入力として使用するには , アナログ入力端子に対応する ADER8 レジスタのビットに "1"
を書き込んでください。これによって , 汎用ポートとしての動作が禁止され , アナログ入力端子と
して使用できるようになります。この状態で PDR8 を読み出すと , 読出し値は "0" になります。
● 周辺機能出力時の動作
周辺機能出力として使用する場合は , 周辺機能の出力許可ビットで設定します。
PDR8 レジスタを読み出すと , 端子の値 ( 周辺機能の出力値 ) を読み出せます。汎用ポートとして
使用する場合には , 事前に ADER8 レジスタに "0" を書き込んでポート入出力モードにしてくださ
い。
● リセット時の動作
CPU がリセットされると , DDR8 レジスタの値はクリア , ADER8 レジスタの値はセットされてア
ナログ入力モードになります。汎用ポートとして使用する場合には , 事前に ADER8 レジスタに
"0" を書き込んでポート入出力モードにしてください。
● ストップ , タイムベースタイマモード時の動作
ストップモードまたはタイムベースタイマモードに移行した時点で , 低消費電力モード制御レジ
スタの端子状態指定ビット (LPMCR の SPL) に "1" が書き込まれていると , 端子はハイインピーダ
ンスになります。これは強制的に出力バッファが "OFF" となるためです。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
223
第 8 章 I/O ポート
8.11
MB90930 シリーズ
表 8.11-4 に , ポート 8 の端子状態を示します。
表 8.11-4 ポート 8 の端子状態
端子名
通常動作
スリープモード
ストップモード ,
タイムベースタイマモード
(SPL=0)
ストップモード ,
タイムベースタイマモード
(SPL=1)
P80/PWM1P2 ∼
P87/PWM2M3
汎用出力ポート
汎用出力ポート
汎用出力ポート
出力 Hi-Z
SPL: 低消費電力モード制御レジスタの端子状態指定ビット (LPMCR の SPL)
Hi-Z: ハイインピーダンス
表 8.11-5 ポート 8 の端子出力優先順位
端子名
優先度 1
優先度 2
優先度 3
優先度 4
P80/PWM1P2/AN16
P81/PWM1M2/AN17
P82/PWM2P2/AN18
P83/PWM2M2/AN19
PWM1P2
PWM1M2
PWM2P2
PWM2M2
P80
P81
P82
P83
-
-
P84/PWM1P3/AN20
P85/PWM1M3/AN21
P86/PWM2P3/AN22
P87/PWM2M3/AN23
PWM1P3
PWM1M3
PWM2P3
PWM2M3
P84
P85
P86
P87
-
-
( 注意事項 ) 優先度 1 が最も優先度が高く , 優先度 4 が最も優先度が低くなります。
■ ポート 8 の出力ドライバ駆動電源
ポート 8 の出力ドライバ駆動電源は高電流出力バッファ端子用電源 (DVcc, DVss) です。
● フラッシュメモリ品 / マスク ROM 品
フラッシュメモリ品で DVcc と Vcc は分離されており , DVcc を Vcc より高い電位にも設定するこ
とが可能です。
● 評価用品
評価用品では DVcc と Vcc は分離されていないため , DVcc は Vcc と同じか低い電位に設定してく
ださい。
<注意事項>
フラッシュメモリ品 / マスク ROM 品で , Vcc が立ち上がっていない状態で DVcc が立ち上がった場
合 , DVcc の立上り中にポート 8 から一瞬 "H" か "L" を出力する可能性があります。これを防ぐため ,
Vcc と DVcc を同時に , もしくは Vcc を DVcc より先に立ち上げることを推奨します。
224
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.12
MB90930 シリーズ
8.12
ポート 9
ポート 9 は , 周辺機能入出力兼用の汎用入出力ポートです。各端子は , 周辺機能とポートを
ビット単位で切り換えて使用できます。ここでは , 汎用入出力ポートとしての機能を中心に説
明します。ポート 9 の構成 , 端子 , 端子のブロックダイヤグラム , レジスタを示します。
■ ポート 9 の構成
ポート 9 は , 次の 4 つの要素から構成されます。
• 汎用入出力端子 / 周辺機能入出力端子 (P90/SEG22, P91/SEG23)
• 汎用入出力端子 / 低速発振端子(P92/X0A*,P93/X1A*)
• 汎用入出力端子 / 周辺機能入出力端子 (P94/V0 ∼ P96/V2)
• ポート 9 データレジスタ (PDR9)
• ポート 9 方向レジスタ (DDR9)
*: X0A 端子 , X1A 端子はオプション対応です。1 系統の場合はありません。
■ ポート 9 の端子
ポート 9 の端子は , 周辺機能入出力端子と兼用になっています。周辺機能入出力端子として使用
する場合には汎用入出力ポートとしては使用できません。表 8.12-1 にポート 9 の端子を示します。
表 8.12-1 ポート 9 の端子
ポート名
ポート 9
端子名
ポート機能
P90/SEG22
P90
P91/SEG23
P92*1
P93*1
P94/V0
P91
P92
P93
P94
P95/V1
P96/V2
P95
P96
汎用入出力
汎用入出力
周辺機能
SEG22
SEG23
V0
V1
V2
入出力形式
入力
回路形式
出力
LCD コントロー
ラ
F
CMOS ヒステリ
シス /Automotive
レベル *
I
CMOS
G
外部分割
: 初期状態で有効となる機能
*1:1 系統品のみ
*2:Automotive レベルは , 入力電圧の規格です。規格値はデータシート「■ 電気的特性 3. 直流規格」
を参照してください。
回路形式については「1.7 入出力回路形式」を参照してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
225
第 8 章 I/O ポート
8.12
MB90930 シリーズ
■ ポート 9 の端子のブロックダイヤグラム
図 8.12-1 に , ポート 9 の端子のブロックダイヤグラムを示します。
図 8.12-1 ポート 9 の端子のブロックダイヤグラム
LCD Vn
周辺機能出力
周辺機能出力許可
PDR(ポートデータレジスタ)
P-ch
PDRリード
内部データバス
出力ラッチ
PDRライト
端子
DDR(ポート方向レジスタ)
N-ch
方向ラッチ
DDRライト
DDRリード
スタンバイ制御(SPL=1)
またはLCD出力許可
周辺機能の出力許可ビットを許可すると, DDR9レジスタの値にかかわらず強制的に周辺機能の出
力端子となります。
■ ポート 9 のレジスタ
ポート 9 のレジスタには , PDR9 および DDR9 があります。各レジスタを構成するビットは , ポー
ト 9 の端子に 1 対 1 で対応しています。
表 8.12-2 に , ポート 9 のレジスタと端子の対応を示します。
表 8.12-2 ポート 9 のレジスタと端子の対応
ポート名
ポート 9
226
関連するレジスタのビットと対応する端子
PDR9, DDR9
対応する端子
bit7
-
bit6
P96
bit5
P95
FUJITSU MICROELECTRONICS LIMITED
bit4
P94
bit3
P93
bit2
P92
bit1
P91
CM44-10150-1
bit0
P90
第 8 章 I/O ポート
8.12
MB90930 シリーズ
8.12.1
ポート 9 のレジスタ (PDR9, DDR9)
ポート 9 のレジスタについて説明します。
■ ポート 9 のレジスタの機能
● ポート 9 データレジスタ (PDR9)
PDR9 レジスタは , 端子の状態を示します。
● ポート 9 方向レジスタ (DDR9)
DDR9 レジスタは , ビットごとの端子の入出力方向を設定します。ポート ( 端子 ) に対応するビッ
トに "1" を書き込むと出力ポートになり , "0" を書き込むと入力ポートになります。
<注意事項>
出力端子を持つ周辺機能を使用する場合に端子に対応する各周辺機能の出力許可ビットが許可され
ている場合は , DDR9 レジスタの設定値に関係なく , 周辺機能出力端子となります。
表 8.12-3 に , ポート 9 のレジスタの機能を示します。
表 8.12-3 ポート 9 のレジスタの機能
レジスタ名
データ
読出し時
書込み時
0
端子状態が "L" レ
ベル
出力ラッチに "0" を設定
し , 出力ポート時は端子
に "L" レベルを出力する
1
端子状態が "H" レ
ベル
出力ラッチに "1" を設定
し , 出力ポート時は端子
に "H" レベルを出力する
0
方向ラッチが "0"
出力バッファを "OFF" に
して入力ポートにする
方向ラッチが "1"
出力バッファを "ON" にし
て出力ポートにする
ポート 9 データレジスタ
(PDR9)
ポート 9 方向レジスタ
(DDR9)
1
R/W
アドレス
初期値
R/W
000009H
-XXXXXXXB
R/W
000019H
-0000000B
R/W: リード / ライト可能
X: 不定値
-:
未定義
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
227
第 8 章 I/O ポート
8.12
MB90930 シリーズ
ポート 9 の動作説明
8.12.2
ポート 9 の動作を説明します。
■ ポート 9 の動作
● 出力ポート時の動作
対応する DDR9 レジスタのビットに "1" を書き込むと出力ポートになります。
出力ポート時に PDR9 レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持され ,
そのまま端子に出力されます。
PDR9 レジスタを読み出すと , 端子の値 (PDR 内の出力ラッチと同じ値 ) を読み出せます。
<注意事項>
ポートデータレジスタでリードモディファイライト (RMW) 系命令 ( ビットセット命令など ) を使用
すると , 目的とするビットは指定した値となり , DDR レジスタで出力に設定されているビットは影響
を受けませんが , DDR レジスタで入力に設定されているビットは , 端子の入力値が出力ラッチに書き
込まれ , 出力してしまいます。したがって , 入力として使用していたビットを出力に切り換える場合
は , PDR レジスタに出力データを書き込んでから DDR レジスタに "1" を書き込んでください。
● 入力ポート時の動作
対応する DDR9 レジスタのビットに "0" を書き込むと入力ポートになります。
入力ポート時は出力バッファが "OFF" となり , 端子はハイインピーダンスになります。
PDR9 レジスタにデータを書き込むと , PDR 内の出力ラッチにデータが保持されますが , 端子には出
力されません。
PDR9 レジスタを読み出すと , 端子のレベル値 ("L" または "H") を読み出せます。
● 周辺機能出力時の動作
周辺機能出力として使用する場合は , 周辺機能の出力許可ビットで設定します。入出力の切換え
は周辺機能の出力許可ビットが優先されるので , DDR9 レジスタに "0" が書き込まれているビット
でも , 各周辺機能の出力が許可されていると周辺機能出力になります。周辺機能の出力を許可し
たときでも端子の値を読み出せるので , 周辺機能の出力値を知ることができます。
● リセット時の動作
CPU がリセットされると , DDR9 レジスタの値はクリアされます。このため , 出力バッファはすべ
て "OFF"( 入力ポート ) となり , 端子はハイインピーダンスになります。
PDR9 レジスタは , リセットでは初期化されません。このため , 出力ポートとして使用する場合に
は PDR9 レジスタに出力データを書き込んでから , 対応する DDR9 レジスタに "1" を書き込んでく
ださい。
初期状態ではポート 9 は LCD コントローラ / ドライバ基準電源 (V0 ∼ V2) としての機能が有効に
なっています。汎用ポートとして使用する場合は , LCD 出力制御レジスタ (LOCR3) の対応する
ビットを "0" に設定してください。
228
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.12
MB90930 シリーズ
● ストップ , タイムベースタイマモード時の動作
ストップモードまたはタイムベースタイマモードに移行した時点で , 低消費電力モード制御レジ
スタの端子状態指定ビット (LPMCR の SPL) に "1" が書き込まれていると , 端子はハイインピーダ
ンスになります。これは , DDR9 レジスタの値に関係なく , 強制的に出力バッファが "OFF" となる
ためです。なお , 入力開放によるリークを防ぐため , 入力は固定してあります。
表 8.12-4 に , ポート 9 の端子状態を示します。
表 8.12-4 ポート 9 の端子状態
端子名
通常動作
スリープモード
ストップモード ,
タイムベースタイマモード
(SPL=0)
ストップモード ,
タイムベースタイマモード
(SPL=1)
P90/SEG22 ∼
P96/V2
汎用入出力ポート
汎用入出力ポート
汎用入出力ポート
入力遮断 / 出力 Hi-Z
SPL: 低消費電力モード制御レジスタの端子状態指定ビット (LPMCR の SPL)
Hi-Z: ハイインピーダンス
表 8.12-5 ポート 9 の端子出力優先順位
端子名
優先度 1
優先度 2
優先度 3
優先度 4
P90/SEG22
P91/SEG23
P92
P93
P94/V0
P95/V1
P96/V2
SEG22
SEG23
P92
P93
V0
V1
V2
P90
P91
P94
P95
P96
-
-
( 注意事項 ) 優先度 1 が最も優先度が高く , 優先度 4 が最も優先度が低くなります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
229
第 8 章 I/O ポート
8.13
8.13
MB90930 シリーズ
ポート C
ポート C は , 周辺機能入力兼用の汎用入出力ポートです。各端子は , 周辺機能とポートをビッ
ト単位で切り換えて使用できます。ここでは , 汎用入出力ポートとしての機能を中心に説明し
ます。ポート C の構成 , 端子 , 端子のブロックダイヤグラム , レジスタを示します。
■ ポート C の構成
ポート C は , 次の 3 つの要素から構成されます。
• 汎用入出力端子 / 外部割込み入力端子 (PC0/SIN0/INT4 ∼ PC7/PPG1/TIN1/IN6)
• ポート C データレジスタ (PDRC)
• ポート C 方向レジスタ (DDRC)
230
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.13
MB90930 シリーズ
■ ポート C の端子
ポート C 端子は , 周辺機能入出力端子と兼用になっています。周辺機能入出力端子として使用す
る場合には汎用入出力ポートとしては使用できません。表 8.13-1 にポート C の端子を示します。
表 8.13-1 ポート C の端子
ポート名 端子名
ポート機能
PC0/
SIN0/
INT4
PC0
SIN0
PC1/
SOT0/
INT5/
IN3
PC1
SOT0
PC2/
SCK0/
INT6/
IN2
PC2
PC3/
SIN1/
ポート C INT7
PC6/
PPG0/
TOT1/
IN7
PC7/
PPG1/
TIN1/
IN6
入力
INT4
IN3
SCK0
汎用
入出力
IN2
SOT1
PC5
SCK1
外部割
込み
INT7
PPG0
PPG1
CMOS/
CMOS ヒステリ
シス /Automotive
レベル *
J
CMOS ヒステリ
シス /Automotive
レベル *
I
CMOS/
CMOS ヒステリ
シス /Automotive CMOS
レベル *
J
CMOS ヒステリ
シス /Automotive
レベル *
I
TRG
IN7
PPG
PC7
回路形式
INT6
SIN1
PC4
PC6
UART
出力
INT5
ICU
PC3
PC4/
SOT1
PC5/
SCK1/
TRG
入出力形式
周辺機能
TOT1
RLT
ICU
IN6
TIN1
: 初期状態で有効となる機能
*: Automotive レベルは , 入力電圧の規格です。規格値はデータシート「■ 電気的特性 3. 直流規格」を参照してく
ださい。
SIN0, SIN1 端子は CMOS 0.7Vcc/0.3Vcc も選択できます。
回路形式については「1.7 入出力回路形式」を参照してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
231
第 8 章 I/O ポート
8.13
MB90930 シリーズ
■ ポート C の端子のブロックダイヤグラム
図 8.13-1 に , ポート C の端子のブロックダイヤグラムを示します。
図 8.13-1 ポート C の端子のブロックダイヤグラム
周辺機能入力
周辺機能出力
周辺機能出力許可
PDR(ポートデータレジスタ)
P-ch
PDRリード
内部データバ ス
出力ラッチ
PDRライト
端子
DDR(ポート方向レジスタ)
N-ch
方向ラッチ
DDRライト
DDRリード
スタンバイ制御(SPL=1)
■ ポート C のレジスタ
ポート C のレジスタには , PDRC および DDRC があります。各レジスタを構成するビットは , ポー
ト C の端子に 1 対 1 で対応しています。
表 8.13-2 にポート C のレジスタと端子の対応を示します。
表 8.13-2 ポート C のレジスタと端子の対応
ポート名
ポート C
232
関連するレジスタのビットと対応する端子
PDRC, DDRC
対応する端子
bit7
PC7
bit6
PC6
bit5
PC5
FUJITSU MICROELECTRONICS LIMITED
bit4
PC4
bit3
PC3
bit2
PC2
bit1
PC1
CM44-10150-1
bit0
PC0
第 8 章 I/O ポート
8.13
MB90930 シリーズ
8.13.1
ポート C のレジスタ (PDRC, DDRC)
ポート C のレジスタについて説明します。
■ ポート C のレジスタの機能
● ポート C データレジスタ (PDRC)
PDRC レジスタは , 端子の状態を示します。
● ポート C 方向レジスタ (DDRC)
DDRC レジスタは , ビットごとの端子の入出力方向を設定します。ポート ( 端子 ) に対応するビッ
トに "1" を書き込むと出力ポートになり , "0" を書き込むと入力ポートになります。
<注意事項>
• 出力端子を持つ周辺機能を使用する場合に端子に対応する各周辺機能の出力許可ビットが許可さ
れている場合は , DDRC レジスタの設定値に関係なく , 周辺機能出力端子となります。
• 入力端子を持つ周辺機能を使用する場合に各周辺機能の入力端子に対応する DDRC レジスタの
ビットに "0" を書き込んで入力ポートとしてください。
表 8.13-3 ポート C のレジスタの機能
レジスタ名
データ
書込み時
0
出力ラッチに "0" を設定
端子状態が "L" レ
し , 出力ポート時は端子
ベル
に "L" レベルを出力する
1
出力ラッチに "1" を設定
端子状態が "H" レ
し , 出力ポート時は端子
ベル
に "H" レベルを出力する
0
方向ラッチが "0"
出力バッファを "OFF" にし
て入力ポートにする
方向ラッチが "1"
出力バッファを "ON" にし
て出力ポートにする
ポート C データレジス
タ (PDRC)
ポート C 方向レジスタ
(DDRC)
読出し時
1
R/W
アドレス
初期値
R/W
00000CH
XXXXXXXXB
R/W
00001CH
00000000B
R/W: リード / ライト可能
X:
不定値
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
233
第 8 章 I/O ポート
8.13
MB90930 シリーズ
ポート C の動作説明
8.13.2
ポート C の動作を説明します。
■ ポート C の動作
● 出力ポート時の動作
対応する DDRC レジスタのビットを "1" にすると出力ポートになります。
出力ポート時に PDRC レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持され ,
そのまま端子に出力されます。
PDRC レジスタを読み出すと , 端子の値 (PDR 内の出力ラッチと同じ値 ) が読み出せます。
<注意事項>
ポートデータレジスタでリードモディファイライト (RMW) 系命令 ( ビットセット命令など ) を使用
すると , 目的とするビットは指定した値となり , DDR レジスタで出力に設定されているビットは影響
を受けませんが , DDR レジスタで入力に設定されているビットは , 端子の入力値が出力ラッチに書き
込まれ , 出力してしまいます。したがって , 入力として使用していたビットを出力に切り換える場合
は , PDR レジスタに出力データを書き込んでから DDR レジスタを出力にセットしてください。
● 入力ポート時の動作
対応する DDRC レジスタのビットに "0" を書き込むと入力ポートになります。
入力ポート時は出力バッファが "OFF" となり , 端子はハイインピーダンスになります。
PDRC レジスタにデータを書き込むと , PDR 内の出力ラッチにデータが保持されますが , 端子には
出力されません。
PDRC レジスタを読み出すと , 端子のレベル値 ("L" または "H") を読み出せます。
● 周辺機能出力時の動作
周辺機能出力として使用する場合は , 周辺機能の出力許可ビットで設定を行います。入出力の切
換えは周辺機能の出力許可ビットが優先されるので , DDRC レジスタに "0" が書き込まれている
ビットでも , 各周辺機能の出力が許可されていれば周辺機能出力になります。周辺機能の出力を
許可したときでも端子の値の読出しは可能なため , 周辺機能の出力値を知ることができます。
● 周辺機能入力時の動作
周辺機能入力と兼用のポートでは , 周辺機能の入力には , 常に端子の値が入力されています。外部
からの信号を周辺機能で使用するときは , DDRC レジスタに "0" を書き込んで , 入力ポートとして
ください。
234
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.13
MB90930 シリーズ
● リセット時の動作
CPU がリセットされると , DDRC レジスタの値はクリアされます。このため , 出力バッファはす
べて "OFF"( 入力ポート ) となるため , 端子はハイインピーダンスになります。
PDRC レジスタは , リセットでは初期化されません。このため , 出力ポートとして使用する場合に
は PDRC レジスタに出力データを書き込んでから , 対応する DDRC レジスタに "1" を書き込んで
ください。
● ストップ , タイムベースタイマモード時の動作
ストップモードまたはタイムベースタイマモードに移行した時点で , 低消費電力モード制御レジ
スタの端子状態指定ビット (LPMCR の SPL) に "1" が書き込まれていると , 端子はハイインピーダ
ンスになります。これは , DDRC レジスタの値に関係なく , 強制的に出力バッファが "OFF" となる
ためです。なお , 入力開放によるリークを防ぐため , 入力は固定してあります。
表 8.13-4 に , ポート C の端子状態を示します。
表 8.13-4 ポート C の端子状態
端子名
通常動作
スリープモード
ストップモード ,
タイムベースタイマモード
(SPL=0)
ストップモード ,
タイムベースタイマモード
(SPL=1)
PC0/SIN0/INT4 ∼
PC7/PPG1/TIN1/IN6
汎用入出力ポート
汎用入出力ポート
汎用入出力ポート
入力遮断 / 出力 Hi-Z
SPL: 低消費電力モード制御レジスタの端子状態指定ビット (LPMCR の SPL)
Hi-Z: ハイインピーダンス
<注意事項>
ストップモードまたはタイムベースタイマモード時に, 周辺機能とポートを兼用している端子をハイ
インピーダンスに設定する場合は , 周辺機能の出力を禁止に設定した後 , 低消費電力モード制御レジ
スタ (LPMCR) の STP ビットを "1" または TMD ビットを "0" に設定してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
235
第 8 章 I/O ポート
8.13
MB90930 シリーズ
表 8.13-5 ポート C の端子出力優先順位
端子名
優先度 1
優先度 2
優先度 3
優先度 4
PC0/SIN0/INT4
PC1/SOT0/INT5/IN3
PC2/SCK0/INT6/IN2
PC3/SIN1/INT7
PC4/SOT1
PC5/SCK1/TRG
PC6/PPG0/TOT1/IN7
PC7/PPG1/TIN1/IN6
PC0
SOT0
SCK0
PC3
SOT1
SCK1
PPG0
PPG1
PC1
PC2
PC4
PC5
TOT1
PC7
PC6
-
-
( 注意事項 ) 優先度 1 が最も優先度が高く , 優先度 4 が最も優先度が低くなります。
236
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.14
MB90930 シリーズ
8.14
ポート D
ポート D は , 周辺機能入出力兼用の汎用入出力ポートです。各端子は , 周辺機能とポートを
ビット単位で切り換えて使用できます。ここでは , 汎用入出力ポートとしての機能を中心に説
明します。ポート D の構成 , 端子 , 端子のブロックダイヤグラム , レジスタを示します。
■ ポート D の構成
ポート D は , 次の 3 つの要素から構成されます。
• 汎用入出力端子 / 周辺機能入出力端子 (PD0/SIN2 ∼ PD6/TOT2)
• ポート D データレジスタ (PDRD)
• ポート D 方向レジスタ (DDRD)
■ ポート D の端子
ポート D の入出力端子は , 周辺機能入出力端子と兼用になっています。周辺機能入出力端子とし
て使用する場合には汎用入出力ポートとしては使用できません。表 8.14-1 にポート D の端子を示
します。
表 8.14-1 ポート D の端子
ポート名
端子名
PD0/
SIN2
PD1/
SOT2
PD2/
SCK2
ポート D
PD3/
SIN3
PD4/
SOT3
PD5/
SCK3
PD6/
TOT2
ポート機能
周辺機能
PD0
SIN2
PD1
SOT2
PD2
SCK2
PD3
SIN3
PD4
SOT3
PD5
SCK3
PD6
TOT2
入力
回路
形式
出力
CMOS/
CMOS ヒステリシ
ス /Automotive レベ
ル*
J
I
CMOS ヒステリシ
ス /Automotive レベ
ル*
UART
汎用入出力
入出力形式
CMOS/
CMOS ヒステリシ
ス /Automotive レベ
ル*
F
CMOS
J
I
CMOS ヒステリシ
ス /Automotive レベ
ル*
F
I
: 初期状態で有効となる機能
*: Automotive レベルは , 入力電圧の規格です。規格値はデータシート「■ 電気的特性 3. 直流規格」を参照してく
ださい。
SIN2, SIN3 端子は CMOS 0.7Vcc/0.3Vcc も選択できます。
回路形式については「1.7 入出力回路形式」を参照してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
237
第 8 章 I/O ポート
8.14
MB90930 シリーズ
■ ポート D の端子のブロックダイヤグラム
図 8.14-1 に , ポート D の端子のブロックダイヤグラムを示します。
図 8.14-1 ポート D の端子のブロックダイヤグラム
周辺機能入力
周辺機能出力
周辺機能出力許可
PDR(ポートデータレジスタ)
P-ch
PDRリード
内部データバス
出力ラッチ
PDRライト
端子
DDR(ポート方向レジスタ)
N-ch
方向ラッチ
DDRライト
DDRリード
スタンバイ制御(SPL=1)
■ ポート D のレジスタ
ポート D のレジスタには , PDRD および DDRD があります。各レジスタを構成するビットは , ポー
ト D の端子に 1 対 1 で対応しています。
表 8.14-2 にポート D のレジスタと端子の対応を示します。
表 8.14-2 ポート D のレジスタと端子の対応
ポート名
ポート D
238
関連するレジスタのビットと対応する端子
PDRD, DDRD
対応する端子
bit7
-
bit6
PD6
bit5
PD5
FUJITSU MICROELECTRONICS LIMITED
bit4
PD4
bit3
PD3
bit2
PD2
bit1
PD1
CM44-10150-1
bit0
PD0
第 8 章 I/O ポート
8.14
MB90930 シリーズ
8.14.1
ポート D のレジスタ (PDRD, DDRD)
ポート D のレジスタについて説明します。
■ ポート D のレジスタの機能
● ポート D データレジスタ (PDRD)
PDRD レジスタは , 端子の状態を示します。
● ポート D 方向レジスタ (DDRD)
DDRD レジスタは , ビットごとの端子の入出力方向を設定します。ポート ( 端子 ) に対応するビッ
トに "1" を書き込むと出力ポートになり , "0" を書き込むと入力ポートになります。
<注意事項>
出力端子を持つ周辺機能を使用する場合に端子に対応する各周辺機能の出力許可ビットが許可され
ている場合は , DDRD レジスタの設定値に関係なく , 周辺機能出力端子となります。
表 8.14-3 ポート D のレジスタの機能
レジスタ名
データ
0
端子状態が "L" レ
ベル
1
端子状態が "H" レ
ベル
0
方向ラッチが "0"
ポート D データレジス
タ (PDRD)
ポート D 方向レジスタ
(DDRD)
読出し時
1
方向ラッチが "1"
書込み時
出力ラッチに "0" を設定し ,
出力ポート時は端子に "L"
レベルを出力する
R/W
R/W
出力ラッチに "1" を設定し ,
出力ポート時は端子に "H"
レベルを出力する
出力バッファを "OFF" にし
て入力ポートにする
R/W
出力バッファを "ON" にして
出力ポートにする
アドレス
初期値
00000DH
-XXXXXXXB
00001DH
-0000000B
R/W: リード / ライト可能
X:
不定値
-:
未定義
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
239
第 8 章 I/O ポート
8.14
MB90930 シリーズ
ポート D の動作説明
8.14.2
ポート D の動作を説明します。
■ ポート D の動作
● 出力ポート時の動作
対応する DDRD レジスタのビットに "1" を書き込むと出力ポートになります。
出力ポート時に PDRD レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持され ,
そのまま端子に出力されます。
PDRD レジスタを読み出すと , 端子の値 (PDR 内の出力ラッチと同じ値 ) を読み出せます。
<注意事項>
ポートデータレジスタでリードモディファイライト (RMW) 系命令 ( ビットセット命令など ) を使用
すると , 目的とするビットは指定した値となり , DDR レジスタで出力に設定されているビットは影響
を受けませんが , DDR レジスタで入力に設定されているビットは , 端子の入力値が出力ラッチに書き
込まれ , 出力してしまいます。したがって , 入力として使用していたビットを出力に切り換える場合
は , PDR レジスタに出力データを書き込んでから DDR レジスタを出力にセットしてください。
● 入力ポート時の動作
対応する DDRD レジスタのビットに "0" を書き込むと入力ポートになります。
入力ポート時は出力バッファが "OFF" となり , 端子はハイインピーダンスになります。
PDRD レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持されますが , 端子には
出力されません。
PDRD レジスタを読み出すと , 端子のレベル値 ("L" または "H") が読み出せます。
● 周辺機能出力時の動作
周辺機能出力として使用する場合は , 周辺機能の出力許可ビットで設定を行います。入出力の切
換えは周辺機能の出力許可ビットが優先されるので , DDRD レジスタに "0" が書き込まれている
ビットでも , 各周辺機能の出力が許可されていると周辺機能出力になります。周辺機能の出力を
許可したときでも端子の値を読み出せるので , 周辺機能の出力値を知ることができます。
● リセット時の動作
CPU がリセットされると , DDRD レジスタの値はクリアされます。このため , 出力バッファはす
べて "OFF"( 入力ポート ) となり , 端子はハイインピーダンスになります。
PDRD レジスタは , リセットでは初期化されません。このため , 出力ポートとして使用する場合に
は PDRD レジスタに出力データを書き込んでから , 対応する DDRD レジスタに "1" を書き込んで
ください。
● ストップ , タイムベースタイマモード時の動作
ストップモードまたはタイムベースタイマモードに移行した時点で , 低消費電力モード制御レジ
スタの端子状態指定ビット (LPMCR の SPL) に "1" が書き込まれていると , 端子はハイインピーダ
ンスになります。これは , DDRD レジスタの値に関係なく , 強制的に出力バッファが "OFF" とな
るためです。なお , 入力開放によるリークを防ぐため , 入力は固定してあります。
240
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.14
MB90930 シリーズ
表 8.14-4 に , ポート D の端子状態を示します。
表 8.14-4 ポート D の端子状態
端子名
通常動作
スリープモード
ストップモード ,
タイムベースタイマモード
(SPL=0)
ストップモード ,
タイムベースタイマモード
(SPL=1)
PD0/SIN2 ∼
PD6/TOT2
汎用入出力ポート
汎用入出力ポート
汎用入出力ポート
入力遮断 / 出力 Hi-Z
SPL: 低消費電力モード制御レジスタの端子状態指定ビット (LPMCR の SPL)
Hi-Z: ハイインピーダンス
表 8.14-5 ポート D の端子出力優先順位
端子名
優先度 1
優先度 2
優先度 3
優先度 4
PD0/SIN2
PD1/SOT2
PD2/SCK2
PD3/SIN3
PD0
SOT2
SCK2
PD3
PD1
PD2
-
-
-
PD4/SOT3
PD5/SCK3
PD6/TOT2
SOT3
SCK3
TOT2
PD4
PD5
PD6
-
-
( 注意事項 ) 優先度 1 が最も優先度が高く , 優先度 4 が最も優先度が低くなります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
241
第 8 章 I/O ポート
8.15
8.15
MB90930 シリーズ
ポート E
ポート E は , 周辺機能入出力兼用の汎用入出力ポートです。各端子は , 周辺機能とポートを
ビット単位で切り換えて使用できます。ここでは , 汎用入出力ポートとしての機能を中心に説
明します。ポート E の構成 , 端子 , 端子のブロックダイヤグラム , レジスタを示します。
■ ポート E の構成
ポート E は , 次の 3 つの要素から構成されます。
• 汎用入出力端子 / 周辺機能入出力端子 (PE0/TOT3 ∼ PE2/SGO1)
• ポート E データレジスタ (PDRE)
• ポート E 方向レジスタ (DDRE)
■ ポート E の端子
ポート E の入出力端子は , 周辺機能入出力端子と兼用になっています。周辺機能入出力端子とし
て使用する場合には汎用入出力ポートとしては使用できません。表 8.15-1 にポート E の端子を示
します。
表 8.15-1 ポート E の端子
ポート名
ポート E
端子名
PE0/
TOT3/
IN7R
PE1/
TIN3/
IN6R
PE2/
SGO1/
IN3R
ポート機能
TOT3
PE0
入出力形式
周辺機能
入力
汎用入出力
PE2
TIN3
SGO1
回路形式
IN7R
RLT
PE1
出力
IN6R
SG
ICU
CMOS ヒステ
リシス /
Automotive レ
ベル *
CMOS
I
IN3R
: 初期状態で有効となる機能
*: Automotive レベルは , 入力電圧の規格です。規格値はデータシート「■ 電気的特性 3. 直流規格」を参照してく
ださい。
回路形式については「1.7 入出力回路形式」を参照してください。
242
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.15
MB90930 シリーズ
■ ポート E の端子のブロックダイヤグラム
図 8.15-1 に , ポート E の端子のブロックダイヤグラムを示します。
図 8.15-1 ポート E の端子のブロックダイヤグラム
周辺機能入力
周辺機能出力
周辺機能出力許可
PDR(ポートデータレジスタ)
P-ch
PDRリード
内部データバ ス
出力ラッチ
PDRライト
端子
DDR(ポート方向レジスタ)
N-ch
方向ラッチ
DDRライト
DDRリード
スタンバイ制御(SPL=1)
<注意事項>
周辺機能の出力許可ビットを許可すると , DDRE レジスタの値にかかわらず強制的に周辺機能の出力
端子となります。
■ ポート E のレジスタ
ポート E のレジスタには , PDRE および DDRE があります。各レジスタを構成するビットは , ポー
ト E の端子に 1 対 1 で対応しています。表 8.15-2 にポート E のレジスタと端子の対応を示します。
表 8.15-2 ポート E のレジスタと端子の対応
ポート名
ポート E
CM44-10150-1
関連するレジスタのビットと対応する端子
PDRE, DDRE
対応する端子
bit7
-
bit6
-
bit5
-
FUJITSU MICROELECTRONICS LIMITED
bit4
-
bit3
-
bit2
PE2
bit1
PE1
243
bit0
PE0
第 8 章 I/O ポート
8.15
MB90930 シリーズ
ポート E のレジスタ (PDRE, DDRE)
8.15.1
ポート E のレジスタについて説明します。
■ ポート E のレジスタの機能
● ポート E データレジスタ (PDRE)
PDRE レジスタは , 端子の状態を示します。
● ポート E 方向レジスタ (DDRE)
DDRE レジスタは , ビットごとの端子の入出力方向を設定します。ポート ( 端子 ) に対応するビッ
トに "1" を書き込むと出力ポートになり , "0" を書き込むと入力ポートになります。
<注意事項>
出力端子を持つ周辺機能を使用する場合に端子に対応する各周辺機能の出力許可ビットが許可され
ている場合は , DDRE レジスタの設定値に関係なく , 周辺機能出力端子となります。
表 8.15-3 ポート E のレジスタの機能
レジスタ名
データ
読出し時
書込み時
0
端子状態が "L" レ
ベル
出力ラッチに "0" を設定し ,
出力ポート時は端子に "L"
レベルを出力する
1
端子状態が "H" レ
ベル
0
方向ラッチが "0"
ポート E データレジス
タ (PDRE)
ポート E 方向レジスタ
(DDRE)
1
方向ラッチが "1"
出力ラッチに "1" を設定し ,
出力ポート時は端子に "H"
レベルを出力する
出力バッファを "OFF" し ,
入力ポートにする
出力バッファを "ON" し , 出
力ポートにする
R/W
アドレス
R/W
00000EH
-----XXXB
R/W
00001EH
-----000B
初期値
R/W: リード / ライト可能
X:
不定値
-:
未定義
244
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
8.15.2
ポート E の動作説明
第 8 章 I/O ポート
8.15
ポート E の動作を説明します。
■ ポート E の動作
● 出力ポート時の動作
対応する DDRE レジスタのビットに "1" を書き込むと出力ポートになります。
出力ポート時に PDRE レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持され ,
そのまま端子に出力されます。
PDRE レジスタを読み出すと , 端子の値 (PDR 内の出力ラッチと同じ値 ) を読み出せます。
<注意事項>
ポートデータレジスタでリードモディファイライト (RMW) 系命令 ( ビットセット命令など ) を使用
すると , 目的とするビットは指定した値となり , DDR レジスタで出力に設定されているビットは影響
を受けませんが , DDR レジスタで入力に設定されているビットは , 端子の入力値が出力ラッチに書き
込まれ , 出力してしまいます。したがって , 入力として使用していたビットを出力に切り換える場合
は , PDR レジスタに出力データを書き込んでから DDR レジスタを出力にセットしてください。
● 入力ポート時の動作
対応する DDRE レジスタのビットに "0" を書き込むと入力ポートになります。
入力ポート時は出力バッファが "OFF" となり , 端子はハイインピーダンスになります。
PDRE レジスタにデータを書き込むと PDR 内の出力ラッチにデータが保持されますが , 端子には出
力されません。
PDRE レジスタを読み出すと , 端子のレベル ("L" または "H") を読み出せます。
● 周辺機能出力時の動作
周辺機能出力として使用する場合は , 周辺機能の出力許可ビットで設定を行います。入出力の切
換えは周辺機能の出力許可ビットが優先されるので , DDRE レジスタに "0" が書き込まれている
ビットでも , 各周辺機能の出力が許可されていれば周辺機能出力になります。周辺機能の出力を
許可したときでも端子の値を読み出せるので , 周辺機能の出力値を知ることができます。
● リセット時の動作
CPU がリセットされると , DDRE レジスタの値はクリアされます。このため , 出力バッファはすべ
て "OFF"( 入力ポート ) となり , 端子はハイインピーダンスになります。
PDRE レジスタは , リセットでは初期化されません。このため , 出力ポートとして使用する場合 ,
PDRE レジスタに出力データを書き込んでから , 対応する DDRE レジスタに "1" を書き込んでくだ
さい。
● ストップ , タイムベースタイマモード時の動作
ストップモードまたはタイムベースタイマモードに移行した時点で , 低消費電力モード制御レジ
スタの端子状態指定ビット (LPMCR の SPL) に "1" が書き込まれていると , 端子はハイインピーダ
ンスになります。これは , DDRE レジスタの値に関係なく , 強制的に出力バッファが "OFF" となる
ためです。なお , 入力開放によるリークを防ぐため , 入力は固定してあります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
245
第 8 章 I/O ポート
8.15
MB90930 シリーズ
表 8.15-4 に , ポート E の端子状態を示します。
表 8.15-4 ポート E の端子状態
端子名
通常動作
スリープモード
ストップモード ,
タイムベースタイマモード
(SPL=0)
ストップモード ,
タイムベースタイマモード
(SPL=1)
PE0/TOT3/IN7R ∼
PE2/SGO1/IN3R
汎用入出力ポート
汎用入出力ポート
汎用入出力ポート
入力遮断 / 出力 Hi-Z
SPL: 低消費電力モード制御レジスタの端子状態指定ビット (LPMCR の SPL)
Hi-Z: ハイインピーダンス
表 8.15-5 ポート E の端子出力優先順位
端子名
優先度 1
優先度 2
優先度 3
優先度 4
PE0/TOT3/IN7R
PE1/TIN3/IN6R
PE2/SGO1/IN3R
TOT3
PE1
SGO1
PE0
PE2
-
-
( 注意事項 ) 優先度 1 が最も優先度が高く , 優先度 4 が最も優先度が低くなります。
246
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 8 章 I/O ポート
8.16
MB90930 シリーズ
8.16
入力レベル選択レジスタ (PIL0 ∼ PIL2)
入力レベル選択レジスタにより Automotive 入力レベル (VIH/VIL=0.8VCC/0.5VCC) から CMOS
ヒステリシス入力レベル (VIH/VIL=0.8VCC/0.2VCC) に設定を変更することができます。また ,
シリアル入力端子 (SIN) は CMOS 入力レベル (VIH/VIL=0.7VCC/0.3VCC) も選択することがで
きます。
■ 入力レベル選択レジスタ 0(PIL0)
7
6
5
4
3
2
1
0
予約
ILP6
ILP5
ILP4
ILP3
ILP2
ILP1
ILP0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
アドレス bit
PIL0
00008CH
初期値
R/W: リード / ライト可能
● bit7: 予約ビット
予約ビットです。必ず "0" を書き込んでください。
● bit6 ∼ bit0:ILP6 ∼ ILP0
これらのビットは , 対応するポートの入力レベルを選択するビットです。
ILP6 ∼ ILP0 は , ポート 6 ∼ポート 0 にそれぞれ対応しています。
"0" に設定した場合 : Automotive 入力レベルになります。
"1" に設定した場合 : CMOS ヒステリシス入力レベル (VIH/VIL=0.8VCC/0.2VCC) になります。
■ 入力レベル選択レジスタ 1(PIL1)
アドレス bit
PIL1
00008DH
初期値
15
14
13
12
11
10
9
8
-
-
-
予約
ILSIN1
ILSIN0
ILP9
予約
-
-
-
R/W
R/W
R/W
R/W
R/W
X
X
X
0
0
0
0
0
R/W: リード / ライト可能
-:
未定義
X:
不定値
● bit15 ∼ bit13: 未定義ビット
未定義ビットです。書込みは動作に影響しません。読出し値は不定です。
● bit12: 予約ビット
予約ビットです。必ず "0" を書き込んでください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
247
第 8 章 I/O ポート
8.16
MB90930 シリーズ
● bit11:ILSIN1
UART1 のシリアル入力端子 (SIN1) の入力レベルを選択するビットです。
"0" に設定した場合 : PIL0 レジスタで設定したレベルになります。
"1" に設定した場合 : CMOS 入力レベル (0.7VCC/0.3VCC) になります。
● bit10:ILSIN0
UART0 のシリアル入力端子 (SIN0) の入力レベルを選択するビットです。
"0" に設定した場合 : PIL0 レジスタで設定したレベルになります。
"1" に設定した場合 : CMOS 入力レベル (0.7VCC/0.3VCC) になります。
● bit9:ILP9
ポート 9 の入力レベルを選択するビットです。
"0" に設定した場合 : Automotive 入力レベルになります。
"1" に設定した場合 : CMOS ヒステリシス入力レベル (VIH/VIL=0.8VCC/0.2VCC) になります。
● bit8: 予約ビット
予約ビットです。必ず "0" を書き込んでください。
■ 入力レベル選択レジスタ 2(PIL2)
PIL2
アドレス bit
7
6
5
4
3
2
1
0
00008EH
-
-
-
ILSIN3
ILSIN2
ILPE
ILPD
ILPC
-
-
-
R/W
R/W
R/W
R/W
R/W
X
X
X
0
0
0
0
0
初期値
R/W: リード / ライト可能
-:
未定義
X:
不定
● bit7 ∼ bit5: 未定義ビット
未定義ビットです。書込みは動作に影響しません。読出し値は不定です。
● bit4:ILSIN3
UART3 のシリアル入力端子 (SIN3) の入力レベルを選択するビットです。
"0" に設定した場合 : PIL2 レジスタで設定したレベルになります。
"1" に設定した場合 : CMOS 入力レベル (0.7VCC/0.3VCC) になります。
● bit3:ILSIN2
UART2 のシリアル入力端子 (SIN2) の入力レベルを選択するビットです。
"0" に設定した場合 : PIL2 レジスタで設定したレベルになります。
"1" に設定した場合 : CMOS 入力レベル (0.7VCC/0.3VCC) になります。
● bit2 ∼ bit0:ILPE ∼ ILPC
これらのビットは , 対応するポートの入力レベルを選択するビットです。
ILPE ∼ ILPC は , ポート E ∼ポート C にそれぞれ対応しています。
248
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 8 章 I/O ポート
8.16
"0" に設定した場合 : Automotive 入力レベルになります。
"1" に設定した場合 : CMOS ヒステリシス入力レベル (VIH/VIL=0.8VCC/0.2VCC) になります。
<注意事項>
入力レベル選択レジスタの設定を変更した直後には該当する入力端子のスレッショルドが変化しま
す。このため , 入力レベル選択レジスタの設定を変更後 , 2 マシンサイクル経過するまでは , 該当端
子からの読出し値を使用しないでください。
入力レベル選択レジスタの設定を変更する場合は, 必ず対応するリソースをディセーブルにしてから
行ってください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
249
第 8 章 I/O ポート
8.17
8.17
MB90930 シリーズ
I/O ポートのプログラム例
I/O ポートを使ったプログラム例を示します。
■ I/O ポートのプログラム例
● 処理仕様
ポート 0, 1 で , 7 セグメント (Dp を含めると 8 セグメント )LED をすべて点灯します。
P10 端子が LED のアノードコモン端子に , P00 ∼ P07 端子がセグメント端子に対応します。
図 8.17-1 に , 8 セグメント LED 接続例を示します。
図 8.17-1 8 セグメント LED 接続例
MB90930シリーズ
[ コーディング例 ]
PDR0
EQU
000000H
PDR1
EQU
000001H
DDR0
EQU
000010H
DDR1
EQU
000011H
;--------- メインプログラム --------------------------------------------------------CODE
CSEG
START:
; 初期設定済み
MOV
I:PDR1, #00000000B
; P10 を "L" レベルに設定
MOV
I:DDR1, #11111111B
; ポート 1 を全ビット出力に設定
MOV
I:PDR0, #11111111B
; ポート 0 は全ビット "1" とする
MOV
I:DDR0, #11111111B
; ポート 0 を全ビット出力に設定
CODE
ENDS
;-----------------------------------------------------------------------------END
START
250
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第9章
ウォッチドッグタイマ /
タイムベースタイマ /
時計タイマ
( サブクロック用 )
ウォッチドッグタイマ / タイムベースタイマ / 時計
タイマ ( サブクロック用 ) の機能と動作について説
明します。
9.1 ウォッチドッグタイマ / タイムベースタイマ /
時計タイマの概要
9.2 ウォッチドッグタイマ / タイムベースタイマ /
時計タイマのブロックダイヤグラム
9.3 ウォッチドッグタイマ / タイムベースタイマ /
時計タイマのレジスタ一覧
9.4 ウォッチドッグタイマ / タイムベースタイマ /
時計タイマの動作
9.5 ウォッチドッグタイマ / タイムベースタイマ使用上の
注意
9.6 ウォッチドッグタイマ / タイムベースタイマの
プログラム例
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
251
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.1
9.1
MB90930 シリーズ
ウォッチドッグタイマ / タイムベースタイマ /
時計タイマの概要
ウォッチドッグタイマ , タイムベースタイマ , 時計タイマの回路構成は , それぞれ以
下のとおりです。
• ウォッチドッグタイマ : ウォッチドッグカウンタ , コントロールレジスタ , ウォッチドッグリセット回路
• タイムベースタイマ : 18 ビットのタイマ , インターバルな割込みを制御する回路
• 時計タイマ
: 15 ビットのタイマ , インターバルな割込みを制御する回路
■ ウォッチドッグタイマ機能
ウォッチドッグタイマは , 18 ビットのタイムベースタイマまたは 15 ビットの時計タイ
マの桁上り信号をクロックソースとする 2 ビットのウォッチドッグカウンタ , コント
ロールレジスタ , ウォッチドッグリセット制御部から構成されています。起動後 , 一定
時間内にクリアされないと CPU をリセットします。
■ タイムベースタイマ機能
タイムベースタイマは , メインクロック ( 発振クロックの 2 分周 ) に同期してカウント
アップする 18 ビットのフリーランカウンタ ( タイムベースカウンタ ) で , 4 種類のイン
ターバル時間を選択できるインターバルタイマ機能があります。また , 発振安定待ち時
間のタイマ出力やウォッチドッグタイマなどの動作クロックを供給する機能もありま
す。なお , タイムベースタイマは , CKSCR 中の MCS ビットおよび SCS ビットとは関
係なく , メインクロックを使用します。
■ 時計タイマ機能
時計タイマは , ウォッチドッグタイマのクロックソース , サブクロックの発振安定待ち
時間のためのタイマ , 一定周期で割込みを発生するインターバルタイマの機能があり
ます。
なお , 時計タイマは , CKSCR 中の MCS ビットおよび SCS ビットとは関係なく , サブク
ロックを使用します。
252
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.2
MB90930 シリーズ
9.2
ウォッチドッグタイマ / タイムベースタイマ /
時計タイマのブロックダイヤグラム
ウォッチドッグタイマ / タイムベースタイマ / 時計タイマのブロックダイヤグラムを
示します。
■ ウォッチドッグタイマ / タイムベースタイマ / 時計タイマのブロックダイヤグラム
図 9.2-1 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマのブロックダイヤグラム
メインクロック
TBTC
TBC1
セレクタ
TBC0
211
213
215
218
TBTRES
クロック入力
タイムベースタイマ
211
213
215
218
TBR
TBIE
AND
Q
S
R
TBOF
タイムベース
割込み
WDTC
WT1
セレクタ
WT0
ウォッチドッグ
リセット
CLR 発生回路
2ビットカウンタ
OF
CLR
WTC
WDCS
AND
SCE
Q
SCM
パワーオンリセット,
サブクロック停止
S
R
WTC2
~
F2MC-16LXバス
WTE
WDGRST
内部リセット
発生回路へ
セレクタ
WTC0
WTR
WTIE
WTOF
AND
Q
S
R
28
29
210
211
212
213
214
215
WTRES
210
213
214
215
時計タイマ
クロック入力
サブクロック
時計
割込み
WDTC
パワーオン発生から
PONR
WRST
ERST
RST端子
SRST
LPMCRレジスタの
RSTビットから
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
253
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.3
MB90930 シリーズ
ウォッチドッグタイマ / タイムベースタイマ /
時計タイマのレジスタ一覧
9.3
ウォッチドッグタイマ / タイムベースタイマ / 時計タイマのレジスタ一覧について説
明します。
■ ウォッチドッグタイマ / タイムベースタイマ / 時計タイマのレジスタ一覧
図 9.3-1 にウォッチドッグタイマ / タイムベースタイマ / 時計タイマのレジスタ一覧を
示します。
図 9.3-1 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマのレジスタ一覧
ウォッチドッグ制御レジスタ
アドレス : 0000A8H
bit7
bit6
PONR
−
R
−
(X)
(-)
初期値→
タイムベースタイマ制御レジスタ
R/W:
R:
W:
X:
−:
254
WRST ERST
bit3
bit2
bit1
bit0
SRST
WTE
WT1
WT0
R
(X)
R
(X)
R
(X)
W
(1)
W
(1)
W
(1)
bit14
bit13
bit12
bit11
bit10
bit9
bit8
予約
−
−
TBIE
TBOF
TBR
TBC1
TBC0
−
(1)
−
(-)
−
(-)
R/W
(0)
R/W
(0)
W
(1)
R/W
(0)
R/W
(0)
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
WDCS
SCE
WTIE
WTOF
WTR
R/W
(1)
R
(0)
R/W
(0)
R/W
(0)
W
(1)
初期値→
時計タイマ制御レジスタ
初期値→
bit4
bit15
アドレス : 0000A9H
アドレス : 0000AAH
bit5
WTC2 WTC1 WTC0
R/W
(0)
R/W
(0)
WDTC
TBTC
WTC
R/W
(0)
リード / ライト可能
リードオンリ
ライトオンリ
不定値
未定義
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.3
MB90930 シリーズ
9.3.1
ウォッチドッグタイマ制御レジスタ (WDTC)
ウォッチドッグタイマ制御レジスタ (WDTC) は , ウォッチドッグタイマ起動 , クリア
およびリセット要因の表示を行うレジスタです。
■ ウォッチドッグタイマ制御レジスタ (WDTC) のビット構成
図 9.3-2 にウォッチドッグタイマ制御レジスタ (WDTC) のビット構成を示します。
図 9.3-2 ウォッチドッグタイマ制御レジスタ (WDTC) のビット構成
アドレス : 0000A8H
初期値→
R:
W:
−:
bit7
bit6
PONR
−
R
(X)
−
(-)
bit5
bit4
WRST ERST
R
(X)
R
(X)
bit3
bit2
bit1
bit0
SRST
WTE
WT1
WT0
R
(X)
W
(1)
W
(1)
W
(1)
WDTC
リードオンリ
ライトオンリ
未定義
<注意事項>
リードモディファイライト (RMW) 系命令によるアクセスは誤動作を引き起こしますので ,
これらの命令でアクセスしないでください。
[bit7, bit5 ∼ bit3] PONR, WRST, ERST, SRST
PONR, WRST, ERST, SRST は , リセットの要因を示すフラグです。各リセットに
より表 9.3-1 に示すように設定されます。WDTC レジスタの読出し動作後に , 全
ビットがクリアされます。
これらのビットは , 読出し専用のレジスタです。
表 9.3-1 PONR, WRST, ERST, SRST( リセットの要因ビット )
PONR
WRST
ERST
SRST
パワーオン
1
−
−
−
ウォッチドッグタイマ
△
1
△
△
外部端子 (RST 入力 )
CPU 動作検出リセット
△
△
1
△
低電圧検出リセット
1
△
1
△
RST ビット
( ソフトウェアリセット )
△
△
△
1
リセット要因
△ : 前の値を保持します。
−:不定
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
255
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.3
MB90930 シリーズ
[bit2] WTE
WTE は , ウォッチドッグタイマが停止状態のときに "0" を書き込むことにより
ウォッチドッグタイマを動作状態にします。
2 回目以降の "0" の書込みではウォッ
チドッグタイマのカウンタをクリアします。"1" の書込みは意味がありません。
ウォッチドッグタイマは , 各種リセット要因が発生すると停止状態になります。
読出し時は "1" が読み出されます。
[bit1, bit0] WT1, WT0
WT1, WT0は, ウォッチドッグタイマのインターバル時間を選択するビットです。
ウォッチドッグタイマ起動時に書き込まれたデータのみが有効です。ウォッチ
ドッグ起動時以外の書込みデータは無視されます。書込みのみが可能なビットで
す。
時計タイマ制御レジスタ (WTC) の WDCS ビットと低消費電力制御回路のクロッ
ク選択レジスタ (LPMCR) の SCM ビットの論理積 (AND) の結果と , WT1, WT0 の
3 ビットでウォッチドッグタイマに入力するクロックを選択します。すなわち ,
WDCS を "1" に設定した場合 , マシンクロックとしてメインクロックおよび PLL
クロックを選択しているときにはタイムベースタイマの出力を , サブクロックを
選択しているときには時計タイマの出力を , それぞれウォッチドッグタイマの入
力クロックとして選択することができます。
WT1, WT0 ビットによるインターバル時間の設定を , 表 9.3-2 に示します。
表 9.3-2 WT1, WT0( インターバル時間選択ビット )
インターバル時間 ( 原発振 4MHz)
論理積
WT1
WT0
最小
最大 *
1
0
0
約 3.58ms
約 4.61ms
1
0
1
約 14.33ms
約 18.43ms
1
1
0
約 57.23ms
約 73.73ms
1
1
1
約 458.75ms
約 589.82ms
0
0
0
約 436ms
約 563ms
0
0
1
約 3.50s
約 4.50s
0
1
0
約 7.0s
約 9.0s
0
1
1
約 14.0s
約 18.0s
* : インターバル時間の最大値は , ウォッチドッグタイマ動作中にタイムベースタ
イマまたは時計タイマがリセットされない場合の値です。
256
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.3
MB90930 シリーズ
9.3.2
タイムベースタイマ制御レジスタ (TBTC)
タイムベースタイマ制御レジスタ (TBTC) では , タイムベースタイマの割込みを制御
し , タイムベースカウンタをクリアすることができます。
■ タイムベースタイマ制御レジスタのビット構成 (TBTC)
図 9.3-3 にタイムベースタイマ制御レジスタ (TBTC) のビット構成を示します。
図 9.3-3 タイムベースタイマ制御レジスタ (TBTC) のビット構成
タイムベースタイマ制御レジスタ
アドレス : 0000A9H
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
予約
−
−
TBIE
TBOF
TBR
TBC1
TBC0
−
(1)
−
(-)
−
(-)
R/W
(0)
R/W
(0)
W
(1)
R/W
(0)
R/W
(0)
初期値→
TBTC
R/W: リード / ライト可能
W: ライトオンリ
−:
未定義
[bit15] 予約 (Reserved)
bit15 は , 予約ビットです。必ず "1" に設定してください。
[bit12] TBIE
TBIE は , タイムベースタイマによるインターバル割込みを許可するビットです。
"1" のとき割込み許可 , "0" のとき割込みを禁止します。リセットでクリアされま
す。読み書き可能なビットです。
[bit11] TBOF
TBOF は , タイムベースタイマの割込み要求フラグです。TBIE ビットが "1" のと
きに TBOF が "1" になると , 割込み要求を発生します。TBC1, TBC0 ビットで設
定されたインターバルごとに "1" にセットされます。
TBOF ビットは , 以下の条件でクリアされます。
• "0" の書込み
• メインストップモードへの遷移
• PLL ストップモードへの遷移
• サブクロックモードからメインクロックモードへの遷移
• サブクロックモードから PLL クロックモードへの遷移
• メインクロックモードから PLL クロックモードへの遷移
• TBR ビットへの "0" 書込み
• リセット
"1" の書込みは意味がありません。
リードモディファイライト (RMW) 系命令における読出しの場合には , "1" が読み出さ
れます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
257
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.3
MB90930 シリーズ
<注意事項>
TBOF ビットをクリアする場合は , TBIE ビットまたはプロセッサステータス (PS) のイン
タラプトレベルマスクレジスタ (ILM) で , タイムベースタイマ割込みを禁止してから行っ
てください。
[bit10] TBR
TBR は , タイムベースタイマのカウンタを全ビット "0" にクリアするビットです。
"0" を書き込むことによりタイムベースカウンタをクリアします。"1" の書込みは
意味がありません。読出しの場合には "1" が読み出されます。
[bit9, bit8] TBC1, TBC 0
TBC1, TBC 0 は , タイムベースタイマのインターバルを設定するビットです。
リセットにより "00B" に初期化されます。読み書き可能なビットです。
表 9.3-3 TBC1, TBC0 のインターバル時間とサイクル数
258
TBC1
TBC0
原発振 4MHz の場合の
インターバル時間
発振クロック ( 原発振 )
サイクル数
0
0
1.024 ms
212 サイクル
0
1
4.096 ms
214 サイクル
1
0
16.384 ms
216 サイクル
1
1
131.072 ms
219 サイクル
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.3
MB90930 シリーズ
9.3.3
時計タイマ制御レジスタ (WTC)
時計タイマ制御レジスタ (WTC) は , クロック信号の選択 , 割込みやインターバルの
制御 , カウンタのクリアを行います。
■ 時計タイマ制御レジスタ (WTC)
図 9.3-4 に時計タイマ制御レジスタ (WTC) のビット構成を示します。
図 9.3-4 時計タイマ制御レジスタのビット構成
アドレス : 0000AAH
bit7
bit6
bit5
bit4
bit3
WDCS
SCE
WTIE
WTOF
WTR
R/W
(1)
R
(0)
R/W
(0)
R/W
(0)
W
(1)
初期値→
bit2
bit1
bit0
WTC2 WTC1 WTC0
R/W
(0)
R/W
(0)
WTC
R/W
(0)
R/W: リード / ライト可能
R:
リードオンリ
W: ライトオンリ
[bit7] WDCS
WDCS ビットは , ウォッチドッグタイマのクロックソースを選択するビットで
す。"0" の場合には時計タイマのクロック出力 , "1" の場合タイムベースタイマの
クロック出力を , ウォッチドッグタイマのクロックソースとして選択します。
リセットにより "1" に初期化されます。
<注意事項>
WDCS を変更した場合は , タイムベースタイマと時計タイマが非同期で動作しているため ,
ウォッチドッグカウントが "1" カウント短くなる可能性があります。このため , WDCS を
変更する場合は , クロックモードを変更する直前にウォッチドッグタイマをいったんクリ
アしてください。
[bit6] SCE
サブクロックの発振安定待ち時間が経過したことを示すビットです。このビット
が "0" のときは発振安定待ち時間が現在進行中であることを示しています。発振
安定待ち時間は , 214 サイクル ( サブクロック ) 固定です。パワーオンリセット時
およびストップ時は "0" に初期化されます。
[bit5] WTIE
WTIE ビットは , 時計タイマによるインターバル割込みを許可するビットです。こ
のビットが "1" のとき割込み許可 , "0" のとき割込みを禁止します。リセットによ
り "0" に初期化されます。読み書き可能なビットです。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
259
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.3
MB90930 シリーズ
[bit4] WTOF
WTOF ビットは , 時計タイマの割込み要求フラグです。WTIE ビットが "1" のと
き, WTOFを"1"に設定すると割込み要求が発生します。
WTOFビットは, WTC2∼
WTC0 ビットで設定したインターバルごとに "1" にセットされます。
WTOF ビットは , 以下の条件でクリアされます。
• "0" の書込み
• ストップモードへの遷移
• リセット
"1" の書込みは意味がありません。
リードモディファイライト (RMW) 系命令による読出しの場合には , 常に "1" が読み出
されます。
[bit3] WTR
WTR ビットは , 時計タイマのカウンタを全ビット "0" クリアするビットです。
WTR ビットに "0" を書き込むと , クロックカウンタをクリアします。"1" の書込
みは意味がありません。常に "1" が読み出されます。
[bit2 ∼ bit0]WTC2, WTC1, WTC0
WTC2, WTC1, WTC0 は , 時計タイマのインターバルを設定するビットです。イン
ターバルの設定を表 9.3-4 に示します。リセットにより WTC2 ∼ WTC0 ビットは
"000B" に初期化されます。読み書き可能なビットです。
WTC2 ∼ WTC0 ビットを設定する場合は , WTOF ビットも同時に "0" を設定して
ください。
表 9.3-4 時計タイマインターバルの選択
WTC2
WTC1
WTC0
インターバル時間*
0
0
0
31.25 ms
0
0
1
62.5 ms
0
1
0
125 ms
0
1
1
250 ms
1
0
0
500 ms
1
0
1
1.00 s
1
1
0
2.00 s
1
1
1
4.00 s
*: インターバル時間は , サブクロックが 32.768 kHz の場合の値です。
260
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.4
MB90930 シリーズ
9.4
ウォッチドッグタイマ / タイムベースタイマ /
時計タイマの動作
ウォッチドッグタイマ / タイムベースタイマ / 時計タイマの動作について説明しま
す。
■ ウォッチドッグタイマ / タイムベースタイマ / 時計タイマの動作
● ウォッチドッグタイマ
ウォッチドッグタイマは , プログラムの暴走などにより , WDTC レジスタの WTE ビッ
トへ "0" の書込みが定められた時間内に行われなかった場合にはウォッチドッグタイ
マからリセット要求が発生します。
● タイムベースタイマ
タイムベースタイマは , ウォッチドッグタイマのクロックソース , メインクロックおよ
び PLL クロックの発振安定待ち時間のためのタイマ機能のほか , 一定周期で割込みを
発生するインターバル割込み機能があります。
● 時計タイマ
時計タイマには , ウォッチドッグタイマのクロックソース , サブクロックの発振安定待
ち時間のためのタイマ , 一定周期で割込みを発生するインターバル割込み機能があり
ます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
261
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.4
MB90930 シリーズ
9.4.1
ウォッチドッグタイマの動作
ウォッチドッグタイマは , プログラムの暴走などにより , WDTC レジスタの WTE
ビットへの "0" の書込みが定められた時間内に行われなかった場合に , ウォッチ
ドッグタイマよりリセット要求が発生します。
■ ウォッチドッグタイマの起動方法
ウォッチドッグタイマの起動は , ウォッチドッグタイマの停止中に WDTC レジスタの
WTE ビットに "0" を書き込むことによって行われます。このとき , 同時にウォッチドッ
グタイマのリセット発生のインターバルを WT1, WT0 ビットにより設定します。イン
ターバルの設定では , この起動時のデータのみが有効となります。
■ ウォッチドッグタイマリセットの阻止
ウォッチドッグタイマが起動されると , プログラム中で定期的に 2 ビットのウォッチ
ドッグカウンタをクリアする必要があります。具体的には , WDTC レジスタの WTE
ビットに定期的に "0" を書き込む必要があります。ウォッチドッグカウンタは , タイム
ベースタイマの桁上り信号をクロックソースとする 2 ビットのカウンタにより構成さ
れています。したがって , タイムベースタイマがクリアされると , ウォッチドッグリ
セットの発生時間が設定より長くなることがあります。
図 9.4-1 ウォッチドッグタイマの動作
タイムベースタイマ
ウォッチドッグ
00
01
10
00
01
10
11
00
WTEライト
ウォッチドッグ起動
ウォッチドッグクリア
ウォッチドッグリセット発生
■ ウォッチドッグ停止
ウォッチドッグタイマは , 各種リセット要因により停止します。
■ ウォッチドッグタイマのクリア
ウォッチドッグタイマは , WTE ビットへの書込みによるクリアのほかに , リセットの
発生 , スリープモード / ストップモード / 時計モードへの遷移によってクリアされます。
時計モード中は , ウォッチドッグタイマのカウンタはクリアされ , カウントを停止しま
す。
■ リセット要因の確認
リセット後にウォッチドッグタイマ制御レジスタ (WDTC) の PONR, WRST, ERST,
SRST ビットをチェックすることにより , リセット要因を知ることができます。
■ ウォッチドッグタイマのインターバル時間
図 9.4-2 に , ウォッチドッグタイマのクリアのタイミングとインターバル時間の関係を
示します。インターバル時間は , ウォッチドッグタイマをクリアするタイミングによっ
て変化し , カウントクロック周期の 3.5 倍∼ 4.5 倍の時間を要します。
262
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.4
MB90930 シリーズ
図 9.4-2 ウォッチドッグタイマのクリアタイミングとインターバル時間
[WDGタイマブロックダイヤグラム]
2ビットカウンタ
クロック
セレクタ
a
2分周回路
b
2分周回路
c
リセット回路
リセット
信号
カウント許可とクリア
WTEビット
カウント許可
出力回路
[最小インターバル時間] カウントクロックの立上り直前にWTEビットをクリアした場合
カウントスタート
カウンタクリア
カウントクロックa
2分周値b
2分周値c
カウント許可
リセット信号d
7 × (カウントクロック周期/2)
WTEビットクリア
ウォッチドッグリセット発生
[最大インターバル時間] カウントクロックの立上り直後にWTEビットをクリアした場合
カウントスタート
カウンタクリア
カウントクロックa
2分周値b
2分周値c
カウント許可
リセット信号
9 × (カウントクロック周期/2)
WTEビットクリア
CM44-10150-1
ウォッチドッグリセット発生
FUJITSU MICROELECTRONICS LIMITED
263
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.4
MB90930 シリーズ
9.4.2
タイムベースタイマの動作
タイムベースタイマにはウォッチドッグタイマのクロックソース , メインクロック
および PLL クロックの発振安定待ち時間のためのタイマ機能のほか , 一定周期で割
込みを発生するインターバル割込み機能があります。
■ タイムベースタイマの動作
タイムベースタイマは , メインクロックをカウントする 18 ビットのカウンタにより構
成され , メインクロックが入力されている間は常にカウント動作を続けます。
タイムベースカウンタは , 以下の条件によってクリアされます。
• パワーオンリセット
• メインストップモードへの遷移
• PLL ストップモードへの遷移
• メインクロックモードから PLL クロックモードへの遷移
• サブクロックモードからメインクロックモードへの遷移
• サブクロックモードから PLL クロックモードへの遷移
• TBTC レジスタの TBR ビットへの "0" 書込み
タイムベースタイマの出力を使用している , ウォッチドッグタイマとインターバル割
込み機能は , タイムベースタイマのクリアに影響されます。
■ インターバル割込み機能
タイムベースカウンタの桁上り信号により一定周期で割込みを発生します。TBTC レ
ジスタのTBC1, TBC0ビットで設定されるインターバル時間ごとにTBOFフラグをセッ
トします。このフラグのセットは , 最後にタイムベースタイマがクリアされた時間を基
準にして行われます。
メインクロックモードから PLL クロックモードに遷移した場合は , タイムベースタイ
マは PLL クロックの発振安定待ちのタイマとして使用されるため , いったんタイム
ベースタイマのクリアが行われます。
ストップモードへ遷移すると , タイムベースタイマは復帰時の発振安定待ち時間のタ
イマとして使用されるので TBOF フラグは , モード遷移と同時にクリアされます。
264
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.4
MB90930 シリーズ
■ タイムベースタイマの割込み
タイムベースタイマカウンタが内部カウントクロックでカウントアップし , 選択され
たインターバルタイマ用のビットがオーバフローすると , 割込み要求フラグビット
(TBTC レジスタの TBOF ビット ) が "1" にセットされます。そのとき , 割込み要求許可
ビットを許可していると (TBTC レジスタの TBIE=1), CPU に割込み要求 (#34) が発生し
ます。割込み処理ルーチンで TBOF ビットに "0" を書き込んで , 割込み要求をクリアし
てください。
なお , TBOF ビットは , TBIE ビットの値に関係なく , 指定したビットがオーバフローす
るとセットされます。
TBOF ビットが "1" のときに TBIE ビットを禁止から許可 ("0" → "1") にすると , 直ちに
割込み要求が発生します。
<注意事項>
割込み要求フラグビット (TBTC : TBOF) をクリアするときには , TBIE ビットまたはプロ
セッサステータス (PS) のインタラプトレベルマスクレジスタ (ILM) で , タイムベースタイ
マ割込みを禁止してから行ってください。
■ タイムベースタイマの割込みと EI2OS
表 9.4-1 に , タイムベースタイマの割込みと EI2OS を示します。
表 9.4-1 タイムベースタイマの割込みと EI2OS
割込みレベル設定レジスタ
ベクタテーブルのアドレス
割込み番号
#34(22H)
レジスタ名
アドレス
下位
上位
バンク
ICR11
0000BCH
FFFF70H
FFFF71H
FFFF72H
EI2OS
×
× : 使用不可
<注意事項>
• ICR11 はタイムベースタイマ割込みと時計タイマ ( サブクロック用 ) 割込みで共通して
います。
割込みは 2 つの用途に使用できますが , 割込みレベルは同一になります。
• タイムベースタイマでは , 拡張インテリジェント I/O サービス (EI2OS) は使用できませ
ん。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
265
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.4
MB90930 シリーズ
■ 発振安定待ち時間用タイマ機能
タイムベースタイマは , メインクロックおよび PLL クロックの発振安定待ち時間用の
タイマとしても使用されます。発振安定待ち時間は , カウンタが "0"( カウントクリア )
からカウントアップし , 発振安定待ち時間用のビットがオーバフローするまでの時間
になります。ただし , タイムベースタイマモードから PLL クロックモードへ復帰した
ときには , タイムベースタイマカウンタがクリアされないため , カウント途中からの時
間になります。表 9.4-2 に , タイムベースカウンタのクリアと発振安定待ち時間につい
て示します。
表 9.4-2 タイムベースタイマカウンタのクリア動作と発振安定待ち時間
カウンタクリア
TBOF
クリア
発振安定待ち時間
TBTC の TBR ビットへ "0" 書込み
○
○
−
パワーオンリセット
○
○
メインクロック発振
安定待ち時間
○
○
メインクロック発振
安定待ち時間
サブストップモードの解除
×
×
サブクロック発振
安定待ち時間
メインクロックモードから PLL クロック
モードへの移行 (MCS=1 → 0)
○
○
PLL クロック発振
安定待ち時間
サブクロックモードからメインクロック
モードへの移行 (SCS=0 → 1)
○
○
メインクロック発振
安定待ち時間
サブクロックモードから PLL クロック
モードへの移行 (MCS=0, SCS=0 → 1)
○
○
メインクロック発振
安定待ち時間
タイムベースタイマモードの解除
×
×
なし
スリープモードの解除
×
×
なし
動 作
メインストップモードの解除
PLL ストップモードの解除
○ : あり
× : なし
266
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.4
MB90930 シリーズ
9.4.3
時計タイマの動作
時計タイマには , ウォッチドッグタイマのクロックソース , サブクロックの発振安定
待ち時間のためのタイマ , 一定周期で割込みを発生するインターバル割込み機能が
あります。
■ 時計タイマの動作
時計タイマは , サブクロックをカウントクロックとする 15 ビットのカウンタにより構
成されています。サブ原発振クロックが入力されている間 , 常にカウント動作を続けま
す。
時計タイマのクリアは , パワーオンリセット , ストップモードへの遷移および WTC
レジスタ中の WTR ビットへの "0" の書込みにより行われます。
<注意事項>
時計タイマの出力を使用しているウォッチドッグタイマとインターバル割込みには , 時計
タイマのクリアの影響があります。
時計タイマ制御レジスタ (WTC) の時計タイマクリアビット (WTR) に "0" を設定して時計
タイマをクリアする場合は , WTC のオーバフロー割込み許可ビット (WTIE) に "0" を設定
し , 時計タイマの割込みを禁止した状態で行ってください。また , 割込みを許可する前に ,
WTC のオーバフロービット (WTOF) への "0" 設定による割込み要求のクリアを行ってくだ
さい。
■ 時計タイマのインターバル割込み機能
インターバル割込み機能は , 時計タイマの桁上り信号により一定周期で割込みを発生
します。WTC レジスタ中の WTC2 ∼ WTC0 ビットで設定される通常のインターバル
ごとに WTOF フラグをセットします。このフラグ設定のタイミングは , 最後に時計タ
イマがクリアされた時間を基準にします。
ストップモードに遷移すると , 時計タイマは復帰時の発振安定待ち時間のタイマとし
て使用されるので , WTOF フラグはモード遷移と同時にクリアされます。
■ 時計タイマの割込みと EI2OS
表 9.4-3 に , 時計タイマの割込みと EI2OS を示します。
表 9.4-3 時計タイマの割込みと EI2OS
割込み番号
#30(1EH)
割込みレベル設定レジスタ
レジスタ名
ICR09
アドレス
0000B9H
ベクタテーブルのアドレス
下位
FFFF84H
上位
FFFF85H
バンク
FFFF86H
EI2OS
×
× : 使用不可
<注意事項>
• 時計タイマはリアルタイム時計タイマと割込みベクタを共有しています。また , ICR09
はリアルタイム時計タイマおよび PPG タイマ 2 ∼ PPG タイマ 5 の割込みと共有して
おり , 割込みレベルは同一になります。
• 時計タイマでは , 拡張インテリジェント I/O サービス (EI2OS) は使用できません。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
267
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.5
9.5
MB90930 シリーズ
ウォッチドッグタイマ / タイムベースタイマ使用上の
注意
ウォッチドッグタイマ使用時の注意点 , タイムベースタイマ使用時の割込み要求の
クリアおよびタイムベースタイマのクリアによる周辺機能への影響などの注意点を
示します。
■ ウォッチドッグタイマ使用上の注意
● ウォッチドッグタイマの停止
ウォッチドッグタイマはすべてのリセット要因で停止します。
● インターバル時間
インターバル時間は , タイムベースタイマまたは時計タイマの桁上り信号をカウント
クロックとしているため , それぞれクロックソースとなるカウンタのクリアによって ,
ウォッチドッグタイマのインターバル時間が設定より長くなることがあります。タイ
ムベースタイマは , タイムベースタイマ制御レジスタ (TBTC) のタイムベースタイマク
リアビット (TBR) への "0" 書込みのほか , メインクロックモードから PLL クロックモー
ドへの遷移 , サブクロックモードからメインクロックモードへの遷移 , サブクロック
モードから PLL クロックモードへの遷移時にもクリアされますのでご注意ください。
● インターバル時間の選択
インターバル時間は , ウォッチドッグタイマの起動時に設定が可能です。起動時以外の
書込みデータは無視されます。
● プログラム作成上の注意
メインループの中で , ウォッチドッグタイマを繰り返しクリアするようなプログラム
を作成する場合には , 割込み処理を含めたメインループの処理時間がウォッチドッグ
タイマのインターバル時間の最小時間以下となる必要があります。
● タイムベースタイマモード中のウォッチドッグタイマ動作
タイムベースタイマモード中 , タイムベースタイマは動作していますが , ウォッチドッ
グタイマは停止します。
268
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.5
MB90930 シリーズ
■ タイムベースタイマ使用上の注意
● 割込み要求のクリア
タイムベースタイマ制御レジスタの TBOF ビットをクリアするときには , TBIE ビット
またはプロセッサステータス (PS) のインタラプトレベルマスクレジスタ (ILM) でタイ
ムベースタイマ割込みがマスクされている状態で行うようにしてください。
● タイムベースタイマのクリアによる影響
タイムベースタイマのカウンタのクリアで , 次の動作は影響を受けます。
• タイムベースタイマでインターバルタイマ機能 ( インターバル割込み ) を使用して
いるとき
• ウォッチドッグタイマを使用しているとき
● 発振安定待ち時間用タイマとしての使用
電源投入時 , メインストップモード中では , メインクロックの原発振が停止しているた
め , 発振器が動作を開始した後にタイムベースタイマが供給する動作クロックを使用
してメインクロックの発振安定待ち時間を確保します。メインクロックの発振器 ( ク
ロック発生部 ) に接続する振動子の種類によって , 適切な発振安定待ち時間を選択する
必要があります。詳細については , 「5.6 発振安定待ち時間」を参照してください。
● タイムベースタイマからクロックを供給される周辺機能に対する注意
メインクロック原発振が停止するモードではカウンタはクリアされ , タイムベースタイ
マは動作を停止します。また , タイムベースタイマから供給されるクロックは , タイム
ベースタイマのカウンタがクリアされると初期状態からの供給となるため , "H" レベル
が短くまたは "L" レベルが最大で 1/2 周期長くなることがあります。ウォッチドッグタ
イマ用のクロックも初期状態からの供給となりますが , ウォッチドッグタイマのカウン
タが同時にクリアされるためウォッチドッグタイマは正常な周期で動作します。
■ タイムベースタイマの動作
次の状態の動作を図 9.5-1 に示します。
• パワーオンリセットが発生したとき
• インターバルタイマ機能の動作中にスリープモードに移行したとき
• ストップモードへ移行したとき
• カウンタクリアの要求があったとき
ストップモードへの移行でタイムベースタイマはクリアされて動作を停止します。ス
トップモードからの復帰時にタイムベースタイマで発振安定待ち時間をカウントしま
す。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
269
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.5
MB90930 シリーズ
図 9.5-1 タイムベースタイマの動作
カウンタ値
3FFFFH
ストップモードへの
移行によるクリア
発振安定待ち
オーバフロー
00000H
インターバル周期
CPU動作開始
パワーオンリセット
(オプション)
カウンタクリア
(TBTC:TBR=0)
(TBTC:TBC1, TBC0=11B )
割込み処理ルーチンでクリア
TBOFビット
TBIEビット
スリープ
SLPビット
(LPMCRレジスタ)
ストップ
インターバル割込みスリープ解除
STPビット
(LPMCRレジスタ)
外部割込みによるストップ解除
タイムベースタイマ制御レジスタのインターバル時間選択ビット (TBTC:TBC1,TBC0)に
"11B"を設定した場合 (219/HCLK)。
:発振安定待ち時間を示します。
270
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.6
MB90930 シリーズ
9.6
ウォッチドッグタイマ / タイムベースタイマの
プログラム例
ウォッチドッグタイマ / タイムベースタイマのプログラム例を示します。
■ ウォッチドッグタイマのプログラム例
● 処理仕様
メインプログラムのループの中で毎回ウォッチドッグタイマをクリアします。
メインループは, ウォッチドッグタイマの最小インターバル時間内に1周する必要があ
ります。
[ コーディング例 ]
WDTC
EQU
0000A8H
; ウォッチドッグタイマ制御レジスタ
WTE
EQU
WDTC:2
; ウォッチドッグ制御ビット
;--------- メインプログラム -----------------------------------------------------CODE
CSEG
START:
;
:
; スタックポインタ (sp) などは初期化済みとする
WDG_START:
MOV
; ウォッチドッグタイマの起動
; インターバル時間 221±218 サイクルを選択
;--------- メインループ ---------------------------------------------------------MAIN:
CLRB
I:WTE
; ウォッチドッグタイマのクリア
;
:
定期的に 2 ビットのクリア
;
ユーザ処理
;
:
JMP
MAIN
; ウォッチドッグタイマのインターバル時間
; より短い時間でループする
CODE
ENDS
;--------- ベクタ設定 -----------------------------------------------------------VECT
CSEG
ABS=0FFH
ORG
0FFDCH
; リセットベクタ設定
DSL
START
DB
OOH
; シングルチップモードに設定
VECT
ENDS
ENDS
START
CM44-10150-1
WDTC,
#00000011B
FUJITSU MICROELECTRONICS LIMITED
271
第 9 章 ウォッチドッグタイマ / タイムベースタイマ / 時計タイマ ( サブクロック用 )
9.6
MB90930 シリーズ
■ タイムベースタイマのプログラム例
● 処理仕様
212/HCLK(HCLK : 発振クロック ) のインターバル割込みを繰り返し発生します。この
ときのインターバル時間は , 約 1.0ms(4MHz 動作時 ) となります。
[ コーディング例 ]
ICR12
EQU
0000BCH
; タイムベースタイマ用割込み制御レジスタ
TBTC
EQU
0000A9H
; タイムベースタイマ制御レジスタ
TB0F
EQU
TBTC:3
; 割込み要求フラグビット
;--------- メインプログラム -----------------------------------------------------CODE
CSEG
START:
;
:
; スタックポインタ (SP) などは初期化済みとする
AND
CCR, #0BFH
; 割込みディセーブル
MOV
I:ICR12, #00H
; 割込みレベル 0( 最強 )
MOV
I:TBTC, #10010000B ; 上位 3 ビットは固定
; 割込み許可 , TB0F クリア
; カウンタクリア
; インターバル時間 212/HCLK 選択
MOV
ILM, #07H
;PS 内 ILM をレベル 7 に設定
OR
CCR, #40H
; 割込みイネーブル
LOOP:
MOV
A, #00H
; 無限ループ
MOV
A, #01H
BRA
LOOP
;--------- 割込みプログラム -----------------------------------------------------WARI:
CLRB
I:TB0F
; 割込み要求フラグをクリア
;
:
;
ユーザ処理
;
:
RETI
; 割込みから復帰
CODE
ENDS
;--------- ベクタ設定 -----------------------------------------------------------VECT
CSEG
ABS=0FFH
ORG
0FF70H
; 割込み #35(23H) にベクタを設定
DSL
WARI
ORG
0FFDCH
; リセットベクタ設定
DSL
START
DB
00H
; シングルチップモードに設定
VECT
ENDS
ENDS
START
272
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 10 章
インプットキャプチャ
インプットキャプチャの動作について説明します。
10.1 インプットキャプチャの概要
10.2 インプットキャプチャのレジスタ一覧
10.3 動作説明
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
273
第 10 章 インプットキャプチャ
10.1
MB90930 シリーズ
インプットキャプチャの概要
10.1
インプットキャプチャユニットは , 16 ビットフリーランタイマ 1 本 , 16 ビットインプット
キャプチャ 8 本から構成されています。
■ 構成
● インプットキャプチャ ( × 8)
インプットキャプチャは独立した8本の外部入力端子と対応したキャプチャレジスタ, コントロー
ルレジスタにより構成されています。外部入力端子から入力された信号の任意エッジを検出する
ことにより 16 ビットフリーランタイマ値をキャプチャレジスタに保持し , 同時に割込みを発生す
ることができます。
外部入力信号の有効エッジ ( 立上りエッジ , 立下りエッジ , 両エッジ ) を選択できます。
8 本のインプットキャプチャは独立して動作できます。
割込みは , 外部入力信号の有効エッジにより発生させることができます。
● 16 ビットフリーランタイマ ( × 1)
16 ビットフリーランタイマは 16 ビットのアップカウンタ , コントロールレジスタ , 16 ビットコン
ペアクリアレジスタ , プリスケーラから構成されています。本カウンタの出力値はインプットキャ
プチャの基本時間 ( ベースタイマ ) として使用されます。
カウンタ動作クロックは 8 種類から選択できます。
内部クロックは , φ, φ/2, φ/4, φ/8, φ/16, φ/32, φ/64, φ/128 の 8 種類です (φ : マシンクロック )。
割込みはカウンタ値のオーバフロー , コンペアクリアレジスタとの比較一致により発生すること
ができます ( 比較一致はモード設定が必要です )。
カウンタ値は , リセット , プログラムによるクリア , コンペアクリアレジスタとの比較一致により
"0000H" に初期化することができます。
274
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 10 章 インプットキャプチャ
10.1
MB90930 シリーズ
10.1.1
インプットキャプチャのブロックダイヤグラム
インプットキャプチャは , 以下のブロックで構成されています。
■ インプットキャプチャのブロックダイヤグラム
図 10.1-1 インプットキャプチャユニット 0 のブロックダイヤグラム
16 ビットフリーランタイマ
エッジ検出回路
端子
インプットキャプチャデータレジスタ 3(IPCP3)
端子
インプットキャプチャデータレジスタ 2(IPCP2)
インプットキャプチャエッジレジスタ
インプットキャ
プチャ割込み
要求
内部データバス
インプットキャプ
チャ制御ステータス
レジスタ (ICS23)
インプットキャプ
チャ制御ステータス
レジスタ (ICS01)
インプットキャプチャエッジレジスタ (ICE01)
端子
インプットキャプチャデータレジスタ 1(IPCP1)
端子
インプットキャプチャデータレジスタ 0(IPCP0)
エッジ検出回路
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
275
第 10 章 インプットキャプチャ
10.1
MB90930 シリーズ
図 10.1-2 インプットキャプチャユニット 1 のブロックダイヤグラム
エッジ検出回路
端子
16 ビットフリーランタイマ
インプットキャプチャデータレジスタ 7(IPCP7)
端子
インプットキャプチャデータレジスタ 6(IPCP6)
インプットキャプチャエッジレジスタ (ICE67)
インプットキャプ
チャ割込み要求
内部データバス
インプットキャプチャ
制御ステータスレジス
タ (ICS67)
インプットキャプチャ
制御ステータスレジス
タ (ICS45)
インプットキャプチャエッジレジスタ (ICE45)
端子
インプットキャプチャデータレジスタ 5(IPCP5)
端子
インプットキャプチャデータレジスタ 4(IPCP4)
エッジ検出回路
276
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 10 章 インプットキャプチャ
10.2
MB90930 シリーズ
10.2
インプットキャプチャのレジスタ一覧
インプットキャプチャのレジスタ一覧について説明します。
■ 16 ビットフリーランタイマ部のレジスタ一覧
図 10.2-1 に 16 ビットフリーランタイマ部のレジスタ一覧を示します。
図 10.2-1 16 ビットフリーランタイマ部のレジスタ一覧
コンペアクリアレジスタ上位
bit15
CL15
アドレス : 000025H
bit14
CL14
bit13
CL13
bit12
CL12
bit11
CL11
bit10
CL10
bit9
CL09
bit8
CL08
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
コンペアクリアレジスタ下位
bit7
CL07
アドレス : 000024H
bit6
CL06
bit5
CL05
bit4
CL04
bit3
CL03
bit2
CL02
bit1
CL01
bit0
CL00
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
bit14
T14
bit13
T13
bit12
T12
bit11
T11
bit10
T10
bit9
T09
bit8
T08
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
タイマデータレジスタ下位
bit7
T07
アドレス : 000026H
bit6
T06
bit5
T05
bit4
T04
bit3
T03
bit2
T02
bit1
T01
bit0
T00
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
bit13
-
bit12
MSI2
bit11
MSI1
bit10
MSI0
bit9
ICLR
bit8
ICRE
(-)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
bit5
STOP
bit4
MODE
bit3
SCLR
bit2
CLK2
bit1
CLK1
bit0
CLK0
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
初期値 →
初期値 →
タイマデータレジスタ上位
bit15
T15
アドレス : 000027H
R/W
(0)
初期値 →
初期値 →
タイマ制御ステータスレジスタ上位
bit15
bit14
ECKE
予約
アドレス : 000029H
R/W
(0)
(-)
初期値 →
タイマ制御ステータスレジスタ下位
bit7
bit6
IVF
IVFE
アドレス : 000028H
初期値 →
R/W
(0)
R/W
(0)
CPCLR
CPCLR
TCDT
TCDT
TCCSH
TCCSL
R/W: リード / ライト可能
X:
不定値
-:
未定義
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
277
第 10 章 インプットキャプチャ
10.2
MB90930 シリーズ
■ インプットキャプチャ部のレジスタ一覧
図 10.2-2 にインプットキャプチャ部のレジスタ一覧を示します。
図 10.2-2 インプットキャプチャ部のレジスタ一覧
インプットキャプチャデータレジスタ上位
アドレス:
アドレス:
アドレス:
アドレス:
アドレス:
アドレス:
アドレス:
アドレス:
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
ch.6
ch.7
000061H
000063H
000065H
000067H
003941H
003943H
003945H
003947H
bit15
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
ch.6
ch.7
bit13
bit12
bit11
bit10
bit9
bit8
IPCP0~
IPCP7
CP15 CP14 CP13 CP12 CP11 CP10 CP09 CP08
R
(X)
インプットキャプチャデータレジスタ下位
アドレス:
アドレス:
アドレス:
アドレス:
アドレス:
アドレス:
アドレス:
アドレス:
bit14
000060H
000062H
000064H
000066H
003940H
003942H
003944H
003946H
R
(X)
bit7
R
(X)
R
(X)
bit6
bit5
R
(X)
bit4
R
(X)
bit3
R
(X)
bit2
R
(X)
bit1
CP07 CP06 CP05 CP04 CP03 CP02 CP01 CP00
R
(X)
R
(X)
R
(X)
R
(X)
R
(X)
R
(X)
R
(X)
R
(X)
← リード/ライト
← 初期値
bit0
IPCP0~
IPCP7
← リード/ライト
← 初期値
インプットキャプチャ制御ステータスレジスタ上位
アドレス : 00006AH
初期値 →
bit7
ICP3
bit6
ICP2
bit5
ICE3
bit4
ICE2
bit3
EG31
bit2
EG30
bit1
EG21
bit0
EG20
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
bit4
ICE0
bit3
EG11
bit2
EG10
bit1
EG01
bit0
EG00
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
bit4
ICE6
bit3
EG71
bit2
EG70
bit1
EG61
bit0
EG60
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
bit4
ICE4
bit3
EG51
bit2
EG50
bit1
EG41
bit0
EG40
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
インプットキャプチャ制御ステータスレジスタ下位
bit7
bit6
bit5
ICP1
ICP0
ICE1
アドレス : 000068H
初期値 →
R/W
(0)
R/W
(0)
R/W
(0)
インプットキャプチャ制御ステータスレジスタ上位
bit7
bit6
bit5
ICP7
ICP6
ICE7
アドレス : 0000D2H
初期値 →
R/W
(0)
R/W
(0)
R/W
(0)
インプットキャプチャ制御ステータスレジスタ下位
bit7
bit6
bit5
ICP5
ICP4
ICE5
アドレス : 0000D0H
R/W
R/W
R/W
(0)
(0)
(0)
初期値 →
ICS23
ICS01
ICS67
ICS45
( 続く )
278
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 10 章 インプットキャプチャ
10.2
MB90930 シリーズ
( 続き )
インプットキャプチャエッジレジスタ上位
bit15
bit14
アドレス : 00006BH
(-)
初期値 →
(-)
インプットキャプチャエッジレジスタ下位
bit15
bit14
アドレス : 000069H
(-)
(-)
初期値 →
インプットキャプチャエッジレジスタ上位
bit15
bit14
アドレス : 0000D3H
(-)
(-)
初期値 →
インプットキャプチャエッジレジスタ下位
bit15
bit14
アドレス : 0000D1H
(-)
初期値 →
(-)
インプットキャプチャ入力選択レジスタ
bit7
bit6
IN7R
IN6R
アドレス : 000048H
初期値 →
R/W:
R:
W:
X:
-:
R/W
(0)
R/W
(0)
bit13
-
bit12
-
bit11
-
bit10
-
bit9
IEI3
bit8
IEI2
(-)
(-)
(-)
(-)
R
(X)
R
(X)
bit13
(-)
bit12
ICUS1
R/W
(0)
bit11
(-)
bit10
ICUS0
R/W
(0)
bit9
IEI1
R
(X)
bit8
IEI0
R
(X)
bit13
-
bit12
ICUS7
bit11
-
bit10
ICUS6
bit9
IEI7
bit8
IEI6
(-)
R/W
(0)
(-)
R/W
(0)
R
(X)
R
(X)
bit13
-
bit12
-
bit11
-
bit10
-
bit9
IEI5
bit8
IEI4
(-)
(-)
(-)
(-)
R
(X)
R
(X)
bit5
IN5R
bit4
IN4R
bit3
IN3R
bit2
IN2R
bit1
-
bit0
-
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
(-)
(-)
ICE23
ICE01
ICE67
ICE45
ICISR
リード / ライト可能
リードオンリ
ライトオンリ
不定値
未定義
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
279
第 10 章 インプットキャプチャ
10.2
10.2.1
MB90930 シリーズ
インプットキャプチャのレジスタ詳細説明
インプットキャプチャレジスタには次の 3 種類のレジスタがあります。
• インプットキャプチャレジスタ (IPCP0 ∼ IPCP7)
• インプットキャプチャ制御レジスタ (ICS01/ICS23/ICS45/ICS67)
• インプットキャプチャ入力選択レジスタ (ICISR)
■ インプットキャプチャレジスタ (IPCP0 ∼ IPCP7)
IPCP レジスタは , 対応した外部端子入力波形の有効エッジを検出した場合 , 16 ビットフリーラン
タイマ値を保持するレジスタです ( ワードアクセスしてください。書込みはできません )。
図 10.2-3 インプットキャプチャデータレジスタ (IPCP0 ∼ IPCP7) の構成
インプットキャプチャデータレジスタ上位
アドレス:
アドレス:
アドレス:
アドレス:
アドレス:
アドレス:
アドレス:
アドレス:
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
ch.6
ch.7
000061H
000063H
000065H
000067H
003941H
003943H
003945H
003947H
bit15
280
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
ch.6
ch.7
000060H
000062H
000064H
000066H
003940H
003942H
003944H
003946H
bit13
bit12
bit11
bit10
bit9
bit8
IPCP0~
IPCP7
CP15 CP14 CP13 CP12 CP11 CP10 CP09 CP08
R
(X)
インプットキャプチャデータレジスタ下位
アドレス:
アドレス:
アドレス:
アドレス:
アドレス:
アドレス:
アドレス:
アドレス:
bit14
R
(X)
bit7
R
(X)
bit6
R
(X)
bit5
R
(X)
bit4
R
(X)
bit3
R
(X)
bit2
R
(X)
bit1
CP07 CP06 CP05 CP04 CP03 CP02 CP01 CP00
R
(X)
R
(X)
R
(X)
R
(X)
R
(X)
R
(X)
FUJITSU MICROELECTRONICS LIMITED
R
(X)
R
(X)
← リード/ライト
← 初期値
bit0
IPCP0~
IPCP7
← リード/ライト
← 初期値
CM44-10150-1
第 10 章 インプットキャプチャ
10.2
MB90930 シリーズ
■ インプットキャプチャ制御ステータスレジスタ (ICS01/ICS23/ICS45/ICS67)
図 10.2-4 インプットキャプチャ制御ステータスレジスタ (ICS01/ICS23/ICS45/ICS67) の構成
インプットキャプチャ制御ステータスレジスタ上位
アドレス : 00006AH
初期値 →
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
ICP3
ICP2
ICE3
ICE2
EG31
EG30
EG21
EG20
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
(0)
(0)
(0)
(0)
(0)
(0)
(0)
(0)
ICS23
インプットキャプチャ制御ステータスレジスタ下位
アドレス : 000068H
初期値 →
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
ICP1
ICP0
ICE1
ICE0
EG11
EG10
EG01
EG00
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
(0)
(0)
(0)
(0)
(0)
(0)
(0)
(0)
ICS01
インプットキャプチャ制御ステータスレジスタ上位
アドレス : 0000D2H
初期値 →
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
ICP7
ICP6
ICE7
ICE6
EG71
EG70
EG61
EG60
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
(0)
(0)
(0)
(0)
(0)
(0)
(0)
(0)
ICS67
インプットキャプチャ制御ステータスレジスタ下位
アドレス : 0000D0H
初期値 →
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
ICP5
ICP4
ICE5
ICE4
EG51
EG50
EG41
EG40
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
(0)
(0)
(0)
(0)
(0)
(0)
(0)
(0)
ICS45
R/W: リード / ライト可能
[bit7, bit6]: ICP7 ∼ ICP0
インプットキャプチャ割込みフラグです。外部入力端子の有効エッジを検出すると本ビットを
"1" にセットします。割込み許可ビット (ICE7 ∼ ICE0) がセットされていると有効エッジを検
出することにより割込みを発生することができます。本ビットは , "0" 書込みによりクリアさ
れます。"1" 書込みは意味を持ちません。リードモディファイライト (RMW) 系命令では "1" が
読み出されます。
0
有効エッジ検出なし ( 初期値 )
1
有効エッジ検出あり
ICPn: n の番号がインプットキャプチャのチャネル番号に対応します。
[bit5, bit4]: ICE7 ∼ ICE0
インプットキャプチャ割込み許可ビットです。ICE ビットが "1" の場合に割込みフラグ
(ICP7 ∼ ICP0) が "1" にセットされるとインプットキャプチャ割込みが発生します。
0
割込み禁止 ( 初期値 )
1
割込み許可
ICEn: n の番号がインプットキャプチャのチャネル番号に対応します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
281
第 10 章 インプットキャプチャ
10.2
MB90930 シリーズ
[bit3 ∼ bit0]: EGn1, EGn0 (n=7 ∼ 0)
外部入力の有効エッジ極性を選択するビットです。インプットキャプチャ動作許可も兼用して
います。
EGn1
EGn0
エッジ検出極性
0
0
エッジ検出なし ( 停止状態 ) ( 初期値 )
0
1
立上りエッジ検出 ↑
1
0
立下りエッジ検出 ↓
1
1
両エッジ検出 ↑ & ↓
EGn1/EGn0: n の番号がインプットキャプチャのチャネル番号に対応します。
■ インプットキャプチャ入力選択レジスタ (ICISR)
図 10.2-5 インプットキャプチャ入力選択レジスタ (ICISR) の構成
インプットキャプチャ入力選択レジスタ
アドレス : 000048H
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
IN7R
IN6R
IN5R
IN4R
IN3R
IN2R
-
-
R/W
R/W
R/W
R/W
R/W
R/W
-
-
(0)
(0)
(0)
(0)
(0)
(0)
(-)
(-)
初期値 →
ICISR
R/W: リード / ライト可能
-:
未定義
[bit7 ∼ bit2] IN7R ∼ IN2R
各ビットは , ch.7 ∼ ch.2 の各チャネルのインプットキャプチャ入力ポートを選択します。
[bit1, bit0] 未定義ビット
読出し値は , 不定です。書込みは動作に影響を与えません。
INnR
インプットキャプチャ入力
0
端子 IN7 ∼ IN2 をインプットキャプチャ入力としてセット ( 初期値 )
ICISR
入力ポート
IN2R(bit 2)
ΙΝ2 : PC2
IN3R(bit 3)
ΙΝ3 : PC1
IN4R(bit 4)
ΙΝ4 : P11
IN5R(bit 5)
IN5 : P10
IN6R(bit 6)
IN6 : PC7
IN7R(bit 7)
IN7 : PC6
端子 IN7R ∼ IN2R をインプットキャプチャ入力としてセット
ICISR
入力ポート
IN2R(bit 2)
ΙΝ2 : P54
IN3R(bit 3)
ΙΝ3 : PΕ2
1
IN4R(bit 4)
ΙΝ4 : P57
IN5R(bit 5)
IN5 : P56
IN6R(bit 6)
IN6 : PE1
IN7R(bit 7)
IN7 : PE0
INnR: n の番号がインプットキャプチャのチャネル番号に対応します。
ch.1 と ch.0 にはインプットキャプチャ入力は 1 つのみです。
282
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 10 章 インプットキャプチャ
10.2
MB90930 シリーズ
10.2.2
インプットキャプチャエッジレジスタ (ICE)
インプットキャプチャエッジレジスタには検出されたエッジの方向表示 , および , 入力信号を
外部端子 /LIN-UART のどちらから入力するかを選択する機能があります。LIN-UART と連携
することで LIN スレーブ動作時のボーレート測定が可能です。
ICE01 ∼ ICE67 とチャネル名 , および入力端子 (UART) 名の対応を下記に示します。
ICE01: インプットキャプチャ ch.0, ch.1
IN0(/UART0)
IN1(/UART1)
ICE23: インプットキャプチャ ch.2, ch.3
IN2
IN3
ICE45: インプットキャプチャ ch.4, ch.5
IN4
IN5
ICE67: インプットキャプチャ ch.6, ch.7
IN6(/UART2)
IN7(/UART3)
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
283
第 10 章 インプットキャプチャ
10.2
MB90930 シリーズ
■ インプットキャプチャエッジレジスタ (ICE)
図 10.2-6 インプットキャプチャエッジレジスタ (ICE)
ICE01
アドレス: 000069H
bit15 bit14 bit13 bit12 bit11 bit10 bit9
bit8
ICUS1
ICUS0 IEI1
IEI0
R/W
R/W
初期値
R
XXX0X0XX B
bit10
ICUS0 入力信号選択ビット 0
R
0
1
外部端子 IN0 入力信号
UART0 からの信号
bit12
ICUS1 入力信号選択ビット 1
0
外部端子 IN1 入力信号
1
UART1 からの信号
ICE23
アドレス:00006BH
ICE45
アドレス:0000D1H
ICE67
bit15 bit14 bit13 bit12 bit11 bit10 bit9
bit8
IEI3
IEI2
R
R
bit15 bit14 bit13 bit12 bit11 bit10 bit9
bit8
IEI5
IEI4
R
R
初期値
XXXXXXXX B
初期値
bit15 bit14 bit13 bit12 bit11 bit10 bit9
bit8
ICUS7
ICUS6 IEI7
IEI6
R/W
R/W
アドレス:0000D3H
R/W : リード / ライト可能
: リードオンリ
R
: 不定
X
: 不定値
: 初期値
XXXXXXXX B
初期値
R
XXX0X0XX B
R
bit8
IEIn 検出エッジ表示ビット n
0 立下りエッジ検出
1 立上りエッジ検出
bit9
IEIm 検出エッジ表示ビット m
0 立下りエッジ検出
1 立上りエッジ検出
bit10
ICUS6
入力信号選択ビット 6
0
外部端子 IN6 入力信号
1
UART2 からの信号
bit12
ICUS7
入力信号選択ビット 7
0
外部端子 IN7 入力信号
1
UART3 からの信号
n = 0, 2, 4, 6 m = n+1
284
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 10 章 インプットキャプチャ
10.2
MB90930 シリーズ
表 10.2-1 インプットキャプチャエッジレジスタ 0/1(ICE01) の機能
ビット名
bit15
∼
bit13
bit12
機能
未定義ビット
読み出した場合 : 値は不定です。
書き込んだ場合 : 影響しません。
ICUS1:
入力信号選択ビット 1
インプットキャプチャ 1 のトリガとして使用される入力信号を選択します。
"0" に設定した場合 : 外部端子 IN1 を選択します。
"1" に設定した場合 : LIN-UART1 を選択します。
bit11
未定義ビット
読み出した場合 : 値は不定です。
書き込んだ場合 : 影響しません。
bit10
ICUS0:
入力信号選択ビット 0
インプットキャプチャ 0 のトリガとして使用される入力信号を選択します。
"0" に設定した場合 : 外部端子 IN0 を選択します。
"1" に設定した場合 : LIN-UART0 を選択します。
bit9
IEI1:
検出エッジ表示ビット 1
インプットキャプチャ 1 が検出したエッジの種類 ( 立上り / 立下り ) を表示します。
• 本ビットはリードオンリです。
"0": 立下りエッジが検出されたことを示します。
"1": 立上りエッジが検出されたことを示します。
( 注意事項 )
本ビットの値はキャプチャ動作停止時 (ICS01: EG11, EG10=00B) には無効です。
bit8
IEI0:
検出エッジ表示ビット 0
インプットキャプチャ 0 が検出したエッジの種類 ( 立上り / 立下り ) を表示します。
• 本ビットはリードオンリです。
"0": 立下りエッジが検出されたことを示します。
"1": 立上りエッジが検出されたことを示します。
( 注意事項 )
本ビットの値はキャプチャ動作停止時 (ICS01: EG01, EG00=00B) には無効です。
表 10.2-2 インプットキャプチャエッジレジスタ 2/3, 4/5(ICE23, ICE45) の機能
ビット名
bit15
∼
bit10
bit9
bit8
機能
未定義ビット
読み出した場合 : 値は不定です。
書き込んだ場合 : 影響しません。
IEI3, IEI5:
検出エッジ表示ビット 3,
5
インプットキャプチャ 3, 5 が検出したエッジの種類 ( 立上り / 立下り ) を表示しま
す。
• 本ビットはリードオンリです。
"0": 立下りエッジが検出されたことを示します。
"1": 立上りエッジが検出されたことを示します。
( 注意事項 )
本ビットの値はキャプチャ動作停止時 (ICSnm:EGm1, EGm0=00B) には無効です。
(n = 2, 4 m = n+1)
IEI2, IEI4:
検出エッジ表示ビット 2,
4
インプットキャプチャ 2, 4 が検出したエッジの種類 ( 立上り / 立下り ) を表示しま
す。
• 本ビットはリードオンリです。
"0": 立下りエッジが検出されたことを示します。
"1": 立上りエッジが検出されたことを示します。
( 注意事項 )
本ビットの値はキャプチャ動作停止時 (ICSnm:EGn1, EGn0=00B) には無効です。
(n = 2, 4 m = n+1)
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
285
第 10 章 インプットキャプチャ
10.2
MB90930 シリーズ
表 10.2-3 インプットキャプチャエッジレジスタ 6/7(ICE67) の機能
ビット名
bit15
∼
bit13
bit12
機能
未定義ビット
読み出した場合 : 値は不定です。
書き込んだ場合 : 影響しません。
ICUS7:
入力信号選択ビット 7
インプットキャプチャ 7 のトリガとして使用される入力信号を選択します。
"0" に設定した場合 : 外部端子 IN7 を選択します。
"1" に設定した場合 : LIN-UART3 を選択します。
bit11
未定義ビット
読み出した場合 : 値は不定です。
書き込んだ場合 : 影響しません。
bit10
ICUS6:
入力信号選択ビット 60
インプットキャプチャ 6 のトリガとして使用される入力信号を選択します。
"0" に設定した場合 : 外部端子 IN6 を選択します。
"1" に設定した場合 : LIN-UART2 を選択します。
bit9
IEI7:
検出エッジ表示ビット 7
インプットキャプチャ 7 が検出したエッジの種類 ( 立上り / 立下り ) を表示します。
• 本ビットはリードオンリです。
"0": 立下りエッジが検出されたことを示します。
"1": 立上りエッジが検出されたことを示します。
( 注意事項 )
本ビットの値はキャプチャ動作停止時
(ICS67: EG71, EG70=00B) には無効です。
bit8
IEI6:
検出エッジ表示ビット 6
インプットキャプチャ 6 が検出したエッジの種類 ( 立上り / 立下り ) を表示します。
• 本ビットはリードオンリです。
"0": 立下りエッジが検出されたことを示します。
"1": 立上りエッジが検出されたことを示します。
( 注意事項 )
本ビットの値はキャプチャ動作停止時
(ICS67: EG61, EG60=00B) には無効です。
<注意事項>
インプットキャプチャ 0, 1, 6, 7 において入力信号を LIN-UART に選択 (ICEnm:ICUS) した場合には
インプットキャプチャは LIN-UART が LIN スレーブ動作時のボーレート計算に使用されます。この
場 合 に は イ ン プ ッ ト キ ャ プ チ ャ 割 込 み 許 可 (ICSnm:ICEn=1 ま た は ICEm=1), 両 エ ッ ジ 検 出
(ICSnm:EGn1, EGn0=11B または EGm1, EGm0=11B) に設定する必要があります。ボーレート計算の
詳細については「17.7.3 LIN 機能 ( 動作モード 3) の動作」を参照してください。
n = 0, 2, 4, 6
m = n+1
286
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 10 章 インプットキャプチャ
10.2
MB90930 シリーズ
10.2.3
16 ビットフリーランタイマのレジスタ詳細説明
16 ビットフリーランタイマのレジスタには , 次の 3 つのレジスタがあります。
• タイマデータレジスタ (TCDT)
• コンペアクリアレジスタ (CPCLR)
• タイマ制御ステータスレジスタ (TCCSH, TCCSL)
■ タイマデータレジスタ (TCDT)
図 10.2-7 タイマデータレジスタ (TCDT) の構成
タイマデータレジスタ上位
bit15
T15
アドレス : 000027H
R/W
(0)
初期値 →
bit14
T14
bit13
T13
bit12
T12
bit11
T11
bit10
T10
bit9
T09
bit8
T08
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
タイマデータレジスタ下位
bit7
T07
アドレス : 000026H
bit6
T06
bit5
T05
bit4
T04
bit3
T03
bit2
T02
bit1
T01
bit0
T00
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
(0)
(0)
(0)
(0)
(0)
(0)
(0)
(0)
初期値 →
TCDT
TCDT
R/W: リード / ライト可能
16 ビットフリーランタイマのカウント値を読み出すことのできるレジスタです。カウンタ値は ,
リセット時に "0000H" にクリアされます。このレジスタに書き込むことでタイマ値を設定できま
すが , 必ず停止 (STOP=1) 状態で書き込んでください。このレジスタは , ワードアクセスしてくだ
さい。16 ビットフリーランタイマの初期化は次の要因で行われます。
• リセットによる初期化
• タイマ制御ステータスレジスタのクリア (CLR) による初期化
• コンペアクリアレジスタ値とタイマカウンタ値の一致による初期化 ( モード設定が必要です )
■ コンペアクリアレジスタ (CPCLR)
図 10.2-8 コンペアクリアレジスタ (CPCLR) の構成
コンペアクリアレジスタ上位
bit15
CL15
アドレス : 000025H
bit14
CL14
bit13
CL13
bit12
CL12
bit11
CL11
bit10
CL10
bit9
CL09
bit8
CL08
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
コンペアクリアレジスタ下位
bit7
CL07
アドレス : 000024H
bit6
CL06
bit5
CL05
bit4
CL04
bit3
CL03
bit2
CL02
bit1
CL01
bit0
CL00
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
R/W
(X)
初期値 →
初期値 →
CPCLR
CPCLR
R/W: リード / ライト可能
X:
不定値
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
287
第 10 章 インプットキャプチャ
10.2
MB90930 シリーズ
16 ビットフリーランタイマと比較する 16 ビット長のコンペアレジスタです。本レジスタ値は , 初
期値不定ですので動作許可する場合には値を設定してから動作を許可してください。本レジスタ
は , ワードアクセスしてください。タイマ制御ステータスレジスタ (TCCSH, TCCSL) の MODE ビッ
トに "1" を設定している場合は , 本レジスタ値と 16 ビットフリーランタイマ値が一致したときに
16 ビットフリーランタイマ値を "0000H" にクリアします。また , 本レジスタ値と 16 ビットフリー
ランタイマ値が一致したとき , コンペアクリア割込みフラグをセットします。コンペアクリア割
込みフラグが "1" のときに割込み動作を許可している場合は , CPU に対して割込み要求を行いま
す。
■ タイマ制御ステータスレジスタ (TCCSH, TCCSL)
図 10.2-9 タイマ制御ステータスレジスタ (TCCSH, TCCSL) の構成
タイマ制御ステータスレジスタ上位
bit15
bit14
ECKE
予約
アドレス : 000029H
R/W
(0)
(-)
初期値 →
タイマ制御ステータスレジスタ下位
bit7
bit6
IVF
IVFE
アドレス : 000028H
初期値 →
R/W
(0)
R/W
(0)
bit13
-
bit12
MSI2
bit11
MSI1
bit10
MSI0
bit9
ICLR
bit8
ICRE
(-)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
bit5
STOP
bit4
MODE
bit3
SCLR
bit2
CLK2
bit1
CLK1
bit0
CLK0
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
R/W
(0)
TCCS
TCCS
R/W: リード / ライト可能
-:
未定義
[bit15]: ECKE
16 ビットフリーランタイマのカウントクロックソースを内部にするか , 外部にするかを選択す
るビットです。ECKE ビットに書込み後 , すぐにクロックは変更されますので , インプットキャ
プチャが停止状態で変更してください。
0
1
内部クロックソースを選択 ( 初期値 )
外部端子 (FRCK) よりクロックを入力
<注意事項>
内部クロックを選択した場合は , bit2 ∼ bit0(CLK2 ∼ CLK0) にカウントクロックを設定してくださ
い。このカウントクロックがベースクロックとなります。また , FRCK よりクロックを入力する場合
には DDR5 の bit6=0 に設定してください。
[bit14]: 予約ビット
書込み時は常に "1" を設定してください 読出し時は常に "1" を読み出します。
[bit13]: 未定義ビット
読出し値は , 不定です。書込みは動作に影響を与えません。
[bit12 ∼ bit10]: MSI2 ∼ MSI0
コンペアクリア割込みをマスクする回数を設定するビットです。3 ビットのリロードカウンタ
で構成され , カウンタの値が "000B" になるたびにカウント値をリロードします。また , 本レジ
288
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 10 章 インプットキャプチャ
10.2
スタ書込み時にもカウンタ値をロードします。マスク回数 = 設定回数となります ( 例 : 2 回マ
スクし 3 回目で割込み処理をする場合の設定値 "010B")。ただし , "000B" を設定すると割込み
要因はマスクされません。
[bit9]: ICLR
コンペアクリアの割込み要求フラグです。コンペアクリアレジスタ値と 16 ビットフリーランタ
イマ値がコンペア一致した場合に ICLR ビットは "1" にセットされます。割込み要求許可ビット
(bit8: ICRE) がセットされていると割込みが発生します。ICLR ビットは "0" 書込みによりクリア
されます。"1" 書込みは意味を持ちません。リードモディファイライト (RMW) 系命令では , 常
に "1" が読み出されます。
0
1
割込み要求なし ( 初期値 )
割込み要求あり
[bit8]: ICRE
コンペアクリアの割込み許可ビットです。ICRE ビットが "1" の場合に割込みフラグ (bit9: ICLR)
が "1" にセットされると割込みが発生します。
0
1
割込み禁止 ( 初期値 )
割込み許可
[bit7]: IVF
16 ビットフリーランタイマの割込み要求フラグです。16 ビットフリーランタイマがオーバフ
ローを起こした場合に IVF ビットは "1" にセットされます。割込み要求許可ビット (bit6: IVFE)
がセットされていると割込みが発生します。IVF ビットは "1" 書込みによりクリアされます。
"1" 書込みは意味を持ちません。リードモディファイライト (RMW) 系命令では , 常に "1" が読
み出されます。
0
1
割込み要求なし ( 初期値 )
割込み要求あり
[bit6]: IVFE
16 ビットフリーランタイマの割込み許可ビットです。IVFE ビットが "1" の場合に割込みフラ
グ (bit7: IVF) が "1" にセットされると割込みが発生します。
0
1
割込み禁止 ( 初期値 )
割込み許可
[bit5]: STOP
16 ビットフリーランタイマのカウントを停止するためのビットです。"1" 書込み時にはタイマ
のカウントは停止します。"0" 書込み時にタイマのカウントを開始します。
0
1
カウント許可 ( 動作 ) ( 初期値 )
カウント禁止 ( 停止 )
[bit4]: MODE
16 ビットフリーランタイマの初期化条件を設定します。"0" の場合は , リセットとクリアビッ
ト (bit3:SCLR) でカウンタ値を初期化できます。"1" の場合は , リセットとクリアビット
(bit3:SCLR) のほかにコンペアクリアレジスタ (CPCLR) の値との一致によりカウンタ値を初期
化することができます。
カウンタ値の初期化は , カウント値の変化点で行われます。
0
1
CM44-10150-1
リセット , クリアビットによる初期化 ( 初期値 )
リセット , クリアビット , コンペアクリアレジスタによる初期化
FUJITSU MICROELECTRONICS LIMITED
289
第 10 章 インプットキャプチャ
10.2
MB90930 シリーズ
[bit3]: SCLR
動作中の 16 ビットフリーランタイマ値を "0000H" に初期化するためのビットです。"1" 書込み
時にカウンタを "0000H" に初期化します。"0" を書き込んでも意味を持ちません。読出し値は
常に "0" です。カウンタ値の初期化は , カウント値の変化点で行われます。
タイマ停止中に初期化する場合は , データレジスタに "0000H" を書き込んでください。
SCLR
0
1
フラグの意味
意味を持ちません ( 初期値 )
カウンタ値を "0000H" に初期化します。
<注意事項>
"1" を書き込んだ後 , 次のカウントクロックまでにこのビットへの "0" 書込みを行うと , カウンタ値の
初期化は行われません。
[bit2 ∼ bit0]: CLK2 ∼ CLK0
16 ビットフリーランタイマのカウントクロックを選択するビットです。CLK ビットに書込み
後 , すぐにクロックが変更されますので , インプットキャプチャが停止状態で変更してくださ
い。
CLK2
CLK1
CLK0
0
0
0
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
1
1
1
φ: マシンクロック
290
カウントクロック
φ
φ/2
φ/4
φ/8
φ/16
φ/32
φ/64
φ/128
φ= 32MHz
31.25 ns
62.5 ns
0.125 μs
0.25 μs
0.5 μs
1 μs
2 μs
4 μs
φ= 8MHz
125 ns
0.25 μs
0.5 μs
1 μs
2 μs
4 μs
8 μs
16 μs
FUJITSU MICROELECTRONICS LIMITED
φ= 4MHz
0.25 μs
0.5 μs
1 μs
2 μs
4 μs
8 μs
16 μs
32 μs
φ= 1MHz
1 μs
2 μs
4 μs
8 μs
16 μs
32 μs
64 μs
128 μs
CM44-10150-1
第 10 章 インプットキャプチャ
10.3
MB90930 シリーズ
10.3
動作説明
インプットキャプチャの動作について説明します。
■ 動作説明
● 16 ビットフリーランタイマ
16 ビットフリーランタイマは , リセット解除後にカウンタ値 "0000H" よりカウントを開始します。
このカウンタ値が , 16 ビットインプットキャプチャの基準時間となります。
● 16 ビットインプットキャプチャ
■
16 ビットインプットキャプチャは設定された有効エッジを検出すると , 16 ビットフリーランタイ
マの値をキャプチャレジスタに取り込んで割込みを発生することができます。
インプットキャプチャの割込みと EI2OS
表 10.3-1 に , インプットキャプチャの割込みと EI2OS を示します。
表 10.3-1 インプットキャプチャの割込みと EI2OS
チャネル
割込み番号
割込みレベル設定レジスタ
ベクタテーブルのアドレス
EI2OS
レジスタ名
アドレス
下位
上位
バンク
FFFFC2H
*
インプットキャプチャ 0
#15 (0FH)
ICR02
0000B2H
FFFFC0H
FFFFC1H
インプットキャプチャ 1
#19 (13H)
ICR04
0000B4H
FFFFB0H
FFFFB1H
FFFFB2H
*
インプットキャプチャ 2
#21 (15H)
ICR05
0000B5H
FFFFA8H
FFFFA9H
FFFFAAH
*
インプットキャプチャ 3 ∼ 7
#23 (17H)
ICR06
0000B6H
FFFFA0H
FFFFA1H
FFFFA2H
*
フリーランタイマオーバフロー
0000BAH
FFFF80H
FFFF81H
FFFF82H
#31 (1FH)
ICR10
フリーランタイマクリア
× : 使用不可
* : ICR02, ICR04, ICR05, ICR06, または割込みベクタを共有する割込み要因を使用しない場合には使用可能
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
291
×
第 10 章 インプットキャプチャ
10.3
10.3.1
MB90930 シリーズ
16 ビットインプットキャプチャ
16 ビットインプットキャプチャは設定された有効エッジを検出すると , 16 ビットフリーラン
タイマの値をキャプチャレジスタに取り込んで割込みを発生することができます。
■ 16 ビットインプットキャプチャの動作
図 10.3-1 インプットキャプチャの取込みタイミング例
カウンタ値
FFFFH
BFFFH
7FFFH
3FFFH
時間
0000H
リセット
IN0
IN1
IN例
データレジスタ0
不定
3FFFH
不定
データレジスタ1
不定
データレジスタ例
BFFFH
BFFFH
7FFFH
キャプチャ0割込み
キャプチャ1割込み
キャプチャ例割込み
キャプチャ0=立上りエッジ
キャプチャ1=立下りエッジ
キャプチャ例=両エッジ(例として)
再度有効エッジにより割込み
ソフトウェアにより割込み
■ 16 ビットインプットキャプチャの入力タイミング
図 10.3-2 入力信号に対するキャプチャタイミング
カウンタ値
インプット
キャプチャ入力
キャプチャ信号
N
N+1
有効エッジ
キャプチャ
レジスタ値
N+1
割込み
292
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
10.3.2
16 ビットフリーランタイマ
第 10 章 インプットキャプチャ
10.3
16 ビットフリーランタイマは , リセット解除後にカウンタ値 "0000H" よりカウントを開始し
ます。このカウンタ値が , 16 ビットインプットキャプチャの基準時間となります。
■ 16 ビットフリーランタイマの動作説明
カウンタ値は , 次の条件でクリアされます。
• オーバフロー発生時
• コンペアクリアレジスタ値との比較一致時 ( モード設定が必要 )
• 動作中に TCCSH, TCCSL レジスタの SCLR ビットへの "1" 書込み
• タイマ停止中の TCDT への "0000H" 書込み
割込みは , オーバフローが発生したとき, コンペアクリアレジスタ値とフリーランタイマが比較一
致したときに発生します ( 比較一致割込みは , モード設定が必要です )。
図 10.3-3 オーバフローによるカウンタクリア
カウンタ値
FFFFH
BFFFH
7FFFH
3FFFH
時間
0000H
リセット
割込み
図 10.3-4 コンペアクリアレジスタ値と比較一致した場合のカウンタクリア
カウンタ値
FFFFH
一致
BFFFH
一致
7FFFH
3FFFH
時間
0000H
リセット
コンペア
レジスタ値
BFFFH
割込み
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
293
第 10 章 インプットキャプチャ
10.3
MB90930 シリーズ
■ 16 ビットフリーランタイマのクリアタイミング
カウンタのクリアは , リセット , ソフトウェア , コンペアクリアレジスタとの一致で行われます。
リセットでのカウンタクリアは, クリア発生とともに行われますが, コンペアクリアレジスタとの
一致とソフトウェアによるカウンタクリアはカウントタイミングに同期して行われます。
図 10.3-5 16 ビットフリーランタイマのクリアタイミング
コンペアクリア
レジスタ値
コンペアラッチ
カウンタ値
N
N
0000H
■ 16 ビットフリーランタイマのカウントタイミング
16 ビットフリーランタイマは , 入力されたクロック ( 内部または外部クロック ) によりカウント
アップされます。外部クロック選択時は , 立上りエッジ↑でカウントされます。
図 10.3-6 16 ビットフリーランタイマのカウントタイミング
外部クロック入力
カウントクロック
カウンタ値
294
N
FUJITSU MICROELECTRONICS LIMITED
N+1
CM44-10150-1
第 11 章
16 ビットリロードタイマ
16 ビットリロードタイマの機能と動作について説
明します。
11.1 16 ビットリロードタイマの概要
11.2 16 ビットリロードタイマの構成
11.3 16 ビットリロードタイマの端子
11.4 16 ビットリロードタイマのレジスタ
11.5 16 ビットリロードタイマの割込み
11.6 16 ビットリロードタイマの動作説明
11.7 16 ビットリロードタイマ使用上の注意
11.8 16 ビットリロードタイマのプログラム例
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
295
第 11 章 16 ビットリロードタイマ
11.1
11.1
MB90930 シリーズ
16 ビットリロードタイマの概要
16 ビットリロードタイマは , 3 種類の内部クロックに同期してカウントダウンする
内部クロックモードと , 外部端子に入力されたパルスの任意エッジを検出してカウ
ントダウンするイベントカウントモードがあり , どちらかの機能を選択できます。
このタイマは , カウンタの値が 0000H から FFFFH になる場合をアンダフローと定義
しています。したがって , 〔リロードレジスタの設定値+ 1〕カウントでアンダフ
ローが発生します。
カウンタ動作としては , アンダフローで , カウント設定値を再ロードしてカウントを
繰り返すリロードモードと , アンダフローでカウントを停止するワンショットモー
ドを選択できます。カウンタのアンダフローで割込みを発生させることができ , 拡
張インテリジェント I/O サービス (EI2OS) にも対応しています。
■ 16 ビットリロードタイマの動作モード
16 ビットリロードタイマの動作モードは , 表 11.1-1 に示すとおりです。
表 11.1-1 16 ビットリロードタイマの動作モード
クロックモード
カウンタ動作
16 ビットリロードタイマの動作
リロードモード
ソフトトリガ動作
外部トリガ動作
外部ゲート入力動作
内部クロックモード
ワンショットモード
イベントカウントモード
( 外部クロックモード )
リロードモード
ソフトトリガ動作
ワンショットモード
■ 内部クロックモード
カウントクロックとして , 3 種類の内部クロックから 1 種類を選択し , 次のいずれかの
動作を選択できます。
● ソフトトリガ動作
タイマ制御ステータスレジスタ (TMCSR0 ∼ TMCSR3) の TRG ビットに "1" を書き込む
と , カウント動作を開始します。TRG ビットによるトリガ入力は , 外部トリガ入力時お
よび外部ゲート入力時にも常に有効です。
● 外部トリガ動作
選択されたエッジ ( 立上り , 立下り , 両エッジ ) が TIN0 ∼ TIN3 端子に入力された場合
にカウント動作を開始します。
● 外部ゲート入力動作
選択された信号レベル ("L" または "H") が TIN0 ∼ TIN3 端子に入力されている間 , カウ
ント動作を続行します。
296
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 11 章 16 ビットリロードタイマ
11.1
MB90930 シリーズ
■ イベントカウントモード ( 外部クロックモード )
選択された有効エッジ ( 立上り , 立下り , 両エッジ ) が TIN0/TIN1/TIN2/TIN3 端子に入
力されると , そのエッジでカウントダウンする機能です。一定周期の外部クロックを使
用した場合は , インターバルタイマとしても使用できます。
■ カウンタ動作
● リロードモード
カウントダウンで , アンダフロー (0000H → FFFFH) が発生すると , カウント設定値が再
ロードされてカウント動作を継続します。アンダフローで , 割込み要求を発生させるこ
とができるので , インターバルタイマとして使用できます。また , アンダフローごとに
反転するトグル波形を , TOT0/TOT1/TOT2/TOT3 端子から出力できます。表 11.1-2 に
16 ビットリロードタイマのインターバル時間を示します。
表 11.1-2 16 ビットリロードタイマのインターバル時間
カウントクロック
内部クロック
外部クロック
カウントクロック周期
インターバル時間
21/φ (0.0625 μs)
0.0625 μs ∼ 4.096 ms
23/φ (0.25 μs)
0.25 μs ∼ 16.384 ms
25/φ (1.0 μs)
1.0 μs ∼ 65.54 ms
23/φ 以上 (0.5 μs)
0.25 μs 以上
φ: マシンクロック ( ) 内は , マシンクロック 32MHz 動作時の値です。
● ワンショットモード
カウントダウンで , アンダフロー (0000H → FFFFH) が発生するとカウント動作を停止
します。アンダフローで割込みを発生させることができます。また , カウンタの動作中
は , カウント中を示す矩形波を TOT0, TOT1, TOT2, TOT3 端子から出力できます。
<参考>
• 16 ビットリロードタイマは , UART のボーレート作成に使用できます。
• 16 ビットリロードタイマは , A/D コンバータの起動トリガに使用できます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
297
第 11 章 16 ビットリロードタイマ
11.1
MB90930 シリーズ
■ 16 ビットリロードタイマの割込みと EI2OS
表 11.1-3 に , 16 ビットリロードタイマの割込みと EI2OS について示します。
表 11.1-3 16 ビットリロードタイマの割込みと EI2OS
割込み制御レジスタ
チャネル
ベクタテーブルのアドレス
EI2OS
割込み番号
レジスタ名
アドレス
下位
上位
バンク
16 ビット
リロードタイマ 0
#17 (11H)
ICR03
0000B3H
FFFFB8H
FFFFB9H
FFFFBAH
△
16 ビット
リロードタイマ 1
#28 (1CH)
ICR08
0000B8H
FFFF8CH
FFFF8DH
FFFF8EH
△
16 ビット
リロードタイマ 2
#18 (12H)
ICR03
0000B3H
FFFFB4H
FFFFB5H
FFFFB6H
△
16 ビット
リロードタイマ 3
#22 (16H)
ICR05
0000B5H
FFFFA4H
FFFFA5H
FFFFA6H
△
△ : ICR03, ICR08, ICR05 または割込みベクタを共有する割込み要因を使用しない場合には使用可能
298
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
11.2
16 ビットリロードタイマの構成
第 11 章 16 ビットリロードタイマ
11.2
16 ビットリロードタイマは , 次の 7 つのブロックで構成されています。
• カウントクロック生成回路
• リロード制御回路
• 出力制御回路
• 動作制御回路
• 16 ビットタイマレジスタ (TMR0, TMR1, TMR2, TMR3)
• 16 ビットリロードレジスタ (TMRLR0, TMRLR1, TMRLR2, TMRLR3)
• タイマ制御ステータスレジスタ (TMCSR0L, TMCSR1L, TMCSR2L, TMCSR3L/
TMCSR0H, TMCSR1H, TMCSR2H, TMCSR3H)
■ 16 ビットリロードタイマのブロックダイヤグラム
図 11.2-1 に , 16 ビットリロードタイマのブロックダイヤグラムを示します。
図 11.2-1 16 ビットリロードタイマのブロックダイヤグラム
内部データバス
TMRLR0*1
<TMRLR1/TMRLR2/TMRLR3>
16ビットリロードレジスタ
リロード信号
TMR0*1
<TMR1,TMR2,TMR3>
リロード
制御回路
UF
16ビットタイマレジスタ(ダウンカウンタ) カウントクロック生成回路
プリ
3
スケーラ
CLK
ゲート
入力
有効
クロック
判定回路
クリア
ウェイト信号
UART0,UART1へ*1
<A/Dコンバータへ>
CLK
内部
クロック
クロック
セレクタ
入力制御
回路
端子
P12/TIN0*1
<P07/TIN1>
<P14/TIN2>
<PE1/TIN3>
出力制御回路
出力信号
反転 生成回路
端子
3
2
セレクト
信号
動作
制御回路
機能選択
-
-
-
予約 CSL1 CSL0 MOD2 MOD1 MOD0 OUTE OUTL RELD INTE
タイマ制御ステータスレジスタ(TMCSR0)*1
<TMCSR1/2/3>
*1:ch.0~ch.3があり,< >内はch.1~ch.3について示します。
*2:割込み番号
CM44-10150-1
P11/TOT0*1
<P06/TOT1>
<PD6/TOT2>
<PE0/TOT3>
EN
外部クロック
UF
CNTE TRG
割込み要求信号
#17(11H)*2
<#28(1CH)/#18(12H)/#22(16H)>
FUJITSU MICROELECTRONICS LIMITED
299
第 11 章 16 ビットリロードタイマ
11.2
MB90930 シリーズ
● カウントクロック生成回路
マシンクロックまたは外部入力クロックから , 16 ビットリロードタイマのカウントク
ロックを生成します。
● リロード制御回路
タイマ起動時とアンダフロー発生時のリロード動作を制御します。
● 出力制御回路
16 ビットタイマレジスタのアンダフローによる TOT 端子出力の反転制御と , TOT 端子
出力を許可 / 禁止を制御します。
● 動作制御回路
16 ビットリロードタイマの起動 / 停止を制御します。
● 16 ビットタイマレジスタ (TMR0, TMR1, TMR2, TMR3)
16 ビットのダウンカウンタです。読出しをすると , 現在のカウンタ値が読み出されま
す。
● 16 ビットリロードレジスタ (TMRLR0, TMRLR1, TMRLR2, TMRLR3)
16 ビットリロードタイマのインターバル時間を設定するレジスタです。このレジスタ
の設定値が 16 ビットタイマレジスタにロードされてカウントダウンされます。
● タイマ制御ステータスレジスタ (TMCSR0L, TMCSR1L, TMCSR2L, TMCSR3L/TMCSR0H,
TMCSR1H, TMCSR2H, TMCSR3H)
16ビットリロードタイマのカウントクロックの選択, 動作モードの選択, 動作条件の設
定 , ソフトウェアによるトリガ起動 , カウント動作の許可 / 禁止 , リロード / ワンショッ
トのモード選択 , 端子出力レベルの選択 , タイマ出力の許可 / 禁止 , 割込み制御および
状態の確認をします。
300
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
11.3
16 ビットリロードタイマの端子
第 11 章 16 ビットリロードタイマ
11.3
16 ビットリロードタイマの端子および端子のブロックダイヤグラムを示します。
■ 16 ビットリロードタイマの端子
16 ビットリロードタイマの端子は , 汎用ポートと兼用になっています。表 11.3-1 に端
子の機能 , 入出力形式および 16 ビットリロードタイマ使用時の設定などを示します。
表 11.3-1 16 ビットリロードタイマの端子
端子名
端子機能
入出力形式
P12/TIN0/PPG4
ポート 1 入出力 /
タイマ入力
プルアップ
選択
スタンバイ
制御
端子の使用に
必要な設定
入力ポートに設定
(DDR1:bit2=0)
PPG4 出力禁止
P11/TOT0/PPG3/ ポート 1 入出力 /
IN4
タイマ出力
タイマ出力許可に設定
(TMCSR0L:OUTE=1)
PPG3 出力禁止
PC7/PPG1/TIN1/ ポート C 入出力 /
IN6
タイマ入力
入力ポートに設定
(DDRC:bit7=0)
PPG1 出力禁止
CMOS 出力 /
PC6/PPG0/TOT1/ ポート C 入出力 /
CMOS ヒステリシス
IN7
タイマ出力
入力
なし
あり
タイマ出力許可に設定
(TMCSR1L:OUTE=1)
PPG0 出力禁止
P14/TIN2/IN1
ポート 1 入出力 /
タイマ入力
入力ポートに設定
(DDR1:bit4=0)
PD6/TOT2
ポート D 入出力 /
タイマ出力
タイマ出力許可に設定
(TMCSR2L:OUTE=1)
PE1/TIN3
ポート E 入出力 /
タイマ入力
入力ポートに設定
(DDRE:bit1=0)
PE0/TOT3
ポート E 入出力 /
タイマ出力
タイマ出力許可に設定
(TMCSR3L:OUTE=1)
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
301
第 11 章 16 ビットリロードタイマ
11.3
MB90930 シリーズ
■ 16 ビットリロードタイマの端子のブロックダイヤグラム
図 11.3-1 に , 16 ビットリロードタイマの端子のブロックダイヤグラムを示します。
図 11.3-1 16 ビットリロードタイマの端子のブロックダイヤグラム
周辺機能入力
*
PDR
(ポートデータレジスタ)
*
周辺機能出力
*
周辺機能出力許可
内部データ バ ス
PDRリード
P-ch
出力ラッチ
PDRライト
端子
DDR(ポート方向レジスタ)
N-ch
方向ラッチ
DDRライト
スタンバイ制御(SPL=1)
DDRリード
スタンバイ制御:ストップモードかつSPL=1
*
:周辺機能入出力は周辺機能がある端子だけです。
302
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 11 章 16 ビットリロードタイマ
11.4
MB90930 シリーズ
11.4
16 ビットリロードタイマのレジスタ
16 ビットリロードタイマのレジスタ一覧を示します。
■ 16 ビットリロードタイマのレジスタ一覧
図 11.4-1 に , 16 ビットリロードタイマのレジスタ一覧を示します。
図 11.4-1 16 ビットリロードタイマのレジスタ一覧
アドレス
bit15
bit8
bit7
bit0
16ビットリロード
タイマ0
000051H,000050H
TMCSR0L,TMCSR0H (タイマ制御ステータスレジスタ)
000053H,000052H
*
TMR0/TMRLR0 (16ビットタイマレジスタ/16ビットリロードレジスタ)
16ビットリロード
タイマ1
000055H,000054H
TMCSR1L,TMCSR1H (タイマ制御ステータスレジスタ)
000057H,000056H
*
TMR1/TMRLR1 (16ビットタイマレジスタ/16ビットリロードレジスタ)
アドレス
bit15
bit8
bit7
bit0
16ビットリロード
タイマ2
0000D5H,0000D4H
TMCSR2L,TMCSR2H (タイマ制御ステータスレジスタ)
003951H,003950H
*
TMR2/TMRLR2 (16ビットタイマレジスタ/16ビットリロードレジスタ)
16ビットリロード
タイマ3
0000D7H,0000D6H
TMCSR3L,TMCSR3H (タイマ制御ステータスレジスタ)
003953H,003952H
*
TMR3/TMRLR3(16ビットタイマレジスタ/16ビットリロードレジスタ)
*
:読出し時は16ビットタイマレジスタ(TMR)として機能し,書込み時は16ビットリロードレジスタ(TMRLR)
として機能します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
303
第 11 章 16 ビットリロードタイマ
11.4
MB90930 シリーズ
タイマ制御ステータスレジスタ上位
(TMCSR0H ∼ TMCSR3H)
11.4.1
タイマ制御ステータスレジスタ (TMCSR0 ∼ TMCSR3) の上位 bit11 ∼ bit8 と下位
bit7 には , 16 ビットリロードタイマの動作モードの選択 , 動作条件の設定をする機
能があります。下位 bit7 の MOD0 ビットはここで説明します。
■ タイマ制御ステータスレジスタ上位 (TMCSR0H ∼ TMCSR3H)
図 11.4-2 タイマ制御ステータスレジスタ上位 (TMCSR0H ∼ TMCSR3H)
アドレス bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 bit7 bit6
bit0
初期値
TMCSR0
(TMCSR:L)
B
----00000
-
-
- 予約 CSL1 CSL0 MOD2 MOD1 MOD0
000051H
TMCSR1
000055H
-
-
-
R/W
R/W
R/W
R/W
R/W
R/W
TMCSR2
0000D5H
TMCSR3
0000D7H
動作モード選択ビット
(内部クロックモード時)
MOD2
MOD1
MOD0
0
0
0
0
0
1
0
1
0
0
1
1
両エッジ
1
X
0
"L"レベル
1
X
1
MOD2
MOD1
MOD0
X
0
0
入力端子機能
0
1
X
1
0
X
1
1
CSL1 CSL0
R/W
-
X
φ
304
0
0
0
1
1
0
1
1
―
立上りエッジ
トリガ入力
ゲート入力
立下りエッジ
"H"レベル
動作モード選択ビット
(イベントカウントモード時)
入力端子機能
X
有効エッジ,レベル
トリガ禁止
有効エッジ
―
―
立上りエッジ
トリガ入力
立下りエッジ
両エッジ
カウントクロック選択ビット
機能
カウントクロック
21/φ(0.0625μs)
内部クロックモード
23/φ( 0.25μs)
25/φ( 1.0μs)
イベントカウントモード
外部イベント入力
カウントクロック選択ビット
予約
:リード/ライト可能
このビットには常に"1"を書き込んでください。
:未定義
1
読出し時は常に"1"を読出します。
:不定値
:初期値
:マシンクロック,( )内はマシンクロック32MHz動作時の値です。
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 11 章 16 ビットリロードタイマ
11.4
MB90930 シリーズ
表 11.4-1 タイマ制御ステータスレジスタ上位 (TMCSR0H ∼ TMCSR3H) の各ビットの機能説明
ビット名
機能
bit15
∼
bit13
未定義ビット
・読出し時の値は不定です。
・書込みは意味を持ちません。
bit12
予約ビット
・書込み時は常に "1" を設定してください。
・読出し時は常に "1" を読み出します。
bit11,
bit10
CSL1, CSL0:
カウントクロック
選択ビット
・カウントクロックの選択をします。
・これらのビットが "11B" 以外の場合には内部クロックモードになり , 内部ク
ロックをカウントするモードになります。
・これらのビットが "11B" の場合にはイベントカウントモードになり , 外部ク
ロックのエッジをカウントするモードになります。
bit9
∼
bit7
MOD2, MOD1,
MOD0:
動作モード選択
ビット
CM44-10150-1
<内部クロックモード時>
・MOD2 ビットは , 入力端子の機能を選択するビットです。
・MOD2 ビットが "0" の場合に入力端子はトリガ入力端子となり , 有効エッジ
が入力されると , リロードレジスタの内容をカウンタにロードしてカウント
動作を継続します。MOD1, MOD0 ビットで有効エッジの種類を選択します。
・MOD2 ビットが "1" の場合に入力端子はゲート入力になり , 有効レベルが入
力されている間だけカウントをします。
・MOD1 ビットの設定には影響を受けませんので任意の値 ("0" または "1") を設
定してください。
・MOD0 ビットで有効レベルを選択します。
<イベントカウントモード時>
・MOD2 ビットの設定には影響を受けませんので任意の値 ("0" または "1") を設
定してください。
・入力端子は , イベント入力のトリガ入力端子として使用され , MOD1, MOD0
ビットで有効エッジを選択します。
FUJITSU MICROELECTRONICS LIMITED
305
第 11 章 16 ビットリロードタイマ
11.4
MB90930 シリーズ
タイマ制御ステータスレジスタ下位 (TMCSR0L ∼
TMCSR3L)
11.4.2
タイマ制御ステータスレジスタ (TMCSR0 ∼ TMCSR3) の下位 7 ビットは , 16 ビッ
トリロードタイマの動作条件の設定 , 動作の許可と禁止 , 割込み制御および状態の確
認をする機能があります。
■ タイマ制御ステータスレジスタ下位 (TMCSR0L ∼ TMCSR3L)
図 11.4-3 タイマ制御ステータスレジスタ下位 (TMCSR0L ∼ TMCSR3L)
*
アドレス bit15
bit8 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
初期値
TMCSR0L
00000000B
MOD0 OUTE OUTL RELD INTE
UF CNTE TRG
(TMCSR:H)
000050H
TMCSR1L
000054H
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
TMCSR2L
0000D4H
TMCSR3L
0000D6H
TRG
ソフトウェアトリガビット
0
変化なし,ほかへの影響なし
1
リロード後,カウント動作開始
カウント許可ビット
CNTE
0
カウント停止
1
カウント許可(起動トリガ待ち)
UF
アンダフロー割込み要求フラグビット
書込み時
読出し時
0
カウンタのアンダフローなし
このビットのクリア
1
カウンタのアンダフローあり
変化なし,ほかへの影響なし
割込み要求許可ビット
INTE
0
割込み要求出力禁止
1
割込み要求出力許可
リロード選択ビット
RELD
0
ワンショットモード
1
リロードモード
端子出力レベル選択ビット
OUTL
ワンショットモード時
(RELD=0)
リロードモード時
(RELD=1)
0
カウント中"H"の矩形波
カウント開始時"L"のトグル出力
1
カウント中"L"の矩形波
カウント開始時"H"のトグル出力
OUTE
0
端子機能
汎用ポート
タイマ出力許可ビット
各チャネルに対応するレジスタと端子
TMCSR0
P11
TMCSR1
P06
R/W :リード/ライト可能
TOT0
タイマ出力
TOT1
1
:初期値
*
: MOD0 (bit7) に つ いて は「11.4.1 タイ マ 制御 ス テー タ スレ ジ スタ 上 位 (TMCSR0H ∼
TMCSR3H)」を参照してください。
306
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 11 章 16 ビットリロードタイマ
11.4
表 11.4-2 タイマ制御ステータスレジスタ下位 (TMCSR0L ∼ TMCSR3L) の各ビットの機能説明
ビット名
機能
bit6
OUTE:
タイマ出力許可
ビット
・タイマ出力端子の出力の許可 / 禁止をするビットです。
・このビットが "0" の場合には端子は汎用ポートになり , "1" の場合には端子は
タイマ出力端子になります。
・タイマ出力端子の出力波形はリロードモード時トグル出力となり , ワン
ショットモード時はカウント中を示す矩形波出力になります。
bit5
OUTL:
端子出力レベル
選択ビット
・タイマ出力端子の出力レベルを選択するレジスタです。
・このビットが "0" の場合と "1" の場合では , 端子レベルが逆になります。
bit4
RELD:
リロード選択
ビット
・リロード動作を許可するビットです。
・このビットが "1" の場合にはリロードモードになり , アンダフローの発生と
同時にリロードレジスタの内容をカウンタにロードして , カウント動作を続
けます。
・このビットが "0" の場合にはワンショットモードになり , アンダフローの発
生でカウント動作を停止します。
bit3
INTE:
割込み要求許可
ビット
・CPU への割込み要求出力の許可 / 禁止をするビットです。
・このビットと割込み要求フラグビット (UF) が "1" の場合には割込み要求を出
力します。
bit2
UF:
アンダフロー
割込み要求
フラグビット
・カウンタのアンダフローの発生で "1" に設定されます。
・書込み時は "0" でクリアされ , "1" では変化せずにほかへの影響はありませ
ん。
・リードモディファイライト (RMW) 系命令で読出し時は常に "1" が読み出さ
れます。
・このビットは EI2OS の発生でもクリアされます。
bit1
CNTE:
カウント許可
ビット
・カウント動作の許可 / 禁止をするビットです。
・このビットに "1" を設定すると , 起動トリガ待ち状態になります。起動トリ
ガの発生で , 実際のカウントを開始します。
TRG:
ソフトウェア
トリガビット
・インターバルタイマ機能またはカウンタ機能をソフトウェアで起動するビッ
トです。
・このビットへの "1" の書込みでソフトウェアトリガがかかり , リロードレジ
スタの値をカウンタにロードしてカウント動作を開始します。"0" の書込み
は意味を持ちません。
・このビットを読み出すと常に "0" が読み出されます。
・このビットによるトリガ入力は , CNTE=1 の場合には動作モードにかかわら
ず常に有効です。
bit0
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
307
第 11 章 16 ビットリロードタイマ
11.4
MB90930 シリーズ
16 ビットタイマレジスタ (TMR0 ∼ TMR3)
11.4.3
16 ビットタイマレジスタ (TMR0 ∼ TMR3) は , 16 ビットダウンカウンタのカウント
値を常時読み出すことができるレジスタです。
■ 16 ビットタイマレジスタ (TMR0 ∼ TMR3)
図 11.4-4 に , 16 ビットタイマレジスタ (TMR0 ∼ TMR3) のビット構成を示します。
図 11.4-4 16 ビットタイマレジスタ (TMR0 ∼ TMR3) のビット構成
TMR0: 000053H
TMR1: 000057H
TMR0: 000052H
TMR1: 000056H
TMR2: 003951H
TMR3: 003953H
TMR2: 003950H
TMR3: 003952H
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
D15
R
D14
R
D13
R
D12
R
D11
R
D10
R
D9
R
D8
R
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
D7
R
D6
R
D5
R
D4
R
D3
R
D2
R
D1
R
D0
R
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
D15
R
D14
R
D13
R
D12
R
D11
R
D10
R
D9
R
D8
R
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
D7
R
D6
R
D5
R
D4
R
D3
R
D2
R
D1
R
D0
R
初期値
XXXXXXXXB
初期値
XXXXXXXXB
初期値
XXXXXXXXB
初期値
XXXXXXXXB
R : リードオンリ
X : 不定値
16 ビットダウンカウンタのカウンタ値を読み出すことができるレジスタです。カウン
タ動作を許可 (TMCSR0 ∼ TMCSR3 の CNTE=1) し , カウントを開始すると , 16 ビット
リロードレジスタに書き込まれた値が , このレジスタにロードされ , カウントダウンを
開始します。カウンタ停止状態 (TMCSR0 ∼ TMCSR3 の CNTE=0) では , このレジスタ
の値が保持されます。
<注意事項>
• このレジスタの読出しは , カウンタ動作中でもできますが , 必ずワード転送命令
(MOVW A, 003AH など ) を使用してください。
• 必ずワードアクセスしてください。
• 16 ビットタイマレジスタ (TMR0 ∼ TMR3) は , 読出し専用のレジスタですが , 書込み
専用の 16 ビットリロードレジスタ (TMRLR0 ∼ TMRLR3) と同一アドレスに配置され
ています。したがって , 書込みを行うと TMR の値は影響を受けませんが , TMRLR0 ∼
TMRLR3 に対して書込みが行われます。
308
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 11 章 16 ビットリロードタイマ
11.4
MB90930 シリーズ
11.4.4
16 ビットリロードレジスタ (TMRLR0 ∼ TMRLR3)
16 ビットリロードレジスタ (TMRLR0 ∼ TMRLR3) は , 16 ビットダウンカウンタへ
のリロード値を設定するレジスタです。このレジスタに書き込まれた値がダウンカ
ウンタにロードされてカウントダウンされます。
■ 16 ビットリロードレジスタ (TMRLR0 ∼ TMRLR3)
図 11.4-5 に, 16ビットリロードレジスタ (TMRLR0∼TMRLR3) のビット構成を示します。
図 11.4-5 16 ビットリロードレジスタ (TMRLR0 ∼ TMRLR3) のビット構成
TMRLR0: 000053H
TMRLR1: 000057H
TMRLR0: 000052H
TMRLR1: 000056H
TMRLR2: 003951H
TMRLR3: 003953H
TMRLR2: 003950H
TMRLR3: 003952H
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
D15
W
D14
W
D13
W
D12
W
D11
W
D10
W
D9
W
D8
W
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
D7
W
D6
W
D5
W
D4
W
D3
W
D2
W
D1
W
D0
W
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
D15
W
D14
W
D13
W
D12
W
D11
W
D10
W
D9
W
D8
W
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
D7
W
D6
W
D5
W
D4
W
D3
W
D2
W
D1
W
D0
W
初期値
XXXXXXXXB
初期値
XXXXXXXXB
初期値
XXXXXXXXB
初期値
XXXXXXXXB
W : ライトオンリ
X : 不定値
16 ビットリロードタイマの動作モードに関係なく , カウンタ動作を禁止 (TMCSR0 ∼
TMCSR3のCNTE=0) している状態で, このレジスタにカウンタの初期値を設定します。
カウンタ動作を許可 (TMCSR0 ∼ TMCSR3 の CNTE=1) し , カウンタを起動すると , こ
のレジスタに書き込まれた値からカウントダウンを開始します。
16 ビットリロードレジスタ (TMRLR0 ∼ TMRLR3) に設定した値は , リロードモードの
場合 , アンダフローの発生でカウンタにリロードされ , カウントダウンを続行します。
ワンショットモードの場合 , アンダフローの発生でカウンタは "FFFFH" で停止します。
<注意事項>
• このレジスタへの書込みは , カウンタ停止 (TMCSR0 ∼ TMCSR3 の CNTE=0) の状態
で行ってください。また , 必ずワード転送命令 (MOVW 003AH, A など ) で書き込んでく
ださい。
• 必ずワードアクセスしてください。
• 16 ビットリロードレジスタ (TMRLR0 ∼ TMRLR3) は , 機能的には書込み専用のレジス
タですが , 読出し専用の 16 ビットタイマレジスタ (TMR0 ∼ TMR3) と同一アドレスに
配置されています。
したがって , 読出し値は TMR0 ∼ TMR3 の値となるため , INC/DEC
命令などリードモディファイライト (RMW) 動作をする命令は使用できません。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
309
第 11 章 16 ビットリロードタイマ
11.5
11.5
MB90930 シリーズ
16 ビットリロードタイマの割込み
16 ビットリロードタイマは , カウンタのアンダフローで割込み要求を発生させるこ
とができます。また , 拡張インテリジェント I/O サービス (EI2OS) にも対応していま
す。
■ 16 ビットリロードタイマの割込み
16 ビットリロードタイマの割込み制御ビットと割込み要因は , 表 11.5-1 のようになっ
ています。
表 11.5-1 16 ビットリロードタイマの割込み制御ビットと割込み要因
16 ビットリロードタイマ
割込み要求フラグビット
TMCSR0 ∼ TMCSR3:UF
割込み要求許可ビット
TMCSR0 ∼ TMCSR3:INTE
割込み要因
16 ビットダウンカウンタ (TMR0 ∼ TMR3) のアンダフロー
16 ビットリロードタイマでは , ダウンカウンタのアンダフロー (0000H → FFFFH) で , タ
イマ制御ステータスレジスタ (TMCSR0L ∼ TMCSR3L, TMCSR0H ∼ TMCSR3H) の UF
ビットが "1" にセットされます。割込み要求が許可 (TMCSR0 ∼ TMCSR3 の INTE=1)
されていると , 割込みコントローラに割込み要求を出力します。
■ 16 ビットリロードタイマの割込みと EI2OS
表 11.5-2 に , 16 ビットリロードタイマの割込みと EI2OS を示します。
表 11.5-2 16 ビットリロードタイマの割込みと EI2OS
割込み制御レジスタ
チャネル
ベクタテーブルのアドレス
割込み番号
レジスタ名
アドレス
下位
上位
バンク
EI2OS
16 ビット
リロードタイマ 0
#17 (11H)
ICR03
0000B3H
FFFFB8H
FFFFB9H
FFFFBAH
△
16 ビット
リロードタイマ 1
#28 (1CH)
ICR08
0000B8H
FFFF8CH
FFFF8DH
FFFF8EH
△
16 ビット
リロードタイマ 2
#18 (12H)
ICR03
0000B3H
FFFFB4H
FFFFB5H
FFFFB6H
△
16 ビット
リロードタイマ 3
#22 (16H)
ICR05
0000B5H
FFFFA4H
FFFFA5H
FFFFA6H
△
△ : ICR03, ICR05, ICR08 または割込みベクタを共有する割込み要因を使用しない場合には使用可能
■ 16 ビットリロードタイマの EI2OS 機能
16 ビットリロードタイマは EI2OS 対応の回路があります。このためカウンタのアンダ
フローで EI2OS を起動させることができます。ただし , EI2OS は , 割込み制御レジスタ
(ICR) を共有するほかの周辺機能が割込みを使用しない場合にだけ使用可能です。16
ビットリロードタイマ 0 で EI2OS を使用する場合には , DTP/ 外部割込み 1 を , 16 ビッ
トリロードタイマ 1 で EI2OS を使用する場合には , PPG タイマ 1 の割込みを禁止する
必要があります。
310
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 11 章 16 ビットリロードタイマ
11.6
MB90930 シリーズ
11.6
16 ビットリロードタイマの動作説明
16 ビットリロードタイマの設定とカウンタの動作状態について説明します。
■ 16 ビットリロードタイマの設定
● 内部クロックモードの設定
インターバルタイマとして動作させるには , 図 11.6-1 の設定が必要です。
図 11.6-1 内部クロックモードの設定
bit15 bit14 bit13 bit12 bit11 bit10 bit9
TMCSR
−
−
−
−
bit3
bit2
CSL1 CSL0 MOD2 MOD1 MOD0 OUTE OUTL RELD INTE
UF
"11B" 以外
TMRLR
◎
bit8
◎
bit7
◎
bit6
◎
bit5
bit4
◎
◎
◎
◎
bit1
bit0
CNTE TRG
1
◎
bit1
bit0
カウンタの初期値 ( リロード値 ) を設定
◎ : 使用ビット
1 : "1" を設定
● イベントカウントモードの設定
イベントカウンタとして動作させるには , 図 11.6-2 の設定が必要です。
図 11.6-2 イベントカウンタモードの設定
bit15 bit14 bit13 bit12 bit11 bit10 bit9
TMCSR
−
−
−
−
bit3
bit2
CSL1 CSL0 MOD2 MOD1 MOD0 OUTE OUTL RELD INTE
UF
1
TMRLR
1
◎
bit8
◎
bit7
◎
bit6
◎
bit5
bit4
◎
◎
◎
◎
CNTE TRG
1
◎
カウンタの初期値 ( リロード値 ) を設定
DDRE
△
DDRC
△
DDR1
△
△
◎ : 使用ビット
1 : "1" を設定
△ : 使用する端子に対応するビットに "0" を設定
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
311
第 11 章 16 ビットリロードタイマ
11.6
MB90930 シリーズ
■ カウンタの動作状態
カウンタの状態は , タイマ制御ステータスレジスタ (TMCSR0L ∼ TMCSR3L, TMCSR0H ∼
TMCSR3H) の CNTE ビットと内部信号の WAIT 信号で決まります。設定可能な状態と
して , 停止状態 (STOP 状態 ) , 起動トリガ待ち状態 (WAIT 状態 ) , 動作状態 (RUN 状態 )
があります。カウンタ状態遷移図を , 図 11.6-3 に示します。
図 11.6-3 カウンタ状態遷移図
STOP状態
CNTE=0, WAIT=1
TIN端子 :入力禁止
TOT端子 :汎用ポート
リセット
カウンタ :停止時の値を保持
リセット直後は不定
CNTE=0
CNTE=0
CNTE=1
TRG=0
WAIT状態
CNTE=1, WAIT=1
TIN端子:トリガ入力のみ有効
TOT端子:初期値出力
カウンタ:停止時の値を保持
リセット直後ロードするまでは不定
TRG=1
(ソフトトリガ)
TINから外部トリガ
CNTE=1
TRG=1
UF=1&
RELD=0
(ワンショット
モード)
LOAD
RUN状態
CNTE=1, WAIT=0
TIN端子 :TIN端子として機能
TOT端子 :TOT端子として機能
カウンタ
UF=1&
RELD=1
(リロードモード)
CNTE=1, WAIT=0
リロードレジスタの内容をカウンタへロード
:動作
TRG=1
(ソフトトリガ)
ロード終了
:ハードウェアによる状態遷移
WAIT
TRG
CNTE
UF
RELD
312
:レジスタアクセスによる状態遷移
:WAIT信号(内部信号)
:タイマ制御ステータスレジスタ(TMCSR)のソフトウェアトリガビット
:タイマ制御ステータスレジスタ(TMCSR)のカウント許可ビット
:タイマ制御ステータスレジスタ(TMCSR)のアンダフロー割込み要求フラグビット
:タイマ制御ステータスレジスタ(TMCSR)のリロード選択ビット
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 11 章 16 ビットリロードタイマ
11.6
MB90930 シリーズ
11.6.1
内部クロックモード ( リロードモード )
内部カウントクロックに同期して , 16 ビットカウンタをカウントダウンし , カウン
タのアンダフローで CPU に割込み要求を発生します。また , タイマ出力端子からト
グル波形を出力できます。
■ 内部クロックモード ( リロードモード ) の動作
カウント動作を許可 (TMCSR0 ∼ TMCSR3 の CNTE=1) し , ソフトウェアトリガビット
(TMCSR の TRG) または外部トリガでタイマ起動すると , 16 ビットリロードレジスタ
(TMRLR0 ∼ TMRLR3) の値をカウンタにロードしてカウント動作を開始します。カウ
ント許可ビットとソフトウェアトリガビットを同時に "1" にセットするとカウント許
可と同時にカウントを開始します。
カウンタ値がアンダフロー (0000H → FFFFH) すると , 16 ビットリロードレジスタ
(TMRLR0 ∼ TMRLR3) の値をカウンタにロードしてカウント動作を継続します。この
とき , アンダフロー割込み要求フラグビット (UF) を "1" にセットし , 割込み要求許可
ビット (INTE) が "1" の場合には割込み要求を発生します。また , TOT 端子からはアン
ダフローごとに反転するトグル波形を出力できます。
● ソフトウェアトリガ動作
タイマ制御ステータスレジスタ (TMCSR0L ∼ TMCSR3L, TMCSR0H ∼ TMCSR3H) の
TRG ビットに "1" を書き込むとカウンタを起動します。
図 11.6-4 に , リロードモード時のソフトウェアトリガ動作を示します。
図 11.6-4 リロードモード時のソフトウェアトリガ動作
カウント
クロック
カウンタ
リロード
データ
-1
0000H
リロード
データ
-1
0000H
リロード
データ
-1
0000H
リロード
データ
-1
データロード信号
UFビット
CNTEビット
TRGビット
*
T
TOT端子
*
T :マシンサイクル
:トリガ入力からリロードデータロードまで1Tの時間がかかります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
313
第 11 章 16 ビットリロードタイマ
11.6
MB90930 シリーズ
● 外部トリガ動作
有効エッジ ( 立上り , 立下り , 両エッジ選択可能 ) が TIN 端子に入力されると , カウン
タを起動します。図 11.6-5 に , リロードモード時の外部トリガ動作を示します。
図 11.6-5 リロードモード時の外部トリガ動作
カウント
クロック
リロード
データ
カウンタ
-1
0000H
リロード
データ
-1
0000H
リロード
データ
-1
0000H
リロード
データ
-1
データロード信号
UFビット
CNTEビット
TIN端子
2T~2.5T
TOT端子
*
T :マシンサイクル
:外部トリガ入力からリロードデータロードまで,2T~2.5Tの時間がかかります。
*
<注意事項>
TIN0 ∼ TIN3 端子に入力するトリガパルス幅は , データシートの規格に従ってください。
● ゲート入力動作
有効レベル ("H" レベル , "L" レベル選択可能 ) が TIN 端子に入力されている間 , カウン
ト動作をします。図 11.6-6 に , リロードモード時のゲート入力動作を示します。
図 11.6-6 リロードモード時のゲート入力動作
カウント
クロック
カウンタ
リロードデータ
-1
-1
-1
0000H
リロード
データ
-1
-1
データロード信号
UFビット
CNTEビット
TRGビット
*
T
TIN端子
TOT端子
*
T :マシンサイクル
:トリガ入力からリロードデータロードまで1Tの時間がかかります。
<注意事項>
TIN0 ∼ TIN3 端子に入力するゲート入力のパルス幅は , データシートの規格に従ってくだ
さい。
314
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 11 章 16 ビットリロードタイマ
11.6
MB90930 シリーズ
11.6.2
内部クロックモード ( ワンショットモード )
内部カウントクロックに同期して , 16 ビットカウンタをカウントダウンし , カウン
タのアンダフローで CPU に割込み要求を発生します。また , TOT0 ∼ TOT3 端子か
らカウント中を示す矩形波を出力できます。
■ 内部クロックモード ( ワンショットモード ) の動作
カウント動作を許可 (TMCSR0 ∼ TMCSR3 の CNTE=1) し , ソフトウェアトリガビット
(TMCSR0 ∼ TMCSR3 の TRG) または外部トリガでタイマ起動すると , カウント動作を
開始します。カウント許可ビットとソフトウェアトリガビットを同時に "1" にセット
すると , カウント許可と同時にカウントを開始します。カウンタ値がアンダフロー
(0000H → FFFFH) すると , "FFFFH" の状態でカウンタを停止します。このとき , アンダ
フロー割込み要求フラグビット (UF) を "1" にセットし , 割込み要求許可ビット (INTE)
が "1" の場合には割込み要求を発生します。また , TOT 端子からはカウント中を示す矩
形波を出力できます。
● ソフトウェアトリガ動作
タイマ制御ステータスレジスタ (TMCSR0L ∼ TMCSR3L, TMCSR0H ∼ TMCSR3H) の
TRG ビットに "1" を書き込むことで , カウンタを起動します。図 11.6-7 に , ワンショッ
トモード時のソフトウェアトリガ動作を示します。
図 11.6-7 ワンショットモード時のソフトウェアトリガ動作
カウント
クロック
リロード
データ
カウンタ
-1
0000H FFFFH
リロード
データ
リロード
データ
-1
0000H FFFFH
データロード信号
UFビット
CNTEビット
TRGビット
*
T
TOT端子
*
起動トリガ入力待ち
T :マシンサイクル
:トリガ入力からリロードデータロードまで1Tの時間がかかります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
315
第 11 章 16 ビットリロードタイマ
11.6
MB90930 シリーズ
● 外部トリガ動作
有効エッジ ( 立上り , 立下り , 両エッジ選択可能 ) が TIN0 ∼ TIN3 端子に入力されるとカ
ウンタを起動します。図 11.6-8 に , ワンショットモード時の外部トリガ動作を示します。
図 11.6-8 ワンショットモード時の外部トリガ動作
カウント
クロック
カウンタ
リロード
データ
-1
0000H FFFFH
リロード
データ
-1
0000H FFFFH
データロード信号
UFビット
CNTEビット
TIN端子
*
2T~2.5T
TOT端子
起動トリガ入力待ち
T :マシンサイクル
:外部トリガ入力からリロードデータロードまで,2T~2.5Tの時間がかかります。
*
<注意事項>
TIN0 ∼ TIN3 端子に入力するトリガパルス幅は , データシートの規格に従ってください。
● ゲート入力動作
有効レベル ("H" レベル , "L" レベル選択可能 ) が TIN0 ∼ TIN3 端子に入力されている
間 , カウント動作を行います。図 11.6-9 に , ワンショットモード時のゲート入力動作を
示します。
図 11.6-9 ワンショットモード時のゲート入力動作
カウント
クロック
リロード
データ
カウンタ
-1
0000H FFFFH
リロード
データ
-1
0000H FFFFH
データロード信号
UFビット
CNTEビット
TRGビット
T
*
TOT端子
起動トリガ入力待ち
*
T :マシンサイクル
:トリガ入力からリロードデータロードまで1Tの時間がかかります。
<注意事項>
TIN0 ∼ TIN3 端子に入力するゲート入力のパルス幅は , データシートの規格に従ってくだ
さい。
316
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 11 章 16 ビットリロードタイマ
11.6
MB90930 シリーズ
11.6.3
イベントカウントモード
TIN 端子からの入力エッジをカウントして , 16 ビットカウンタをカウントダウンし ,
カウンタのアンダフローで CPU に割込み要求を発生します。また , TOT0 ∼ TOT3
端子からトグル波形または矩形波を出力できます。
■ イベントカウントモード
カウント動作を許可 (TMCSR0 ∼ TMCSR3 の CNTE=1) し , カウンタを起動 (TMCSR0 ∼
TMCSR3 の TRG=1) すると , 16 ビットリロードレジスタ (TMRLR0 ∼ TMRLR3) の値が
カウンタにロードされ, TIN0∼TIN3端子に入力されたパルス (外部カウントクロック)
の有効エッジ ( 立上り , 立下り , 両エッジ選択可能 ) を検出するたびにカウントダウン
します。カウント許可ビットとソフトウェアトリガビットを同時に "1" にセットする
と , カウント許可と同時にカウントを開始します。
● リロードモード時の動作
カウンタ値がアンダフロー (0000H → FFFFH) すると , 16 ビットリロードレジスタ
(TMRLR0 ∼ TMRLR3) の値をカウンタにロードしてカウント動作を継続します。この
ときにアンダフロー割込み要求フラグビット (UF) を "1" にセットし , 割込み要求許可
ビット (TMCSR0 ∼ TMCSR3 の INTE) が "1" の場合には割込み要求を発生します。また
TOT0 ∼ TOT3 端子からは , アンダフローごとに反転するトグル波形を出力できます。
リロードモード時のカウント動作を図 11.6-10 に示します。
図 11.6-10 リロードモード時のカウント動作
TIN端子
リロード
データ
カウンタ
-1
0000H
リロード
データ
-1
0000H
リロード
データ
-1
0000H
リロード
データ
-1
データロード信号
UFビット
CNTEビット
TRGビット
T
*
TOT端子
*
T :マシンサイクル
:トリガ入力からリロードデータロードまで1Tの時間がかかります。
<注意事項>
TIN0 ∼ TIN3 端子に入力されるクロックの "H" 幅および "L" 幅は , データシートの規格に
従ってください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
317
第 11 章 16 ビットリロードタイマ
11.6
MB90930 シリーズ
● ワンショットモード時の動作
カウンタ値がアンダフロー (0000H → FFFFH) すると , "FFFFH" の状態でカウンタを停止
します。このとき , アンダフロー要求フラグビット (UF) が "1" にセットされ , 割込み要
求出力許可ビット (INTE) が "1" の場合には割込み要求を発生します。また , TOT0 ∼
TOT3 端子からは , カウント中を示す矩形波を出力できます。ワンショットモード時の
カウント動作を図 11.6-11 に示します。
図 11.6-11 ワンショットモード時のカウント動作
TIN端子
リロード
データ
カウンタ
-1
0000H FFFFH
リロード
データ
-1
0000H FFFFH
データロード信号
UFビット
CNTEビット
TRGビット
*
T
TOT端子
*
起動トリガ入力待ち
T :マシンサイクル
:トリガ入力からリロードデータロードまで1Tの時間がかかります。
<注意事項>
TIN0 ∼ TIN3 端子に入力されるクロックの "H" 幅および "L" 幅は , データシートの規格に
従ってください。
318
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 11 章 16 ビットリロードタイマ
11.7
MB90930 シリーズ
11.7
16 ビットリロードタイマ使用上の注意
16 ビットリロードタイマを使用する場合の注意点を示します。
■ 16 ビットリロードタイマ使用上の注意
● プログラムで設定する場合の注意
16 ビットリロードレジスタ (TMRLR0 ∼ TMRLR3) への書込みは , カウンタ動作停止
(TMCSR0 ∼ TMCSR3 の CNTE=0) の状態で行ってください。また , 16 ビットタイマレ
ジスタ (TMR0 ∼ TMR3) の読出しは , カウンタ動作中でもできますが , 必ずワード転送
命令 (MOVW A, dir など ) を使用してください。
タイマ制御ステータスレジスタ (TMCSR0L ∼ TMCSR3L, TMCSR0H ∼ TMCSR3H) の
CSL1, CSL0 ビットの変更は , カウンタ停止 (TMCSR0 ∼ TMCSR3 の CNTE=0) の状態
で行ってください。
● 割込みに関連する注意
タイマ制御ステータスレジスタ (TMCSR0L ∼ TMCSR3L, TMCSR0H ∼ TMCSR3H) の
UF ビットが "1" で , 割込み要求許可 (TMCSR0 ∼ TMCSR3 の INTE=1) された状態では ,
割込み処理からは復帰できません。UF ビットを必ずクリアしてください。
16 ビットリロードタイマ 0 は 16 ビットリロードタイマ 2 と , 16 ビットリロードタイマ
1 は PPG タイマ 1 と , 16 ビットリロードタイマ 3 はインプットキャプチャ 2 と割込み
制御レジスタを共有しています。EI2OS を使用する場合には割込み制御レジスタを共
有しているリソースの 割込みを禁止する必要があります。
● スタンバイモード使用時の注意事項
評価品では , スタンバイモードへ移行 , またはスタンバイモードから復帰する際に , 外
部割込みのイネーブル / ディセーブルにかかわらず (ENIR:EN=1 または 0), 外部割込み
要因レジスタの外部割込み要求フラグビット (EIRR:ER) がセットされる可能性があり
ます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
319
第 11 章 16 ビットリロードタイマ
11.8
11.8
MB90930 シリーズ
16 ビットリロードタイマのプログラム例
16 ビットリロードタイマの内部クロックモードとイベントカウントモードのプログ
ラム例を示します。
■ 内部クロックモードのプログラム例
● 処理仕様
16 ビットリロードタイマで , 12.5ms のインターバルタイマ割込みを発生します。
リロードモードで使用し , 繰り返し割込みを発生させます。
外部トリガ入力は使用せず , ソフトウェアトリガで , タイマを起動します。
EI2OS は使用しません。
マシンクロック 32MHz, カウントクロック 1 μs とします。
[ コーディング例 ]
ICR03 EQU
0000B3H
; 割込み制御レジスタ 03
TMCSR EQU
000050H
; タイマ制御ステータスレジスタ
TMR
EQU
000052H
;16 ビットタイマレジスタ
TMRLR EQU
000052H
;16 ビットリロードレジスタ
UF
EQU
TMCSR:2
; 割込み要求フラグビット
CNTE
EQU
TMCSR:1
; カウンタ動作許可ビット
TRG
EQU
TMCSR:0
; ソフトウェアトリガビット
;---------- メインプログラム ------------------------------------------------CODE
CSEG
START:
;
:
; スタックポインタ (SP) などは初期化済みとする
AND
CCR, #0BFH
; 割込みディセーブル
MOV
I:ICR03, #00H
; 割込みレベル 0( 最強 )
CLRB I:CNTE
; カウンタを一時停止
MOVW I:TMRLR, #30D3H ;12.5ms タイマのデータを設定
MOVW I:TMCSR, #0001000000011011B
; インターバルタイマ動作 , クロック 2 μs
; 外部トリガ禁止 , 外部出力禁止 ,
; リロードモード選択 , 割込み許可
; 割込みフラグクリア , カウンタスタート
MOV
ILM, #07H
; PS 内 ILM をレベル 7 に設定
OR
CCR, #40H
; 割込みイネーブル
LOOP: MOV
A, #00H
; 無限ループ
MOV
A, #01H
;
BRA
LOOP
;
;---------- 割込みプログラム ------------------------------------------------WARI:
CLRB I:UF
; 割込み要求フラグをクリア
;
:
;
ユーザ処理 ;
:
RETI
; 割込みから復帰
320
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 11 章 16 ビットリロードタイマ
11.8
MB90930 シリーズ
CODE
ENDS
;---------- ベクタ設定 ------------------------------------------------------VECT
CSEG ABS=0FFH
ORG
0FFB8H
; 割込み #17(11H) にベクタを設定
DSL
ORG
VECT
WARI
0FFDCH
DSL
START
DB
00H
ENDS
END
START
; リセットベクタ設定
; シングルチップモードに設定
■ イベントカウントモードのプログラム例
● 処理仕様
16 ビットリロードタイマ / カウンタで , 外部イベント入力端子に入力されるパルスの
立上りエッジを 10000 回カウントすると割込みを発生します。
ワンショットモードで動作させます。
外部トリガ入力は , 立上りエッジを選択します。
EI2OS は使用しません。
[ コーディング例 ]
ICR03 EQU
0000B3H
;16 ビットリロードタイマ用割込み制御レジスタ
TMCSR EQU
000050H
; タイマ制御ステータスレジスタ
TMR
EQU
000052H
;16 ビットタイマレジスタ
TMRLR EQU
000052H
;16 ビットリロードレジスタ
DDR1
EQU
000011H
; ポート 1 方向レジスタ
UF
EQU
TMCSR:2
; 割込み要求フラグビット
CNTE
EQU
TMCSR:1
; カウンタ動作許可ビット
TRG
EQU
TMCSR:0
; ソフトウェアトリガビット
;---------- メインプログラム ------------------------------------------------CSEG
START:
;
:
; スタックポインタ (SP) などは初期化済みとする
AND
CCR, #0BFH
; 割込みディセーブル
MOV
I:ICR03, #00H
; 割込みレベル 0( 最強 )
MOV
I:DDR1, #00H
;P12/TIN0 端子を入力に設定
CLRB I:CNTE
; カウンタを一時停止
MOVW I:TMRLR, #2710H ; リロード値 10000 回の設定
MOVW I:TMCSR, #0000110010001011B
; カウンタ動作 , 外部トリガ , 立上りエッジ ,
; 外部出力禁止
; ワンショットモード選択 , 割込み許可
; 割込みフラグクリア , カウンタスタート
MOV
ILM, #07H
;PS 内 ILM をレベル 7 に設定
OR
CCR, #40H
; 割込みイネーブル
LOOP: MOV
A, #00H
; 無限ループ
MOV
A, #01H
;
BRA
LOOP
;
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
321
第 11 章 16 ビットリロードタイマ
11.8
MB90930 シリーズ
;---------- 割込みプログラム ------------------------------------------------WARI:
CLRB I:UF
; 割込み要求フラグをクリア
;
:
;
ユーザ処理
;
:
RETI
; 割込みから復帰
CODE
ENDS
;---------- ベクタ設定 ------------------------------------------------------VECT
CSEG ABS=0FFH
ORG
0FF84H
; 割込み #30(1EH) にベクタを設定
DSL
ORG
DSL
DB
VECT
END
322
WARI
0FFDCH
START
00H
ENDS
START
; リセットベクタ設定
; シングルチップモードに設定
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 12 章
PPG タイマ
PPG タイマの動作について説明します。
12.1 PPG タイマの概要
12.2 PPG タイマのブロックダイヤグラム
12.3 PPG タイマのレジスタ
12.4 PPG タイマの割込み
12.5 PPG タイマの動作説明
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
323
第 12 章 PPG タイマ
12.1
12.1
MB90930 シリーズ
PPG タイマの概要
PPG タイマは , プリスケーラ , 16 ビットダウンカウンタ 1 本 , 周期設定用バッファ
付き 16 ビットデータレジスタ , デューティ設定用バッファ付き 16 ビットコンペア
レジスタ , 端子制御部から構成されています。
外部またはソフトトリガに同期させたパルスを出力することができます。出力する
パルスは , 16 ビット 2 個のレジスタ値を書き換えることで , 周期とデューティを任
意に変えることができます。
■ PPG タイマの概要
● PWM 機能
トリガに同期させ , レジスタの値を書き換えながらプログラマブルにパルスを出力す
ることができます。
外付け回路により D/A コンバータとしても使用可能です。
● ワンショット機能
トリガ入力のエッジを検出し , 単一パルスを出力することができます。
● 端子制御
• デューティ一致で "1" にセット ( 優先 )
• カウンタボローで "0" にリセット
• 出力値固定モードがあり , オール "L"( またはオール "H") を簡単に出力可能
• 極性指定可能
● 16 ビットダウンカウンタ
カウンタ動作クロックは 10 種類から選択可能です。内部クロック 10 種類 (φ, φ/2, φ/4,
φ/8, φ/16, φ/32, φ/64, φ/128, φ/256, φ/512)
φ: マシンクロック
● 割込み要求
• タイマ起動
• カウンタボロー発生 ( 周期一致 )
• デューティ一致発生
• カウンタボロー発生 ( 周期一致 ) または デューティ一致発生
• 外部トリガで複数チャネルの同時起動を設定可能 , また動作中の再起動も設定可能
324
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 12 章 PPG タイマ
12.2
MB90930 シリーズ
12.2
PPG タイマのブロックダイヤグラム
PPG タイマのブロックダイヤグラムを示します。
■ ブロックダイヤグラム
図 12.2-1 ブロックダイヤグラム
PCNTH0~PCNTH5 CNTE STGR MDSE RTRG CKS1
CKS0 PGMS FSEL
初期値:1
PCSR
PDUT
プリスケーラ
1/1
1/4
1/16
1/64
マシン
クロック
ロード
CK
CMP
PCNT
16ビットダウンカウンタ
スタート
1
0
セレクタ
1ビット
ダウン
カウンタ
ボロー
S
Q
PPG出力
R
OSEL
トリガ入力
PC5/SCK1/TRG
割込み選択
PGMS
許可
エッジ検出
割込み
IRQ #25, #27, #29
ソフトトリガ
図 12.2-2 PPG ch.0 出力ブロックダイヤグラム
PCNTL0
EGS1 EGS0 IREN
PPG ch.0
出力
2分周
IRQF
2分周
IRS1
IRS0 POEN OSEL
PC6/PPG0
2分周
11
01
セレクタ
10
00
PPGDIV
CM44-10150-1
DIV1
DIV0
FUJITSU MICROELECTRONICS LIMITED
325
第 12 章 PPG タイマ
12.3
12.3
MB90930 シリーズ
PPG タイマのレジスタ
PPG タイマのレジスタについて説明します。
■ PPG タイマのレジスタ
PPG タイマのレジスタ詳細説明を次に示します。
326
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 12 章 PPG タイマ
12.3
MB90930 シリーズ
12.3.1
PPG タイマのレジスタ一覧
PPG タイマのレジスタ一覧について説明します。
■ PPG タイマレジスタ一覧
PPG 制御ステータスレジスタ上位 (PCNTH0 ∼ PCNTH5)
アドレス :
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
00002BH
00002DH
00002FH
0000DBH
0000DDH
0000DFH
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
CNTE STGR MDSE RTRG CKS1 CKS0 PGMS FSEL
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
1
←初期値
PPG 制御ステータスレジスタ下位 (PCNTL0 ∼ PCNTL5)
アドレス :
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
00002AH
00002CH
00002EH
0000DAH
0000DCH
0000DEH
bit7
bit6
bit5
bit4
bit3
EGS1 EGS0 IREN IREQF IRS1
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
bit2
bit1
bit0
IRS0 POEN OSEL
R/W
R/W
R/W
0
0
0
←初期値
R/W: リード / ライト可能
PPG ダウンカウンタレジスタ上位 (PDCRH0 ∼ PDCRH5)
アドレス :
bit15
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
DC15 DC14 DC13 DC12 DC11 DC10 DC09 DC08
R
R
R
R
R
R
R
R
1
1
1
1
1
1
1
1
003921H
003929H
003931H
0039E1H
0039E9H
0039F1H
bit14
bit13
bit12
bit11
bit10
bit9
bit8
←初期値
PPG ダウンカウンタレジスタ下位 (PDCRL0 ∼ PDCRL5)
アドレス :
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
003920H
003928H
003930H
0039E0H
0039E8H
0000F0H
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
DC07 DC06 DC05 DC04 DC03 DC02 DC01 DC00
R
R
R
R
R
R
R
R
1
1
1
1
1
1
1
1
←初期値
R: リードオンリ
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
327
第 12 章 PPG タイマ
12.3
MB90930 シリーズ
PPG 周期設定レジスタ上位 (PCSRH0 ∼ PCSRH5)
アドレス :
bit15
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
CS15 CS14 CS13 CS12 CS11 CS10 CS09 CS08
W
W
W
W
W
W
W
W
1
1
1
1
1
1
1
1
003923H
00392BH
003933H
0039E3H
0039EBH
0039F3H
bit14
bit13
bit12
bit11
bit10
bit9
bit8
←初期値
PPG 周期設定レジスタ下位 (PCSRL0 ∼ PCSRL5)
アドレス :
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
003922H
00392AH
003932H
0039E2H
0039EAH
0000F2H
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
CS07 CS06 CS05 CS04 CS03 CS02 CS01 CS00
W
W
W
W
W
W
W
W
1
1
1
1
1
1
1
1
←初期値
W: ライトオンリ
PPG デューティ設定レジスタ上位 (PDURH0 ∼ PDURH5)
アドレス :
bit15
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
DU15 DU14 DU13 DU12 DU11 DU10 DU09 DU08
W
W
W
W
W
W
W
W
0
0
0
0
0
0
0
0
003925H
003920H
003935H
0039E5H
0039E0H
0039F5H
bit14
bit13
bit12
bit11
bit10
bit9
bit8
←初期値
PPG デューティ設定レジスタ下位 (PDURL0 ∼ PDURL5)
アドレス :
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
003924H
00392CH
003934H
0039E4H
0039ECH
0000F4H
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
DU07 DU06 DU05 DU04 DU03 DU02 DU01 DU00
W
W
W
W
W
W
W
W
0
0
0
0
0
0
0
0
←初期値
W: ライトオンリ
PPG0 出力分周設定レジスタ (PPGDIV0 ∼ PPGDIV5)
アドレス :
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
R/W:
R:
-:
328
003926H
00392EH
003936H
0039E6H
0039EEH
0000F6H
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
R
1
R
1
R
1
R
1
R
1
R
1
DIV1
R/W
0
DIV0
R/W
0
←初期値
リード / ライト可能
リードオンリ
未定義
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 12 章 PPG タイマ
12.3
MB90930 シリーズ
12.3.2
PPG タイマのレジスタ詳細説明
PPG タイマのレジスタには次の 5 つのレジスタがあります。
• PPG 制御ステータスレジスタ (PCNT0 ∼ PCNT5)
• PPG ダウンカウンタレジスタ (PDCR0 ∼ PDCR5)
• PPG 周期設定レジスタ (PCSR0 ∼ PCSR5)
• PPG デューティ設定レジスタ (PDUT0 ∼ PDUT5)
• PPG 出力分周設定レジスタ (PPGDIV0 ∼ PPGDIV5)
■ PPG 制御ステータスレジスタ (PCNT)
PPG 制御ステータスレジスタ上位 (PCNTH0 ∼ PCNTH5)
bit15
アドレス :
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
bit14
bit13
bit12
bit11
bit10
bit9
bit8
CNTE STGR MDSE RTRG CKS1 CKS0 PGMS FSEL
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
1
00002BH
00002DH
00002FH
0000DBH
0000DDH
0000DFH
←初期値
PPG 制御ステータスレジスタ下位 (PCNTL0 ∼ PCNTL5)
bit7
アドレス :
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
bit6
bit5
bit4
bit3
EGS1 EGS0 IREN IREQF IRS1
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
00002AH
00002CH
00002EH
0000DAH
0000DCH
0000DEH
bit2
bit1
bit0
IRS0 POEN OSEL
R/W
R/W
R/W
0
0
0
←初期値
R/W: リード / ライト可能
[bit15] CNTE: タイマ許可ビット
16 ビットダウンカウンタの動作を許可するビットです。
0
停止 ( 初期値 )
1
許可
[bit14] STGR: ソフトウェアトリガビット
STGR ビットに "1" を書き込むことによりソフトウェアトリガがかかります。
STGR ビットの読出し値は , 常に "0" です。
[bit13] MDSE: モード選択ビット
連続してパルスを出す PWM 動作か , 単一パルスを出すワンショット動作かを選
択します。動作中の書換えはしないでください。
CM44-10150-1
0
PWM 動作 ( 初期値 )
1
ワンショット動作
FUJITSU MICROELECTRONICS LIMITED
329
第 12 章 PPG タイマ
12.3
MB90930 シリーズ
[bit12] RTRG: 再起動許可ビット
トリガ ( ソフトウェア / 外部 ) による再起動を許可するビットです。動作中の書
換えはしないでください。
0
再起動禁止 ( 初期値 )
1
再起動許可
[bit11, bit10] CKS1, CKS0: カウントクロック選択ビット
16 ビットダウンカウンタのカウントクロックを選択します。動作中の書換えはし
ないでください。
CKS1
CKS0
周期
0
0
φ ( 初期値 )
0
1
φ/4
1
0
φ/16
1
1
φ/64
φ: マシンクロック
[bit9] PGMS:PPG 出力マスク選択ビット
PGMS ビットに "1" を書き込むことによりモード設定 , 周期設定値 , デューティ
設定値にかかわらず , PPG 出力を "0" または "1" にマスクすることができます。
0
出力マスクなし ( 初期値 )
1
出力マスクあり
PGMS に "1" 書込み時の PPG 出力
極性
PPG 出力
通常極性
"L"
反転極性
"H"
通常極性時にオール "H" または反転極性時にオール "L" を出力したい場合は , 周
期設定レジスタとデューティ設定レジスタに同値を書き込むと上記マスク値の
反転を出力することができます。
[bit8] FSEL: カウントクロック分周制御ビット
0
2 分周
1
1 分周 ( 初期値 )
FSEL ビットは , カウントクロックの分周比を設定するビットです。
FSEL に "0" を書き込んだ場合には , カウントクロック選択ビット (CKS1, CKS0)
で設定した周期からさらに 2 分周されます。
330
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 12 章 PPG タイマ
12.3
MB90930 シリーズ
[bit7, bit6] EGS1, EGS0: トリガ入力エッジ選択ビット
外部トリガの有効エッジ極性を選択するビットです。どのモードを選択していて
もソフトトリガのビットに "1" を書き込むとソフトトリガは有効になります。
EGS1
EGS0
0
0
無効 ( 初期値 )
0
1
立上りエッジ
1
0
立下りエッジ
1
1
両エッジ
エッジ選択
[bit5] IREN: 割込み要求許可ビット
PPG タイマの割込み許可ビットです。IREN ビットが "1" の場合に割込みフラグ
(bit4:IRQF) が "1" にセットされると割込みを発生します。
0
割込み禁止 ( 初期値 )
1
割込み許可
[bit4] IRQF: 割込み要求フラグ
割込み要因選択ビット (bit3, bit2:IRS1, IRS0) にて選択した割込み要因が発生する
と , IRQF ビットが "1" にセットされます。このとき割込み要求許可ビット
(bit5:IREN) が許可されていると CPU に割込み要求を発生します。
IRQF ビットはリード / ライト可能です。クリアは , "0" 書込みのみで行われ , "1"
を書き込んでもビット値は変化しません。リードモディファイライト (RMW) 系
命令における読出し値はビット値にかかわらず "1" です。
もし"1"セットと"0"書込みが同時に発生した場合には"0"書込みが優先されます。
0
割込み要求なし ( 初期値 )
1
割込み要求あり
[bit3, bit2] IRS1, IRS0: 割込み要因選択ビット
bit4: IRQF をセットする要因を選択します。動作中の書換えはしないでくださ
い。
CM44-10150-1
IRS1
IRS0
0
0
ソフトウェアトリガまたは有効トリガ入力あり ( 初期値 )
0
1
カウンタボロー ( 周期一致 )
1
0
通常極性 PPG ↑または反転極性 PPG ↓ ( デューティ一致 )
1
1
カウンタボローまたは通常極性 PPG ↑または反転極性 PPG ↓
エッジ選択
FUJITSU MICROELECTRONICS LIMITED
331
第 12 章 PPG タイマ
12.3
MB90930 シリーズ
[bit1] POEN:PPG 出力許可ビット
"1" に設定することにより , PPG 出力が端子から出力されます。
0
汎用ポート ( 初期値 )
1
PPG 出力端子
[bit0] OSEL:PPG 出力極性指定ビット
PPG 出力の極性を設定します。
0
通常極性 ( 初期値 )
1
反転極性
bit9 :PGMS との組合せで , 以下のようになります。
PGMS
OSEL
0
0
通常極性 ( 初期値 )
0
1
反転極性
1
0
出力 "L" 固定
1
1
出力 "H" 固定
極性
332
停止状態
通常極性
"L" 出力
反転極性
"H" 出力
PPG 出力
デューティ一致
FUJITSU MICROELECTRONICS LIMITED
カウンタ一致
CM44-10150-1
第 12 章 PPG タイマ
12.3
MB90930 シリーズ
■ PPG ダウンカウンタレジスタ (PDCR)
PDCR レジスタは , 16 ビットダウンカウンタの値を読み出すことができます。
PDCR レジスタは , ワードアクセスしてください。
PPG ダウンカウンタレジスタ上位 (PDCRH0 ∼ PDCRH5)
アドレス :
bit15
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
DC15 DC14 DC13 DC12 DC11 DC10 DC09 DC08
R
R
R
R
R
R
R
R
1
1
1
1
1
1
1
1
003921H
003929H
003931H
0039E1H
0039E9H
0039F1H
bit14
bit13
bit12
bit11
bit10
bit9
bit8
←初期値
PPG ダウンカウンタレジスタ下位 (PDCRL0 ∼ PDCRL5)
bit7
アドレス :
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
003920H
003928H
003930H
0039E0H
0039E8H
0000F0H
bit6
bit5
bit4
bit3
bit2
bit1
bit0
DC07 DC06 DC05 DC04 DC03 DC02 DC01 DC00
R
R
R
R
R
R
R
R
1
1
1
1
1
1
1
1
←初期値
R: リードオンリ
■ PPG 周期設定レジスタ (PCSR)
PCSR レジスタは , 周期を設定するためのバッファ付きレジスタです。バッファからの
転送は , カウンタボローまたは起動で行われます。
周期設定レジスタの初期設定時および書換え時は , 周期設定レジスタの書込み後に必
ずデューティ設定レジスタへの書込み動作を行ってください。
PCSR レジスタは , ワードアクセスしてください。書込みのみで , 読出し値は不定に
なります。
PPG 周期設定レジスタ上位 (PCSRH0 ∼ PCSRH5)
アドレス :
bit15
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
CS15 CS14 CS13 CS12 CS11 CS10 CS09 CS08
W
W
W
W
W
W
W
W
1
1
1
1
1
1
1
1
003923H
00392BH
003933H
0039E3H
0039EBH
0039F3H
bit14
bit13
bit12
bit11
bit10
bit9
bit8
←初期値
PPG 周期設定レジスタ下位 (PCSRL0 ∼ PCSRL5)
アドレス :
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
003922H
00392AH
003932H
0039E2H
0039EAH
0000F2H
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
CS07 CS06 CS05 CS04 CS03 CS02 CS01 CS00
W
W
W
W
W
W
W
W
1
1
1
1
1
1
1
1
←初期値
W: ライトオンリ
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
333
第 12 章 PPG タイマ
12.3
MB90930 シリーズ
■ PPG デューティ設定レジスタ (PDUT)
PDUT レジスタは , デューティを設定するためのバッファ付きレジスタです。バッファ
からの転送は , カウンタボローまたは起動で行われます。
周期設定レジスタの値とデューティ設定レジスタの値を同じにすると , 通常極性時に
オール "H" を , 反転極性時にオール "L" を出力します。
PCSR<PDUT となるような値を設定しないでください。PPG 出力は不定になります。
PDUT レジスタは , ワードアクセスしてください。書込みのみで , 読出し値は不定とな
ります。
PPG デューティ設定レジスタ上位 (PDURH0 ∼ PDURH5)
アドレス :
bit15
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
DU15 DU14 DU13 DU12 DU11 DU10 DU09 DU08
W
W
W
W
W
W
W
W
0
0
0
0
0
0
0
0
003925H
003920H
003935H
0039E5H
0039E0H
0039F5H
bit14
bit13
bit12
bit11
bit10
bit9
bit8
←初期値
PPG デューティ設定レジスタ下位 (PDURL0 ∼ PDURL5)
bit7
アドレス :
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
bit6
bit5
bit4
bit3
bit2
bit1
bit0
DU07 DU06 DU05 DU04 DU03 DU02 DU01 DU00
W
W
W
W
W
W
W
W
0
0
0
0
0
0
0
0
003924H
00392CH
003934H
0039E4H
0039ECH
0000F4H
←初期値
W: ライトオンリ
■ PPG0 出力分周設定レジスタ (PPGDIV)
PPG0 出力分周設定レジスタ (PPGDIV0 ∼ PPGDIV5)
アドレス :
ch.0
ch.1
ch.2
ch.3
ch.4
ch.5
R/W:
R:
-:
003926H
00392EH
003936H
0039E6H
0039EEH
0000F6H
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
R
1
R
1
R
1
R
1
R
1
R
1
DIV1
R/W
0
DIV0
R/W
0
←初期値
リード / ライト可能
リードオンリ
未定義
[bit7 ∼ bit2] 未定義ビット
未定義ビットです。
書込みは動作に影響しません。
読出し値は , 常に "1" です。
334
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 12 章 PPG タイマ
12.3
MB90930 シリーズ
[bit1, bit0] DIV1, DIV0: 分周設定ビット
PPG ch.0 出力の分周比を設定します。
DIV1
DIV0
0
0
1/1 ( 初期値 )
0
1
1/2
1
0
1/4
1
1
1/8
分周比
<注意事項>
1/2, 1/4, 1/8 分周設定を使用する場合には以下の制限があります。
• 出力波形はデューティ 50% 固定になります。
• ワンショット動作 (PCNT:MDSE=1) は設定禁止です。
• PPG 出力反転機能 (PCNT:OSEL=1) は設定禁止です。
• PPG 出力固定状態 (PCNT:PGMS, OSEL=01B, 10B, 11B) は設定禁止です。
• PCSR=PDUT のときは , 設定禁止です。
図 12.3-1 PPG 分周の立上りタイミング
PPG
CNTE
起動トリガ
PPG 1/2分周
PPGの立上りタイミングにより変化します。
PPG 分周は PPG の立上りタイミングで変化します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
335
第 12 章 PPG タイマ
12.4
MB90930 シリーズ
PPG タイマの割込み
12.4
PPG タイマは , タイマ起動・カウンタボロー ( 周期一致 )・デューティ一致すること
で , 割込み要求を発生させることができます。また , 拡張インテリジェント I/O サー
ビス (EI2OS) にも対応しています。
■ PPG タイマの割込み
PPG タイマの割込み制御ビットと割込み要因は , 表 12.4-1 のようになっています。
表 12.4-1 PPG タイマの割込み制御ビットと割込み要因
PPG 制御ステータスレジスタ下位 (PCNTL5 ∼ PCNTL0)
割込み要因
割込みフラグ
ビット
割込み許可
ビット
IRQF
IREN
・タイマ起動
・カウンタボロー ( 周期一致 )
・デューティ一致
割込みフラグのクリア
・IRQF ビットへの "0" 書込み
・EI2OS によるクリア
・リセット
PPG タイマでは , 表 12.4-1 の割込み要因で , 割込みフラグビットが "1" にセットされま
す。このとき , 割込み許可ビットが "1" にセットされていると , 割込みコントローラに
割込み要求を出力します。
■ PPG タイマの割込みと EI2OS
表 12.4-2 に , PPG タイマの割込みと EI2OS を示します。
表 12.4-2 PPG タイマの割込みと EI2OS
割込み制御レジスタ
チャネル
ベクタテーブルのアドレス
割込み番号
レジスタ名
アドレス
下位
上位
バンク
EI2OS
PPG タイマ 0
#25(19H)
ICR07
0000B7H
FFFF98H
FFFF99H
FFFF9AH
△
PPG タイマ 1
#27(1BH)
ICR08
0000B8H
FFFF90H
FFFF91H
FFFF92H
△
#29(1DH)
ICR09
0000B9H
FFFF88H
FFFF89H
FFFF8AH
△
PPG タイマ 2
PPG タイマ 3
PPG タイマ 4
PPG タイマ 5
△ : ICR07, ICR08, ICR09 または割込みベクタを共有する割込み要因を使用しない場合には使用可能
336
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 12 章 PPG タイマ
12.4
■ PPG タイマの EI2OS 機能
PPG タイマには EI2OS 対応の回路があります。このため , タイマ起動・カウンタボロー
( 周期一致 )・デューティ一致が発生することで , EI2OS を起動させることができます。
ただし , ICR07, ICR08, ICR09 の EI2OS は , 割込み制御レジスタ (ICR) または割込みベク
タを共有するほかの周辺機能が割込みを使用しない場合にだけ使用可能です。例えば ,
PPG タイマ 0 で EI2OS を使用する場合には , 外部割込み 6 チャネル /7 チャネルおよび
UART3 送信の割込みを禁止する必要があります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
337
第 12 章 PPG タイマ
12.5
12.5
MB90930 シリーズ
PPG タイマの動作説明
PPG タイマの動作について説明します。
■ PPG タイマの動作説明
PPG タイマの PWM 動作 , ワンショット動作 , 割込み要因とタイミングについて次に説
明します。
338
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 12 章 PPG タイマ
12.5
MB90930 シリーズ
12.5.1
PWM 動作
PWM 動作では , 起動トリガの検出時より連続してパルスを出力することができま
す。出力パルスの周期は PCSR 値を変えることにより制御することができ , また ,
デューティ比は PDUT 値を変えることにより制御できます。
■ 再起動禁止の場合
図 12.5-1 PWM 動作再起動禁止のタイミング
立上りエッジ検出
トリガは, 無視されます。
起動トリガ
m
n
0
PPG
①
②
① = T (n+1) μs
T :カウントクロック周期
② = T (m+1) μs
m :PCSR値
n :PDUT値
■ 再起動許可の場合
図 12.5-2 PWM 動作再起動許可のタイミング
立上りエッジ検出
トリガにより, 再起動します。
起動トリガ
m
n
0
PPG
①
②
① = T (n+1) μs
② = T (m+1) μs
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
339
第 12 章 PPG タイマ
12.5
MB90930 シリーズ
<注意事項>
PCSR にデータを書き込んだ後は , 必ず PDUT への書込みを行ってください。
外部 TRG 入力の最小パルス幅はデータシートを参照してください。ただし , 上記に満た
ないパルスが入力された場合でも , 有効パルスとして認識する場合があります。また , 外
部 TRG 入力にフィルタ機能がありませんので , 必要ならば外部にフィルタなどを追加し
てください。
340
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 12 章 PPG タイマ
12.5
MB90930 シリーズ
12.5.2
ワンショット動作
ワンショット動作では , トリガにより任意の幅の単一パルスを出力することができ
ます。再起動許可の場合は , 動作中に起動トリガを検出するとカウンタをリロード
します。
■ 再起動禁止の場合
図 12.5-3 ワンショット動作再起動禁止のタイミング
立上りエッジ検出
トリガは, 無視されます。
起動トリガ
m
n
0
PPG
①
① = T (n+1) μs
②
② = T (m+1) μs
■ 再起動許可の場合
図 12.5-4 ワンショット動作再起動許可のタイミング
立上りエッジ検出
トリガにより, 再起動します。
起動トリガ
m
n
0
PPG
①
②
① = T (n+1) μs
② = T (m+1) μs
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
341
第 12 章 PPG タイマ
12.5
MB90930 シリーズ
割込み要因とタイミング
12.5.3
起動トリガがかかってから , カウント値がロードされるまでには最大 2.5T(T: カウン
トクロック周期 ) を必要とします。
図 12.5-5 割込み出力要因とタイミング
起動トリガ
→最大2.5T←
ロード
クロック
カウント値
XXXXH
0003H
0002H
0001H
0000H
0003H
0002H
0001H
0000H
PPG
PPG 1/2分周
割込み
ソフトウェアトリガ
コンペア一致
ボロー
コンペア一致
ボロー
<注意事項>
1/2, 1/4, 1/8 分周を使用する場合 , 1/1 分周のタイミングで割込みが発生します。
■ PWM 出力オール "L" または , オール "H" の出力方法例
PPG
デューティ比を
小さくしていく
ボローによる割込みでPGMS(マスクビット)に
"1"を書き込みます。
また, ボローによる割込みでPGMS(マスクビット)に
"0"を書き込めば, ひげを出力することなく
PPG波形を出力できます。
PPG
デューティ比を
小さくしていく
342
コンペア一致による割込みで
デューティ設定レジスタに
周期設定レジスタ値と同じ値を
書き込みます。
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 13 章
リアルタイム時計タイマ
リアルタイム時計タイマの機能と動作について説
明します。
13.1 リアルタイム時計タイマの概要
13.2 リアルタイム時計タイマのレジスタ
13.3 リアルタイム時計タイマの割込み
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
343
第 13 章 リアルタイム時計タイマ
13.1
13.1
MB90930 シリーズ
リアルタイム時計タイマの概要
リアルタイム時計タイマは , リアルタイム時計タイマコントロールレジスタ , サブ秒データレ
ジスタ , 秒 / 分 / 時間 / 日数データレジスタ , 1/2 クロック分周器 , 22 ビットプリスケーラおよ
び秒 / 分 / 時間 / 日数カウンタから構成されています。所定のリアルタイム時計タイマの動作
を行うために , 4 MHz の MCU 発振周波数が使用されます。リアルタイム時計タイマは , リア
ルワールドタイマとして動作してリアルワールド時間情報を提供します。
■ リアルタイム時計タイマのブロックダイヤグラム
図 13.1-1 に , リアルタイム時計タイマのブロックダイヤグラムを示します。
図 13.1-1 リアルタイム時計タイマのブロックダイヤグラム
16LXバス
/
16
サブ秒レジスタの
上位ビット
サブ秒レジスタの
中位ビット
サブ秒レジスタの
下位ビット
端子 P11/TOT0/PPG3/IN4
22
サブ秒カウンタ(22ビットダウンカウンタ)
1/2クロック分周器
発振クロック
1/2クロック分周器
秒割込み
ST(スタート)
16LXバス
/ 16
秒レジスタ
分レジスタ
6ビット
分カウンタ
秒カウンタ
オーバフロー=3BH
日数レジスタ
時間レジスタ
6ビット
5ビット
5ビット
時間カウンタ
オーバフロー=3BH
日数カウンタ
オーバフロー=17H
オーバフロー=1C, 1D, 1E, 1FH
月割込み
分割込み
時割込み
日数割込み
16LXバス
/
16
コントロール
コントロール
コントロール
レジスタの上位ビット レジスタの中位ビット レジスタの下位ビット
ST
0E
秒割込み
分割込み
IRQ#30
時割込み
日数割込み
月割込み
344
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
13.2
リアルタイム時計タイマのレジスタ
第 13 章 リアルタイム時計タイマ
13.2
リアルタイム時計タイマのレジスタには , 次の 6 種類があります。
• リアルタイム時計タイマコントロールレジスタ (WTCR)
• サブ秒データレジスタ (WTBR)
• 秒データレジスタ (WTSR)
• 分データレジスタ (WTMR)
• 時間データレジスタ (WTHR)
• 日数データレジスタ (WTDR)
■ リアルタイム時計タイマのレジスタ一覧
図 13.2-1 に , リアルタイム時計タイマのレジスタ一覧を示します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
345
第 13 章 リアルタイム時計タイマ
13.2
MB90930 シリーズ
図 13.2-1 リアルタイム時計タイマのレジスタ一覧
リアルタイム時計タイマ bit
コントロールレジスタの上位ビット
アドレス: 0000CFH
予約
予約
予約
予約
初期値
リアルタイム時計タイマ bit
コントロールレジスタの中位ビット
アドレス: 0000CDH
初期値
リアルタイム時計タイマ bit
コントロールレジスタの下位ビット
アドレス: 0000CCH
予約
予約
予約
予約
初期値
サブ秒データレジスタ
bit
アドレス: 00395AH
初期値
サブ秒データレジスタ
bit
アドレス: 003959H
初期値
サブ秒データレジスタ
アドレス: 003958H
bit
初期値
秒データレジスタ
bit
アドレス: 00395BH
初期値
分データレジスタ
アドレス: 00395CH
bit
初期値
時間データレジスタ
アドレス: 00395DH
bit
初期値
日数データレジスタ
bit
アドレス: 00395EH
初期値
R/W: リード/ライト可能
X:
不定値
-:
未定義
346
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 13 章 リアルタイム時計タイマ
13.2
MB90930 シリーズ
13.2.1
リアルタイム時計タイマコントロールレジスタ
リアルタイム時計タイマコントロールレジスタは , リアルタイム時計タイマの開始と停止 , 割
込みの制御や外部出力端子の設定に使用します。
■ タイマ制御レジスタのビット構成
図 13.2-2 に , タイマ制御レジスタのビット構成を示します。
図 13.2-2 タイマ制御レジスタのビット構成
リアルタイム時計タイマ bit
コントロールレジスタの上位ビット
アドレス:
予約
予約
予約
予約
初期値
リアルタイム時計タイマ bit
コントロールレジスタの中位ビット
アドレス:
初期値
リアルタイム時計タイマ bit
コントロールレジスタの下位ビット
アドレス:
予約
予約
予約
予約
初期値
R/W: リード/ライト可能
-:
未定義
WTCRH [bit7 ∼ bit4] 未定義ビット
• 読出し時は "1" が読み出されます。
• これらのビットへの書込みは動作に影響を与えません。
WTCRH [bit3,bit2] 予約
必ず "00" に設定してください。
WTCRH [bit1, bit0], WTCRM [bit15 ∼ bit8]: INT4 ∼ INT0, INTE4 ∼ INTE0: 割込みフラグおよび
割込み許可フラグ
INT4 ∼ INT0 は割込みフラグです。これらのフラグは , サブ秒カウンタ , 秒カウンタ , 分カウン
タ , 時間カウンタ , 日数カウンタでオーバフローが発生したときにセットされます。INT ビット
を "1" にセットしたときに対応する INTE ビットが "1" の場合は , リアルタイム時計タイマは割
込みの信号を発生します。これらのフラグはそれぞれ 1 秒 , 1 分 , 1 時間 , 1 日 , 1 カ月ごとに割
込みの信号を発生するようにされています。
INT ビットを "0" にセットすると , 対応するフラグがクリアされます。"1" にセットした場合 ,
意味を持ちません。INT ビットに対してリードモディファイライト系命令が実行されると , "1"
が読み出されます。
WTCRL [bit7 ∼ bit5] 予約
必ず "000" に設定してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
347
第 13 章 リアルタイム時計タイマ
13.2
MB90930 シリーズ
WTCRL [bit4] 未定義ビット
• 読出し時は "1" が読み出されます。
• このビットへの書込みは動作に影響を与えません。
WTCRL [bit3 ∼ bit1] 予約
必ず "000" に設定してください。
WTCRL [bit0] ST: 開始ビット
ST ビットが "1" にセットされたときにリアルタイム時計タイマは秒 / 分 / 時間 / 日数値を各レ
ジスタからロードして対応する動作を開始します。ST ビットを "0" にリセットすると , すべて
のカウンタおよびプリスケーラも "0" にリセットされ , 動作を停止することに注意してくださ
い。
348
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 13 章 リアルタイム時計タイマ
13.2
MB90930 シリーズ
13.2.2
サブ秒データレジスタ
サブ秒データレジスタは , 発振クロックを分周する 22 ビットプリスケーラのリロード値を格
納します。リロード値は , 22 ビットプリスケーラの出力が正確に 0.5 秒間隔をとるように設
定されます。
■ サブ秒データレジスタのビット構成
図 13.2-3 に , サブ秒データレジスタのビット構成を示します。
図 13.2-3 サブ秒データレジスタのビット構成
サブ秒データレジスタ
アドレス: 00395A H
bit
初期値 =>
サブ秒データレジスタ
アドレス: 003959 H
アドレス: 003958
6
-
5
D21
4
D20
3
D19
2
D18
1
D17
0
D16
-
-
(R/W)
(X)
(R/W)
(X)
(R/W)
(X)
(R/W)
(X)
(R/W)
(X)
(R/W)
(X)
14
D14
13
D13
12
D12
11
D11
10
D10
9
D9
8
D8
(R/W)
(X)
(R/W)
(X)
(R/W)
(X)
(R/W)
(X)
(R/W)
(X)
(R/W)
(X)
(R/W)
(X)
(R/W)
(X)
7
D7
6
D6
5
D5
4
D4
3
D3
2
D2
1
D1
0
D0
(R/W)
(X)
(R/W)
(X)
(R/W)
(X)
(R/W)
(X)
(R/W)
(X)
(R/W)
(X)
(R/W)
(X)
(R/W)
(X)
bit 15
D15
初期値 =>
サブ秒データレジスタ
7
-
bit
H
初期値 =>
WTBRH
WTBRM
WTBRL
R/W: リード/ライト可能
X:
不定値
-:
未定義
WTBRH [bit5 ∼ bit0], WTBRM [bit15 ∼ bit8], WTBRL [bit7 ∼ bit0]: D21 ∼ D0
サブ秒データレジスタは 22 ビットプリスケーラに対するリロード値を記憶するものです。こ
の値はリロードカウンタが "0" に達した後にリロードされます。すべての 3 バイトを変更した
後にリロード動作が書込み命令どうしの間で実行されないようにしてください。そうしないと
22 ビットプリスケーラは , 新たなデータからのバイトと古いデータからのバイトを組み合わせ
た誤った値をロードする可能性があります。通常はサブ秒レジスタの内容を書き換えることを
推奨します ( 開始ビットは "0" にセット )。サブ秒レジスタを "0" にセットした場合は , 22 ビッ
トプリスケーラは動作しません。
発振クロックは入力クロックとして使用され , その周波数は 4 MHz になるように設計されてい
ます。16 進数 0F423F を 22 ビットプリスケーラのリロード値として設定することにより , ク
ロック信号は厳密に 0.5 秒間隔で出力されます。
WTBRH [bit7, bit 6] 未定義ビット
• 読出し時は "1" が読み出されます。
• これらのビットへの書込みは動作に影響を与えません。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
349
第 13 章 リアルタイム時計タイマ
13.2
13.2.3
MB90930 シリーズ
秒 / 分 / 時間 / 日数データレジスタ
秒 / 分 / 時間 / 日数データレジスタは時間情報を記憶します。秒 , 分 , 時間 , および日数のデー
タはバイナリ形式で表示されます。これらのレジスタを読み取ると , ユニットは単純にカウン
タ値を戻します。ただし , WTDR レジスタの MS1 ビットと MS0 ビットは , レジスタに設定
されている値を保持するので , その設定値が読み出されます。
■ 秒 / 分 / 時間 / 日数データレジスタのビット構成
15
-
14
-
13
S5
R/W
(0)
12
S4
R/W
(0)
11
S3
R/W
(0)
10
S2
R/W
(0)
9
S1
R/W
(0)
8
S0
R/W
(0)
7
-
6
-
5
M5
R/W
(0)
4
M4
R/W
(0)
3
M3
R/W
(0)
2
M2
R/W
(0)
1
M1
R/W
(0)
0
M0
R/W
(0)
bit 15
-
14
-
13
-
12
H4
R/W
(0)
11
H3
R/W
(0)
10
H2
R/W
(0)
9
H1
R/W
(0)
8
H0
R/W
(0)
7
MS 1
R/W
(0)
6
MS 0
R/W
(0)
5
-
4
N4
R/W
(0)
3
N3
R/W
(0)
2
N2
R/W
(0)
1
N1
R/W
(0)
0
N0
R/W
(1)
秒データレジスタ
アドレス: 00395B H
初期値 =>
分データレジスタ
アドレス: 00395C H
bit
初期値 =>
時間データレジスタ
アドレス: 00395D H
初期値 =>
日数データレジスタ
アドレス: 00395E H
bit
初期値 =>
WTSR
WTMR
WTHR
WTDR
R/W: リード/ライト可能
X:
不定値
-:
未定義
WTSR [bit13 ∼ bit8] S5 ∼ S0 ビット : 秒データビット
WTMR [bit5 ∼ bit0] M5 ∼ M0 ビット : 分データビット
WTHR [bit12 ∼ bit8] H4 ∼ H0 ビット : 時間データビット
WTDR [bit4 ∼ bit0] N4 ∼ N0 ビット : 日数データビット
秒 / 分 / 時間 / 日数データレジスタには , 4 つのバイトレジスタがありますので , レジスタから得ら
れる値が一貫していることを確認してください。すなわち "1 日 1 時間 59 分 59 秒 " という値が得
られたとすると , それは "1 日 0 時間 59 分 59 秒 " または "1 日 1 時間 0 分 0 秒 " または "1 日 2 時
間 0 分 0 秒 " かもしれません。
同様に , MCU の動作クロックが発振クロックの半分の場合 (PLL が停止したとき ), これらのレジ
スタからの読出し値は誤っている可能性があります。これは読出し動作とカウント動作の同期に
よるものです。このため , 使用する上では秒割込みで読出し命令をトリガすることを推奨します。
350
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 13 章 リアルタイム時計タイマ
13.2
MB90930 シリーズ
<注意事項>
WTSR, WTMR, WTHR, WTDR レジスタに , 例えば 60 秒などのあり得ないデータを設定しないで
ください。MS1 ビットと MS0 ビットに設定されている値と競合する値を N4 ∼ N1 ビットに設定
しないでください。
WTDR [bit7, bit6] MS1 ビットと MS0 ビット : 日数カウントデータ設定ビット
日数カウンタの最大カウント値を設定するビットです。
MS1
0
0
1
1
MS0
0
1
0
1
31 日をカウントする ( 初期値 )
30 日をカウントする
29 日をカウントする
28 日をカウントする
WTSR [bit15, bit14] 未定義ビット
WTMR [bit7, bit6] 未定義ビット
WTHR [bit15 ∼ bit13] 未定義ビット
WTDR [bit5] 未定義ビット
• 読出し時は "1" が読み出されます。
• このビットへの書込みは動作に影響を与えません。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
351
第 13 章 リアルタイム時計タイマ
13.3
MB90930 シリーズ
リアルタイム時計タイマの割込み
13.3
リアルタイム時計タイマは , サブ秒カウンタ , 秒カウンタ , 分カウンタ , 時間カウンタ , 日数
カウンタがオーバフローしたときに , 割込み要求を発生させることができます。
■ リアルタイム時計タイマの割込み
表 13.3-1 に , リアルタイム時計タイマの割込み制御ビットと割込み要因を示します。
表 13.3-1 リアルタイム時計タイマの割込み制御ビットと割込み要因
リアルタイム時計タイマコントロールレジスタ (WTCR)
割込み要因
割込みフラグビット
割込み許可ビット
秒割込み
( サブ秒カウンタオーバフロー )
INT0
INTE0
分割込み
( 秒カウンタオーバフロー )
INT1
INTE1
時割込み
( 分カウンタオーバフロー )
INT2
INTE2
日割込み
( 時間カウンタオーバフロー )
INT3
INTE3
月割込み
( 日数カウンタオーバフロー )
INT4
INTE4
■
割込みフラグのクリア
•
•
INT0 ∼ INT4 ビットへの "0"
書込み
リセット
表 13.3-2 に記載されている割込み要因が発生した場合は , リアルタイム時計タイマの割込みフラ
グビットが "1" にセットされます。割込みフラグビットが "1" にセットされたときにリアルタイム
時計タイマの割込み許可ビットが "1" の場合は , リアルタイム時計タイマは割込みコントローラに
割込み要求を出力します。
リアルタイム時計タイマの割込みと EI2OS
表 13.3-2 に , リアルタイム時計タイマの割込みと EI2OS を示します。
表 13.3-2 リアルタイム時計タイマの割込みと EI2OS
チャネル
割込み番号
リアルタイム時計
タイマ
#30 (1EH)
割込みレベル設定レジスタ
ベクタテーブルのアドレス
レジスタ名
アドレス
下位
上位
バンク
ICR09
0000B9H
FFFF84H
FFFF85H
FFFF86H
EI2OS
*
*: 使用不可
352
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 14 章
遅延割込み発生モジュール
遅延割込み発生モジュールの機能と動作について
説明します。
14.1 遅延割込み発生モジュールの概要
14.2 遅延割込み発生モジュールの動作
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
353
第 14 章 遅延割込み発生モジュール
14.1
MB90930 シリーズ
遅延割込み発生モジュールの概要
14.1
遅延割込み発生モジュールは , タスク切換え用の割込みを発生するためのモジュー
ルです。遅延割込み発生モジュールを使用することで , ソフトウェアで F2MC-16LX
CPU に対して割込み要求の発生 / 取消しを行うことができます。
■ 遅延割込み発生モジュールのブロックダイヤグラム
図 14.1-1 に , 遅延割込み発生モジュールのブロックダイヤグラムを示します。
図 14.1-1 遅延割込み発生モジュールのブロックダイヤグラム
内部データバス
遅延割込み要因発生/解除
要因ラッチ
■ 遅延割込み発生モジュールのレジスタ一覧
遅延割込み発生モジュール [ 遅延割込み要因発生 / 解除レジスタ (DIRR:Delayed Interrupt
Request Register)] のレジスタ構成は以下のとおりです。
図 14.1-2 遅延割込み発生モジュールのレジスタ構成
DIRR アドレス :
bit15
bit14
bit13
bit12
bit11
bit10
bit9
00009FH
bit8
D8
R/W
初期値
XXXXXXX0B
リセット時には要因解除状態になります。
DIRR は遅延割込み要求の発生 / 解除を制御するレジスタで , このレジスタに対して "1"
を書き込んだときには遅延割込みの要求を発生させ , "0" を書き込んだときには遅延割
込みの要求を解除します。リセット時には要因解除状態になります。未定義ビット領
域は "0", "1" どちらの書込みも可能ですが , 将来の拡張を考慮してこのレジスタをアク
セスする際にはセットビット , クリアビット命令を使用することをお勧めします。
■ 遅延割込み発生モジュールの割込みと EI2OS
表 14.1-1 に , 遅延割込み発生モジュールの割込みと EI2OS を示します。
表 14.1-1 遅延割込み発生モジュールの割込みと EI2OS
割込みレベル設定レジスタ
ベクタテーブルのアドレス
割込み番号
レジスタ名
#42(2AH)
ICR15
アドレス
0000BFH
下位
FFFF54H
上位
FFFF55H
EI2OS
バンク
FFFF56H
×
× : 使用不可
354
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 14 章 遅延割込み発生モジュール
14.2
MB90930 シリーズ
14.2
遅延割込み発生モジュールの動作
ソフトウェアにて CPU が DIRR の該当ビットに "1" を書き込むと , 遅延割込み発生
モジュールの中にある要求ラッチがセットされ , 割込みコントローラに割込み要求
を発生します。
■ 遅延割込み発生モジュールの動作
ソフトウェアにて CPU が DIRR の該当ビットに "1" を書き込むと , 遅延割込み発生モ
ジュールの中にある要求ラッチがセットされ , 割込みコントローラに割込み要求を発
生します。ほかの割込み要求が遅延割込み発生モジュールの割込みより優先順位が低
い , またはほかの割込み要求がない場合に , 割込みコントローラは F2MC-16LX CPU に
対して割込み要求を発生します。F2MC-16LX CPU は自分の内部にある CCR レジスタ
中の ILM ビットと割込み要求を比較し , 要求レベルが ILM ビットより高かった場合に
現在実行中の命令が終了し次第 , ハードウェア割込み処理マイクロプログラムを起動
します。この結果 , 遅延割込み発生モジュールの割込みに対する割込み処理ルーチンが
実行されます。割込み処理ルーチン内で DIRR の該当ビットの "0" を書き込むことで遅
延割込み発生モジュールの割込み要因をクリアし , 併せてタスクの切換えを行います。
図 14.2-1 に , 遅延割込み発生モジュールの動作を示します。
図 14.2-1 遅延割込み発生モジュールの動作
遅延割込み発生モジュール
遅延割込みコントローラ
書込み
F2MC-16LX
ほかの要求
ICR yy
ICR yy
CMP
DIRR
CMP
ICR xx
ICR xx
INTA
■ 遅延割込み発生モジュール使用上の注意
● 遅延割込み要求ラッチ
このラッチは DIRR の該当するビットに "1" を書き込むことでセットされ , 同じビット
に "0" を書き込むことでクリアされます。したがって , ソフトウェアを割込み処理ルー
チン内で要因をクリアするように作成しておかないと , 割込み処理から復帰した途端
に再割込み処理を起動しますので , 注意してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
355
第 14 章 遅延割込み発生モジュール
14.2
356
MB90930 シリーズ
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 15 章
DTP/ 外部割込み回路
DTP/ 外部割込み回路の機能と動作について説明し
ます。
15.1 DTP/ 外部割込み回路の概要
15.2 DTP/ 外部割込み回路の構成
15.3 DTP/ 外部割込み回路の端子
15.4 DTP/ 外部割込み回路のレジスタ
15.5 DTP/ 外部割込み回路の動作説明
15.6 DTP/ 外部割込み回路使用上の注意
15.7 DTP/ 外部割込み回路のプログラム例
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
357
第 15 章 DTP/ 外部割込み回路
15.1
15.1
MB90930 シリーズ
DTP/ 外部割込み回路の概要
DTP (Data Transfer Peripheral) / 外部割込み回路は , 外部接続の周辺装置と F2MC16LX CPU との間にあって , 周辺装置が発生する割込み要求またはデータ転送要求
を CPU に伝達し , 外部割込み要求の発生または拡張インテリジェント I/O サービス
(EI2OS) を起動します。
■ DTP/ 外部割込み機能
DTP/ 外部割込み機能は , DTP/ 外部割込み端子に入力された信号を起動要因とし , 通常
のハードウェア割込みと同じ手順で CPU に受け付けられて外部割込みを発生したり ,
拡張インテリジェント I/O サービス (EI2OS) を起動することができます。
割込み要求が CPU に受け付けられた場合 , 対応する拡張インテリジェント I/O サービ
ス (EI2OS) が禁止されていると外部割込み機能として動作し , 割込みルーチンに分岐
します。また , EI2OS が許可されていると DTP 機能として動作し , EI2OS による自動
データ転送をして , 指定回数のデータ転送終了時に割込み処理ルーチンに分岐します。
表 15.1-1 に DTP/ 外部割込みの概要を示します。
表 15.1-1 DTP/ 外部割込みの概要
DTP 機能
外部割込み
入力端子
8 本 (P50/INT0, P51/INT1, P53/INT3, P55/INT2, PC0/INT4 ∼ PC3/INT7)
外部割込みレベル設定レジスタ (ELVRH/ELVRL) で検出レベルまたはエッジ
を端子ごとに選択
割込み要因
"H" レベル /"L" レベル / 立上り
エッジ / 立下りエッジの入力
"H" レベル /"L" レベルの入力
割込み番号
#16 (10H) , #20 (14H) , #24 (18H) , #26 (1AH)
割込み制御
外部割込み許可レジスタ (ENIR) による割込み要求出力の許可と禁止
割込みフラグ
外部割込み要因レジスタ (EIRR) による割込み要因の保持
処理選択
EI2OS を禁止に設定
(ICR の ISE=0)
EI2OS を許可に設定
(ICR の ISE=1)
処理
外部割込み処理ルーチンへ分岐
EI2OS によるデータ自動転送 , 指定回数
処理後に割込みルーチンへ分岐
ICR : 割込み制御レジスタ
358
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 15 章 DTP/ 外部割込み回路
15.1
MB90930 シリーズ
■ DTP/ 外部割込み回路の割込みと EI2OS
表 15.1-2 に DTP/ 外部割込み回路の割込みと EI2OS を示します。
表 15.1-2 DTP/ 外部割込み回路の割込みと EI2OS
割込み制御レジスタ
端子
ベクタテーブルアドレス
EI2OS
割込み番号
レジスタ名
アドレス
下位
上位
バンク
#16 (10H)
ICR02
0000B2H
FFFFBCH
FFFFBDH
FFFFBEH
#20 (14H)
ICR04
0000B4H
FFFFACH
FFFFADH FFFFAEH
INT0
INT1
INT2
INT3
△
INT4
#24 (18H)
ICR06
0000B6H
FFFF9CH
FFFF9DH
FFFF9EH
#26 (1AH)
ICR07
0000B7H
FFFF94H
FFFF95H
FFFF96H
INT5
INT6
INT7
△ : ICR02 ∼ ICR07 レジスタを共有する割込み要求を使用しない場合には使用可能
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
359
第 15 章 DTP/ 外部割込み回路
15.2
15.2
MB90930 シリーズ
DTP/ 外部割込み回路の構成
DTP/ 外部割込み回路は , 次の 4 つのブロックで構成されています。
• DTP/ 割込み入力検出回路
• 外部割込みレベル設定レジスタ (ELVRL/ELVRH)
• 外部割込み要因レジスタ (EIRR)
• 外部割込み許可レジスタ (ENIR)
■ DTP/ 外部割込み回路のブロックダイヤグラム
図 15.2-1 に DTP/ 外部割込み回路のブロックダイヤグラムを示します。
図 15.2-1 DTP/ 外部割込み回路のブロックダイヤグラム
外部割込みレベル設定レジスタ(ELVR)
LB7 LA7 LB6 LA6 LB5 LA5 LB4 LA4 LB3 LA3 LB2 LA2 LB1 LA1 LB0 LA0
端子
セレクタ
セレクタ
PC3/INT7
P50/INT0
端子
セレクタ
セレクタ
PC2/INT6
内
端子
端子
P51/INT1
端子
セレクタ
セレクタ
部 PC1/INT5
端子
P55/INT2
デ
ー
端子
セレクタ
端子
セレクタ
P53/INT3
PC0/INT4
タ
バ
ス
ER7
ER6
ER5
ER4
ER3
ER2
ER1
ER0
割込み要求番号
#16(10H)
#20(14H)
#24(18H)
#26(1AH)
EN7
360
EN6
EN5
EN4
EN3
EN2
EN1
EN0
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 15 章 DTP/ 外部割込み回路
15.2
● DTP/ 外部割込み入力検出回路
端子入力信号から , 端子ごとに外部割込みレベル設定レジスタ (ELVRH/ELVRL) で選
択されたレベルまたはエッジの検出をして , 有効な信号を検出するとその端子に対応
する外部割込み要因レジスタ (EIRR) の IR ビットを "1" にセットします。
● 外部割込みレベル設定レジスタ (ELVRH/ELVRL)
端子ごとに有効レベルまたはエッジを選択するレジスタです。
● 外部割込み要因レジスタ (EIRR)
DTP/ 外部割込み要因の保持レジスタです。各端子に対応する外部割込み要求フラグ
ビットがあり , 端子に有効な信号の入力があると "1" にセットされます。
● 外部割込み許可レジスタ (ENIR)
端子ごとに , 外部割込みを許可 / 禁止するレジスタです。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
361
第 15 章 DTP/ 外部割込み回路
15.3
15.3
MB90930 シリーズ
DTP/ 外部割込み回路の端子
DTP/ 外部割込み回路の端子および端子のブロックダイヤグラムを示します。
■ DTP/ 外部割込み回路の端子
DTP/ 外部割込み回路の端子は , 汎用ポートおよびほかの周辺機能と兼用になっていま
す。表 15.3-1 に端子の機能 , 入出力形式および DTP/ 外部割込み回路使用時の設定など
を示します。
表 15.3-1 DTP/ 外部割込み回路の端子
端子名
端子機能
入出力形式
プルアップ
抵抗
スタンバイ
制御
P50/INT0/
ADTG
P51/INT1/
RX1/RX3
P55/INT2/
RX0/RX2
入力ポートに設定
(DDR5 の bit0=0)
入力ポートに設定
(DDR5 の bit1=0)
ポート 5 入出力 /
外部割込み入力
入力ポートに設定
(DDR5 の bit5=0)
入力ポートに設定
(DDR5 の bit3=0)
P53/INT3
CMOS 出力 /
CMOS ヒステ
リシス入力
PC0/INT4/
SIN0
なし
なし
入力ポートに設定
(DDRC の bit0=0)
入力ポートに設定
(DDRC の bit1=0)
UART0 データ出力禁止
PC1/INT5/
IN3/SOT0
PC2/INT6/
IN2/SCK0
端子の使用に
必要な設定
ポート C 入出力 /
外部割込み入力
入力ポートに設定
(DDRC の bit2=0)
UART0 クロック出力禁止
PC3/INT7/
SIN1
入力ポートに設定
(DDRC の bit3=0)
■ DTP/ 外部割込み回路の端子のブロックダイヤグラム
図 15.3-1 に DTP/ 外部割込み回路の端子のブロックダイヤグラムを示します。
図 15.3-1 DTP/ 外部割込み回路の端子のブロックダイヤグラム
PDR(ポートデータレジスタ)
ー
内
部
デ
タ
バ
ス
PDRリード
P-ch
出力ラッチ
PDRライト
DDR(ポート方向レジスタ)
端子
N-ch
方向ラッチ
DDRライト
DDRリード
362
リソース入力(INT)
スタンバイ制御(SPL=1)
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
15.4
DTP/ 外部割込み回路のレジスタ
第 15 章 DTP/ 外部割込み回路
15.4
DTP/ 外部割込み回路のレジスタ一覧を示します。
■ DTP/ 外部割込み回路のレジスタ
DTP/ 外部割込み回路は以下の 3 つのレジスタから構成されます。
• 外部割込み要因レジスタ (EIRR)
• 外部割込み許可レジスタ (ENIR)
• 外部割込みレベル設定レジスタ (ELVRH/ELVRL)
図 15.4-1 に DTP/ 外部割込み回路のレジスタ一覧を示します。
図 15.4-1 DTP/ 外部割込み回路のレジスタ一覧
アドレス
000031H,000030H
000033H,000032H
CM44-10150-1
bit15
bit8
外部割込み要因レジスタ(EIRR)
bit7
bit0
外部割込み許可レジスタ(ENIR)
外部割込みレベル設定レジスタ(ELVR)
FUJITSU MICROELECTRONICS LIMITED
363
第 15 章 DTP/ 外部割込み回路
15.4
MB90930 シリーズ
外部割込み要因レジスタ (EIRR)
15.4.1
外部割込み要因レジスタ (EIRR) は , 割込み要因の保持とクリアをします。
■ 外部割込み要因レジスタ (EIRR)
図 15.4-2 に外部割込み要因レジスタの構成を , 表 15.4-1 に各ビットの機能を示します。
図 15.4-2 外部割込み要因レジスタ (EIRR)
アドレス bit15 bit14 bit13 bit12 bit11 bit10 bit9
bit8 bit7
000031H
ER7
ER6
ER5
ER4
ER3
ER2
ER1
ER0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
ER7 ~
ER0
R/W :リード/ライト可能
:初期値
0
1
bit0
ENIR
初期値
00000000 B
外部割込み要求フラグビット
読出し時
書込み時
DTP/外部割込み入力なし
このビットのクリア
DTP/外部割込み入力あり 変化なし,ほかへの影響なし
表 15.4-1 外部割込み要因レジスタ (EIRR) の各ビットの機能説明
ビット名
bit15
∼
bit8
機能
・DTP/ 外部割込み端子に , 外部割込みレベル設定レジスタ (ELVRH/ELVRL) の LB7,
LA7 ∼ LB0, LA0 ビットで選択されたエッジまたはレベル信号が入力された場合に
は "1" にセットされます ( 割込み要因の保持 ) 。
・このビットと対応する外部割込み許可レジスタ (ENIR) の EN7 ∼ EN0 ビットが "1"
ER7 ∼ ER0 :
の場合には CPU に割込み要求を出力します。
外部割込み要求
・書込み時は "0" でクリアされ , "1" ではこのビットには影響せずに変化しません。
フラグビット
・拡張インテリジェント I/O サービス (EI2OS) が起動された場合には 1 データの転送
が終了した時点で , 対応する外部割込み要求フラグビットは自動的にクリアされま
す。
( 注意事項 ) リードモディファイライト (RMW) 系命令の読出し時には "1" が読み出されます。
複数の外部割込み要求出力が許可 (ENIR : EN7 ∼ EN0=1) されている場合には CPU が割込みを受け
付けたビット (ER7 ∼ ER0 の "1" にセットされているビット ) だけをクリアするようにしてくださ
い。それ以外のビットを無条件にクリアすることは避けてください。初期値は "00H" ですが , DTP/
外部割込み端子の状態によってリセット解除後の値は変化します。
364
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
15.4.2
外部割込み許可レジスタ (ENIR)
第 15 章 DTP/ 外部割込み回路
15.4
外部割込み許可レジスタ (ENIR) は , 割込み要求の CPU への出力許可 / 禁止をしま
す。
■ 外部割込み許可レジスタ (ENIR)
図 15.4-3 に外部割込み許可レジスタ (ENIR) の構成を , 表 15.4-2 に各ビットの機能を示
します。また , 表 15.4-3 に外部割込み要因レジスタ (EIRR) および外部割込み許可レジ
スタ (ENIR) と各チャネルの対応を示します。
図 15.4-3 外部割込み許可レジスタ (ENIR)
アドレス bit15
bit8
000030 H
EI R R
R/W :リード/ライト可能
bit7
bit6
bit6
bit4
bit3
bit2
bit1
bit0
初期値
EN7
EN6
EN5
EN4
EN3
EN2
EN1
EN0
00000000B
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
EN7~
EN0
外部割込み要求許可ビット
0
1
外部割込み要求禁止
外部割込み要求許可
: 初期値
表 15.4-2 外部割込み許可レジスタ (ENIR) の各ビットの機能説明
ビット名
機能
EN7 ∼ EN0;
bit7 ∼
bit0 外部割込み要求
許可ビット
CPU への割込み要求出力の許可 / 禁止をするビットです。このビットと , 対応する
外部割込み要因レジスタ (EIRR) の ER7 ∼ ER0 のビットが "1" の場合には CPU に
割込み要求を出力します。
・外部割込み要求許可ビットの状態にかかわらず , DTP/ 外部割込み端子の状態は
ポートデータレジスタで直接読み出せます。
・外部割込み要因レジスタ (EIRR) の ER7 ∼ ER0 のビットは外部割込み要求許可
ビットの値に関係なく , 割込み要因を検出すると "1" にセットされます。
( 注意事項 ) DTP/ 外部割込み端子を使用する場合にはポート方向レジスタの対応するビットに "0" を書き込んで
端子を入力に設定してください。
表 15.4-3 DTP/ 割込み制御レジスタ (EIRR, ENIR) と各チャネルの対応
CM44-10150-1
DTP/ 外部割込み端子
割込み番号
外部割込み要求フラグ
ビット
外部割込み要求許可ビット
PC3/INT7
#26 (1AH)
ER7
EN7
PC2/INT6
#26 (1AH)
ER6
EN6
PC1/INT5
#24 (18H)
ER5
EN5
PC0/INT4
#24 (18H)
ER4
EN4
P53/INT3
#20 (14H)
ER3
EN3
P55/INT2
#20 (14H)
ER2
EN2
P51/INT1
#16 (10H)
ER1
EN1
P50/INT0
#16 (10H)
ER0
EN0
FUJITSU MICROELECTRONICS LIMITED
365
第 15 章 DTP/ 外部割込み回路
15.4
15.4.3
MB90930 シリーズ
外部割込みレベル設定レジスタ (ELVRH/ELVRL)
外部割込みレベル設定レジスタ (ELVRH/ELVRL) は , DTP/ 外部割込み端子に入力さ
れる信号が DTP/ 外部割込み要因であることを検出するための信号のレベルまたは
エッジの種類を端子ごとに選択します。
■ 外部割込みレベル設定レジスタ (ELVRH/ELVRL)
図 15.4-4 に外部割込みレベル設定レジスタ (ELVRH/ELVRL) の構成を , 表 15.4-4 に各
ビットの機能を示します。また , 表 15.4-5 に外部割込みレベル設定レジスタ (ELVRH/
ELVRL) の各ビットと , 各チャネルの対応を示します。
図 15.4-4 外部割込みレベル設定レジスタ (ELVRH/ELVRL) の構成
アドレス bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
000033H
000032H
初期値
LB7 LA7 LB6 LA6 LB5 LA5 LB4 LA4 LB3 LA3 LB2 LA2 LB1 LA1 LB0 LA0
00000000B
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
00000000B
R/W :リード/ライト可能
:初期値
LB7~
LB0
LA7~
LA0
0
0
0
1
0
1
1
外部割込み要求検出選択ビット
"L"レベル検出
"H"レベル検出
立上りエッジ検出
立下りエッジ検出
1
表 15.4-4 外部割込みレベル設定レジスタ (ELVRH/ELVRL) の各ビットの機能説明
ビット名
bit15
∼
bit0
機能
LB7 ∼ LB0,
LA7 ∼ LA0 :
・DTP/ 外部割込み端子に入力される DTP/ 外部割込み要因となる信号のレベルま
たはエッジの種類を選択するビットです。
外部割込み要求 ・1 つの端子に , それぞれ 2 ビットずつ割り当てられています。
検出選択ビット
( 注意事項 ) DTP/ 外部割込み端子に , 選択された検出信号が入力されると , 外部割込み許可レジスタ (ENIR) の
設定などに関係なく , 外部割込み要求フラグビットに "1" がセットされます。
表 15.4-5 外部割込みレベル設定レジスタ (ELVRH/ELVRL) の各ビットと各チャネルの対応
366
DTP/ 外部割込み端子
割込み番号
ビット名
PC3/INT7
#26 (1AH)
LB7, LA7
PC2/INT6
#26 (1AH)
LB6, LA6
PC1/INT5
#24 (18H)
LB5, LA5
PC0/INT4
#24 (18H)
LB4, LA4
P53/INT3
#20 (14H)
LB3, LA3
P55/INT2
#20 (14H)
LB2, LA2
P51/INT1
#16 (10H)
LB1, LA1
P50/INT0
#16 (10H)
LB0, LA0
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 15 章 DTP/ 外部割込み回路
15.5
MB90930 シリーズ
15.5
DTP/ 外部割込み回路の動作説明
DTP/ 外部割込み回路には , 外部割込み機能と DTP 機能があります。各機能の設定
と動作について説明します。
■ DTP/ 外部割込み回路の設定
DTP/ 外部割込み回路を動作させるには , 図 15.5-1 の設定が必要です。
図 15.5-1 DTP/ 外部割込み回路
ICR07/ bit15 bit14 bit13 bit12 bit11 bit10 bit9
ICR06/ ICS3 ICS2 ICS1 ICS0 ISE IL2 IL1
ICR04/
0
◆
◆
ICR02
1
◆
◆
◆
◆
◆
◆
bit8
EIRR/ ER7 ER6 ER5
ENIR ◆
◆
◆
ELVR
IL0
◆
◆
ER4
ER3
ER2
ER1
ER0
◆
◆
◆
◆
◆
bit4
bit3
bit2
bit1
bit0
ICS3 ICS2 ICS1 ICS0
bit7
ISE
IL2
IL1
IL0
0
1
◆
◆
◆
◆
◆
◆
◆
bit6
◆
bit5
◆
◆
EN7 EN6 EN5 EN4
◇
◇
◇
◇
EN
◇
外部割込み時
DTP 時
EN2 EN1 EN0
◇
◇
◇
LB7 LA7 LB6 LA6 LB5 LA5 LB4 LA4 LB3 LA3 LB2 LA2 LB1 LA1 LB0 LA0
◆
◆
DDR5/
DDRC
◆
◆
◆
P55
P53
△
△
◆
◆
◆
P51 P50
△
△
◆
◆
◆
◆
◆
◆
◆
◆
PC3 PC2 PC1 PC0
△
△
△
△
◆ : 使用ビット
◇ : 使用する端子の対応するビットに "1" を設定
△ : 使用する端子の対応するビットに "0" を設定
0 : "0" を設定
1 : "1" を設定
DTP/ 外部割込み回路のレジスタは , 次の手順で設定してください。
1) 外部割込み入力として使用する端子と兼用する汎用入出力ポートを入力ポート
に設定する。
2) 外部割込み許可レジスタ (ENIR) の対象となるビットを禁止状態にする。
3) 外部割込みレベル設定レジスタ (ELVRH/ELVRL) の対象となるビットを設定する。
4) 外部割込み要因レジスタ (EIRR) の対象となるビットをクリアする。
5) 外部割込み許可レジスタ (ENIR) の対象となるビットを許可する。
DTP/ 外部割込み回路のレジスタの設定は , 最初に外部割込み要求出力を禁止 (ENIR の
EN7 ∼ EN0=0) してから行います。また , 外部割込み要求出力を許可 (ENIR の EN7 ∼
EN0=1) する場合には先に対応する割込み要求フラグビットをクリア (EIRR の ER7 ∼
ER0=0) する必要があります。
これは , レジスタ設定時に誤って割込み要求が発生するのを避けるためです。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
367
第 15 章 DTP/ 外部割込み回路
15.5
MB90930 シリーズ
● 外部割込み機能と DTP 機能の切換え
外部割込み機能と DTP 機能の切換えは , 対応するには割込み制御レジスタ (ICR) の ISE
ビットの設定で行います。ISE ビットが "1" の場合には拡張インテリジェント I/O サー
ビス (EI2OS) が許可されて DTP 機能として動作します。また , "0" の場合には EI2OS は
禁止されて外部割込み機能だけの動作となります。
<注意事項>
複数の割込み要求が 1 つの ICR レジスタに割り当てられている場合には割込みレベル (IL2 ∼
IL0) はすべての割込み要求に共通となります。また , 1 つの割込み要求で EI2OS を使用す
ると , ほかの割込み要求は原則として使用できません。
■ DTP/ 外部割込み動作
DTP/ 外部割込み回路の制御ビットと割込み要因は , 表 15.5-1 のようになっています。
表 15.5-1 DTP/ 外部割込み回路の制御ビットと割込み要因
DTP/ 外部割込み回路
割込み要求フラグビット
EIRR : ER7 ∼ ER0
割込み要求許可ビット
ENIR : EN7 ∼ EN0
割込み要因
INT7 ∼ INT0 端子への有効エッジ / レベルの入力
DTP/ 外部割込み要求の設定の後 , 対応する端子に外部割込みレベル設定レジスタ
(ELVRH/ELVRL) で設定された要因が入力されると, このリソースは割込みコントロー
ラに対して割込み要求信号を発生します。ISE ビットが "0" の場合は割込み処理マイク
ロプログラムを実行し, "1"の場合は拡張インテリジェントI/Oサービス(EI2OS)処理 (DTP
処理 ) マイクロプログラムを実行します。図 15.5-2 に , DTP/ 外部割込み回路の動作フ
ローチャートを示します。
368
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 15 章 DTP/ 外部割込み回路
15.5
MB90930 シリーズ
図 15.5-2 DTP/ 外部割込み回路の動作フローチャート
DTP/外部割込み回路
ほかの要求
ELVRH/
ELVRL
割込みコントローラ
EIRR
ICR
ENIR
ICR
CPU
IL
YY
CMP
CMP
ILM
XX
割込み処理
マイクロ
プログラム
要因
DTP処理ルーチン
(EI2OS起動)
DTP/外部割込み
要求発生
メモリ 周辺データ転送
ディスクリプタ更新
割込みコントローラ
受付け判定
ディスクリプタ
データカウンタ
CPU割込み
受付け判定
0
≠0
割込み処理ルーチン
再設定 または 停止
DTP処理からの復帰
割込み処理
マイクロプログラム
起動
CPU処理復帰
1
ICR:ISE
0
外部割込みルーチンを起動
処理と割込みフラグクリア
外部割込みから復帰
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
369
第 15 章 DTP/ 外部割込み回路
15.5
MB90930 シリーズ
外部割込み機能
15.5.1
DTP/ 外部割込み回路には , 選択した信号レベルの DTP/ 外部割込み端子への入力で
割込み要求を発生させる外部割込み機能があります。
■ 外部割込み機能
DTP/ 外部割込み端子に , 外部割込みレベル設定レジスタ (ELVRH/ELVRL) で選択した
信号 ( エッジまたはレベル ) が検出されると , 外部割込み要因レジスタ (EIRR) の ER7 ∼
ER0 ビットに "1" がセットされます。この場合 , 外部割込み許可レジスタの割込み要求
許可ビットが許可 (ENIR の EN7 ∼ EN0=1) されていると , 割込みコントローラに対し
て割込み要因の発生を通知します。割込みコントローラで , ほかの周辺機能からの割込
み要求に対する割込みレベル (ICR の IL2 ∼ IL0) の強弱 , 同時発生時の割込み優先順位
などが判定され , CPU でインタラプトレベルマスクレジスタ (PS の ILM2 ∼ ILM0) と
割込みレベルの強弱 , 割込み許可ビット (PS の CCR=1) などが判定されます。割込み要
求が CPU に受け付けられた時点で CPU の内部動作による割込み処理 ( マイクロプログ
ラム ) を実行して割込み処理ルーチンに分岐します。割込み処理ルーチンで対応する
割込み要求フラグビットに "0" を書き込んで , 割込み要求をクリアしてください。
<注意事項>
• ER ビットは , 対応する EN ビットの状態とは関係なく , DTP/ 外部割込み起動要因が発
生すると "1" にセットされます。
• 割込みルーチンが起動された場合は , 起動要因となった ER ビットをクリアしてくださ
い。ER ビットが "1" のままでは割込みから復帰できません。この場合に割込み要因以
外のフラグビットを無条件でクリアしないように注意してください。
370
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 15 章 DTP/ 外部割込み回路
15.5
MB90930 シリーズ
15.5.2
DTP 機能
DTP/ 外部割込み回路には , 外部の周辺装置からの信号を DTP/ 外部割込み端子から検
出して拡張インテリジェント I/O サービス (EI2OS) を起動する DTP 機能があります。
■ DTP 機能の動作説明
DTP 機能は , 外部の周辺装置からのデータ転送要求信号を検出し , メモリと周辺装置の
間でデータを自動転送する機能です。レベル検出の外部割込み機能で拡張インテリ
ジェント I/O サービス (EI2OS) を起動します。CPU に割込み要求が受け付けられるま
では , 外部割込み機能と同様の動作をしますが , EI2OS の動作が許可 (ICR の ISE=1) さ
れていると , 割込み要求が受け付けられた時点で EI2OS を起動してデータ転送を開始
します。1 データの転送が終了するとディスクリプタの更新などが行われ , 割込み要求
フラグビットをクリアして , 端子からの次の要求に備えます。EI2OS による転送がすべ
て終了すると割込み処理ルーチンに分岐します。
図 15.5-3 にメモリと外部周辺装置とのインタフェース例を示します。
図 15.5-3 メモリと外部周辺装置とのインタフェース例
"H"レベル要求(ELVR:LB0,LA0=01B)
INT0端子への入力
(DTP要因)
CPU内部動作
(マイクロプログラム)
ディスクリプタ
選択,読出し
ディスクリプタ
更新
リードアドレス
アドレスバス端子
ライトアドレス
ライトデータ
リードデータ
データバス端子
リード信号
ライト信号
*1
外部接続の
周辺装置
内部データバス
ライト動作*2
レジスタ
データ転送
要求
*1
リード動作
DTP要因*1
INT
DTP/
外部割込み
回路
割込み
要求
CPU
(EI2OS)
内部メモリ
*1 :転送開始後,3マシンクロック以内に取り下げる
*2 :拡張インテリジェントI/Oサービス(EI2OS)が「周辺→メモリ転送」のとき
<注意事項>
外部周辺装置は , 最初の転送が開始されてから 3 マシンクロック以内に , データ転送要求
信号 (DTP 要因 ) のレベルだけを取り下げてください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
371
第 15 章 DTP/ 外部割込み回路
15.6
15.6
MB90930 シリーズ
DTP/ 外部割込み回路使用上の注意
DTP/ 外部割込み回路の入力信号 , スタンバイモードの解除および割込みに関連する
注意を示します。
■ DTP/ 外部割込み回路使用上の注意
● DTP 機能を用いた場合の外部に接続する周辺装置の条件
DTP 機能がサポートできる外部接続の周辺装置は , 転送が行われると自動的にデータ
転送要求をクリアするものでなければなりません。また , 転送動作を開始してから 3 マ
シンクロックサイクル以内に転送要求を取り下げないと , DTP/ 外部割込み回路は次の
転送要求が発生したものとして扱ってしまいます。
● 外部割込み入力極性
外部割込みレベル設定レジスタ (ELVRH/ELVRL) の設定がエッジ検出の場合にエッジ
が入力されたことを検出するには , パルス幅は最小 3 マシンクロック必要です。
要求入力レベルがレベル設定の場合にパルス幅は最小 3 マシンクロックサイクル必要
とします。また割込み入力端子がアクティブレベルを保持し続けている限りは , 外部割
込み要因レジスタをクリアしても , 割込みコントローラへの割込み要求は発生し続け
ます。
設定がレベル検出の場合に割込み要因となるレベルが入力されると , 外部割込み要因
レジスタ (EIRR) 内部の要因 F/F が "1" にセットされ , 図 15.6-1 に示すように要因が保
持されます。このため , 要因が取り下げられても , 割込み要求出力許可状態の場合には
割込みコントローラへの要求はアクティブのままです。割込みコントローラへの要求
を取り下げるには, 外部割込み要求フラグビットをクリアして, 図 15.6-2 に示すように
要因 F/F をクリアする必要があります。
図 15.6-1 レベル設定時の要因保持回路のクリア
DTP/
外部割込み要因
DTP/割込み入力
検出回路
要因F/F
(EIRRレジスタ)
許可ゲート
割込み
コントローラへ
(割込み要求)
クリアしない限り要因を保持し続ける
図 15.6-2 割込み要求出力許可時の DTP/ 外部割込み要因と割込み要求の関係
DTP/外部割込み要因
("H"レベル検出時)
割込み要因の取下げ
割込みコントローラ
への割込み要求
要因F/Fのクリアによってインアクティブとなる
372
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 15 章 DTP/ 外部割込み回路
15.6
● 割込みに関する注意
外部割込み機能時に外部割込み要求フラグビットが"1"で, 割込み要求出力が許可された
状態では割込み処理から復帰できません。割込み処理ルーチン内で外部割込み要求フラ
グビットのクリアを必ず行ってください。DTP 機能時は , EI2OS で自動的にクリアされ
ます。また , レベル検出時は , 割込み要因となるレベルが入力されたままの場合には外部
割込み要求フラグビットをクリアしても , すぐに再セットされます。必要に応じて割込
み要求出力を禁止するか , 割込み要因そのものを解消してください。
● スタンバイモード使用時の注意事項
評価品では , スタンバイモードへ移行 , またはスタンバイモードから復帰する際に , 外部
割込みのイネーブル / ディセーブルにかかわらず (ENIR: EN=1 または 0), 外部割込み要因
レジスタの外部割込み要求フラグビット (EIRR: ER) がセットされる可能性があります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
373
第 15 章 DTP/ 外部割込み回路
15.7
15.7
MB90930 シリーズ
DTP/ 外部割込み回路のプログラム例
外部割込み機能と DTP 機能のプログラム例を示します。
■ 外部割込み機能のプログラム例
● 処理仕様
INT0 端子に入力されるパルスの立上りエッジを検出して外部割込みを発生します。
[ コーディング例 ]
ICR02 EQU
0000B2H
; DTP/ 外部割込み回路用割込み制御レジスタ
DDR5
EQU
000015H
; ポート 5 方向レジスタ
ENIR
EQU
000030H
; 外部割込み許可レジスタ
EIRR
EQU
000031H
; 外部割込み要因レジスタ
ELVRL EQU
000032H
; 外部割込みレベル設定レジスタ
ELVRH EQU
000033H
; 外部割込みレベル設定レジスタ
ER0
EQU
EIRR:0
; INT0 割込みフラグビット
EN0
EQU
ENIR:0
; INT0 割込み許可ビット
;---------- メインプログラム ------------------------------------------------CODE
CSEG
START:
;
:
; スタックポインタ(SP)などは初期化済みとする
MOV
I:DDR5, #00000000B ; DDR5 を入力に設定
AND
CCR, #0BFH
; 割込みディセーブル
MOV
I:ICR02, #00H
; 割込みレベル 0( 最強 ), EI2OS はディセーブル
CLRB EN0
; ENIR で INT0 を禁止
MOV
I:ELVR, #00000010B ; INT0 は立上りエッジ選択
CLRB I:ER0
; EIRR で INT0 の要因クリア
SETB I:EN0
; ENIR で INT0 を許可
MOV
ILM, #07H
; PS 内 ILM をレベル 7 に設定
OR
CCR, #40H
; 割込み許可イネーブル
LOOP: MOV
A, #00H
; 無限ループ
MOV
A, #01H
BRA
LOOP
;---------- 割込みプログラム ------------------------------------------------WARI:
CLRB ER0
; 割込み要求フラグをクリア
;
:
;
ユーザ処理
;
:
RETI
; 割込みから復帰
CODE
ENDS
;---------- ベクタ設定 --------------------------------------------------------VECT
CSEG ABS=0FFH
ORG
0FFBCH
; 割込み #16(10H) にベクタを設定
DSL
374
WARI
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 15 章 DTP/ 外部割込み回路
15.7
MB90930 シリーズ
VECT
ORG
DSL
DB
ENDS
END
0FFDCH
START
00H
; リセットベクタ設定
; シングルチップモードに設定
START
■ DTP 機能のプログラム例
● 処理仕様
INT0 端子に入力される信号の "H" レベルを検出して , 拡張インテリジェント I/O サー
ビス (EI2OS) の ch.0 を起動します。
DTP 処理 (EI2OS) で RAM 上のデータをポート 0 に出力します。
[ コーディング例 ]
ICR02
DDR0
DDR5
ENIR
EIRR
ELVRL
ELVRH
ER0
EN0
BAPL
BAPM
BAPH
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
EQU
0000B2H
000010H
000015H
000030H
000031H
000032H
000033H
EIRR:0
ENIR:0
000100H
000101H
000102H
;
;
;
;
;
;
;
;
;
;
;
;
DTP/ 外部割込み回路用割込み制御レジスタ
ポート 0 方向レジスタ
ポート 5 方向レジスタ
外部割込み許可レジスタ
外部割込み要因レジスタ
外部割込みレベル設定レジスタ
外部割込みレベル設定レジスタ
INT0 割込みフラグビット
INT0 割込み許可ビット
バッファアドレスポインタ下位
バッファアドレスポインタ中位
バッファアドレスポインタ上位
ISCS
EQU
000103H
; EI2OS ステータスレジスタ
IOAL
EQU
000104H
; I/O アドレスレジスタ下位
IOAH
EQU
000105H
; I/O アドレスレジスタ上位
DCTL
EQU
000106H
; データカウンタ下位
DCTH
EQU
000107H
; データカウンタ上位
;---------- メインプログラム ------------------------------------------------CODE
CSEG
START:
;
:
; スタックポインタ (SP) などは初期化済みとする
MOV
I:DDR0, #11111111B ; DDR0 を出力に設定
MOV
I:DDR5, #00000000B ; DDR5 を入力に設定
AND
CCR, #0BFH
; 割込みディセーブル
MOV
I:ICR02, #08H
; 割込みレベル 0( 最強 )
MOV
MOV
MOV
MOV
ISCS,
MOV
MOV
MOV
MOV
CM44-10150-1
BAPL, #00H
BAPM, #06H
BAPH, #00H
#12H
IOAL,
IOAH,
DCTL,
DCTH,
#00H
#00H
#0AH
#00H
;
;
;
;
;
;
;
;
;
;
EI2OS イネーブル , ch.0
出力データのアドレスを設定
バイト転送 , I/O アドレス固定 ,
バッファアドレス +1, メモリ→ I/O へ転送
転送先アドレスポインタとして
ポート 0(PDR0) を指定
転送回数 10 回
FUJITSU MICROELECTRONICS LIMITED
375
第 15 章 DTP/ 外部割込み回路
15.7
MB90930 シリーズ
CLRB I:EN0
; ENIR で INT0 を禁止
MOV
I:ELVR, #00000001B ; INT0 は "H" レベル選択
CLRB I:ER0
; EIRR で INT0 の要因クリア
SETB I:EN0
; ENIR で INT0 を許可
MOV
ILM, #07H
; PS 内 ILM をレベル 7 に設定
OR
CCR, #40H
; 割込みイネーブル
LOOP: MOV
A, #00H
; 無限ループ
MOV
A, #01H
;
BRA
LOOP
;
;---------- 割込みプログラム ------------------------------------------------WARI:
CLRB I:ER0
; 割込み要求フラグをクリア
;
:
; 必要に応じてチャネル切換え , 転送アドレス
の
; 変更
;
ユーザ処理
;
;
;
;
;
EI2OS の終了などの再設定を行う , 終了させる
場合は
割込みも禁止すること
割込みから復帰
:
RETI
CODE
ENDS
;---------- ベクタ設定 ------------------------------------------------------VECT
CSEG ABS=0FFH
ORG
0FFBCH
; 割込み #16(10H) にベクタを設定
VECT
376
DSL
ORG
DSL
DB
ENDS
END
WARI
0FFDCH
START
00H
; リセットベクタ設定
; シングルチップモードに設定
START
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 16 章
8/10 ビット A/D コンバータ
8/10 ビット A/D コンバータの機能と動作について
説明します。
16.1 8/10 ビット A/D コンバータの概要
16.2 8/10 ビット A/D コンバータのブロックダイヤグラム
16.3 8/10 ビット A/D コンバータの構成
16.4 8/10 ビット A/D コンバータの割込み
16.5 8/10 ビット A/D コンバータの動作説明
16.6 8/10 ビット A/D コンバータ使用上の注意
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
377
第 16 章 8/10 ビット A/D コンバータ
16.1
16.1
MB90930 シリーズ
8/10 ビット A/D コンバータの概要
8/10 ビット A/D コンバータは , RC 型逐次比較変換方式によって , アナログ入力電圧
を 8 ビットまたは 10 ビットのデジタル値に変換します。
• 入力信号は , 最大 24 チャネルのアナログ入力端子から選択します。
• 起動トリガは , ソフトウェアトリガ , 内部タイマ出力 , 外部トリガから選択できま
す。
■ 8/10 ビット A/D コンバータの機能
アナログ入力端子に入力されたアナログ電圧 ( 入力電圧 ) を 8 ビットまたは 10 ビット
のデジタル値に変換します (A/D 変換 )。
8/10 ビット A/D コンバータには以下の機能があります。
• A/D 変換時間は , サンプリング時間を含めて 1 チャネルで最小 1.4 μs * です。
• サンプリング時間は , 1 チャネルで最小 0.5 μs * です。
• 変換方式は , サンプル & ホールド回路付き RC 型逐次変換比較方式です。
• 8 ビットまたは 10 ビットの分解能を設定できます。
• アナログ入力端子は , 最大 24 チャネルまで使用できます。
• A/D 変換結果を A/D データレジスタに格納することにより , 割込み要求を発生でき
ます。
• 割込み要求が発生した場合に EI2OS を起動することができます。
• 起動トリガは , ソフトウェア , 内部タイマ出力 , 外部トリガ ( 立下りエッジ ) から選
択できます。
* : マシンクロック周波数 32MHz, AVCC ≧ 4.5 V で動作している場合
378
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 16 章 8/10 ビット A/D コンバータ
16.1
MB90930 シリーズ
■ 8/10 ビット A/D コンバータの変換モード
8/10 ビット A/D コンバータの変換モードには , 次の種類があります。
表 16.1-1 8/10 ビット A/D コンバータの変換モード
CM44-10150-1
変換モード
内容
単発変換モード
開始チャネルから終了チャネルまで順次 A/D 変換を行います。
終了チャネルの A/D 変換が終了すると , A/D 変換機能を停止し
ます。
連続変換モード
開始チャネルから終了チャネルまで順次 A/D 変換を行います。
終了チャネルの A/D 変換が終了すると , 開始チャネルに戻って
A/D 変換動作を継続します。
停止変換モード
1 チャネルごとに停止しながら A/D 変換を行います。終了チャ
ネルの A/D 変換が終了すると , 開始チャネルに戻って A/D 変換
と停止を繰り返します。
FUJITSU MICROELECTRONICS LIMITED
379
第 16 章 8/10 ビット A/D コンバータ
16.2
16.2
MB90930 シリーズ
8/10 ビット A/D コンバータのブロックダイヤグラム
8/10 ビット A/D コンバータは , 以下のブロックで構成されています。
■ 8/10 ビット A/D コンバータのブロックダイヤグラム
図 16.2-1 8/10 ビット A/D コンバータのブロックダイヤグラム
割込み要求出力
A/D制御
ステータス
レジスタ
BUSY INT INTE PAUS STS1 STS0 STRT ― MD1 MD0 S10 ―
(ADCS0/
ADCS1)
2
端子
ADTG
TO
16ビット
リロードタイマ1から
起動
セレクタ
―
―
予約
ソフトウェア
起動
2
内部データバス
サンプル&
ホールド回路
AN0~AN23
―
コンパレータ
コントロール回路
アナログ
チャネル
セレクタ
AVRH
AVcc
AVss
D/Aコンバータ
逐次比較回路
SAR
3
3
A/Dデータ
レジスタ D9 D8 D7 D6 D5 D4 D3 D2 D1 D0
(ADCR0/
ADCR1)
デコーダ
10
A/Dセッティング
レジスタ
(ADSR0/
ST2 ST1 ST0 CT2 CT1 CT0 ANS4 ANS3 ANS2 ANS1 ANS0 ANE4 ANE3 ANE2 ANE1 ANE0
ADSR1)
TO
−
予約
φ
380
:内部タイマ出力
:未定義
:必ず"0"に設定してください
:マシンクロック
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 16 章 8/10 ビット A/D コンバータ
16.2
MB90930 シリーズ
● ブロックタイヤグラム中の端子などの詳細
8/10 ビット A/D コンバータの実際の端子名および割込み要求番号を表 16.2-1 に示しま
す。
表 16.2-1 ブロックダイヤグラムの端子および割込み要求番号
ブロックダイヤグラム中の端子名 / 割込み要求番号
実際の端子名 / 割込み要求番号
ADTG
トリガ入力端子
P50/ADTG
TO
内部タイマ出力
16 ビットリロードタイマ 1 の出力
AN0 ∼ AN7
AN8 ∼ AN15
AN16 ∼ AN23
アナログ入力端子 ch.0 ∼ ch.7
アナログ入力端子 ch.8 ∼ ch.15
アナログ入力端子 ch.16 ∼ ch.23
P60/AN0 ∼ P67/AN7
P70/AN8 ∼ P77/AN15
P80/AN16 ∼ P87/AN23
AVRH
Vref+ 入力端子
AVRH
AVCC
VCC 入力端子
AVCC
AVSS
VSS 入力端子
AVSS
割込み要求出力
割込み要求出力
#32(20H)
● A/D 制御ステータスレジスタ (ADCS0, ADCS1)
ソフトウェアによる A/D 変換機能の起動 , A/D 変換機能の起動トリガの選択 , 変換モー
ドの選択 , 割込み要求の許可または禁止 , 割込み要求フラグの確認とクリア , A/D 変換
動作の一時停止および変換中の状態確認 , 分解能の選択を行います。
● 逐次比較回路 (SAR)
1 ビットずつ逐次比較を実行して変換結果を格納します。次の A/D 変換が開始される
と本回路内の A/D 変換結果は破壊されます。
● A/D データレジスタ (ADCR0, ADCR1)
A/D 変換結果は A/D 変換実行時に逐次比較回路に 1 ビットずつ格納され , A/D 変換が
終了して変換結果が確定した時点で本レジスタに格納されます。本レジスタから A/D
変換結果を読み出すことができます。
● A/D セッティングレジスタ (ADSR0, ADSR1)
A/D 変換の開始チャネルおよび終了チャネルの設定 , A/D 変換のコンペア時間 , サンプ
リング時間の設定を行います。
● 起動セレクタ
A/D 変換を起動するトリガを選択します。起動トリガには , 内部タイマ出力または外部
端子入力を設定できます。
● デコーダ
A/D セッティングレジスタの A/D 変換開始チャネル選択ビット (ADSR : ANS4 ∼ ANS0)
および A/D 変換終了チャネル選択ビット (ADSR : ANE4 ∼ ANE0) の設定から , A/D 変
換に使用するアナログ入力端子を選択します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
381
第 16 章 8/10 ビット A/D コンバータ
16.2
MB90930 シリーズ
● アナログチャネルセレクタ
デコーダからの信号を受けて , 24 チャネルのアナログ入力端子から A/D 変換に使用す
る端子を選択します。
● サンプル & ホールド回路
アナログチャネルセレクタで選択された入力電圧を保持します。A/D 変換を開始した
直後の入力電圧を保持することによって, A/D変換中の入力電圧の変動の影響を受けず
に変換できます。
● D/A コンバータ
サンプル & ホールド回路で保持された入力電圧と比較するための基準電圧を発生しま
す。
● コンパレータ
サンプル & ホールド回路で保持された入力電圧と , D/A コンバータの出力電圧を比較
して電圧の大小を判定します。
● コントロール回路
コンパレータからの大小信号を受けて , A/D 変換値を決定します。変換結果が確定する
と , 変換結果のデータを A/D データレジスタに格納します。割込み要求出力が許可さ
れている場合には割込みが発生します。
382
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 16 章 8/10 ビット A/D コンバータ
16.3
MB90930 シリーズ
16.3
8/10 ビット A/D コンバータの構成
A/D コンバータの端子 , レジスタ , 割込み要因を示します。
■ 8/10 ビット A/D コンバータの端子
8/10 ビット A/D コンバータの端子は汎用入出力ポートと兼用です。端子の機能 ,
8/10 ビット A/D コンバータを使用する場合の設定を表 16.3-1 に示します。
表 16.3-1 8/10 ビット A/D コンバータの端子 (1 / 2)
機能名
端子名
トリガ入力
P50 / ADTG/INT0
ch.0
P60 / AN0
ch.1
P61 / AN1
ch.2
P62 / AN2
ch.3
P63 / AN3
ch.4
P64 / AN4
ch.5
P65 / AN5
ch.6
P66 / AN6
ch.7
P67 / AN7
CM44-10150-1
端子機能
8/10 ビット A/D コンバータを
使用した場合の設定
汎用入出力ポート /
外部トリガ入力 /
外部割込み 0 入力
ポート方向レジスタ (DDR5) で
入力ポートに設定
汎用入出力ポート /
アナログ入力 /
PPG 出力
アナログ信号の入力許可
(ADER6: ADE7 ∼ ADE0 の対応
するビットを "1" に設定 )
FUJITSU MICROELECTRONICS LIMITED
383
第 16 章 8/10 ビット A/D コンバータ
16.3
MB90930 シリーズ
表 16.3-1 8/10 ビット A/D コンバータの端子 (2 / 2)
機能名
端子名
ch.8
P70/PWM1P0/AN8
ch.9
P71/PWM1M0/AN9
ch.10
P72/PWM2P0/AN10
ch.11
P73/PWM2M0/AN11
ch.12
P74/PWM1P1/AN12
ch.13
P75/PWM1M1/AN13
ch.14
P76/PWM2P1/AN14
ch.15
P77/PWM2M1/AN15
ch.16
P80/PWM1P2/AN16
ch.17
P81/PWM1M2/AN16
ch.18
P82/PWM2P2/AN18
ch.19
P83/PWM2M2/AN19
ch.20
P84/PWM1P3/AN20
ch.21
P85/PWM1M3/AN21
ch.22
P86/PWM2P3/AN22
ch.23
P87/PWM2M3/AN23
384
端子機能
汎用入出力ポート /
PWM 出力 /
アナログ入力
8/10 ビット A/D コンバータを
使用した場合の設定
アナログ信号の入力許可
(ADER8, 7: ADE23 ∼ ADE8 の
対応するビットを "1" に設定 )
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 16 章 8/10 ビット A/D コンバータ
16.3
MB90930 シリーズ
■ 8/10 ビット A/D コンバータのレジスタと初期値の一覧
図 16.3-1 8/10 ビット A/D コンバータのレジスタと初期値の一覧
A/D制御ステータスレジスタ上位 ADCS1
14
13
bit 15
アドレス:000021H
BUSY INT
R/W
11
10
9
R/W
R/W
R/W
R/W
R/W
4
3
2
5
1
0
予約
R/W
R/W
R/W
A/Dデータレジスタ下位 ADCR0
7
bit
D7
アドレス:000022H
R
R/W
13
12
11
10
ST2
R/W
9
8
D9
R
D8
R
5
4
3
2
1
0
D6
D5
D4
D3
D2
D1
D0
R
R
R
R
R
R
R
ST1
R/W
A/Dセッティングレジスタ下位 ADSR0
6
bit
7
12
ST0
R/W
5
11
10
CT2 CT1
R/W R/W
4
3
9
8
1
0
ANS2 ANS1 ANS0 ANE4 ANE3 ANE2 ANE1 ANE0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
XXXXXX00B
初期値
00000000B
初期値
CT0 ANS4 ANS3
R/W R/W R/W
2
初期値
000XXXX0B
初期値
6
A/Dセッティングレジスタ上位 ADSR1
14
13
bit 15
R/W
R
W
―
X
W
S10
アドレス:000023H
アドレス:00008AH
初期値
0000000XB
MD1 MD0
A/Dデータレジスタ上位 ADCR1
14
bit 15
アドレス:00008BH
8
INTE PAUS STS1 STS0 STRT
A/D制御ステータスレジスタ下位 ADCS0
7
6
bit
アドレス:000020H
12
00000000B
初期値
00000000B
R/W
:リード/ライト可能
:リードオンリ
:ライトオンリ
:未定義
:不定値
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
385
第 16 章 8/10 ビット A/D コンバータ
16.3
16.3.1
MB90930 シリーズ
A/D 制御ステータスレジスタ上位 (ADCS1)
A/D 制御ステータスレジスタ上位 (ADCS1) では , 次の設定ができます。
• ソフトウェアによる A/D 変換機能の起動
• A/D 変換機能の起動トリガの選択
• A/D データレジスタへの A/D 変換結果格納による割込み要求の許可または禁止
• A/D データレジスタへの A/D 変換結果格納による割込み要求フラグの確認とクリア
• A/D 変換動作の一時停止および変換中の状態確認
■ A/D 制御ステータスレジスタ上位 (ADCS1)
図 16.3-2 A/D 制御ステータスレジスタ上位 (ADCS1)
アドレス
15
14
13
12
11
10
9
8
初期値
000021H BUSY INT INTE PAUS STS1 STS0 STRT R/W R/W R/W R/W R/W R/W
W
0000000XB
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
変換は一時停止していない
"0"にクリア
1
変換は一時停止している
設定禁止
bit13
INTE
0
1
割込み要求許可ビット
割込み要求の禁止
割込み要求の許可
bit14
INT
割込み要求フラグビット
0
読出し時
A/D変換未終了
書込み時
"0"にクリア
1
A/D変換終了
影響なし
bit15
BUSY
R/W
W
―
X
386
:リード/ライト可能
:ライトオンリ
:未定義
:不定値
:初期値
A/D変換動作中フラグビット
0
読出し時
書込み時
A/D変換終了(非起動状態) A/D変換機能の強制終了
1
A/D変換動作中
FUJITSU MICROELECTRONICS LIMITED
影響なし
CM44-10150-1
第 16 章 8/10 ビット A/D コンバータ
16.3
MB90930 シリーズ
表 16.3-2 A/D 制御ステータスレジスタ上位 (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 変換結果データの転送が完了すると自動的にクリアさ
れます。
"0" に設定した場合 : クリアされます。
"1" に設定した場合 : 影響しません。
( 注意事項 )
リードモディファイライト (RMW) 系命令では "1" が読み出されま
す。
割込み要求の出力を許可または禁止します。
割込み要求を許可した場合に (INTE=1), 割込み要求フラグビットが
bit13
INTE:
割込み要求許可
ビット
CM44-10150-1
セットされると (INT=1) 割込み要求が発生します。
( 注意事項 )
EI2OS で A/D 変換結果を転送する場合は , 必ず "1" に設定してくだ
さい。
FUJITSU MICROELECTRONICS LIMITED
387
第 16 章 8/10 ビット A/D コンバータ
16.3
MB90930 シリーズ
表 16.3-2 A/D 制御ステータスレジスタ上位 (ADCS1) の機能 (2 / 3)
ビット名
機能
PAUS ビットは A/D 変換データ保護機能が働いたことを示します。
PAUS ビットは割込み要求の出力を許可 (ADCS:INTE=1) に設定して
いる場合にのみ有効です。
A/D 変換データ保護機能が働いた場合 : "1" にセットされます。
"0" に設定した場合 : "0" にクリアされます。
"1" に設定した場合 : "1" にセットされます。
bit12
388
PAUS:
一時停止フラグ
ビット
• 割込み要求の出力を許可 (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 変換データ保護機能に関しては「16.5.5 A/D 変換データ保
護機能」を参照してください。
• 一時停止状態が解除されても PAUS ビットは自動的にはクリア
されません。PAUS ビットをクリアするには "0" を書き込んでく
ださい。
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 16 章 8/10 ビット A/D コンバータ
16.3
表 16.3-2 A/D 制御ステータスレジスタ上位 (ADCS1) の機能 (3 / 3)
ビット名
機能
8/10 ビット A/D コンバータを起動するトリガ ( 起動トリガ ) を選択
します。
• "00B" : ソフト起動
• "01B" : 外部端子トリガ / ソフト起動
• "10B" : 16 ビットリロードタイマ / ソフト起動
• "11B" : 外部端子トリガ /16 ビットリロードタイマ / ソフト起動
bit11,
bit10
STS1, STS0:
A/D 変換起動
トリガ選択ビット
( 注意事項 )
• 外部端子トリガが選択された場合 (01B, 11B) :
ADTG端子に立下りエッジが検出されるとA/D変換を開始しま
す。
• 16 ビットリロードタイマを選択した場合 (10B, 11B) :
16 ビットリロードタイマ 1 の出力が "1" になると A/D 変換を
開始します。
• 起動トリガを複数に設定した場合 (STS1, STS0= 00B 以外 ) :
8/10ビットA/Dコンバータは最初に発生した起動トリガで起動
します。
• 起動トリガの設定を変更する場合は , 起動トリガを発生させる
周辺機能の動作が停止している状態 ( トリガがインアクティブ
の状態 ) で設定してください。
bit9
STRT:
A/D 変換
ソフトウェア起動
ビット
8/10 ビット A/D コンバータをソフトウェアで起動します。
"1" に設定した場合 : 8/10 ビット A/D コンバータが起動します。
• 停止変換モードで A/D 変換動作が一時停止している場合は , STRT
ビットに "1" を書き込むことによって A/D 変換動作を再開します。
"0" に設定した場合 : 無効です。変化しません。
( 注意事項 )
• リードモディファイライト (RMW) 系命令では "0" が読み出され
ます。
• リードモディファイライト (RMW) 系命令以外で読んだ場合は ,
書き込んだ値ではなく "1" が読み出されます。
• 8/10 ビット A/D コンバータの強制終了 (BUSY= 0) とソフトウェ
ア起動 (STRT=1) を同時に行わないでください。
bit8
未定義ビット
• 読み出したとき : 常に "1" が読み出されます。
• 書き込んだとき : 影響しません。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
389
第 16 章 8/10 ビット A/D コンバータ
16.3
MB90930 シリーズ
A/D 制御ステータスレジスタ下位 (ADCS0)
16.3.2
A/D 制御ステータスレジスタ下位 (ADCS0) では , 次の設定ができます。
• A/D 変換モードの選択
• A/D 変換の開始チャネルおよび終了チャネルの選択
■ A/D 制御ステータスレジスタ下位 (ADCS0)
図 16.3-3 A/D 制御ステータスレジスタ下位 (ADCS0)
アドレス
bit 7
6
5
000020H MD1 MD0 S10
R/W R/W
R/W
4
3
2
1
0
-
-
-
-
予約
-
-
-
-
R/W
初期値
000XXXX0B
bit0
予約
0
bit5
S10
0
1
R/W
X
390
:リード/ライト可能
:未定義
:不定値
:初期値
予約ビット
常に"0"を書き込んでください
分解能選択ビット
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-10150-1
MB90930 シリーズ
第 16 章 8/10 ビット A/D コンバータ
16.3
表 16.3-3 A/D 制御ステータスレジスタ下位 (ADCS0) の機能
ビット名
bit7,
bit6
bit5
機能
MD1, MD0:
A/D 変換モード
選択ビット
A/D 変換の変換モードを設定します。
各モードの使用方法の詳細につきましては「16.5 8/10 ビット A/D コン
バータの動作説明」を参照してください。
単発変換モード 1 および単発変換モード 2 の場合 :
• 開始チャネル (ADSR : ANS4 ∼ ANS0) から終了チャネル (ADSR:
ANE4 ∼ ANE0) までのアナログ入力を連続して A/D 変換していきま
す。
• 終了チャネルの A/D 変換が終了すると , A/D 変換動作を停止します。
• 単発変換モード 1, 単発変換モード 2 の違いについては「16.5 8/10
ビット A/D コンバータの動作説明」を参照してください。
連続変換モードの場合 :
• 開始チャネル (ADSR : ANS4 ∼ ANS0) から終了チャネル (ADSR :
ANE4 ∼ ANE0) までのアナログ入力を連続して A/D 変換していきま
す。
• 終了チャネルの A/D 変換が終了すると , 開始チャネルのアナログ入力
に戻って A/D 変換を継続して行います。
停止変換モードの場合 :
• 開始チャネル (ADSR: ANS4 ∼ ANS0) から A/D 変換が開始されます。
1 チャネルの A/D 変換が終了すると , A/D 変換動作は停止します。A/
D 変換動作が停止している間に起動トリガを入力すると , 次のチャネ
ルの A/D 変換が行われます。
• 終了チャネルの A/D 変換が終了すると , A/D 変換動作は停止します。
A/D 変換動作が停止している間に起動トリガを入力すると , 開始チャ
ネルのアナログ入力に戻って A/D 変換を継続します。
( 注意事項 )
変換モードを変更する場合は , A/D 変換を開始する前の停止状態で
行ってください。
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) に格納された変換結果は無効になります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
391
第 16 章 8/10 ビット A/D コンバータ
16.3
16.3.3
MB90930 シリーズ
A/D データレジスタ (ADCR0/ADCR1)
A/D データレジスタ (ADCR0/ADCR1) は , 変換の結果として生成されたデジタル値
を記憶するために使用されます。ADCR0 は下位 8 ビットを記憶し , ADCR1 は変換
結果の最上位の 2 ビットを記憶します。本レジスタは変換が完了するたびに書き換
えられ , 通常は最後の変換値が記憶されています。
■ A/D データレジスタ (ADCR0/ADCR1)
図 16.3-4 A/D データレジスタ (ADCR0/ADCR1)
データレジスタ上位
bit15
アドレス
ADCR1 000023H
データレジスタ下位
アドレス
ADCR0 000022H
R :リードオンリ
X :不定値
―:未定義
14
13
12
11
10
9
8
-
-
-
-
-
D9
D8
R
R
bit 7
初期値
6
5
4
3
2
1
0
D7
D6
D5
D4
D3
D2
D1
D0
R
R
R
R
R
R
R
R
XXXXXX00B
初期値
00000000B
表 16.3-4 A/D データレジスタ (ADCR0/ADCR1) の機能
ビット名
bit15
∼
bit10
bit9
∼
bit0
392
機能
未定義ビット
読出し時は常に "1" が読み出されます。
D9 ∼ D0:
A/D 変換データ
ビット
A/D 変換の結果を格納します。
分解能を 10 ビットに設定した場合 (S10=0) :
変換データは D9 ∼ D0 までの 10 ビットに格納さ
れます。
分解能を 8 ビットに設定した場合 (S10=1) :
変換データは D7 ∼ D0 までの 8 ビットに格納され
ます。このとき , D9, D8 の読出し値は "1" になり
ます。
( 注意事項 )
• 本レジスタへの書込みは禁止です。
• A/D 変換データビット (D9 ∼ D0) に格納された
変換結果を読み出す場合は , ワード命令 (MOVW)
を使用してください。
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 16 章 8/10 ビット A/D コンバータ
16.3
MB90930 シリーズ
16.3.4
A/D セッティングレジスタ (ADSR0/ADSR1)
A/D セッティングレジスタ (ADSR0/ADSR1) では , 次の設定ができます。
• A/D 変換時間 ( サンプリング時間 , コンペア時間 ) の設定
• サンプリングチャネル ( 開始チャネル , 終了チャネル ) の設定
• 現在のサンプリングチャネルを表示
■ A/D セッティングレジスタ (ADSR0/ADSR1)
図 16.3-5 A/D セッティングレジスタ (ADSR0/ADSR1)
bit15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
初期値
アドレス
00008AH ST2 ST1 ST0 CT2 CT1 CT0 ANS4 ANS3 ANS2 ANS1 ANS0 ANE4 ANE3 ANE2 ANE1 ANE0 0000000000000000B
00008BH 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
bit4~bit0
ANE4~ANE0
11111 B~00000 B
A/D変換終了チャネル選択ビット
AN23端子~AN0端子
(初期値:00000B)
bit9~bit5
A/D変換開始チャネル選択ビット
ANS4~ANS0
書込み
(非起動状態)
11111 B~00000 B
AN23端子
~
AN0端子
(初期値:00000B)
bit12 bit11 bit10
CT2 CT1 CT0
:リード/ライト可能
:マシンクロック
:初期値
CM44-10150-1
コンペア時間選択ビット
22/φ (φ = 20MHz: 1.1μs)
0
0
0
0
0
1
1
0
1
1
0
0
1
0
1
0
1
132/φ (φ = 16MHz: 8.25μs)
1
1
1
1
0
1
176/φ (φ = 20MHz: 8.8μs)
264/φ (φ = 32MHz: 8.25μs)
0
0
0
0
0
1
0
1
0
0
1
1
1
1
1
0
0
1
1
1
0
1
0
1
停止変換モード
で一時停止中の
読出し
変換中の
直前に変換した
チャネル番号 チャネル番号
0
bit15 bit14 bit13
ST2 ST1 ST0
R/W
変換中の
読出し
33/φ (φ = 32MHz: 1.03μs)
44/φ (φ = 32MHz: 1.375μs)
66/φ (φ = 32MHz: 2.068μs)
88/φ (φ =
8MHz:11.0μs)
サンプリング時間選択ビット
4/φ (φ =
8MHz: 0.5μs)
6/φ (φ =
8MHz: 0.75μs)
8/φ (φ = 16MHz: 0.5μs)
12/φ (φ = 24MHz: 0.5μs)
24/φ (φ =
8MHz: 3.0μs)
36/φ (φ = 16MHz: 2.25μs)
48/φ (φ = 16MHz: 3.0μs)
128/φ (φ = 32MHz: 5.3μs)
FUJITSU MICROELECTRONICS LIMITED
393
第 16 章 8/10 ビット A/D コンバータ
16.3
MB90930 シリーズ
表 16.3-5 A/D セッティングレジスタ (ADSR0/ADSR1) の機能 (1 / 2)
ビット名
機能
bit15
∼
bit13
ST2, ST1, ST0:
サンプリング時間
選択ビット
A/D 変換のサンプリング時間を設定します。
• A/D 変換を開始してから , 入力されたアナログ電圧がサンプ
ル & ホールド回路でサンプリングされて保持されるまでの時
間を設定します。
• 本ビットの設定については表 16.3-6 を参照してください。
bit12
∼
bit10
CT2, CT1, CT0:
コンペア時間選択
ビット
A/D 変換のコンペア時間 ( 比較時間 ) を設定します。
• アナログ入力を A/D 変換してデータビット (D9 ∼ D0) に格納
するまでの時間を設定します。
• 本ビットの設定については表 16.3-7 を参照してください。
A/D 変換を開始するチャネルを設定します。読み出した場合は ,
A/D 変換中の場合には現在変換中のチャネル番号 , A/D 変換終了
後または停止中の場合には最後に A/D 変換したチャネル番号を
確認できます。また , 本ビットに値を設定した場合でも , A/D 変
換が開始されるまでは , 設定した値ではなく , 前回に A/D 変換し
たチャネル番号が読み出されます。リセット時は , "00000B" に初
bit9
∼
bit5
394
ANS4 ∼ ANS0:
A/D 変換開始
チャネル選択ビット
期化されます。
開始チャネル < 終了チャネルの場合 :
A/D 変換開始チャネル選択ビット (ANS4 ∼ ANS0) で設定され
たチャネルから A/D 変換を開始し , A/D 変換終了チャネル選
択ビット (ANE4 ∼ ANE0) で設定されたチャネルで A/D 変換
を終了します。
開始チャネル = 終了チャネルの場合 :
A/D 変換開始 (= 終了 ) チャネル選択ビット
(ANS4~ANS0=ANE4 ∼ ANE0) で設定された 1 チャネルのみ
A/D 変換を行います。
開始チャネル > 終了チャネルの場合 :
A/D 変換開始チャネル選択ビット (ANS4 ∼ ANS0) で設定され
たチャネルから AN23 まで A/D 変換を行って , さらに AN0 か
ら A/D 変換終了チャネル選択ビット (ANE4 ∼ ANE0) で設定
されたチャネルまで A/D 変換を行います。
連続変換モード , 停止変換モードの場合 :
A/D 変換終了チャネル選択ビット (ANE4 ∼ ANE0) に設定され
たチャネルで A/D 変換が終了すると , A/D 変換開始チャネル
選択ビット (ANS4 ∼ ANS0) で設定されたチャネルに戻りま
す。
読み出した場合 ( 停止変換モード以外 ) :
A/D 変換中のチャネル番号 (23 ∼ 0) が読み出されます。
読み出した場合 ( 停止変換モード ) :
停止中に読み出すと , 停止直前に A/D 変換したチャネル番号
が読み出されます。
( 注意事項 )
• A/D 変換中は , A/D 変換開始チャネルビット (ANS4 ∼ ANS0)
の設定を行わないでください。
• 本ビットへの書込みはワードアクセスで行ってください。バ
イトアクセスやビット操作を行った場合には意図しないチャ
ネルから A/D 変換が開始される可能性があります。
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 16 章 8/10 ビット A/D コンバータ
16.3
表 16.3-5 A/D セッティングレジスタ (ADSR0/ADSR1) の機能 (2 / 2)
ビット名
bit3
∼
bit0
機能
ANE4 ∼ ANE0:
A/D 変換終了
チャネル選択ビット
CM44-10150-1
A/D 変換を終了するチャネルを設定します。
開始チャネル < 終了チャネルの場合 :
A/D 変換開始チャネル選択ビット (ANS4 ∼ ANS0) で設定され
たチャネルから A/D 変換を開始し , A/D 変換終了チャネル選
択ビット (ANE4 ∼ ANE0) で設定されたチャネルで A/D 変換
を終了します。
開始チャネル = 終了チャネルの場合 :
A/D 変換開始 (= 終了 ) チャネル選択ビット (ANS4 ∼ ANS0=
ANE4 ∼ ANE0) で設定された 1 チャネルのみ A/D 変換を行い
ます。
開始チャネル > 終了チャネルの場合 :
A/D 変換開始チャネル選択ビット (ANS4 ∼ ANS0) で設定され
たチャネルから AN23 まで A/D 変換を行って , さらに AN0 か
ら A/D 変換終了チャネル選択ビット (ANE4 ∼ ANE0) で設定
されたチャネルまで A/D 変換を行います。
連続変換モード , 停止変換モードの場合 :
A/D 変換終了チャネル選択ビット (ANE4 ∼ ANE0) に設定され
たチャネルで A/D 変換が終了すると , A/D 変換開始チャネル
選択ビット (ANS4 ∼ ANS0) で設定されたチャネルに戻りま
す。
( 注意事項 )
• A/D 変換中は , A/D 変換終了チャネルビット (ANE4 ∼ ANE0)
の設定を行わないでください。
• A/D 変換開始チャネル選択ビット (ANS4, ANS3, NS2, ANS1,
ANS0) を設定した後にサンプリング時間選択ビット (ST2, ST1,
ST0), コンペア時間選択ビット (CT2, CT1, CT0) および A/D 変
換終了チャネル選択ビット (ANE4, ANE3, ANE2, ANE1, ANE0)
をリードモディファイライト (RMW) 系命令で設定しないで
ください。ANS4, ANS3, ANS2, ANS1, ANS0 ビットは A/D 変
換動作が開始するまでは前回の変換チャネルが読み出される
ため , ANS4, ANS3, ANS2, ANS1, ANS0 ビット設定後に ST2,
ST1, ST0 ビット , CT2, CT1, CT0 ビットおよび ANE4, ANE3,
ANE2, ANE1, ANE0 ビットをリードモディファイライト
(RMW) 系命令で設定した場合には ANS4, ANS3, ANS2, ANS1,
ANS0 ビットの値が書き換わる可能性があります。
FUJITSU MICROELECTRONICS LIMITED
395
第 16 章 8/10 ビット A/D コンバータ
16.3
MB90930 シリーズ
■ サンプリング時間の設定 (ST2 ∼ ST0 ビット )
表 16.3-6 ST2 ∼ ST0 ビットとサンプリング時間の関係
ST2
ST1
ST0
サンプリング時間設定
0
0
0
4 マシンサイクル
φ = 8MHz : 0.5μs
0
0
1
6 マシンサイクル
φ = 8MHz : 0.75μs
0
1
0
8 マシンサイクル
φ = 16MHz : 0.5μs
0
1
1
12 マシンサイクル
φ = 24MHz : 0.5μs
1
0
0
24 マシンサイクル
φ = 8MHz : 3μs
1
0
1
36 マシンサイクル
φ = 16MHz : 2.25μs
1
1
0
48 マシンサイクル
φ = 16MHz : 3.0μs
1
1
1
128 マシンサイクル
φ = 32MHz : 4.0μs
設定例 (φ: 内部動作周波数 )
サンプリング時間は , アナログ入力に接続される駆動インピーダンス (Rext) に応じて設
定する必要があります。下記の条件を満たさない場合には変換精度が保証されません。
• Rext
≦ 1.5kΩ の場合 :
• 4.5V ≦ AVCC < 5.5V : サンプリング時間を 0.5μs 以上に設定してください。
• 4.0V ≦ AVCC < 4.5V : サンプリング時間を 1.2μs 以上に設定してください。
• Rext
> 1.5kΩ の場合 : サンプリング時間を下式の Tsamp 以上に設定してください。
• 4.5V
≦ AVCC < 5.5V : Tsamp = (2.52kΩ + Rext) × 10.7pF × 7
• 4.0V
≦ AVCC < 4.5V : Tsamp = (13.6kΩ + Rext) × 10.7pF × 7
■ コンペア時間の設定 (CT2 ∼ CT0 ビット )
表 16.3-7 CT2~CT0 ビットとコンペア時間の関係
設定例 (φ: 内部動作周波数 )
CT2
CT1
CT0
コンペア時間設定
0
0
0
22 マシンサイクル
φ = 20MHz : 1.1μs
0
0
1
33 マシンサイクル
φ = 32MHz : 1.03μs
0
1
0
44 マシンサイクル
φ = 32MHz : 1.375μs
0
1
1
66 マシンサイクル
φ = 32MHz : 2.063μs
1
0
0
88 マシンサイクル
φ = 8MHz : 11.0μs
1
0
1
132 マシンサイクル
φ = 16MHz : 8.25μs
1
1
0
176 マシンサイクル
φ = 20MHz : 8.8μs
1
1
1
264 マシンサイクル
φ = 32MHz : 8.25μs
コンペア時間は , アナログ電源電圧 (AVCC) に応じて設定する必要があります。下記の
条件を満たさない場合は変換精度が保証されません。
• 4.5V ≦ AVCC < 5.5 V : コンペア時間を 1.00μs 以上に設定してください。
• 4.0V ≦ AVCC < 4.5 V : コンペア時間を 2.00μs 以上に設定してください。
396
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 16 章 8/10 ビット A/D コンバータ
16.3
MB90930 シリーズ
16.3.5
アナログ入力許可レジスタ (ADER6, 7, 8)
8/10 ビット A/D コンバータで使用するアナログ入力端子を許可または禁止します。
■ アナログ入力許可レジスタ (ADER6, 7, 8)
図 16.3-6 アナログ入力許可レジスタ (ADER6, 7, 8)
初期値
アドレス
初期値
アドレス
初期値
アドレス
R/W
bit15 ~ bit0
ADE23~ADE0
0
1
:リード/ライト可能
:初期値
アナログ入力許可ビット23~0(AN23~AN0)
アナログ入力を禁止する
アナログ入力を許可する
表 16.3-8 ポート 6 アナログ入力許可レジスタ (ADER6, 7, 8) の機能
ビット名
bit15
∼
bit8
ADE23 ∼ ADE16:
アナログ入力許可
ビット
ポート 8 上に配置された A/D 変換アナログ入力端
子 (AN23 ∼ AN16) のアナログ入力を許可または禁
止します。
"0" に設定した場合 : アナログ入力を禁止します。
"1" に設定した場合 : アナログ入力を許可します。
bit15
∼
bit8
ADE15 ∼ ADE8:
アナログ入力許可
ビット
ポート 7 上に配置された A/D 変換アナログ入力端
子 (AN15 ∼ AN8) のアナログ入力を許可または禁止
します。
"0" に設定した場合 : アナログ入力を禁止します。
"1" に設定した場合 : アナログ入力を許可します。
ADE7 ∼ ADE0:
アナログ入力許可
ビット
ポート 6 上に配置された A/D 変換アナログ入力端
子 (AN7 ∼ AN0) のアナログ入力を許可または禁止
します。
"0" に設定した場合 : アナログ入力を禁止します。
"1" に設定した場合 : アナログ入力を許可します。
bit7
∼
bit0
CM44-10150-1
機能
FUJITSU MICROELECTRONICS LIMITED
397
第 16 章 8/10 ビット A/D コンバータ
16.3
MB90930 シリーズ
<注意事項>
• アナログ入力端子として使用する場合は,使用する端子に対応するアナログ入力許可レ
ジスタ (ADER6, 7, 8) のビットに "1" を書き込んで , アナログ入力に設定してください。
• アナログ入力端子を ADEx=0 に設定することは禁止します。常に ADEx=1 に設定して
ください。
• 各アナログ入力端子は,汎用入出力ポートおよび周辺機能の入出力と兼用になっていま
す。ADEx=1 に設定された端子は , ポート方向レジスタ (DDR6, 7, 8) および各周辺機能
の入出力設定にかかわらず強制的にアナログ入力端子になり,それ以外の使用はできな
くなります。
398
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 16 章 8/10 ビット A/D コンバータ
16.4
MB90930 シリーズ
16.4
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 データレジ
スタ (ADCR) からメモリに転送することができます。EI2OS 機能の使用方法について
は「16.5.4 EI2OS 機能を使用した変換動作」および「16.5.5 A/D 変換データ保護機能」
を参照してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
399
第 16 章 8/10 ビット A/D コンバータ
16.5
16.5
MB90930 シリーズ
8/10 ビット A/D コンバータの動作説明
8/10 ビット A/D コンバータの A/D 変換動作には次の変換モードがあります。A/D 制
御ステータスレジスタの A/D 変換モード選択ビット (ADCS : MD1, MD0) の設定に
よって , 各モードを設定します。
• 単発変換モード
• 連続変換モード
• 停止変換モード
■ 単発変換モード (ADCS : MD1, MD0=00B または 01B)
• 起動トリガを入力すると , 開始チャネル (ADSR : ANS4 ∼ ANS0) から終了チャネル
(ADSR : ANE4 ∼ ANE0) までのアナログ入力を連続して A/D 変換していきます。
• 終了チャネルの A/D 変換が終了すると , 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 のいずれの場合も , 再起動する場合には「16.5.1
単発変換モード」に示す手順で再起動を行ってください。
* : 一時停止状態は A/D 変換保護機能が動作して変換が一時停止している状態です。詳細
は「16.5.5 A/D 変換データ保護機能」を参照してください。
■ 連続変換モード (ADCS : MD1, MD0=10B)
• 起動トリガを入力すると , 開始チャネル (ADSR: ANS4 ∼ ANS0) から終了チャネル
(ADSR: ANE4 ∼ ANE0) までのアナログ入力を連続して A/D 変換していきます。
• 終了チャネルの A/D 変換が終了すると , 開始チャネルのアナログ入力に戻って A/D
変換を継続して行います。
■ 停止変換モード (ADCS : MD1, MD0=11B)
• 起動トリガを入力すると , 開始チャネル (ADSR : ANS4 ∼ ANS0) の A/D 変換が開始
されます。1 チャネルの A/D 変換が終了すると , A/D 変換動作は停止します。この
状態を停止状態といいます。A/D 変換動作が停止している間に起動トリガを入力す
ると , 次のチャネルの A/D 変換が行われます。
• 終了チャネルの A/D 変換が終了すると , A/D 変換動作は停止します。A/D 変換動作
が停止している間に起動トリガを入力すると , 開始チャネルのアナログ入力に戻っ
て A/D 変換を継続します。
400
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 16 章 8/10 ビット A/D コンバータ
16.5
MB90930 シリーズ
16.5.1
単発変換モード
単発変換モードでは , 開始チャネルから終了チャネルまで順次 A/D 変換を行います。
終了チャネルの A/D 変換が終了すると A/D 変換動作を停止します。
■ 単発変換モードの設定
8/10 ビット A/D コンバータを単発変換モードで動作させるには , 図 16.5-1 の設定が必
要です。
図 16.5-1 単発変換モードの設定
bit15 14 13 12 11 10
ADCS0, ADCS1
ADSR0, ADSR1
-
◎
◎
- - -
4
3
◎
◎
◎
0
- -
◎
2
1 bit0
- - 予約
◎
0
D9~D0(変換結果を保持)
ST2 ST1 ST0 CT2 CT1 CT0 ANS4 ANS3 ANS2 ANS1 ANS0 ANE4 ANE3 ANE2 ANE1 ANE0
◎ ◎
ADER6
5
BUSY INT INTE PAUS STS1 STS0 STRT - MD1 MD0 S10 - -
◎ ◎
ADCR0, ADCR1
9 bit8 bit7 6
◎
◎
◎
◎
◎ ◎
◎
◎
◎
◎ ◎
◎
◎
◎
ADE7 ADE6 ADE5 ADE4 ADE3 ADE2 ADE1 ADE0
○
○
○
○
○
○
○
○
ADER7
ADER8
-
◎
○
0
:未定義
:使用ビット
:アナログ入力端子として使用する端子に対応するビットに"1"を設定
:"0"を設定
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
401
第 16 章 8/10 ビット A/D コンバータ
16.5
MB90930 シリーズ
■ 単発変換モードの動作と使用方法
• 起動トリガを入力すると , A/D 変換開始チャネル選択ビット (ANS4 ∼ ANS0) で設定
されたチャネルから A/D 変換を開始し , A/D 変換終了チャネル選択ビット (ANE4 ∼
ANE0) で設定されたチャネルまで連続して A/D 変換を行います。
• A/D 変換終了チャネル選択ビット (ANE4 ∼ ANE0) で設定されたチャネルの A/D 変
換が終了すると , A/D 変換動作を停止します。
•
A/D 変換動作を強制終了するには , A/D 制御ステータスレジスタの A/D 変換動作中
フラグビット (ADCS:BUSY) に "0" を書き込みます。
[ 開始チャネルと終了チャネルが同じ場合 ]
開始チャネルと終了チャネルを同じチャネル番号に設定した場合には (ADSRS :
ANS4 ∼ ANS0=ADSR : ANE4 ∼ ANE0), 開始チャネル (= 終了チャネル ) として設定
した 1 チャネルだけを 1 回だけ A/D 変換して終了します。
[ 単発変換モードでの変換順序 ]
単発変換モードでの変換順序の例を表 16.5-1 に示します。
表 16.5-1 単発変換モードでの変換順序
開始チャネル
終了チャネル
単発変換モードでの変換順序
AN0 端子
(ADSR:
ANS4 ∼ ANS0=00000B)
AN3 端子
(ADSR:
ANE4 ∼ ANE0=00011B)
AN0 → AN1 → AN2 → AN3 →終了
AN5 端子
(ADSR:
ANS4 ∼ ANS0=00101B)
AN2 端子
(ADSR:
ANE4 ∼ ANE0=00010B)
AN5 → AN6 → AN7 → AN8 →・・・
AN30 → AN31 → AN0 → AN1 → AN2
→終了
AN3 端子
(ADSR:
ANS4 ∼ ANS0=00011B)
AN3 端子
(ADSR:
ANE4 ∼ ANE0=00011B)
AN3 →終了
( 注意事項 )
開始チャネル>終了チャネル となる設定 :
アナログ入力端子が存在しないチャネル (AN24 ∼ AN31) のサンプリングを行うため ,
このような設定は推奨しません。
[ 再起動について ]
A/D 変換実行中および一時停止状態中に A/D 変換を再起動する場合は , 変換をいっ
たん強制終了させてから再度起動させます。以下の手順で実施してください。
1) A/D 変換動作中フラグビット (ADCS:BUSY) をクリア
2) 割込み要求フラグビット (ADCS:INT) をクリア
3) A/D 変換ソフトウェア起動ビット (ADCS:STRT) をセット
402
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 16 章 8/10 ビット A/D コンバータ
16.5
MB90930 シリーズ
16.5.2
連続変換モード
連続変換モードでは , 開始チャネルから終了チャネルまで順次 A/D 変換を行います。
終了チャネルの A/D 変換が終了すると , 開始チャネルに戻って A/D 変換動作を継続
します。
■ 連続変換モードの設定
8/10 ビット A/D コンバータを連続変換モードで動作させるには , 図 16.5-2 の設定が必
要です。
図 16.5-2 連続変換モードの設定
bit15 14 13 12 11 10
ADCS0, ADCS1
ADSR0, ADSR1
-
◎
◎
- - -
4
3
◎
◎
◎
1
- -
0
2
1 bit0
- - 予約
◎
0
D9~D0(変換結果を保持)
ST2 ST1 ST0 CT2 CT1 CT0 ANS4 ANS3 ANS2 ANS1 ANS0 ANE4 ANE3 ANE2 ANE1 ANE0
◎ ◎
ADER6
5
BUSY INT INTE PAUS STS1 STS0 STRT - MD1 MD0 S10 - -
◎ ◎
ADCR0, ADCR1
9 bit8 bit7 6
◎
◎
◎
◎
◎ ◎
◎
◎
◎
◎ ◎
◎
◎
◎
ADE7 ADE6 ADE5 ADE4 ADE3 ADE2 ADE1 ADE0
○
○
○
○
○
○
○
○
ADER7
ADER8
-
◎
○
1
0
:未定義
:使用ビット
:アナログ入力端子として使用する端子に対応するビットに"1"を設定
:"1"を設定
:"0"を設定
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
403
第 16 章 8/10 ビット A/D コンバータ
16.5
MB90930 シリーズ
■ 連続変換モードの動作と使用方法
• 起動トリガを入力すると , A/D 変換開始チャネル選択ビット (ANS4 ∼ ANS0) で設定
されたチャネルから A/D 変換を開始し , A/D 変換終了チャネル選択ビット (ANE4 ∼
ANE0) で設定されたチャネルまで連続して A/D 変換を行います。
• A/D 変換終了チャネル選択ビット (ANE4 ∼ ANE0) で設定されたチャネルの A/D 変
換が終了すると , A/D 変換開始チャネル選択ビット (ANS4 ∼ ANS0) で設定された
チャネルに戻って A/D 変換を継続します。
•
A/D 変換動作を強制終了するには , A/D 制御ステータスレジスタの A/D 変換動作中
フラグビット (ADCS:BUSY) に "0" を書き込みます。
[ 開始チャネルと終了チャネルが同じ場合 ]
開始チャネルと終了チャネルを同じチャネルに設定した場合は (ADSR : ANS4 ∼
ANS0=ADSR : ANE4 ∼ ANE0), 開始チャネル (= 終了チャネル ) として設定した 1 チャ
ネルの A/D 変換を繰り返して行います。
[ 連続変換モードでの変換順序 ]
連続変換モードでの変換順序の例を表 16.5-2 に示します。
表 16.5-2 連続変換モードでの変換順序
開始チャネル
終了チャネル
停止変換モードでの変換順序
AN0 端子
(ADSR:
ANS4 ∼ ANS0=00000B)
AN3 端子
(ADSR:
ANE4 ∼ ANE0=00011B)
AN0 → AN1 → AN2 → AN3 → AN0
→繰返し
AN5 端子
(ADSR:
ANS4 ∼ ANS0=00101B)
AN2 端子
(ADSR:
ANE4 ∼ ANE0=00010B)
AN5 → AN6 → AN7 → AN8 →・・・
AN30 → AN31 → AN0 → AN1 → AN2
→ AN5 →繰返し
AN3 端子
(ADSR:
ANS4 ∼ ANS0=00011B)
AN3 端子
(ADSR:
ANE4 ∼ ANE0=00011B)
AN3 → AN3 →繰返し
( 注意事項 )
開始チャネル>終了チャネル となる設定 :
アナログ入力端子が存在しないチャネル (AN24 ∼ AN31) のサンプリングを行うため ,
このような設定を推奨しません。
[ 再起動について ]
A/D 変換実行中および一時停止状態中に A/D 変換を再起動する場合は , 変換をいっ
たん強制終了させてから再度起動させます。以下の手順で実施してください。
1) A/D 変換動作中フラグビット (ADCS:BUSY) をクリア
2) 割込み要求フラグビット (ADCS:INT) をクリア
3) A/D 変換ソフトウェア起動ビット (ADCS:STRT) をセット
404
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 16 章 8/10 ビット A/D コンバータ
16.5
MB90930 シリーズ
16.5.3
停止変換モード
停止変換モードでは , 1 チャネルごとに停止と起動を繰り返しながら A/D 変換を行
います。終了チャネルの A/D 変換が終了して A/D 変換動作が停止した後 , 起動トリ
ガを入力すると開始チャネルに戻って A/D 変換を継続します。
■ 停止変換モードの設定
8/10 ビット A/D コンバータを停止変換モードで動作させるには , 図 16.5-3 の設定が必
要です。
図 16.5-3 停止変換モードの設定
bit15 14
ADCS0, ADCS1
13
12
11
10
9 bit8bit7 6
5
4
3
BUSY INT INTE PAUS STS1 STS0 STRT - MD1 MD0 S10 - -
◎ ◎
◎
◎
◎
◎
◎
1
1
2
1 bit0
- - 予約
◎
0
ADCR0, ADCR1
-
ADSR0, ADSR1
ST2 ST1 ST0 CT2 CT1 CT0 ANS4 ANS3 ANS2 ANS1 ANS0 ANE4 ANE3 ANE2 ANE1 ANE0
- - -
◎ ◎
ADER6
◎
◎
- -
◎
◎
D9~D0(変換結果を保持)
◎ ◎
◎
◎
◎
◎ ◎
◎
◎
◎
ADE7 ADE6 ADE5 ADE4 ADE3 ADE2 ADE1 ADE0
○
○
○
○
○
○
○
○
○
○
○
○
○
○
○
○
○
○
○
○
○
○
○
○
ADER7
ADER8
-
◎
○
1
0
:未定義
:使用ビット
:アナログ入力端子として使用する端子に対応するビットに"1"を設定
:"1"を設定
:"0"を設定
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
405
第 16 章 8/10 ビット A/D コンバータ
16.5
MB90930 シリーズ
■ 停止変換モードの動作と使用方法
• 起動トリガを入力すると , A/D 変換開始チャネル選択ビット (ANS4 ∼ ANS0) で設定
されたチャネルから A/D 変換を開始します。1 チャネルの A/D 変換が終了すると
A/D 変換動作は停止します。A/D 変換動作が停止している間に起動トリガを入力す
ると次のチャネルの A/D 変換を行います。
•
A/D 変換終了チャネル選択ビット (ANE4 ∼ ANE0) で設定されたチャネルの A/D 変
換が終了すると , A/D 変換動作は停止します。A/D 変換動作が停止している間に起
動トリガを入力すると , A/D 変換開始チャネル選択ビット (ANS4 ∼ ANS0) で設定さ
れたチャネルに戻って A/D 変換を継続します。
• A/D 変換動作を強制終了するには , A/D 制御ステータスレジスタの A/D 変換動作中
フラグビット (ADCS:BUSY) に "0" を書き込みます。
[ 開始チャネルと終了チャネルが同じ場合 ]
開始チャネルと終了チャネルを同じチャネルに設定した場合は (ADSR:ANS4 ∼
ANS0=ADSR: ANE4 ∼ ANE0), 開始チャネル (= 終了チャネル ) として設定した 1 チャ
ネルの A/D 変換と停止を繰り返します。
[ 停止変換モードでの変換順序 ]
停止変換モードでの変換順序の例を表 16.5-3 に示します。
表 16.5-3 停止変換モードでの変換順序
開始チャネル
終了チャネル
停止変換モードでの変換順序
AN3 端子
(ADSR:
ANE4 ∼ ANE0=00011B)
AN0 →停止・起動→ AN1 →停止・起動→
AN2 →停止・起動→ AN3 →停止・起動→
AN0 →繰返し
AN5 端子
(ADSR:
ANS4 ∼ ANS0=00101B)
AN2 端子
(ADSR:
ANE4 ∼ ANE0=00010B)
AN5 →停止・起動→ AN6 →停止・起動→
AN7 →停止・起動→ AN8 →停止・起動→
・・・
AN30 →停止・起動→ AN31 →停止・起動
→ AN0 →停止・起動→ AN1 →停止・起
動→ AN2 →停止・起動→ AN5 →繰返し *
AN3 端子
(ADSR:
ANS4 ∼ ANS0=00011B)
AN3 端子
(ADSR:
ANE4 ∼ ANE0=00011B)
AN3 →停止・起動→ AN3 →停止・起動→
繰返し
AN0 端子
(ADSR:
ANS4 ∼ ANS0=00000B)
( 注意事項 )
開始チャネル>終了チャネル となる設定 :
アナログ入力端子が存在しないチャネル (AN24 ∼ AN31) のサンプリングを行う
ため , このような設定は推奨しません。
[ 再起動について ]
A/D 変換実行中および一時停止状態中に A/D 変換を再起動する場合は , 変換をいっ
たん強制終了させてから再度起動させます。以下の手順で実施してください。
1) A/D 変換動作中フラグビット (ADCS:BUSY) をクリア
2) 割込み要求フラグビット (ADCS:INT) をクリア
3) A/D 変換ソフトウェア起動ビット (ADCS:STRT) をセット
406
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 16 章 8/10 ビット A/D コンバータ
16.5
MB90930 シリーズ
16.5.4
EI2OS 機能を使用した変換動作
8/10 ビット A/D コンバータでは , EI2OS 機能を使用して , A/D 変換結果をメモリに
転送することができます。
■ EI2OS 機能を使用した変換動作
EI2OS 機能を使用した場合の変換動作のフローを図 16.5-4 に示します。
図 16.5-4 EI2OS 機能を使用した場合の変換動作のフロー
A/Dコンバータ起動
サンプル&ホールド
A/D変換開始
A/D変換終了
割込み発生
EI2OS起動
変換結果転送
指定回数終了か*
NO
割込みクリア
YES
割込み処理
*:EI2OSの設定で決定されます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
407
第 16 章 8/10 ビット A/D コンバータ
16.5
16.5.5
MB90930 シリーズ
A/D 変換データ保護機能
割込み要求の出力を許可した状態で A/D 変換を実行すると , データ保護機能が働き
ます。
■ 8/10 ビット A/D コンバータの A/D 変換データ保護機能の説明
A/D 変換データ保護機能は A/D 変換データの取りこぼしを防ぐ機能です。
8/10 ビット A/D コンバータには , 変換データ格納用の A/D データレジスタ (ADCR1/
ADCR0) 1 個と現在 A/D 変換中のデータを格納する逐次比較回路 1 個があります。A/D
変換実行中 , 8/10 ビット A/D コンバータは変換データを 1 ビットずつ逐次比較回路に
格納し , A/D 変換が完了すると A/D 変換結果を A/D データレジスタに格納します。
A/D 変換データ保護機能を使用する場合 , 使用しない場合によって , 8/10 ビット A/D コ
ンバータの動作は下記のようになります。
• 割込み要求許可ビット (ADCS:INTE) = 0 に設定すると , データ保護機能は無効にな
ります。この場合 , A/D 変換が連続して行われると , 8/10 ビット A/D コンバータは
変換が終了するたびに A/D データレジスタに変換結果を格納します ( 常に最新の変
換データが格納されることになります )。
• 割込み要求許可ビット (ADCS : INTE) = 1 に設定すると , データ保護機能が有効にな
ります。この状態で A/D 変換が連続して行われると , 始めの変換が終了したときに
割込み要求フラグビット : ADCS : INT =1 になります。さらに , 次の A/D 変換が行わ
れて INT = 1 の状態で変換終了すると , 変換結果を逐次比較回路から A/D データレ
ジスタに転送する直前で 8/10 ビット A/D コンバータは一時停止状態となり , 変換
データの上書きを防ぎます。このとき , A/D 制御ステータスレジスタの一時停止フ
ラグビット (ADCS : PAUS) に "1" がセットされます。一時停止状態中に割込み要求
フラグビット (ADCS : INT) を "0" にクリアすると逐次比較回路に格納されている
データは A/D データレジスタへ転送されます ( 図 16.5-5 を参照 )。
図 16.5-5 A/D 変換データ保護機能の動作
A/D①変換時間
サンプリング時間
コンペア時間
A/D②変換時間
サンプリング時間
A/D変換データ
保護機能動作
A/D③変換時間
コンペア時間
A/D変換データレジスタADCR
A/D変換割込み(INTビット)
INT=0 INT=1
A/D変換データ保護機能(PAUSビット)
408
INT クリア
PAUS=0 PAUS=1
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 16 章 8/10 ビット A/D コンバータ
16.5
● CPU で A/D 変換結果を読み出す場合の A/D 変換データ保護機能
• アナログ入力が A/D 変換された後 , A/D 変換結果が A/D データレジスタ (ADCR) に
格納されると, A/D制御ステータスレジスタの割込み要求フラグビット(ADCS: INT)
に "1" がセットされます。
• 次の回の A/D 変換が終了した時点で , 前回の A/D 変換終了時にセットされた 割込み
要求フラグビット (ADCS : INT) がセットされたままの場合に割込み要求が許可され
ていると (ADCS : INTE=1), A/D 変換動作は新しいデータを A/D データレジスタに上
書きする直前でデータ保護のため一時停止状態となります。
• A/D 制御ステータスレジスタの割込み要求が許可されているため (ADCS : INTE=1),
INTビットがセットされると割込み要求が発生します。
INTビットをクリアすると, A/D
変換動作の一時停止状態が解除されます。
• 連続して A/D 変換を行っている場合 , 8/10 ビット A/D コンバータは次の A/D 変換動
作を開始します。このとき , 一時停止フラグビット (ADCS : PAUS) は自動的には "0"
にクリアされません。クリアするためには同ビットに 0 を書き込んでください。
<注意事項>
• 一時停止状態中に割込み要求の出力を禁止すると (ADCS : INTE = 0), A/D 変換が開始
され , A/D データレジスタのデータが書き換えられてしまう場合があります。
• 複数回の A/D 変換を連続実行する場合には割込み要求フラグビット (ADCS:INT) をク
リアする前に必ず A/D データレジスタに格納されたデータを読み出してください。
A/D 変換が一時停止の状態で A/D データレジスタに格納されたデータを読み出す前に
割込み要求フラグビット(ADCS:INT)をクリアすると最初に格納された変換データが次
の変換データによって上書きされ破壊されます。
● EI2OS で A/D 変換結果を転送する場合の A/D 変換データ保護機能
EI2OS 機能を利用して , A/D 変換後に A/D 変換結果を A/D データレジスタからメモリ
に転送している間に次の回の A/D 変換が終了した場合にはデータ保護のため A/D 変換
動作は新しいデータを A/D データレジスタに上書きする直前で一時停止状態になりま
す。A/D 変換動作が停止すると , A/D 制御ステータスレジスタの一時停止フラグビット
(ADCS: PAUS) に "1" がセットされます。
EI2OS 機能による A/D 変換結果のメモリ転送が終了すると , A/D 変換の一時停止状態
が解除されます。連続して A/D 変換を行っている場合は , A/D 変換動作が再開されま
す。このとき , 一時停止フラグビット (ADCS : PAUS) は自動的には "0" にクリアされ
ません。クリアする場合には PAUS ビットに "0" を書き込んでください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
409
第 16 章 8/10 ビット A/D コンバータ
16.5
MB90930 シリーズ
<注意事項>
410
•
EI2OS 機能によって A/D 変換結果がメモリ転送されている場合には CPU から割込み
要求フラグビットをクリア (ADCS: INT=0) しないでください。転送中の A/D データレ
ジスタのデータが書き換えられてしまう場合があります。
•
EI2OS 機能によって A/D 変換結果がメモリ転送されている場合には割込み要求の出力
を 禁 止 し な い で く だ さ い。一 時 停 止 中 に 割 込 み 要 求 の 出 力 を 禁 止 す る と
(ADCS:INTE=0), A/D 変換が開始され , 転送中の A/D データレジスタのデータが書き換
えられてしまう場合があります。
•
EI2OS 機能によって A/D 変換結果がメモリ転送されている場合に再起動をかけないで
ください。A/D変換一時停止中に再起動をかけると , 変換結果が壊れる場合があります。
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 16 章 8/10 ビット A/D コンバータ
16.5
MB90930 シリーズ
● EI2OS を使用した場合の A/D 変換データ保護機能の処理フロー
EI2OS を使用した場合の A/D 変換データ保護機能の処理フローを図 16.5-6 に示します。
図 16.5-6 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変換停止
終了
(注意事項) A/Dコンバータ動作停止時のフローは省略
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
411
第 16 章 8/10 ビット A/D コンバータ
16.6
16.6
MB90930 シリーズ
8/10 ビット A/D コンバータ使用上の注意
8/10 ビット A/D コンバータを使用する場合には , 次の点に注意してください。
■ 8/10 ビット A/D コンバータ使用上の注意
● アナログ入力端子について
• アナログ入力端子は , ポート 6, 7, 8 の汎用入出力ポートと兼用になっています。ア
ナログ入力端子 として使用する場 合にはアナログ入 力許可レジスタ (ADER6,
ADER7, ADER8) の設定によってアナログ入力端子に切り換えてください。
•
アナログ入力端子として使用する場合には , 使用する端子に対応するアナログ入力
許可レジスタ (ADER6, ADER7, ADER8) のビットに "1" を書き込んで , アナログ入力
許可に設定してください。
•
汎用入出力ポートに設定したままで中間レベルの信号が入力されると , ゲートに入
力リーク電流が流れます。アナログ入力端子として使用する場合は , 必ずアナログ
入力許可に設定して使用してください。
● 内部タイマまたは外部トリガで起動する場合の注意
8/10 ビット A/D コンバータを内部タイマ出力または外部トリガで起動するように A/D 制
御ステータスレジスタの A/D 起動トリガ選択ビット (ADCS : STS1, STS0) を設定する
場合は , タイマ出力および外部トリガのレベルをインアクティブ側 ( 外部トリガの場合
は "H" 側 ) に設定してください。起動トリガの入力値をアクティブ側に設定しておく
と , A/D 制御ステータスレジスタの A/D 起動トリガ選択ビット (ADCS : STS1, STS0) の
設定と同時に動作を開始するおそれがあります。
● 8/10 ビット A/D コンバータの電源・アナログ入力の投入順序
• 8/10 ビット A/D コンバータの電源 , アナログ入力の印加は , 必ずデジタル電源 (VCC)
の投入後に行ってください。
• 電源切断時は , 8/10 ビット A/D コンバータの電源およびアナログ入力の遮断の後で
デジタル電源の遮断を行ってください。
• AVRH は , AVCC を超えないように投入および切断を行ってください。
● 8/10 ビット A/D コンバータの電源電圧について
ラッチアップ防止のため , 8/10 ビット A/D コンバータの電源 (AVCC) は , デジタル電源
(VCC) の電圧を超えないように注意してください。
412
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章
LIN-UART
LIN-UART の機能と動作について説明します。
17.1 LIN-UART の概要
17.2 LIN-UART の構成
17.3 LIN-UART の端子
17.4 LIN-UART のレジスタ
17.5 LIN-UART の割込み
17.6 LIN-UART のボーレート
17.7 LIN-UART の動作
17.8 LIN-UART 使用上の注意
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
413
第 17 章 LIN-UART
17.1
MB90930 シリーズ
LIN-UART の概要
17.1
LIN(Local Interconnect Network)-UART は , 外部装置と同期通信もしくは非同期通
信 ( 調歩同期 ) をするための汎用のシリアルデータ通信インタフェースです。双方向
通信機能 ( ノーマルモード ), マスタ / スレーブ型通信機能 ( マルチプロセッサモード :
マスタ / スレーブ両方をサポート ) に加えて LIN バスに対応するための特別な機能も
サポートしています。
■ LIN-UART の機能
● LIN-UART の機能
LIN-UART は , ほかの CPU や周辺装置とシリアルデータの送受信をする汎用シリアル
データ通信インタフェースで , 表 17.1-1 に示す機能をもっています。
表 17.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) 機能の
対応あり (UART3 を除く )
マスタ / スレーブ型通信機能
( マルチプロセッサモード )
1 ( マスタ ) 対 n ( スレーブ ) 間の通信が可能
( マスタとスレーブシステムの両方をサポート )
同期モード
マスタまたはスレーブ機能
端子アクセス
シリアル入出力端子の状態を直接リード可能
414
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.1
MB90930 シリーズ
表 17.1-1 LIN-UART の機能 (2 / 2)
機能
• マスタデバイス動作
• スレーブデバイス動作
• LIN Synch break 検出
LIN バスオプション
• LIN Synch break 生成
• インプットキャプチャ0, 1, 6, 7 に接続している LIN Synch field
のスタート / ストップエッジ 検出
同期シリアルクロック
スタート / ストップビットで同期通信するために , SCK 端子に連
続出力可能
クロック遅延オプション
クロックを遅らせるための特殊な同期クロックモード (SPI に有
効)
LIN-UART は 4 つの異なるモードで動作します。動作モードは , LIN-UART シリアル
モードレジスタ (SMR) の MD0, MD1 ビットにより決定されます。モード 0 と 2 は双方
向シリアル通信 , モード 1 はマスタ / スレーブ通信 , モード 3 は LIN マスタ / スレーブ
通信に使用されます。
表 17.1-2 LIN-UART の動作モード
データ長
動作モード
同期方式
パリティなし
0
ノーマルモード
1
マルチ
プロセッサ
モード
パリティあり
7 ビットまたは 8 ビット
7 ビット
または
8 ビット
―
ストップ
ビット長
非同期
非同期
1 ビット
または
2 ビット
+1 *
2
ノーマルモード
3
LIN モード
8 ビット
8 ビット
―
データビット
フォーマット
同期
なし ,
1 ビット ,
2 ビット
非同期
1 ビット
LSB ファースト
MSB ファースト
LSB ファースト
― : 設定不可
* : "+1" はマルチプロセッサモードで通信制御用に使用されるアドレス / データ形式選択ビット (AD)
です。
LIN-UART シリアルモードレジスタ (SMR) の MD1 と MD0 ビットで , 下記に示す LINUART の動作モードを決定します。
表 17.1-3 LIN-UART の動作モード
CM44-10150-1
MD1
MD0
モード
種類
0
0
0
非同期 ( ノーマルモード )
0
1
1
非同期 ( マルチプロセッサモード )
1
0
2
同期 ( ノーマルモード )
1
1
3
非同期 (LIN モード )
FUJITSU MICROELECTRONICS LIMITED
415
第 17 章 LIN-UART
17.1
MB90930 シリーズ
<注意事項>
• モード 1 は , マスタ / スレーブ接続時にはマスタとスレーブいずれの動作にも対応しま
す。
• モード 3 は , 通信フォーマット 8N-1, LSB ファーストに固定されます。
• モードを変更すると LIN-UART は送受信を打ち切り , 次の通信開始を待ちます。
■ LIN-UART の割込みと EI2OS
割込み制御レジスタ
チャネル
ベクタテーブルのアドレス
EI2OS
割込み番号
レジスタ名
アドレス
下位
上位
バンク
LIN-UART0 受信
#39(27H)
ICR14
0000BEH
FFFF60H
FFFF61H
FFFF62H
*1
LIN-UART0 送信
#40(28H)
ICR14
0000BEH
FFFF5CH
FFFF5DH
FFFF5EH
*2
LIN-UART1 受信
#37(25H)
ICR13
0000BDH
FFFF68H
FFFF69H
FFFF6AH
*1
LIN-UART1 送信
#38(26H)
ICR13
0000BDH
FFFF64H
FFFF65H
FFFF66H
*2
LIN-UART2 受信
#35(23H)
ICR12
0000BCH
FFFF70H
FFFF71H
FFFF72H
*1
LIN-UART2 送信
#36(24H)
ICR12
0000BCH
FFFF6CH
FFFF6DH
FFFF6EH
*2
LIN-UART3 受信
#24(18H)
ICR06
0000B6H
FFFF9CH
FFFF9DH
FFFF9EH
*3
LIN-UART3 送信
#26(1AH)
ICR07
0000B7H
FFFF94H
FFFF95H
FFFF96H
*2
*1: ICR12 ∼ ICR14 および割込みベクタを共有する割込み要因が使用されてない場合にのみ使用可能。受信エ
ラー検出可能。また , EI2OS 停止機能あり。
*2: ICR07, ICR13, ICR14 および割込みベクタを共有する割込み要因が使用されてな い場合にのみ使用可 能。
*3: ICR06 および割込みベクタを共有する割込み要因が使用されてない場合にのみ使用可能。受信エラー検出可
能。EI2OS 停止機能あり。
416
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
17.2
LIN-UART の構成
第 17 章 LIN-UART
17.2
LIN-UART の構成ブロックの概要を示します。
■ LIN-UART 構成ブロック
• リロードカウンタ
• 受信制御回路
• 受信シフトレジスタ
• 受信データレジスタ (RDR)
• 送信制御回路
• 送信シフトレジスタ
• 送信データレジスタ (TDR)
• エラー検出回路
• オーバサンプリング回路
• 割込み生成回路
• LIN synch break/Synch Field 検出回路
• バスアイドル検出回路
• LIN-UART シリアルモードレジスタ (SMR)
• シリアル制御レジスタ (SCR)
• シリアルステータスレジスタ (SSR)
• 拡張通信制御レジスタ (ECCR)
• 拡張ステータス制御レジスタ (ESCR)
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
417
第 17 章 LIN-UART
17.2
MB90930 シリーズ
■ LIN-UART のブロックダイヤグラム
図 17.2-1 LIN-UART のブロックダイヤグラム
OTO,
EXT ,
REST
CLK
PE
ORE
FRE
TIE
RIE
LBIE
LBD
送信クロック
リロード
カウンタ
SCKn
書込み
生成回路
受信クロック
送信制御回路
受信制御回路
RBI
TBI
端子
送信スタート
回路
スタートビット
検出回路
受信
IRQ
SINn
端子
再スタート受信
リロードカウンタ
受信ビット
カウンタ
送信ビット
カウンタ
受信パリティ
カウンタ
送信パリティ
カウンタ
送信
IRQ
TDRE
SOTn
オーバサン
プリング
回路
端子
RDRF
SOTn
SINn
キャプチャへ LIN break/
の内部信号
Synch Field
検出回路
SINn
送信シフト
レジスタ
受信シフト
レジスタ
EI2OS へ
LIN break
生成回路
バスアイドル LBR
LBL1
検出回路
LBL0
エラー
検出
PE
ORE
FRE
送信開始
RDRn
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
AD
CRE
RXE
TXE
SCRn
レジスタ
LBIE
LBD
LBL1
LBL0
SOPE
SIOP
CCO
SCES
LBR
MS
ESCRn
SCDE
レジスタ SSM
ECCRn
レジスタ
RBI
TBI
n = 0, 1, 2, 3
418
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 17 章 LIN-UART
17.2
■ 各ブロックの説明
● リロードカウンタ
専用ボーレートジェネレータとして機能する 15 ビットリロードカウンタです。リロー
ド値に対する 15 ビットレジスタから構成され , 外部クロックまたは内部クロックより
送受信クロックを生成します。また , 送信リロードカウンタのカウント値を BGRn1,
BGRn0 から読み出すことができます。
● 受信制御回路
受信ビットカウンタ,スタートビット検出回路および受信パリティカウンタから構成さ
れています。受信ビットカウンタは受信データビットをカウントして , 設定したデータ
長に応じて 1 データの受信を完了すると , LIN-UART 受信データレジスタにフラグを
セットします。このとき , 受信割込みが許可されていると受信割込み要求を発生しま
す。スタートビット検出回路は , シリアル入力信号からスタートビットを検出する回路
で , スタートビットを検出するとスタートビットの立下りエッジに同期して , リロード
カウンタに信号を送ります。受信パリティカウンタは , 受信データのパリティを計算し
ます。
● 受信シフトレジスタ
SINn 端子から入力された受信データをビットシフトしながら取り込み , 受信が完了す
ると RDR レジスタに受信データを転送します。
● 受信データレジスタ (RDR)
受信データを保持します。シリアル入力データは変換され , 受信データレジスタに格納
されます。
● 送信制御回路
送信ビットカウンタ,送信スタート回路および送信パリティカウンタから構成されてい
ます。送信ビットカウンタは , 送信データビットをカウントして , 設定したデータ長に
応じて 1 データの送信を完了すると , 送信データレジスタにフラグをセットします。こ
のとき , 送信割込みが許可されていると送信割込み要求を発生します。送信スタート回
路は , TDR のデータ書込みで送信動作を開始します。送信パリティカウンタは , パリ
ティありの場合には送信するデータのパリティビットを生成します。
● 送信シフトレジスタ
TDR に書き込まれたデータを送信シフトレジスタに転送し , ビットシフトしながら
SOTn 端子に出力します。
● 送信データレジスタ (TDR)
送信データを設定します。書き込まれたデータは , シリアルデータに変換されて出力さ
れます。
● エラー検出回路
受信終了時において , エラーがあったかどうかを検出します。エラーが発生すると , 対
応するエラーフラグをセットします。
● オーバサンプリング回路
非同期モード動作では , 5 回オーバサンプリングを行い , サンプリング値の多数決によ
り受信値を決定します。また , 同期モード動作では停止します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
419
第 17 章 LIN-UART
17.2
MB90930 シリーズ
● 割込み生成回路
すべての割込み要因を制御します。対応する割込み許可ビットがセットされていると ,
直ちに割込みが発生します。
● 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 ファーストの選択
・受信割込み許可 / 禁止
・送信割込み許可 / 禁止
420
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 17 章 LIN-UART
17.2
● 拡張ステータス制御レジスタ (ESCR)
・LIN synch break 割込み許可 / 禁止
・LIN synch break 検出
・LIN synch break 長選択
・SINn, SOTn 端子への直接アクセス
・LIN-UART 同期クロックモードでの連続クロック出力設定
・サンプリングクロックエッジ選択
● 拡張通信制御レジスタ (ECCR)
・バスアイドル検出
・同期クロック設定
・LIN synch break 生成
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
421
第 17 章 LIN-UART
17.3
17.3
MB90930 シリーズ
LIN-UART の端子
LIN-UART の端子 , 割込み要因 , レジスタの一覧および詳細を示します。
■ LIN-UART の端子
LIN-UART の端子は , 汎用ポートと兼用になっています。表 17.3-1 に端子の機能 , 入出
力形式 , および LIN-UART 使用時の設定などを示します。
表 17.3-1 LIN-UART の端子
端子名
端子機能
入出力形式
PC0/SIN0
PC3/SIN1
PD0/SIN2
PD3/SIN3
ポート入出力 /
シリアルデータ入力
CMOS 出力 ,
CMOS/CMOS ヒス
テリシス /
Automotive 入力
PC1/SOT0
PC4/SOT1
PD1/SOT2
PD4/SOT3
ポート入出力 /
シリアルデータ出力
PC2/SCK0
PC5/SCK1
PD2/SCK2
PD5/SCK3
ポート入出力 /
シリアルクロック
入出力
プルアップ
選択
スタンバイ
制御
端子の使用に
必要な設定
入力ポートに設定
(DDR : 対応するビット = 0)
出力許可に設定
(SMRn : SOE = 1)
なし
あり
CMOS 出力 , CMOS
ヒステリシス /
Automotive 入力
クロック入力時入力ポートに
設定
(DDR : 対応するビット = 0)
クロック出力時出力許可に設
定
(SMRn : SCKE = 1)
規格値はデータシート「■電気的特性 3. 直流規格」を参照してください。
422
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.3
MB90930 シリーズ
■ LIN-UART の端子のブロックダイヤグラム
図 17.3-1 LIN-UART の端子のブロックダイヤグラム
リソース入力
ポートデータレジスタ (RDR)
リソース出力
リソース出力許可
内部データバス
PDR リード
P-ch
出力ラッチ
PDR ライト
端子
ポート方向レジスタ (DDR)
N-ch
方向ラッチ
汎用 I/O 端子 /SIN
汎用 I/O 端子 /SCK
汎用 I/O 端子 /SOT
DDR ライト
スタンバイ制御 (SPL = 1)
DDR リード
スタンバイ制御 : ストップモード (SPL =1), タイムベースタイマモード (SPL = 1)
( 注意事項 ) リソース入出力信号はリソース機能を持つ端子から入出力される。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
423
第 17 章 LIN-UART
17.4
17.4
MB90930 シリーズ
LIN-UART のレジスタ
LIN-UART のレジスタ一覧を示します。
■ LIN-UART のレジスタ一覧
図 17.4-1 LIN-UART のレジスタ一覧
• LIN-UART0
bit 15
アドレス :
bit 8
bit 7
bit 0
000035H,
000034H
SCR0 ( シリアル制御レジスタ )
SMR0 ( シリアルモードレジスタ )
000037H,
000036H
SSR0 ( シリアルステータスレジスタ )
RDR0/TDR0 ( 受信データレジスタ / 送信データレジスタ )
000039H,
000038H
ESCR0 ( 拡張ステータス制御レジスタ )
ECCR0 ( 拡張通信制御レジスタ )
00003BH,
00003AH
BGR01 ( ボーレートジェネレータレジスタ )
BGR00 ( ボーレートジェネレータレジスタ )
bit 15
bit 7
• LIN-UART1
アドレス :
bit 8
bit 0
0000C5H,
0000C4H
SCR1 ( シリアル制御レジスタ )
SMR1 ( シリアルモードレジスタ )
0000C7H,
0000C6H
SSR1 ( シリアルステータスレジスタ )
RDR1/TDR1 ( 受信データレジスタ / 送信データレジスタ )
0000C9H,
0000C8H
ESCR1 ( 拡張ステータス制御レジスタ )
ECCR1 ( 拡張通信制御レジスタ )
0000CBH,
0000CAH
BGR11 ( ボーレートジェネレータレジスタ )
BGR10 ( ボーレートジェネレータレジスタ )
bit 15
bit 7
• LIN-UART2
アドレス :
bit 8
bit 0
0000E1H,
0000E0H
SCR2 ( シリアル制御レジスタ )
SMR2 ( シリアルモードレジスタ )
0000E3H,
0000E2H
SSR2 ( シリアルステータスレジスタ )
RDR2/TDR2 ( 受信データレジスタ / 送信データレジスタ )
0000E5H,
0000E4H
ESCR2 ( 拡張ステータス制御レジスタ )
ECCR2 ( 拡張通信制御レジスタ )
0000E7H,
0000E6H
BGR21 ( ボーレートジェネレータレジスタ )
BGR20 ( ボーレートジェネレータレジスタ )
bit 15
bit 7
• LIN-UART3
アドレス :
bit 8
bit 0
0000E9H,
0000E8H
SCR3 ( シリアル制御レジスタ )
SMR3 ( シリアルモードレジスタ )
0000EBH,
0000EAH
SSR3 ( シリアルステータスレジスタ )
RDR3/TDR3 ( 受信データレジスタ / 送信データレジスタ )
0000EDH,
0000ECH
ESCR3 ( 拡張ステータス制御レジスタ )
ECCR3 ( 拡張通信制御レジスタ )
0000EFH,
0000EEH
BGR31 ( ボーレートジェネレータレジスタ )
BGR30 ( ボーレートジェネレータレジスタ )
424
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
17.4.1
シリアル制御レジスタ (SCR0 ∼ SCR3)
第 17 章 LIN-UART
17.4
シリアル制御レジスタ (SCR0 ∼ SCR3) は , パリティの設定 , ストップビット長や
データ長の選択 , モード 1 でのフレームデータ形式の選択 , 受信エラーフラグのクリ
ア , 送受信動作の許可または禁止の設定を行います。
■ シリアル制御レジスタ (SCR0 ∼ SCR3)
図 17.4-2 シリアル制御レジスタ (SCR0 ∼ SCR3)
アドレス
bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 bit7
SCR0 : 000035H
PEN
AD CRE RXE TXE
P SBL CL
SCR1 : 0000C5H
SCR2 : 0000E1H R/W R/W R/W R/W R/W W R/W R/W
SCR3 : 0000E9H
bit8
bit0
初期値
00000000B
TXE
送信許可ビット
0
送信禁止
1
送信許可
bit9
RXE
受信許可ビット
0
受信禁止
1
受信許可
bit10
CRE
受信エラーフラグクリアビット
書込み時
0
影響なし
1
受信エラーフラグ (PE, FRE, ORE)
クリア
読出し時
常に "0"
を読出し
bit11
AD
アドレス / データ形式選択ビット
0
データフレーム
1
アドレスフレーム
bit12
CL
データ長選択ビット
0
7 ビット
1
8 ビット
bit13
SBL
0
ストップビット長選択ビット
1 ビット
1
2 ビット
bit14
P
R/W
: リード / ライト可能
W
: ライトオンリ
: 初期値
CM44-10150-1
パリティ選択ビット
0
偶数パリティ
1
奇数パリティ
bit15
PEN
パリティ許可ビット
0
パリティなし
1
パリティあり
FUJITSU MICROELECTRONICS LIMITED
425
第 17 章 LIN-UART
17.4
MB90930 シリーズ
表 17.4-1 シリアル制御レジスタ (SCR0 ∼ SCR3) の各ビットの機能説明
ビット名
機能
bit15
PEN :
パリティ許可
ビット
パリティビットの付加 ( 送信時 ) と検出 ( 受信時 ) を行うかどうかを設
定します。
( 注意事項 )
パリティビットは動作モード 0 の場合 , または動作モード 2 でスタート /
ストップあり (ECCR : SSM=1) に設定した場合にのみ付加されます。
モード 3 (LIN) のときには "0" に固定されます。
bit14
P:
パリティ選択
ビット
パリティビットあり (SCR : PEN=1) に設定した場合に , 奇数パリティ (1)
か偶数パリティ (0) のいずれかに設定します。
bit13
SBL :
ストップビット
長選択ビット
動作モード 0, 1 ( 非同期 ) の場合 , または動作モード 2 ( 同期 ) でスター
ト / ストップビットあり (ECCR : SSM=1) に設定した場合のストップ
ビット (送信データのフレームエンドマーク) のビット長を設定します。
本ビットは , モード 3(LIN) では "0" に固定されます。
( 注意事項 ) 受信時は , 常にストップビットの 1 ビット目だけを検出しま
す。
bit12
CL :
データ長
選択ビット
送受信データのデータ長を指定します。本ビットは , モード 2, 3 では "1"
に固定されます。
AD :
アドレス /
データ形式
選択ビット
マルチプロセッサモード ( モード 1) で , 送受信するフレームのデータ形
式を指定します。マスタ側は本ビットに書き込み , スレーブ側は本ビッ
トを読み出してください。
・"0" に設定した場合 : データフレームに設定されます。
・"1" に設定した場合 : アドレスデータのフレームに設定されます。
読出しは , 最後に受信したデータ形式の値になります。
( 注意事項 ) 本ビットの使用にあたっては 「
, 17.8 LIN-UART 使用上の注
意」を参照してください。
CRE :
受信エラー
フラグ
クリアビット
シリアルステータスレジスタ (SSR) の FRE, ORE, PE フラグをクリアす
るビットです。
・"1" 書込みで , エラーフラグがクリアされます。
・"0" 書込みでは , 影響ありません。
読み出した場合 , 常に "0" が読み出されます。
( 注意事項 ) 受信動作停止後に受信エラーフラグをクリアしてください。
bit9
RXE :
受信動作許可
ビット
LIN-UART の受信動作を許可または禁止します。
・"0" に設定した場合 : データフレーム受信動作が禁止されます。
・"1" に設定した場合 : データフレーム受信動作が許可されます。
モード 3 での LIN synch break 検出は影響されません。
( 注意事項 ) 受信中に受信動作を禁止 (RXE=0) した場合には , 直ちに受信
動作が停止します。この場合にはデータは保証されません。
bit8
TXE :
送信動作許可
ビット
LIN-UART の送信動作を許可または禁止します。
・"0" に設定した場合 : データフレーム送信動作が禁止されます。
・"1" に設定した場合 : データフレーム送信動作が許可されます。
( 注意事項 ) 送信中に送信動作を禁止 (TXE=0) した場合には , 直ちに送信
動作が停止します。この場合にはデータは保証されません。
bit11
bit10
426
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.4
MB90930 シリーズ
17.4.2
LIN-UART シリアルモードレジスタ (SMR)
LIN-UART シリアルモードレジスタ (SMR) は , 動作モードの選択 , ボーレートク
ロックの選択 , シリアルデータとクロックの端子への出力許可または禁止の設定を行
います。
■ LIN-UART シリアルモードレジスタ (SMR)
図 17.4-3 シリアルモードレジスタ (SMR)
アドレス
bit15
SMR0:000034H
SMR1:0000C4H
SMR2:0000E0H
SMR3:0000E8H
bit8 bit7
bit6 bit5
bit4
bit2
bit3
bit1
bit0
初期値
MD1 MD0 OTO EXT REST UPCL SCKE SOE 00000000B
R/W R/W R/W R/W W
W
R/W 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-10150-1
FUJITSU MICROELECTRONICS LIMITED
427
第 17 章 LIN-UART
17.4
MB90930 シリーズ
表 17.4-2 シリアルモードレジスタ (SMR) の各ビットの機能説明
ビット名
機能
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
UPCL :
LIN-UART プログラマブル
クリアビット
(LIN-UART ソフトウェア
リセット )
"1" を書き込んだ場合には LIN-UART を即時リセット (LINUART ソフトウェアリセット ) します。ただし , レジスタの
設定は維持されます。その際 , 送受信は中断されます。
すべての送受信割込み要因 (TDRE, RDRF, LBD, PE , ORE,
FRE) は解除されます。割込み禁止および送信禁止に設定し
た後 , LIN-UART のリセットを行ってください。また , 受信
データレジスタはクリア (RDR=00H) されてリロードカウン
タは再スタートします。
"0" を書き込んだ場合には , 影響ありません。
常に "0" が読み出されます。
bit1
bit0
428
SCKE:
LIN-UART シリアルクロック
出力許可ビット
シリアルクロックの入出力ポートを制御するビットです。
"0" の場合は SCKn 端子は汎用入出力ポート , またはシリア
ルクロック入力端子として機能します。"1" の場合はシリア
ルクロック出力端子となり , 動作モード 2( 同期 ) でクロッ
クを出力します。
( 注意事項 ) SCKn 端子をシリアルクロック入力 (SCKE=0)
として使用する場合は , 汎用入出力ポートの対
応する DDR ビットを入力ポートに設定してく
ださい。また , クロック選択ビットによって外
部クロックを選択 (EXT=1) してください。
( 参考 ) SCKn 端子がシリアルクロック出力 (SCKE=1) に設
定されている場合は , 汎用入出力ポートの状態にか
かわらず , シリアルクロック出力端子として機能し
ます。
SOE:
LIN-UART シリアルデータ
出力許可ビット
シリアルデータの出力を許可 / 禁止するビットです。
"0" の場合には SOTn 端子は汎用入出力ポートとなり , "1" の
場合にはシリアルデータ出力端子 (SOTn) となります。
( 参考 ) シリアルデータ出力 (SOE=1) の場合には SOTn 端子
は汎用入出力ポートの状態にかかわらず , SOTn 端
子として機能します。
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.4
MB90930 シリーズ
17.4.3
シリアルステータスレジスタ (SSR0 ∼ SSR3)
シリアルステータスレジスタ (SSR0 ∼ SSR3) は , 送受信やエラーの状態の確認 , 割
込みの許可または禁止の設定を行います。
■ シリアルステータスレジスタ (SSR0 ∼ SSR3)
図 17.4-4 シリアルステータスレジスタ (SSR0 ∼ SSR3)
アドレス
bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 bit7
SSR0:000037H
SSR1:0000C7H PE ORE FRE RDRF TDRE BDS RIE TIE
SSR2:0000E3H R
R
R
R
R R/W R/W R/W
SSR3:0000EBH
bit8
TIE
bit0 初期値
00001000B
送信割込み要求許可ビット
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
パリティエラーあり
: 初期値
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
429
第 17 章 LIN-UART
17.4
MB90930 シリーズ
表 17.4-3 シリアルステータスレジスタ (SSR0 ∼ SSR3) の各ビットの機能説明 (1 / 2)
ビット名
機能
bit15
PE :
パリティエラー
フラグビット
・PE = 1 で受信時にパリティエラーが発生すると "1" にセットされ , シ
リアル制御レジスタ (SCR) の CRE ビットに "1" を書き込むとクリア
されます。
・PE ビットと RIE ビットが "1" の場合に受信割込み要求を出力します。
・本フラグがセットされた場合は , 受信データレジスタ (RDR) のデー
タは無効です。
bit14
ORE :
オーバランエラー
フラグビット
・受信時にオーバランエラーが発生すると "1" にセットされ , シリアル
制御レジスタ(SCR)のCREビットに"1"を書き込むとクリアされます。
・OREビットとRIEビットが"1"の場合に受信割込み要求を出力します。
・本フラグがセットされた場合は , 受信データレジスタ (RDR) のデー
タは無効です。
bit13
FRE :
フレーミング
エラーフラグ
ビット
・受信時にフレーミングエラーが発生すると "1" にセットされ , シリア
ル制御レジスタ (SCR) の CRE ビットに "1" を書き込むとクリアされ
ます。
・FREビットとRIEビットが"1"の場合に受信割込み要求を出力します。
・本フラグがセットされた場合は , 受信データレジスタ (RDR) のデー
タは無効です。
bit12
RDRF :
受信データ
フルフラグビット
・受信データレジスタ (RDR) の状態を示すフラグです。
・RDR に受信データがロードされると "1" にセットされ , 受信データ
レジスタ (RDR) を読み出すと "0" にクリアされます。
・RDRF ビットと RIE ビットが "1" の場合に受信割込み要求を出力しま
す。
TDRE :
送信データ
エンプティフラグ
ビット
・送信データレジスタ (TDR) の状態を示すフラグです。
・TDR に送信データを書き込むと "0" となり , TDR に有効なデータが
存在していることを示します。データが送信シフトレジスタにロー
ドされて送信が開始されると "1" となり , TDR に有効なデータが存在
していないことを示します。
・TDRE ビットと TIE ビットが "1" の場合に送信割込み要求を出力しま
す。
・TDRE ビットが "1" のときに拡張通信制御レジスタ (ECCR) の LBR
ビットに "1" をセットすると TDRE ビットは "0" となり , LIN sync
break 生成後 "1" になります。
( 注意事項 ) 初期状態では , TDRE=1 になっています。
BDS :
転送方向
選択ビット
転送シリアルデータを最下位ビット側から先に転送するか (LSB
ファースト , BDS=0), 最上位ビット側から先に転送するか (MSB
ファースト , BDS=1) を選択するビットです。
( 注意事項 ) シリアルデータレジスタへの読出し , 書込み時にデータの
上位側と下位側を入れ替えるため , RDR レジスタへデー
タを書き込んだ後 , BDS ビットを書き換えると , そのデー
タは無効になります。
BDS ビットはモード 3(LIN) では "0"
に固定されます。
bit11
bit10
430
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.4
MB90930 シリーズ
表 17.4-3 シリアルステータスレジスタ (SSR0 ∼ SSR3) の各ビットの機能説明 (2 / 2)
ビット名
機能
bit9
RIE :
受信割込み要求
許可ビット
・CPU への受信割込み要求出力の許可 / 禁止をするビットです。
・RIE ビットと受信データフラグビット (RDRF) が "1" の場合 , または
1 つ以上のエラーフラグビット (PE, ORE, FRE) が "1" の場合に受信割
込み要求を出力します。
bit8
TIE :
送信割込み要求
許可ビット
・CPU への送信割込み要求出力の許可 / 禁止をするビットです。
・TIE ビットと TDRE ビットが "1" の場合に送信割込み要求を出力しま
す。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
431
第 17 章 LIN-UART
17.4
17.4.4
MB90930 シリーズ
受信データレジスタ / 送信データレジスタ
(RDR0 ∼ RDR3/TDR0 ∼ TDR3)
受信データと送信データレジスタは同一アドレスに配置されています。読み出した
場合は , 受信データレジスタとして機能し , 書き込んだ場合は送信データレジスタと
して機能します。
■ 受信データレジスタ / 送信データレジスタ (RDR0 ∼ RDR3/TDR0 ∼ TDR3)
図 17.4-5 に受信データレジスタ / 送信データレジスタ (RDR0 ∼ RDR3/TDR0 ∼ TDR3)
のビット構成を示します。
図 17.4-5 受信データレジスタ / 送信データレジスタ (RDR0 ∼ RDR3/TDR0 ∼ TDR3)
アドレス
RDR0/TDR0: 000036H
RDR1/TDR1: 0000C6H
RDR2/TDR2: 0000E2H
RDR3/TDR3: 0000EAH
bit
7
6
5
4
3
2
1
0
初期値
00000000B
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) のデータは無効となります。
432
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 17 章 LIN-UART
17.4
■ 送信データレジスタ (TDR0 ∼ TDR3)
送信データレジスタ (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) 系動作
をする命令を使用できません。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
433
第 17 章 LIN-UART
17.4
17.4.5
MB90930 シリーズ
拡張ステータス制御レジスタ (ESCR0 ∼ ESCR3)
拡張ステータス制御レジスタ (ESCR0 ∼ ESCR3) は , LIN synch break 割込み許可 /
禁止 , LIN synch break 長選択 , LIN synch break 検出 , SINn, SOTn 端子への直接
アクセス , LIN-UART 同期クロックモードでの連続クロック出力 , サンプリングク
ロックエッジの設定があります。
■ 拡張ステータス制御レジスタ (ESCR0 ∼ ESCR3) のビット構成
図 17.4-6 に拡張ステータス制御レジスタ (ESCR0 ∼ ESCR3) のビット構成を , 表 17.4-4
に各ビットの機能を示します。
図 17.4-6 拡張ステータス制御レジスタ (ESCR0 ∼ ESCR3) のビット構成
アドレス bit 15 bit 14 bit 13 bit 12 bit 11 bit 10 bit 9 bit 8 bit 7
ESCR0 : 000039H
LBIE LBD LBL1 LBL0 SOPE SIOP CCO SCES
ESCR1 : 0000C9H
ESCR2 : 0000E5H R/W R/W R/W R/W R/W R/W R/W R/W
ESCR3 : 0000EDH
bit 0
初期値
00000100B
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
: リード / ライト可能
×
: 不定値
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 検出割込み許可
: 初期値
434
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.4
MB90930 シリーズ
表 17.4-4 拡張ステータス制御レジスタ (ESCR0 ∼ ESCR3) の各ビットの機能説明
ビット名
機能
LBIE:
LIN synch break 検出
割込み許可ビット
LIN synch break 検出割込みを許可 / 禁止するビットです。
LIN synch break 検出フラグ (LBD) が "1" のときに割込みが
許可 (LBIE=1) されると割込みを発生します。
モード 1, 2 では "0" に固定されます。
bit14
LBD:
LIN synch break
検出フラグビット
動作モード 3 で LIN synch break が検出される ( シリアル入
力が 11 ビット幅以上 "0" になる ) と "1" にセットされます。
また , "0" を書き込むと LBD ビットと割込みはクリアされ
ます。リードモディファイライト (RMW) 系命令を実行する
と常に "1" が読み出されますが LIN synch break の検出によ
るものではありませんので注意してください。
( 注意事項 ) LIN synch break 検出を行う際には , LIN synch
break 検出割込みを許可 (LBIE=1) に設定した
後 , 受信禁止 (SCR:RXE=0) に設定してくださ
い。
bit13,
bit12
LBL1/0:
LIN synch break 長選択
ビット
これらのビットは , LIN synch break の生成時間を何ビット
分とするかを設定します。
受信 LIN synch break 長は常に 11 ビットです。
bit11
SOPE:
シリアル出力端子直接
アクセス許可ビット *
シリアルデータの出力が許可 (SMR:SOE=1)されているとき
に本ビットに "1" を設定すると , SOTn 端子への直接書込み
を許可します。*
( 注意事項 ) 本ビットの設定値は , シリアル制御レジスタ
(SCR) の TXE ビットが "0" の場合のみ有効です。
bit15
bit10
SIOP:
シリアル入出力端子
直接 アクセスビット *
bit9
CCO:
連続クロック出力許可
ビット
bit8
通常の読出し命令は , 常に SINn 端子の値を返します。
シリアル出力端子直接アクセス許可(SOPE=1)のときに書込
みを行うと本ビット値が SOTn 端子に反映されます。
( 注意事項 ) 本ビットの設定値は , シリアル制御レジスタ
(SCR)のTXEビットが"0"の場合のみ有効です。
ビット操作命令の場合は読出しサイクル内
の SOTn のビット値を返します。*
動作モード 2( 同期 ) でマスタ設定のとき , SCKn 端子がク
ロック出力に設定されていると , SCKn 端子からの連続シリ
アルクロック出力を許可します。
( 注意事項 ) CCO ビットが "1" のときに ECCR の SSM ビッ
トを "1" にして使用してください。
動作モード 2 ( 同期 ) のスレーブ設定のときに SCES を "1"
に設定すると , サンプリングエッジが立上りエッジから立
下りエッジに切り換わります。
動作モード 2 のマスタ設定 (ECCR:MS=0) で SCKn 端子がク
ロック出力のときに内部シリアルクロックと出力クロック
信号が反転します。
動作モード 0, 1, 3 のときは "0" に設定してください。
SCES:
サンプリング クロック
エッジ 選択ビット
*:表 17.4-5 SOPE と SIOP の相互作用
SOPE
SIOP
SIOP への書込み
SIOP からの読出し
0
R/W
影響なし ( ただし , 書込み値は保持される )
SINn の値を返す
1
R/W
SOTn に "0" または "1" を書き込む
SINn の値を返す
1
RMW
CM44-10150-1
SOTn の値を読み出して , SIOP へ "0" または "1" を書き込む
FUJITSU MICROELECTRONICS LIMITED
435
第 17 章 LIN-UART
17.4
MB90930 シリーズ
拡張通信制御レジスタ (ECCR0 ∼ ECCR3)
17.4.6
拡張通信制御レジスタ (ECCR0 ∼ ECCR3) は , バスアイドル検出 , 同期クロック設
定 , および LIN synch break の生成を行います。
■ 拡張通信制御レジスタ (ECCR0 ∼ ECCR3) のビット構成
図 17.4-7 に拡張通信制御レジスタ (ECCR0 ∼ ECCR3) のビット構成を , 表 17.4-6 に各
ビットの機能を示します。
図 17.4-7 拡張通信制御レジスタ (ECCR0 ∼ ECCR3) のビット構成
アドレス bit 15
ECCR0:000038H
ECCR1:0000C8H
ECCR2:0000E4H
ECCR3:0000ECH
bit 8 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 初期値
−
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" を書き込んでください
bit 3
SSM
0
1
スタート / ストップビットモード許可ビット ( モード 2)
スタート / ストップビットなし
スタート / ストップビットあり
bit 4
SCDE
0
1
シリアルクロック遅延許可ビット ( モード 2)
クロック遅延禁止
クロック遅延許可
bit 5
MS
0
1
マスタ / スレーブ機能選択ビット ( モード 2)
マスタモード ( シリアルクロック発生 )
スレーブモード ( 外部シリアルクロック受信 )
bit 6
LBR
0
1
R/W
: リード / ライト可能
R
: リードオンリ
W
: ライトオンリ
X
: 不定値
−
: 未定義
LIN synch break 生成ビット
書込み時
読出し時
影響なし
常に "0" を読出し
LIN synch break 生成
bit 7
未使用ビット
読出し値は不定。常に "0" を書き込んでください
: 初期値
* : 動作モード 2 で SSM = 0 のときには使用不可
436
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.4
MB90930 シリーズ
表 17.4-6 拡張通信制御レジスタ (ECCR0 ∼ ECCR3) の各ビットの機能説明
ビット名
機能
bit7
未使用ビット
未使用ビットです。読出し値は不定です。常に
"0" を書き込んでください。
bit6
LBR:
LIN synch break 生成ビット
動作モード 3 において , 本ビットに "1" を設定す
ると ESCR の LBL0/LBL1 ビットで設定された長
さの LIN synch break を生成します。動作モード
0 のときは "0" に設定してください。
MS:
マスタ / スレーブモード選択ビット
モード 2 においてマスタまたはスレーブモード
を選択できます。
"0" のマスタモード選択時は , 同期クロックを生
成します。
"1" のスレーブモード選択時は , 外部シリアルク
ロックを受信します。モード 0, 1, 3 のときは "0"
に固定されます。
本ビットを変更する場合は , SCR: TXE ビットが
"0" のときに行ってください。
( 注意事項 ) スレーブモード選択時は , クロック
ソースを外部クロックに設定し ,
外部クロック入力を許可 (SMR:
SCKE=0, EXT=1, OTO=1) にする必
要があります。
bit4
SCDE:
シリアルクロック遅延許可ビット
モード 2 のマスタモード動作時に , SCDE ビット
を "1" に設定すると図 17.7-5 に示すような遅延
したシリアルクロックを出力します。本ビット
は SPI に有効です。
モード 0, 1, 3 のときは "0" に固定されます。
bit3
SSM:
スタート / ストップビットモード許
可ビット
モード 2 で本ビットが "1" に設定されていると
スタート / ストップビットを同期データフォー
マットに付加します。
モード 0, 1, 3 のときは "0" に固定されます。
bit2
未使用ビット
未使用ビットです。
読出し値は不定です。
常に "0 を書き込んでください。
bit1
RBI:
受信バスアイドル検出フラグビット
SIN 端子が "H" レベルかつ受信動作をしていな
いときに "1" になります。動作モード 2 で SSM=0
のときは本ビットを使用しないでください。
bit0
TBI:
送信バスアイドル検出フラグビット
SOTn 端子に送信動作がない場合は "1" になりま
す。動作モード 2 で SSM=0 のときは本ビットを
使用しないでください。
bit5
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
437
第 17 章 LIN-UART
17.4
MB90930 シリーズ
ボーレートジェネレータレジスタ 0, 1
(BGRn0/BGRn1)
17.4.7
ボーレートジェネレータレジスタ 0, 1(BGRn0/BGRn1) は , シリアルクロックの分周
比を設定します。また , 送信リロードカウンタのカウント値を読み出すことができま
す。
■ ボーレートジェネレータレジスタ (BGRn0/BGRn1) のビット構成
図 17.4-8 にボーレートジェネレータレジスタ (BGRn0/BGRn1) のビット構成を示しま
す。
図 17.4-8 ボーレートジェネレータレジスタ (BGRn0/BGRn1) のビット構成
アドレス
BGR00: 00003AH
BGR01: 00003BH
BGR10: 0000CAH
BGR11: 0000CBH
BGR20: 0000E6H
BGR21: 0000E7H
BGR30: 0000EEH
BGR31: 0000EFH
bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8
bit7 bit6 bit5 bit4 bit3 bit2
bit1 bit0
初期値
00000000B
00000000B
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 に書き込む
送信リロードカウンタビット 0 ∼ 7 の読み出す
ボーレートジェネレータレジスタ n1
リロードカウンタ 8 ∼ 14 に書き込む
送信リロードカウンタビット 8 ∼ 14 の読み出す
bit 15
R/W : リード / ライト可能
R
: リードオンリ
−
: 未定義
n = 0, 1, 2, 3
読出し時
未使用ビット
"0" を読み出す
ボーレートジェネレータレジスタはシリアルクロックの分周比を設定します。
BGRn1 は上位ビット , BGRn0 は下位ビットに対応し , カウンタのリロード値の書込み
と送信リロードカウンタ値の読出しが可能です。また , バイト・ワードアクセスできま
す。
ボーレートジェネレータレジスタにリロード値を書き込むとリロードカウンタはカウ
ントを開始します。
438
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.5
MB90930 シリーズ
17.5
LIN-UART の割込み
LIN-UART には , 受信割込みと送信割込みがあり , 次に示す要因で割込み要求を発生
させることができます。
• 受信データが受信データレジスタ (RDR) にセットされた場合 , または受信エラー
が発生した場合
• 送信データが送信データレジスタ (TDR) から送信用シフトレジスタに転送されて
送信が開始された場合
• LIN synch break 検出
それぞれの割込みは拡張インテリジェント I/O サービス (EI2OS) に対応しています。
■ LIN-UART の割込み
LIN-UART の割込み制御ビットと割込み要因は表 17.5-1 のようになっています。
表 17.5-1 LIN-UART の割込み制御ビットと割込み要因
割込み
送受信 /
要求フラグ
キャプチャ
ビット
0
1
2
3
RDRF
SSR
○
○
○
○
受信データの
RDR 書込み
ORE
SSR
○
○
○
○
オーバランエ
ラー
SSR:RIE
FRE
SSR
○
○
△
○
フレーミングエ
ラー
PE
SSR
○
×
△
×
パリティエラー
LBD
ESCR
×
×
×
○
LIN synch break
ESCR:LBIE
検出
ESCR:LBD への
"0" 書込み
TDRE
SSR
○
○
○
○
送信レジスタが SSR:TIE
空
送信データの書
込み
ICP0/1/6/7
ICS01/
ICS67
×
×
×
○
ICS01/
ICS67
ICP0/ICP1/ICP6/
ICP7 を
ディセーブル
×
LIN synch field の
1 回目の立下り
エッジ
ICS01:ICE0/1,
ICS67:ICE6/7
LIN synch field の
5 回目の立下り
エッジ
受信
送信
動作モード
フラグ
レジスタ
割込み要因
インプット
キャプチャ
ICP0/1/6/7
×
×
○
割込み要因
許可ビット
割込み要求
フラグのクリア
受信データの読
出し
受信エラーフラ
グクリアビット
(SCR:CRE) への
"1" 書込み
○ : 使用ビット
× : 未使用ビット
△ : ECCR: SSM=1 のときにのみ使用可能
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
439
第 17 章 LIN-UART
17.5
MB90930 シリーズ
● 受信割込み
以下に示す動作が受信モードで発生すると , シリアルステータスレジスタ (SSR) の各フ
ラグビットは "1" に設定されます。
データ受信完了
受信データがシリアル入力シフトレジスタから受信データレジスタ(RDR)に転送さ
れて読出し可能 (RDRF=1)。
オーバランエラー
RDRF=1 で , RDR が CPU によって読み出されずに , 次のシリアルデータを受信した
場合 (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) にする必要があります。
440
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.5
MB90930 シリーズ
● LIN synch field エッジ検出割込み
動作モード 3 で , LIN スレーブ動作をする場合に機能します。
LIN synch break 検出後 , 内部信号は LIN synch field の 1 回目の立下りエッジで "1" に
セットされ , 5 回目の立下りエッジ後に "0" にセットされます。内部信号をキャプチャ
(ICU0/ICU1/ICU6/ICU7) へ入力するようにキャプチャ側で設定 , かつ両方のエッジを検
出するように設定し , キャプチャ割込みが許可のときに割込みが発生します。
キャプチャで検出されたカウント値の差は , マスタのシリアルクロック 8 ビット分に相
当し , 新しいボーレートを計算することができます。
スタートビットの立下りエッジを検出すると,リロードカウンタは自動的に再スタート
します。
■ LIN-UART の割込みと EI2OS
表 17.5-2 LIN-UART の割込みと EI2OS
割込み制御レジスタ
チャネル
ベクタテーブルのアドレス
EI2OS
割込み番号
レジスタ名
アドレス
下位
上位
バンク
LIN-UART0 受信
#39(27H)
ICR14
0000BEH
FFFF60H
FFFF61H
FFFF62H
*1
LIN-UART0 送信
#40(28H)
ICR14
0000BEH
FFFF5CH
FFFF5DH
FFFF5EH
*2
LIN-UART1 受信
#37(25H)
ICR13
0000BDH
FFFF68H
FFFF69H
FFFF6AH
*1
LIN-UART1 送信
#38(26H)
ICR13
0000BDH
FFFF64H
FFFF65H
FFFF66H
*2
LIN-UART2 受信
#35(23H)
ICR12
0000BCH
FFFF70H
FFFF71H
FFFF72H
*1
LIN-UART2 送信
#36(24H)
ICR12
0000BCH
FFFF6CH
FFFF6DH
FFFF6EH
*2
LIN-UART3 受信
#24(18H)
ICR06
0000B6H
FFFF9CH
FFFF9DH
FFFF9EH
*3
LIN-UART3 送信
#26(1AH)
ICR07
0000B7H
FFFF94H
FFFF95H
FFFF96H
*2
*1: ICR12 ∼ ICR14 および割込みベクタを共有する割込み要因が使用されてない場合にのみ使用可能。受信エ
ラー検出可能。また , EI2OS 停止機能あり。
*2: ICR07, ICR13, ICR14 および割込みベクタを共有する割込み要因が使用されてな い場合にのみ使用可能。
*3: ICR06 および割込みベクタを共有する割込み要因が使用されてない場合にのみ使用可能。受信エラー検出可
能。EI2OS 停止機能あり。
■ LIN-UART の EI2OS 機能
LIN-UART には EI2OS 対応の回路があります。このため , 受信 / 送信の各割込みで別々
に EI2OS を起動することができます。
● 受信時
割込み制御レジスタを送信割込みやほかの UART と共有していますので , ほかの割込
みがイネーブルでない場合にのみ EI2OS を使用できます。
● 送信時
割込み制御レジスタを受信割込みやほかの UART と共有していますので , ほかの割込
みをイネーブルしていない場合にのみ EI2OS を使用できます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
441
第 17 章 LIN-UART
17.5
MB90930 シリーズ
受信割込み発生とフラグセットのタイミング
17.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) のデータは無効にな
ります。
図 17.5-2 に受信動作とフラグセットのタイミングを示します。
図 17.5-1 受信動作とフラグセットのタイミング
受信データ
( モード 0/3)
ST
D0
D1
D2
…
D5
D6
D7/P
SP
ST
受信データ
( モード 1)
ST
D0
D1
D2
…
D6
D7
AD
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 : ストップビット AD : モード 1 ( マルチプロセッサ ) アドレスデータ選択ビット
<注意事項>
図 17.5-2 はモード 0 におけるすべての受信動作を表している訳ではありません。"7P1" と
"8N1"(P=" 偶数パリティ " または " 奇数パリティ ") の例のみ示されています。
442
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 17 章 LIN-UART
17.5
図 17.5-2 ORE フラグセットタイミング
受信データ
RDRF
ORE
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
443
第 17 章 LIN-UART
17.5
MB90930 シリーズ
送信割込み発生とフラグセットのタイミング
17.5.2
送信時の割込みは , 送信データが送信データレジスタ (TDR) から送信用シフトレジ
スタに転送されて送信が開始されると発生します。
■ 送信割込み発生とフラグセットのタイミング
送信データレジスタ (TDR) に書き込まれたデータが送信シフトレジスタに転送されて
送信が開始されると , 次のデータの書込みが可能な状態 (SSR:TDRE=1) になります。そ
のとき , 送信割込みが許可 (SSR:TIE=1) されていると送信割込みが発生します。
TDRE ビットはリードオンリビットなので , 送信データレジスタ (TDR) へのデータ書
込みのみにより "0" にクリアされます。
図 17.5-3 に LIN-UART の各モードに設定したときの送信動作とフラグセットのタイミ
ングについて示します。
図 17.5-3 送信動作とフラグセットのタイミング
送信割込み発生
送信割込み発生
モード 0, 1 または 3 :
TDR 書込み
TDRE
シリアル出力
ST D0 D1 D2 D3 D4 D5 D6 D7 P SP ST D0 D1 D2 D3 D4 D5 D6 D7 P SP
AD
AD
送信割込み発生
送信割込み発生
モード 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 : データビット
AD : アドレスデータ選択ビット ( モード 1)
P : パリティ
SP : ストップビット
<注意事項>
図 17.5-3 はモード 0 におけるすべての送信動作については説明していません。"8p1"
(p=" 偶数パリティ " または " 奇数パリティ ") についてのみ示されています。
パリティビットはモード3の場合,もしくはモード2でSSM=0の場合には送信されません。
444
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 17 章 LIN-UART
17.5
■ 送信割込み要求発生タイミング
送信割込みが許可されている場合 (SSR:TIE=1) に TDRE フラグが "1" にセットされると ,
送信割込みが発生します。
<注意事項>
初期状態では , TDRE ビットが "1" になっていますので , 送信割込みを許可 (SSR:TIE=1)
にすると直ちに送信割込みが発生します。TDRE ビットのクリアは送信データレジスタ
(TDR) に新規データを書き込むしかありませんので , 送信割込み許可のタイミングには注
意してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
445
第 17 章 LIN-UART
17.6
17.6
MB90930 シリーズ
LIN-UART のボーレート
LIN-UART の送受信クロックソースは , 次のいずれかを選択できます。
• 専用ボーレートジェネレータ ( リロードカウンタ )
• 外部クロックをボーレートジェネレータに入力 ( リロードカウンタ )
• 外部クロック (SCKn 端子入力クロックの直接使用 )
■ UART ボーレート選択
ボーレートは次の 3 種類の中から 1 種類を選択できます。ボーレートの選択回路を図
17.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) してください。
446
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.6
MB90930 シリーズ
図 17.6-1 LIN-UART ボーレート選択回路
REST
スタートビット
立下りエッジ検出
リロード値 : v
セット
Rxc = 0?
受信
リロード
15 ビットリロードカウンタ
Rxc = v/2?
FF
受信クロック
0
リセット
1
リロード値 : v
CLK
0
SCKn
( 外部クロッ
ク入力 )
1
送信
15 ビットリロードカウンタ
カウンタ値 : TXC
EXT
セット
Txc = 0?
FF
リロード
OTO
0
リセット
Txc = v/2?
1
送信クロック
内部データバス
EXT
REST
OTO
SMRn
レジスタ
BGR14
BGR13
BGR12
BGR11
BGR10
BGR9
BGR8
BGRn1
レジスタ
BGR7
BGR6
BGR5
BGR4
BGR3
BGR2
BGR1
BGR0
BGRn0
レジスタ
n=0,1,2,3
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
447
第 17 章 LIN-UART
17.6
MB90930 シリーズ
ボーレート設定
17.6.1
ボーレートの設定を示します。また , シリアルクロック周波数の計算結果を示しま
す。
■ ボーレートの計算
2 つの 15 ビットリロードカウンタは , ボーレートジェネレータレジスタ 1, 0 (BGRn1,
BGRn0) で設定します。
ボーレートの計算式を以下に示します。
リロード値 :
v=
( φb ) − 1
v: リロード値
b: ボーレート
φ: マシンクロック , 外部クロック周波数
計算例
マシンクロック 32MHz, 内部クロック使用 , ボーレートを 19200 bps に設定する場合
には , 次のようになります。
リロード値 :
6
v=
× 10
( 3219200
) − 1 = 1665
よって実際のボーレートは下記のように計算できます。
b=
φ
(v + 1)
=
32 × 106
= 19207.6831
1666
<注意事項>
リロード値を "0" に設定するとリロードカウンタは停止します。そのため , 最低の分周比
は 2 になります。
非同期モードで送受信する場合には , 5 回オーバサンプリングして受信値を決定するため ,
リロード値を最低でも 4 に設定する必要があります。
448
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.6
MB90930 シリーズ
■ 各クロック速度のリロード値とボーレート
各クロック速度のリロード値とボーレートを , 表 17.6-1 に示します。
表 17.6-1 リロード値とボーレート
8 MHz
ボーレート
(bps)
リロード値
10 MHz
dev. リロード値
16 MHz
dev.
リロード値
20 MHz
dev. リロード値
32 MHz
dev. リロード値 dev.
4M
―
―
―
―
―
―
4
0
7
0
2M
―
―
4
0
7
0
9
0
15
0
1M
7
0
9
0
15
0
19
0
31
0
500000
15
0
19
0
31
0
39
0
63
0
460800
―
―
―
―
―
―
―
―
68
− 0.16
250000
31
0
39
0
63
0
79
0
127
0
230400
―
―
―
―
―
―
―
―
138
0.08
153600
51
− 0.16
64
− 0.16
103
− 0.16
129
− 0.16
207
− 0.16
125000
63
0
79
0
127
0
159
0
255
0
115200
68
− 0.64
86
0.22
138
0.08
173
0.22
277
0.08
76800
103
− 0.16
129
− 0.16
207
− 0.16
259
− 0.16
416
0.08
57600
138
0.08
173
0.22
277
0.08
346
− 0.06
554
− 0.01
38400
207
− 0.16
259
− 0.16
416
0.08
520
0.03
832
− 0.030
28800
277
0.08
346
< 0.01
554
− 0.01
693
− 0.06
1110
<0.01
19200
416
0.08
520
0.03
832
− 0.03
1041
0.03
1665
0.02
10417
767
< 0.01
959
< 0.01
1535
< 0.01
1919
< 0.01
3070
< 0.01
9600
832
0.04
1041
0.03
1666
0.02
2083
0.03
3332
<0.01
7200
1110
< 0.01
1388
< 0.01
2221
< 0.01
2777
< 0.01
4443
< 0.01
4800
1666
0.02
2082
− 0.02
3332
< 0.01
4166
< 0.01
6666
<0.01
2400
3332
< 0.01
4166
< 0.01
6666
< 0.01
8332
< 0.01
13332
<0.01
1200
6666
< 0.01
8334
0.02
13332
< 0.01
16666
< 0.01
26666
<0.01
600
13332
< 0.01
16666
< 0.01
26666
< 0.01
―
―
―
―
300
26666
< 0.01
―
―
―
―
―
―
―
―
周波数偏差 (dev.) の単位は % です。
<注意事項>
同期モード時の最大ボーレートは , マシンクロックの 1/5 です。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
449
第 17 章 LIN-UART
17.6
MB90930 シリーズ
■ 外部クロック
LIN-UART シリアルモードレジスタ (SMR) の EXT ビットに "1" を書き込むと , 外部ク
ロックが選択されます。ボーレートジェネレータで外部クロックは内部クロックと同
じように使用できます。
同期モード 2 でスレーブ動作を使用するときに , 1 対 1 外部クロック入力モード (SMR :
OTO=1) を選択します。このモードでは , SCKn に入力された外部クロックを UART の
シリアルクロックに直接入力します。
<注意事項>
外部クロック信号は LIN-UART で内部クロックに同期します。したがって , 分周不可能な
外部クロックの場合には不安定な信号状態になります。
■ リロードカウンタの動作
リロード値を 832 としたときの 2 つのリロードカウンタの動作を図 17.6-2 に示します。
図 17.6-2 リロードカウンタの動作
送受信クロック
リロード
カウンタ
001
000
832
831
830
829
828
827
413
412
411
410
リロードカウンタ値
送受信クロック
リロード
カウンタ
417
416
415
414
<注意事項>
シリアルクロック信号の立下りエッジは , リロード値を 2 で割った値 ( (v+1)/2 ) をカウン
トした後に発生します。
450
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
17.6.2
リロードカウンタ
第 17 章 LIN-UART
17.6
専用ボーレートジェネレータとして機能する 15 ビットのリロードカウンタです。外
部クロックまたは内部クロックより送受信クロックを生成します。また , 送信リ
ロードカウンタのカウント値をボーレートジェネレータレジスタ (BGR1, BGR0) よ
り読み出すことができます。
■ リロードカウンタの機能
リロードカウンタには , 送信リロードカウンタと受信リロードカウンタがあり , 専用
ボーレートジェネレータとして機能します。リロード値に対する 15 ビットレジスタか
ら構成されており , 外部クロックまたは内部クロックより送受信クロックを生成しま
す。また , 送信リロードカウンタのカウント値をボーレートジェネレータレジスタ
(BGR1, BGR0) より読み出すことができます。
● カウントの開始
ボーレートジェネレータレジスタ (BGR1, BGR0) にリロード値を書き込むと , リロード
カウンタはカウントを開始します。
● 再スタート
リロードカウンタは下記の条件で再スタートします。
送信 / 受信リロードカウンタ共通
• UART プログラマブルリセット (SMR:UPCL ビット )
• プログラマブル再スタート (SMR:REST ビット )
受信リロードカウンタ
• 非同期モードでのスタートビット立下りエッジ検出
シリアルモードレジスタ (SMR) の REST ビットを "1" にセットすると , 次のクロッ
クサイクルで 2 つのリロードカウンタは再スタートします。
この機能により送信リロードカウンタを簡易的なタイマとして利用することが可
能です。
本機能の使用例を図 17.6-3 に示します ( リロード値 100 の場合 ) 。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
451
第 17 章 LIN-UART
17.6
MB90930 シリーズ
図 17.6-3 リロードタイマの再スタートによる簡易タイマの使用例
MCU
クロック
リロード
カウンタ
クロック
出力
リセット
リロード値
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" にクリア
されずに再スタートします。
452
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.7
MB90930 シリーズ
17.7
LIN-UART の動作
LIN-UART は , モード 0 の双方向シリアル通信 , モード 1 のマスタ / スレーブマルチ
プロセッサ通信 , モード 2, 3 のマスタ / スレーブ双方向通信で動作します。
■ LIN-UART の動作
● 動作モード
LIN-UART の動作モードにはモード 0 ∼ 3 の 4 種類があり , 表 17.7-1 に示すように CPU
間の接続方式やデータ転送方式を選択することができます。
表 17.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" はマルチプロセッサモードで通信制御用に使用されるアドレス / データ形式選択ビット (AD) です。
<注意事項>
モード 1 でマスタ / スレーブ接続されたシステムにおいて , マスタとスレーブいずれの動
作にも対応しています。モード 3 では , 通信フォーマットが 8N1, LSB ファーストに固定
されます。
モード切換えを行った場合 , すべての送受信動作は打ち切られ , 次の動作待ち状態になり
ます。
■ CPU 間接続方式
外部クロック 1 対 1 接続 ( ノーマルモード ) とマスタ / スレーブ型接続 ( マルチプロ
セッサモード ) のどちらかを選択できます。どちらの方式でも , データ長 , パリティ有
無 , 同期方式などは , すべての CPU で統一しておく必要があり , 動作モードを次のよう
に選択します。
• 1 対 1 接続の場合 : 2 つの CPU で動作モード 0, 動作モード 2 のいずれかの同じ方式
を採用する必要があります。非同期方式では動作モード 0, 同期
方式では動作モード 2 を選択してください。また , 動作モード 2
では 1 つの CPU をマスタへ , もう 1 つの CPU をスレーブに設定
してください。
• マスタ / スレーブ型接続の場合 :
動作モード 1 を選択します。マスタ / スレーブシステムとして使
用してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
453
第 17 章 LIN-UART
17.7
MB90930 シリーズ
■ 同期方式
非同期方式において , 受信クロックは受信スタートビットの立下りエッジに同期しま
す。同期方式では , マスタのクロック信号またはマスタとして動作したときのクロック
信号によって同期させることができます。
■ 信号方式
NRZ(Non Return to Zero) 形式です。
■ 送受信許可
LIN-UART は送信と受信の動作をそれぞれ SCR:TXE ビットと SCR:RXE ビットによっ
て制御します。送信または受信をディセーブルに設定する場合は , 下記のように行って
ください。
• 受信をディセーブルする場合 , 受信動作中の場合には , 受信が終了するのを待ち , 受
信データレジスタ RDR を読み出してから行ってください。
• 送信をディセーブルする場合に送信動作中であれば , 送信動作が終了するのを待っ
てから行ってください。
454
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
17.7.1
非同期モード ( 動作モード 0, 1) の動作
第 17 章 LIN-UART
17.7
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])
図 17.7-1 に非同期モードの場合のデータフォーマットを示します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
455
第 17 章 LIN-UART
17.7
MB90930 シリーズ
図 17.7-1 送受信データフォーマット ( 動作モード 0, 1)
[ 動作モード 0]
ST D0
D1 D2 D3 D4 D5 D6 D7 SP SP
ST D0
D1 D2 D3 D4 D5 D6 D7 SP
ST D0
D1 D2 D3 D4 D5 D6 D7
P
SP 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
P なし
データ 8 ビット
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 AD SP SP
ST D0
D1 D2 D3 D4 D5 D6 D7 AD SP
ST D0
D1 D2 D3 D4 D5 D6 AD SP SP
ST D0
D1 D2 D3 D4 D5 D6 AD SP
P あり
[ 動作モード 1]
データ 8 ビット
データ 7 ビット
ST
SP
P
AD
: スタートビット
: ストップモード
: パリティビット
: アドレス / データ形式選択ビット
<注意事項>
シリアルステータスレジスタ (SSR) の BDS ビットを "1"(MSB ファースト ) に設定する場
合 , ビットは D7, D6, …D1, D0(P) の順序で処理されます。
456
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 17 章 LIN-UART
17.7
● 送信動作
シリアルステータスレジスタ (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) 場合
に有効となります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
457
第 17 章 LIN-UART
17.7
MB90930 シリーズ
● 使用クロック
内部クロックまたは外部クロックを使用します。ボーレートは , ボーレートジェネレー
タを選択 (SMR:EXT=0 または 1, OTO=0) してください。
● ストップビット
送信時に , 1 ビットまたは 2 ビットのストップビットを選択できます。
2 ビットのストッ
プビットを選択したときは , 両方のストップビットが受信時に検出されます。
最初のストップビットが検出されると受信データレジスタフルフラグビット
(SSR:RDRF) が "1" になります。その後 , スタートビットが検出されない場合には受信
バスアイドルフラグ (ECCR:RBI) が "1" になり , 受信動作がないことを示します。
● エラー検出
モード 0 では , パリティエラー , オーバランエラー , フレームエラーを検出できます。
モード 1 では , オーバラン , フレームエラーを検出できます。パリティエラーは検出で
きません。
● パリティ
パリティビットの付加 ( 送信時 ), 検出 ( 受信時 ) を設定できます。
パリティ許可ビット (SCR:PEN) でパリティの有無を , パリティ選択ビット (SCR:P) で
偶数 / 奇数パリティを選択できます。
動作モード 1 では , パリティを使用できません。
図 17.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 ファースト ) はシリアルステータスレジ
スタの BDS ビットで選択できます。
458
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.7
MB90930 シリーズ
17.7.2
同期モード ( 動作モード 2) の動作
LIN-UART を動作モード 2( ノーマルモード ) で使用する場合 , 転送方式はクロック
同期となります。
■ 同期モード ( 動作モード 2) の動作
● 送受信データフォーマット
同期モードでは , 8 ビットデータを送受信し , スタートビット , ストップビットの有無
を選択 (ECCR:SSM) できます。また , スタート / ストップあり (ECCR:SSM=1) のときに
パリティビットの有無を選択 (SCR:PEN) できます。
図 17.7-3 に同期モード使用時のデータフォーマットを示します。
図 17.7-3 送受信データフォーマット ( 動作モード 2)
送受信データ
(ECCR:SSM=0,SCR:PEN=0)
D0 D1 D2 D3 D4 D5 D6 D7
*
送受信データ
(ECCR:SSM=1,SCR:PEN=0)
ST D0 D1 D2 D3 D4 D5 D6 D7
SP
送受信データ
(ECCR:SSM=1,SCR:PEN=1)
ST D0
P
SP
*
D1 D2 D3 D4 D5 D6 D7
SP
SP
* : 2 ストップビットに設定 (SCR : SBL = 1) した場合
ST : スタートビット
SP : ストップビット
P : パリティビット
● クロック反転機能
拡張ステータス制御レジスタ ESCR の SCES ビットが "1" の場合にシリアルクロックは
反転します。スレーブモードではLIN-UARTは受信したシリアルクロックの立下りエッ
ジでデータをサンプリングします。マスタモードでは SCES ビットが "1" のときにマー
クレベルが "0" になることにご注意ください。
図 17.7-4 クロック反転時の送信データフォーマット
マークレベル
送受信クロック
(SCES = 0, CCO = 0):
送受信クロック
(SCES = 1, CCO = 0):
データの流れ (SSM = 1)
(パリティなし, 1ストップビットのとき)
マークレベル
ST
SP
データフレーム
● スタート / ストップビット
拡張通信制御レジスタ ECCR の SSM ビットが "1" の場合には , 非同期モードのように
スタートビットとストップビットが付加されます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
459
第 17 章 LIN-UART
17.7
MB90930 シリーズ
● クロックの供給
クロック同期モード ( ノーマル ) では , 送受信ビット数はクロックサイクル数と同じで
なければなりません。スタート / ストップビットが許可されている場合は追加された
スタート / ストップビット分まで一致している必要があります。
マスタモード (ECCR: MS = 0) でシリアルクロック出力許可 (SMR: SCKE=1) を選択し
た場合は ,送受信時には同期クロックが自動的に出力されます。スレーブモード (ECCR:
MS = 1) またはシリアルクロック出力禁止 (SMR: SCKE = 0) を選択した場合には , 送
受信データの各ビット分のクロックが外部から供給される必要があります。
送受信動作に関係ない場合にはクロック信号はマークレベル("H")に保たれる必要があ
ります。
ECCR の SCDE ビットを "1" に設定すると , 図 17.7-5 に示すように遅延した送信クロッ
クを出力します。本機能は , 受信側のデバイスが , クロックの立上りエッジ , または立
下りエッジでデータをサンプリングする場合に必要となります。
図 17.7-5 送信クロックの遅延 (SCDE=1)
送信データ書込み
受信データのサンプルエッジ(SCES=0)
マークレベル
送受信クロック
(通常)
マークレベル
送信クロック
(SCDE = 1)
マークレベル
送受信データ
0
1
1
0
LSB
1
0
0
データ
1
MSB
拡張ステータスレジスタ ESCR の SCES ビットが "1" の場合には UART のクロックは
反転し , 受信データをクロックの立下りエッジでサンプリングします。このとき , シリ
アルデータがクロック立下りタイミングで有効な値になる必要があります。
ESCR の CCO ビットが "1" の場合 , マスタモードでは , SCKn 端子のシリアルクロック
出力は連続供給されます。このモードでは , データフレームの開始と終了を明確にする
ために , スタートビット / ストップビットを付加してください (SSM = 1)。図 17.7-6 は
本機能の動作を示しています。
図 17.7-6 連続クロック供給 ( モード 2)
送受信クロック
(SCES = 0, CCO = 1):
送受信クロック
(SCES = 1, CCO = 1):
データの流れ (SSM = 1)
(パリティなし, 1 ストップビットのとき)
ST
SP
データフレーム
● エラー検出
スタートビット / ストップビットが有効でない場合 (ECCR:SSM=0) は , オーバランエ
ラーのみが検出されます。
460
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.7
MB90930 シリーズ
● 同期モードの通信設定
同期モードで通信を行うには下記の設定が必要です。
• ボーレートジェネレータレジスタ (BGR0/BGR1)
専用ボーレートリロードカウンタを必要な値に設定してください。
• シリアルモードレジスタ (SMR)
MD1, MD0 : "10B" ( モード 2)
SCKE :
"1"・・・専用ボーレートリロードカウンタを使用
"0"・・・外部クロックを入力
SOE :
"1"・・・送受信許可
"0"・・・受信のみ許可
• シリアル制御レジスタ (SCR)
RXE, TXE : どちらかのビットを "1" に設定
AD : アドレス / データ選択機能が使用されないため , 本ビットの値は無効です。
CL : 自動的に 8 ビット長に設定されます。本ビットの値は無効です。
CRE : "1"・・・受信エラーフラグはクリアされ , 送受信は中断されます。
--- SSM=0 の場合
PEN, P, SBL : パリティビット , ストップビットは使用されないため , 無効です。
--- SSM=1 の場合
PEN : "1"・・・パリティビット付加 / 検出 ,
"0"・・・パリティビット不使用
P
: "0"・・・偶数パリティ ,
"1"・・・奇数パリティ
SBL
: "1"・・・ストップビット長 2,
"0"・・・ストップビット長 1
• シリアルステータスレジスタ (SSR)
BDS : "0"・・・LSB ファースト ,
"1"・・・MSB ファースト
RIE : "1"・・・受信割込み許可 ,
"0"・・・受信割込み禁止
TIE
"0"・・・送信割込み禁止
: "1"・・・送信割込み許可 ,
• 拡張通信制御レジスタ (ECCR)
SSM : "0"・・・スタートビット / ストップビット不使用 ( 通常 )
"1"・・・スタートビット / ストップビット使用 ( 拡張機能 )
MS : "0"・・・マスタモード ( シリアルクロック出力 )
"1"・・・スレーブモード ( マスタデバイスからシリアルクロックを入力 )
<注意事項>
通信を開始するには , 送信データレジスタ (TDR) にデータを書き込んでください。
データの受信のみ行う場合は , シリアル出力を禁止 (SMR:SOE=0) に設定し , TDR にダ
ミーデータを書き込んでください。
連続クロックとスタート / ストップビットを許可にすることで , 非同期モードのような双
方向通信が可能となります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
461
第 17 章 LIN-UART
17.7
17.7.3
MB90930 シリーズ
LIN 機能 ( 動作モード 3) の動作
動作モード 3 において , LIN-UART は LIN マスタおよび LIN スレーブとして動作し
ます。
動作モード 3 ではデータフォーマットは 8N1-LSB ファーストに設定されます。
■ 非同期 LIN モード動作
● LIN マスタとしての動作
LIN モードではマスタがバス全体のボーレートを決定し , スレーブはマスタに同期しま
す。初期設定後にマスタが動作することでボーレートが要求する値に固定されます。拡
張通信制御レジスタ (ECCR) の LBR ビットに "1" を書き込むと , SOTn 端子から "L" レ
ベルが 13 ビット∼ 16 ビット出力されます。これは LIN メッセージの開始を示す LIN
synch break です。
シリアルステータスレジスタ (SSR) の TDRE フラグビットは "0" になり , break の後に
"1"(初期値)になります。
このとき, SSRのTIEビットが"1"の場合には送信割込みを出力
します。
送信されるLIN breakの長さはESCRのLBL0/LBL1ビットによって,下表のように設定さ
れます。
表 17.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 に書き込むことができます。
462
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.7
MB90930 シリーズ
● LIN スレーブとしての動作
LIN スレーブモードでは LIN-UART はマスタのボーレートに同期してください。受信
が禁止設定 (RXE=0) でも LIN break 割込みが許可設定 (LBIE=1) の場合には LIN-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% 以上の誤差を発生した場合には , ボーレートの設定を行わな
いでください。
LIN-UART と ICU の関係については ,「10.3.1 16 ビットインプットキャプチャ」, およ
び「10.3.2 16 ビットフリーランタイマ」を参照してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
463
第 17 章 LIN-UART
17.7
MB90930 シリーズ
● LIN Synch Break 検出割込みとフラグ
スレーブモードにおいて , LIN synch break が検出されると ESCR の LIN break 検出フラ
グ (LBD) が "1" になります。LIN break 割込みが許可の場合 (LBIE=1) には割込みが発
生します。
図 17.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 にのみ機能します。
図 17.7-8 は , 標準的な LIN メッセージの開始と LIN-UART の動作を示しています。
図 17.7-8 LIN スレーブモードでの UART の動作
シリアル
クロック
シリアル入力
(LIN バス )
CPU による LBR クリア
LBD
ICU 入力
(LSYN)
464
Synch break (14 ビット設定の場合 )
FUJITSU MICROELECTRONICS LIMITED
Synch field
CM44-10150-1
第 17 章 LIN-UART
17.7
MB90930 シリーズ
● LIN バスタイミング
図 17.7-9 LIN バスタイミングと 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)
IRQ (ICU)
IRQ クリア : ICU スタート
IRQ(ICU)
IRQ クリア : ボーレートを計算して設定
LBIE 禁止
受信許可
スタートビットの立下りエッジ
受信データ 1 バイト RDR に保存
CPU による RDR リード
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
465
第 17 章 LIN-UART
17.7
MB90930 シリーズ
シリアル端子直接アクセス
17.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 端子の値が読み出されます。
466
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.7
MB90930 シリーズ
17.7.5
双方向通信機能 ( ノーマルモード )
動作モード 0, 2 で通常のシリアル双方向通信をすることができます。動作モード 0
は非同期通信 , 動作モード 2 は同期通信の選択ができます。
■ 双方向通信機能
LIN-UART をノーマルモード ( 動作モード 0, 2) で動作させるには , 図 17.7-10 に示す設
定が必要です。
図 17.7-10 LIN-UART の動作モード 0, 2 の設定
bit 15 bit 14 bit 13 bit 12 bit 11 bit 10 bit 9 bit 8 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0
SCRn, SMRn
PEN
P
SBL CL
AD CRE RXE TXE MD1 MD0 OTO EXT REST UPCL SCKE SOE
モード 0
モード 2
SSRn, TDRn/RDRn
PE ORE FRE RDRF TDRE BDS RIE TIE
変換データを設定 ( 書込み時 )
受信データを保持 ( 読出し時 )
モード 0
モード 2
ESCRn, ECCRn
LBIE
LBD LBL1 LBL0 SOPE SIOP CCO SCES _
LBR MS SCDE SSM _
RBI TBI
モード 0
モード 2
: 使用ビット
: 不使用ビット
: "1" を設定
: "0" を設定
: SSM = 1 の場合に使用 ( 同期スタート / ストップビットモード )
: 自動的に正しく設定されるビット
n = 0, 1, 2, 3
● CPU 間接続
双方向通信では , 図 17.7-11 に示すように , 2 つの CPU を相互に接続します。
図 17.7-11 LIN-UART モード 2 の双方向通信の接続例
SOT
SOT
SIN
SCK
SIN
出力
入力
CPU-1 ( マスタ )
SCK
CPU-2 ( スレーブ )
● 通信手順
通信は , 送信データが準備できたときに送信側から任意なタイミングで開始します。受
信側で送信データを受け取ると , 定期的に ANS( 例では 1 バイトごと ) を返します。
図 17.7-12 に双方向通信フローチャートの一例を示します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
467
第 17 章 LIN-UART
17.7
MB90930 シリーズ
図 17.7-12 双方向通信フローチャートの例
( 送信側 )
( 受信側 )
スタート
スタート
動作モード設定
(0, 2 いずれか )
動作モード設定
( 送信側と合わす )
TDR に 1 バイトデータを
セットして通信
データ送信
受信データあり
NO
YES
NO
受信データあり
受信データ読出しと処理
YES
受信データ読出しと処理
データ送信
(ANS)
468
1 バイトデータ送信
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.7
MB90930 シリーズ
17.7.6
マスタ / スレーブ型通信機能
( マルチプロセッサモード )
動作モード 1 で , 複数 CPU のマスタ / スレーブモード接続による通信が可能です。
マスタまたはスレーブとして使用できます。
■ マスタ / スレーブ型通信機能
LIN-UART をマルチプロセッサモード ( 動作モード 1) で動作させるには , 図 17.7-13 に
示す設定が必要です。
図 17.7-13 LIN-UART の動作モード 1 の設定
bit 15 bit 14 bit 13 bit 12 bit 11 bit 10 bit 9 bit 8 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0
SCRn, SMRn
PEN
P
SBL
AD CRE RXE TXE MD1 MD0 OTO EXT REST UPCL SCKE SOE
CL
モード 1
SSRn, TDRn/RDRn
PE ORE FRE RDRF TDRE BDS RIE
変換データを設定 ( 書込み時 )
受信データを保持 ( 読出し時 )
TIE
モード 1
ESCRn, ECCRn
LBIE LBD LBL1 LBL0 SOPE SIOP CCO SCES
_
LBR MS SCDE SSM
_
RBI
TBI
モード 1
: 使用ビット
: 不使用ビット
: "1" を設定
: "0" を設定
: 自動的に正しく設定されるビット
n = 0, 1, 2, 3
● CPU 間接続
マスタ / スレーブ型通信では , 図 17.7-14 に示すように 2 本の共通通信ラインに 1 つの
マスタ CPU と複数のスレーブ CPU を接続して通信システムを構成します。LIN-UART
はマスタ CPU またはスレーブ CPU のどちらでも使用できます。
図 17.7-14 LIN-UART のマスタ / スレーブ型通信の接続例
SOT
SIN
マスタ CPU
SOT
SIN
スレーブ CPU# 0
CM44-10150-1
SOT
SIN
スレーブ CPU# 1
FUJITSU MICROELECTRONICS LIMITED
469
第 17 章 LIN-UART
17.7
MB90930 シリーズ
● 機能選択
マスタ / スレーブ型通信では , 表 17.7-3 に示すように動作モードとデータ転送方式を選
択してください。
表 17.7-3 マスタ / スレーブ型通信機能の選択
動作モード
マスタ
CPU
スレーブ
CPU
アドレス
送受信
モード 1
(AD ビット
送受信 )
モード 1
(AD ビット
送受信 )
データ
送受信
データ
パリティ
同期方式
ストップ
ビット
ビット
方向
なし
非同期
1 ビットまたは
2 ビット
LSB ファースト
または
MSB ファースト
AD=1
+
7 ビットまたは
8 ビットアドレス
AD=0
+
7 ビットまたは
8 ビットデータ
● 通信手順
通信はマスタ CPU がアドレスデータを送信することによって始まります。アドレス
データとは AD ビットを "1" としたデータで , 通信先となるスレーブ CPU を選択しま
す。各スレーブ CPU はプログラムでアドレスデータを判断し , 割り当てられたアドレ
スと一致した場合にマスタ CPU との通信をします。
図 17.7-15 にマスタ / スレーブ型通信 ( マルチプロセッサモード ) のフローチャートを
示します。
470
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 17 章 LIN-UART
17.7
MB90930 シリーズ
図 17.7-15 マスタ / スレーブ型通信フローチャート
( マスタ CPU)
( スレーブ CPU)
スタート
スタート
動作モード 1 に設定
動作モード 1 に設定
SINn 端子をシリアルデータ
入力に設定
SOTn 端子をシリアルデータ
出力に設定
SINn 端子をシリアルデータ
入力に設定
SOTn 端子をシリアルデータ
出力に設定
7 または 8 データビット設定
1 または 2 ストップビット
設定
7 または 8 データビット設定
1 または 2 ストップビット
設定
AD ビットに "1" をセット
送受信動作許可
受信バイト
送受信動作許可
スレーブへアドレスを送信
AD ビット = 1
NO
YES
スレーブアドレス
が一致
AD ビットに "0" をセット
YES
マスタ CPU と通信
スレーブ CPU と通信
通信終了 ?
NO
NO
通信終了 ?
NO
YES
YES
ほかのスレーブ
CPU と通信
NO
YES
送受信動作禁止
エンド
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
471
第 17 章 LIN-UART
17.7
17.7.7
MB90930 シリーズ
LIN 通信機能
LIN-UART 通信で , LIN デバイスは LIN マスタシステムもしくは LIN スレーブシステ
ムに使用できます。
■ LIN マスタ / スレーブ型通信機能
LIN-UART の LIN 通信モード ( 動作モード 3) に必要な設定を図 17.7-16 に示します。
図 17.7-16 LIN-UART の動作モード 3(LIN) 設定
PEN
P
SBL CL
AD CRE RXE TXE MD1 MD0 OTO EXT
REST UPCL SCKE
SOE
モード 3
PE ORE FRE
RDRF TDRE
変換データを設定 ( 書込み時 )
受信データを保持 ( 読出し時 )
BDS RIE TIE
モード 3
ESCRn, ECCRn
LBIE LBD LBL1 LBL0 SOPE
SIOP
CCO SCES
_
LBR MS
SCDE SSM
_
RBI TBI
モード 3
: 使用ビット
: 不使用ビット
: "1" を設定
: "0" を設定
: 自動的に正しく設定されるビット
n = 0, 1, 2, 3
● LIN デバイス接続
1 つの LIN マスタと LIN スレーブの通信システムを 図 17.7-17 に示します。
LIN-UART は , LIN マスタまたは LIN スレーブとして動作することができます。
図 17.7-17 LIN バスシステムの接続例
SOT
SOT
LIN バス
SIN
LIN マスタ
472
SIN
トランシーバ
トランシーバ
LIN スレーブ
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
17.7.8
LIN-UART の LIN 通信フローチャート例
( 動作モード 3)
第 17 章 LIN-UART
17.7
LIN-UART の LIN 通信フローチャート例を示します。
■ LIN マスタデバイス
図 17.7-18 LIN マスタフローチャート
スタート
初期設定 :
動作モードを 3 に設定
シリアルデータ出力許可 , ボーレート設定
Synch break 長設定
TXE = 1, TIE = 0, RXE = 1, RIE = 1
NO
メッセージ ?
( 受信 ) YES
YES
Wake up ?
(0x80 受信 )
NO
Data Field
受信 ?
送信 Data 1 セット
TDR = Data 1
送信割込み許可
RDRF = 1
受信割込み
RXE = 0
Synch Break 割込み許可
Sync Break 送信 :
ECCR: LBR = 1
Synch Field 送信 :
TDR = 0x55
送信 )
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 リセットを実行してください。
( 注意事項 ) 各処理の中でエラー検出を行い , 適切に対処してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
473
第 17 章 LIN-UART
17.7
MB90930 シリーズ
■ LIN スレーブデバイス
図 17.7-19 LIN スレーブフローチャート
スタート
初期設定 :
動作モードを 3 に設定
シリアルデータ出力許可
TXE = 1, TIE = 0, RXE = 0, RIE = 1
LIN-UART と ICU の接続
受信禁止
ICU 割込み許可
Synch Break 割込み許可
( 受信 )
LBD = 1
Synch Break 割込み
Synch Break 検出クリア
ESCR: LBD = 0
Synch Break 割込み禁止
YES
RDRF = 1
受信割込み
Data Field
受信 ?
NO
( 送信 )
Data 1 受信 *1
送信 Data 1 セット
TDR = Data 1
送信割込み許可
RDRF = 1
受信割込み
ICU 割込み
Data N 受信 *
TDRE = 1
送信割込み
1
ICU データ読出し
ICU 割込みフラグクリア
送信 Data N セット
TDR = Data N
送信割込み禁止
受信禁止
ICU 割込み
RDRF = 1
受信割込み
ICU データ読出し
ボーレート調整
受信許可
ICU 割込みフラグクリア
ICU 割込み禁止
Data 1 受信 *1
Data 1 読出し
RDRF = 1
受信割込み
RDRF = 1
受信割込み
Data N 受信 *1
Data N 読出し
受信禁止
Identify Field 受信 *1
スリープ
モード ?
NO
YES
エラーなし ?
ウェイク
アップ受信 ?
YES
NO
NO
エラー処理 *2
YES
ウェイク
アップ送信 ?
NO
YES
ウェイクアップコード送信
*1: エラーが発生した場合 , エラー処理を行ってください。
*2: ・ FRE, ORE が "1" になっていた場合 , SCR: CRE ビットに "1" を書き込み , エラーフラグをクリアしてください。
・ ESCR: LBD ビットが "1" になっていた場合 , UART リセットを実行してください。
( 注意事項 ) 各処理の中でエラー検出を行い , 適切に対処してください。
474
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
17.8
LIN-UART 使用上の注意
第 17 章 LIN-UART
17.8
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 を受信する前にボーレートを設定してください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
475
第 17 章 LIN-UART
17.8
MB90930 シリーズ
● プログラムの互換性
LIN-UART は古い FJ-UART と類似していますが , プログラムの互換性はありません。
プログラミングの型は同じときもありますが , レジスタの構造は異なります。さらに ,
ボーレートの設定はあらかじめ設定された値を選出する代わりにリロード値によって
決定されます。
● バスアイドル機能
バスアイドル機能は同期モード 2 では使用できません。
● AD ビット ( シリアル制御レジスタ (SCR) : アドレス / データ形式選択ビット )
本ビットを使用する際には下記の点に注意してください。
本ビットは書込み時は送信のアドレス / データ選択設定を行い , 読出し時は最後に受信
した AD ビットの値を返します。内部的には送信・受信の AD ビット値は個別のレジ
スタに保存されています。
リードモディファイライト (RMW) 系命令使用時には送信ADビット値が読み出されま
す。したがって SCR のほかのビットにビットアクセスした場合 , AD ビットに間違っ
た値が書き込まれる可能性があります。
上記の理由により , 本ビットの設定は送信前の最後の SCR レジスタアクセス時に行う
必要があります。もしくは , SCR 書込み時は常にバイトアクセスすることで上記の問
題を防ぐことができます。
● LIN-UART ソフトウェアリセット
シリアル制御レジスタ (SCR) の TXE ビットが "0" のときに , LIN-UART ソフトウェア
リセット (SMR: UPCL = 1) を実行してください。
● Synch Break 検出
モード 3 (LIN 動作 ) 時 , シリアル入力が 11 ビット幅以上 "0" になると拡張ステータス制
御レジスタ (ESCR) の LBR ビットは "1" になり (Synch Break 検出 ), LIN-UART は Synch
Field 待ちになります。このため , Synch Break 以外のところでシリアル入力が 11 ビット
以上 "0" になった場合には LIN-UART は Synch Break が入力されたものと認識 (LBD=1)
し , Synch Field 待ちになります。
この場合には LIN-UART リセット (SMR: UPCL = 1) を実行してください。
476
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章
CAN コントローラ
CAN コントローラの概要と機能について説明しま
す。
18.1 CAN コントローラの特長
18.2 CAN コントローラのブロックダイヤグラム
18.3 CAN コントローラのレジスタ分類
18.4 CAN コントローラの送信
18.5 CAN コントローラの受信
18.6 CAN コントローラの使用方法
18.7 メッセージバッファ (x) による送信方法
18.8 メッセージバッファ (x) による受信方法
18.9 マルチレベルメッセージバッファの構成の決定
18.10 CAN ウェイクアップ機能
18.11 CAN コントローラ使用上の注意
18.12 CAN プログラム例
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
477
第 18 章 CAN コントローラ
18.1
18.1
MB90930 シリーズ
CAN コントローラの特長
CAN コントローラは , 16 ビットマイクロコンピュータ (F2MC-16LX) 内に一体化さ
れたモジュールです。CAN ( コントローラエリアネットワーク ) は自動車用コント
ローラ間のシリアル通信用の標準プロトコルで , 工業分野で広く使用されているも
のです。
■ CAN コントローラの特長
CAN コントローラの特長は次のとおりです。
• CAN 仕様バージョン 2.0 パート A および B に適合しています。
標準フレームおよび拡張フレームフォーマットでの送信 / 受信をサポートしていま
す。
• リモートフレームの受信によるデータフレームの送信をサポートしています。
• 16 個の送信 / 受信メッセージバッファ ,
29 ビットの ID および 8 バイトデータ ,
マルチレベルメッセージバッファ構造
• フルビット比較 , フルビットマスクおよび部分的ビットマスクフィルタリングをサ
ポートしています。
標準フレームまたは拡張フレームフォーマットのいずれかで 2 個のアクセプタンス
マスクレジスタを提供します。
• ビット速度は , 10kbps ∼ 1Mbps でプログラマブルです (1Mbps でご使用の場合 , マ
シンクロックは 8MHz 以上で動作する必要があります ) 。
• CAN ウェイクアップ機能
478
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.2
MB90930 シリーズ
18.2
CAN コントローラのブロックダイヤグラム
図 18.2-1 に , CAN コントローラのブロックダイヤグラムを示します。
■ CAN コントローラのブロックダイヤグラム
図 18.2-1 CAN コントローラのブロックダイヤグラム
2
F MC-16LXバス
クロック
PSC
PR
BTR
PH
RSJ
TOE
TS
RS
CSR HALT
NIE
NT
NS1.0
TQ(動作クロック)
プリスケーラ
1~64周波数分割
ノードステータス
変化割込み発生
ビットタイミング発生
エラー
制御
送信/受信
シーケンサ
BVALR
TBFXクリア 送信バッファX
判定
TBFX
エラー
フレーム
発生
アクセプ
データ
タンス
カウンタ フィルタ
過負荷
フレーム
発生
制御
TDLC RDLC IDSEL
TBFX
BITER, STFER,
CRCER, FRMER,
ACKER
TCANR
TIER
RCR
RIER
RPTRR
ROVRR
TBFx, セット, クリア
送信完了
送信完了
割込み発生
割込み
RBFx, セット
CRC発生
CRCER
AMR1
IDR0~IDR15,
DLCR0~DLCR15,
DTR0~DTR15,
RAM
CRC発生/
エラーチェック
受信シフト
レジスタ
STFER
デスタッフィング/
スタッフィング
エラーチェック
RBFx, セット IDSEL
ARBLOST
AMSR
AMR0
ACK発生
TDLC
RDLC
受信完了
受信完了
割込み発生
割込み
RBFx, TBFX, セット, クリア
TX
スタッ
フィング
送信シフト
レジスタ
RFWTR
出力
ドライバ
ARBLOST
TRTRR
TCR
IDLE, SUSPND,
送信, 受信,
ERR, OVRLD
バス
ステート
マシン
ノード
ステータス
変化割込み
RTEC
TREQR
SYNC, TSEG1, TSEG2
0
1
アクセプ
タンス
フィルタ
RAM
アドレス発生
BITER
受信バッファ
x判定
ACKER
RBFx,
FRMER
アービトレー
ションチェック
ビットエラー
チェック
確認エラー
チェック
フォームエラー
チェック
PH1
入力
ラッチ
RX
RBFx, TBFx, RDLC, TDLC, IDSEL
LEIR
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
479
第 18 章 CAN コントローラ
18.3
18.3
MB90930 シリーズ
CAN コントローラのレジスタ分類
CAN コントローラのレジスタは , 次の 4 種類から構成されます。
• 全体コントロールレジスタ
• メッセージバッファコントロールレジスタ
• メッセージバッファ
• CAN ウェイクアップ制御レジスタ
■ 全体コントロールレジスタ
全体コントロールレジスタには , 次の 4 種類があります。
• 制御ステータスレジスタ (CSR)
• ラストイベント表示レジスタ (LEIR)
• 受信 / 送信エラーカウンタ (RTEC)
• ビットタイミングレジスタ (BTR)
表 18.3-1 に全体コントロールレジスタの一覧を示します。
表 18.3-1 全体コントロールレジスタの一覧
アドレス
レジスタ
略称
アクセス
初期値
制御ステータス
レジスタ
CSR
(R/W, R)
00---000B
0----0-1B
ラストイベント
表示レジスタ
LEIR
(R/W)
--------B
000-0000B
受信 / 送信エラー
カウンタ
RTEC
(R)
00000000B
00000000B
ビットタイミング
レジスタ
BTR
(R/W)
-1111111B
11111111B
CAN1
003D00H
003D01H
003D02H
003D03H
003D04H
003D05H
003D06H
003D07H
480
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
■ メッセージバッファコントロールレジスタ
メッセージバッファコントロールレジスタには , 次の 14 種類のレジスタがあります。
• メッセージバッファ有効レジスタ (BVALR)
• IDE レジスタ (IDER)
• 送信要求レジスタ (TREQR)
• 送信 RTR レジスタ (TRTRR)
• リモートフレーム受信待機レジスタ (RFWTR)
• 送信解除レジスタ (TCANR)
• 送信完了レジスタ (TCR)
• 送信割込み許可レジスタ (TIER)
• 受信完了レジスタ (RCR)
• リモート要求受信レジスタ (RRTRR)
• 受信オーバランレジスタ (ROVRR)
• 受信割込み許可レジスタ (RIER)
• アクセプタンスマスク選択レジスタ (AMSR)
• アクセプタンスマスクレジスタ 0 および 1 (AMR0, AMR1)
表 18.3-2 にメッセージバッファコントロールレジスタの一覧を示します。
表 18.3-2 メッセージバッファコントロールレジスタの一覧 (1 / 2)
アドレス
レジスタ
略称
アクセス
初期値
メッセージバッファ BVALR
有効レジスタ
(R/W)
00000000B
00000000B
送信要求レジスタ
TREQR
(R/W)
00000000B
00000000B
送信解除レジスタ
TCANR
(W)
00000000B
00000000B
送信完了レジスタ
TCR
(R/W)
00000000B
00000000B
受信完了レジスタ
RCR
(R/W)
00000000B
00000000B
リモート要求受信レ RRTRR
ジスタ
(R/W)
00000000B
00000000B
受信オーバランレジ ROVRR
スタ
(R/W)
00000000B
00000000B
CAN1
000070H
000071H
000072H
000073H
000074H
000075H
000076H
000077H
000078H
000079H
00007AH
00007BH
00007CH
00007DH
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
481
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
表 18.3-2 メッセージバッファコントロールレジスタの一覧 (2 / 2)
アドレス
レジスタ
略称
アクセス
初期値
受信割込み許可レジ RIER
スタ
(R/W)
00000000B
00000000B
IDE レジスタ
IDER
(R/W)
XXXXXXXXB
XXXXXXXXB
送信 RTR レジスタ
TRTRR
(R/W)
00000000B
00000000B
リモートフレーム
受信待機レジスタ
RFWTR
(R/W)
XXXXXXXXB
XXXXXXXXB
送信割込み許可
レジスタ
TIER
(R/W)
00000000B
00000000B
CAN1
00007EH
00007FH
003D08H
003D09H
003D0AH
003D0BH
003D0CH
003D0DH
003D0EH
003D0FH
003D10H
XXXXXXXXB
XXXXXXXXB
003D11H
アクセプタンス
AMSR
003D12H マスク選択レジスタ
(R/W)
XXXXXXXXB
XXXXXXXXB
003D13H
003D14H
003D15H
003D16H
アクセプタンス
マスクレジスタ 0
XXXXXXXXB
XXXXXXXXB
AMR0
(R/W)
XXXXX---B
XXXXXXXXB
003D17H
003D18H
003D19H
003D1AH
003D1BH
482
アクセプタンス
マスクレジスタ 1
XXXXXXXXB
XXXXXXXXB
AMR1
(R/W)
XXXXX---B
XXXXXXXXB
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
■ メッセージバッファ
メッセージバッファには , 次の 3 種類があります。
• ID レジスタ x (x=0 ∼ 15) (IDRx)
• DLC レジスタ x (x=0 ∼ 15) (DLCRx)
• データレジスタ x (x=0 ∼ 15) (DTRx)
表 18.3-3 にメッセージバッファ (ID レジスタ ) の一覧を , 表 18.3-4 にメッセージバッ
ファ (DLC レジスタ ) の一覧を , 表 18.3-5 にメッセージバッファ ( データレジスタ ) の
一覧を示します。
表 18.3-3 メッセージバッファ (ID レジスタ ) の一覧 (1 / 3)
アドレス
レジスタ
略称
アクセス
初期値
−
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
CAN1
003B00H ∼
汎用 RAM
003B1FH
003B20H
XXXXXXXXB
XXXXXXXXB
003B21H
003B22H
ID レジスタ 0
IDR0
(R/W)
XXXXX---B
XXXXXXXXB
003B23H
003B24H
XXXXXXXXB
XXXXXXXXB
003B25H
003B26H
ID レジスタ 1
IDR1
(R/W)
XXXXX---B
XXXXXXXXB
003B27H
003B28H
XXXXXXXXB
XXXXXXXXB
003B29H
003B2AH
ID レジスタ 2
IDR2
(R/W)
XXXXX---B
XXXXXXXXB
003B2BH
003B2CH
XXXXXXXXB
XXXXXXXXB
003B2DH
003B2EH
ID レジスタ 3
IDR3
(R/W)
XXXXX---B
XXXXXXXXB
003B2FH
003B30H
XXXXXXXXB
XXXXXXXXB
003B31H
003B32H
003B33H
CM44-10150-1
ID レジスタ 4
IDR4
(R/W)
XXXXX---B
XXXXXXXXB
FUJITSU MICROELECTRONICS LIMITED
483
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
表 18.3-3 メッセージバッファ (ID レジスタ ) の一覧 (2 / 3)
アドレス
レジスタ
略称
アクセス
初期値
CAN1
003B34H
XXXXXXXXB
XXXXXXXXB
003B35H
003B36H
ID レジスタ 5
IDR5
(R/W)
XXXXX---B
XXXXXXXXB
003B37H
003B38H
XXXXXXXXB
XXXXXXXXB
003B39H
003B3AH
ID レジスタ 6
IDR6
(R/W)
XXXXX---B
XXXXXXXXB
003B3BH
003B3CH
XXXXXXXXB
XXXXXXXXB
003B3DH
003B3EH
ID レジスタ 7
IDR7
(R/W)
XXXXX---B
XXXXXXXXB
003B3FH
003B40H
XXXXXXXXB
XXXXXXXXB
003B41H
003B42H
ID レジスタ 8
IDR8
(R/W)
XXXXX---B
XXXXXXXXB
003B43H
003B44H
003B45H
003B46H
ID レジスタ
9
XXXXXXXXB
XXXXXXXXB
IDR9
(R/W)
XXXXX---B
XXXXXXXXB
003B47H
003B48H
003B49H
003B4AH
ID レジスタ
10
XXXXXXXXB
XXXXXXXXB
IDR10
(R/W)
XXXXX---B
XXXXXXXXB
003B4BH
003B4CH
003B4DH
003B4EH
003B4FH
484
ID レジスタ
11
XXXXXXXXB
XXXXXXXXB
IDR11
(R/W)
XXXXX---B
XXXXXXXXB
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
表 18.3-3 メッセージバッファ (ID レジスタ ) の一覧 (3 / 3)
アドレス
レジスタ
略称
アクセス
初期値
CAN1
003B50H
003B51H
003B52H
ID レジスタ
12
XXXXXXXXB
XXXXXXXXB
IDR12
(R/W)
XXXXX---B
XXXXXXXXB
003B53H
003B54H
003B55H
003B56H
ID レジスタ
13
XXXXXXXXB
XXXXXXXXB
IDR13
(R/W)
XXXXX---B
XXXXXXXXB
003B57H
003B58H
003B59H
003B5AH
ID レジスタ
14
XXXXXXXXB
XXXXXXXXB
IDR14
(R/W)
XXXXX---B
XXXXXXXXB
003B5BH
003B5CH
003B5DH
003B5EH
003B5FH
CM44-10150-1
ID レジスタ
15
XXXXXXXXB
XXXXXXXXB
IDR15
(R/W)
XXXXX---B
XXXXXXXXB
FUJITSU MICROELECTRONICS LIMITED
485
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
表 18.3-4 メッセージバッファ (DLC レジスタ ) の一覧 (1 / 2)
アドレス
レジスタ
略称
アクセス
初期値
CAN1
003B60H
003B61H
003B62H
003B63H
003B64H
003B65H
003B66H
003B67H
003B68H
003B69H
003B6AH
003B6BH
003B6CH
003B6DH
003B6EH
003B6FH
003B70H
003B71H
003B72H
003B73H
003B74H
003B75H
003B76H
003B77H
003B78H
003B79H
486
DLC レジスタ
0
DLCR0
(R/W)
---- XXXXB
DLC レジスタ
1
DLCR1
(R/W)
---- XXXXB
DLC レジスタ
2
DLCR2
(R/W)
---- XXXXB
DLC レジスタ
3
DLCR3
(R/W)
---- XXXXB
DLC レジスタ
4
DLCR4
(R/W)
---- XXXXB
DLC レジスタ
5
DLCR5
(R/W)
---- XXXXB
DLC レジスタ
6
DLCR6
(R/W)
---- XXXXB
DLC レジスタ
7
DLCR7
(R/W)
---- XXXXB
DLC レジスタ
8
DLCR8
(R/W)
---- XXXXB
DLC レジスタ
9
DLCR9
(R/W)
---- XXXXB
DLC レジスタ
10
DLCR10
(R/W)
---- XXXXB
DLC レジスタ
11
DLCR11
(R/W)
---- XXXXB
DLC レジスタ
12
DLCR12
(R/W)
---- XXXXB
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
表 18.3-4 メッセージバッファ (DLC レジスタ ) の一覧 (2 / 2)
アドレス
レジスタ
略称
アクセス
初期値
CAN1
003B7AH
003B7BH
003B7CH
003B7DH
003B7EH
003B7FH
CM44-10150-1
DLC レジスタ
13
DLCR13
(R/W)
---- XXXXB
DLC レジスタ
14
DLCR14
(R/W)
---- XXXXB
DLC レジスタ
15
DLCR15
(R/W)
---- XXXXB
FUJITSU MICROELECTRONICS LIMITED
487
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
表 18.3-5 メッセージバッファ ( データレジスタ ) の一覧 (1 / 2)
アドレス
レジスタ
略称
アクセス
初期値
データレジスタ
0 (8 バイト )
DTR0
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
データレジスタ
∼
1 (8 バイト )
003B8FH
DTR1
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
データレジスタ
2 (8 バイト )
DTR2
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
データレジスタ
∼
3 (8 バイト )
003B9FH
DTR3
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
DTR4
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
DTR5
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
DTR6
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
DTR7
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
DTR8
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
DTR9
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
DTR10
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
DTR11
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
CAN1
003B80H
∼
003B87H
003B88H
003B90H
∼
003B97H
003B98H
003BA0H
データレジスタ
∼
4 (8 バイト )
003BA7H
003BA8H
データレジスタ
∼
5 (8 バイト )
003BAFH
003BB0H
データレジスタ
∼
6 (8 バイト )
003BB7H
003BB8H
データレジスタ
∼
7 (8 バイト )
003BBFH
003BC0H
データレジスタ
∼
8 (8 バイト )
003BC7H
003BC8H
データレジスタ
∼
9 (8 バイト )
003BCFH
003BD0H
データレジスタ
∼
10 (8 バイト )
003BD7H
003BD8H
データレジスタ
∼
11 (8 バイト )
003BDFH
488
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
表 18.3-5 メッセージバッファ ( データレジスタ ) の一覧 (2 / 2)
アドレス
レジスタ
略称
アクセス
初期値
DTR12
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
DTR13
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
DTR14
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
DTR15
(R/W)
XXXXXXXXB ∼
XXXXXXXXB
CAN1
003BE0H
データレジスタ
∼
12 (8 バイト )
003BE7H
003BE8H
データレジスタ
∼
13 (8 バイト )
003BEFH
003BF0H
データレジスタ
∼
14 (8 バイト )
003BF7H
003BF8H
データレジスタ
∼
15 (8 バイト )
003BFFH
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
489
第 18 章 CAN コントローラ
18.3
18.3.1
MB90930 シリーズ
制御ステータスレジスタ (CSR)
制御ステータスレジスタ (CSR) に対しては , ビット操作命令 ( リードモディファイ
ライト (RMW) 系命令 ) を実行することは禁止されています。
■ 制御ステータスレジスタ (CSR) のビット構成
図 18.3-1 に制御ステータスレジスタ (CSR) のビット構成を示します。
図 18.3-1 制御ステータスレジスタ (CSR) のビット構成
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
TS
R
0
RS
R
0
−
−
−
−
−
−
−
−
−
NT
R/W
0
NS1
R
0
NS0
R
1
アドレス :
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
003D00H (CAN1)
TOE
R/W
0
−
−
−
−
−
−
−
−
−
−
−
−
NIE
R/W
0
−
−
−
HALT
R/W
1
アドレス :
003D01H (CAN1)
←初期値
←初期値
R/W: リード / ライト可能
R:
リードオンリ
−:
未定義
[bit 15] TS: 送信ステータスビット
このビットは , メッセージが送信中であるかどうかを示します。
• 0: メッセージは送信されていません。
• 1: メッセージが送信されています。
このビットは , エラーフレームおよびオーバロードフレームが送信されている間も
"0" です。
[bit 14] RS: 受信ステータスビット
このビットは , メッセージが受信されているかどうかを示します。
• 0: メッセージは受信されていません。
• 1: メッセージは受信されています。
メッセージがバス上にある間 , このビットは "1" になります。このため , このビット
はメッセージが送信されている間も "1" になります。このビットは必ずしも , 受信
メッセージがアクセプタンスフィルタを通って通過したかどうかを示すものでは
ありません。結果として , このビットが "0" のときはバス動作は停止している
(HALT=0) か , バスはインタミッション / バスアイドルにあるまたはエラー / オーバ
ロードフレームがバス上にあることを意味します。
[bit 10] NT: ノードステータス遷移フラグ
もしノードステータスがインクリメントに変化し , またはバスオフからエラーアク
ティブに変化してもこのビットは "1" になります。すなわち , NT ビットは , ノード
ステータスが以下のように変化したときに "1" にセットされます。括弧内の数字は
NS1 ビットおよび NS0 ビットの値を示します。
• エラーアクティブ ("00B") からワーニング ("01B") に
490
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
• ワーニング ("01B") からエラーパッシブ ("10B") に
• エラーパッシブ ("10B") からバスオフ ("11B") に
• バスオフ ("11B") からエラーアクティブ ("00B") に
ノードステータス遷移割込み許可ビット (NIE) が "1" のときに割込みが発生します。
"0" を書き込むと , NT ビットが "0" にセットされます。NT ビットに "1" を書き込ん
でも無視されます。リードモディファイライト (RMW) 系命令が実行されたときに
"1" が読み出されます。
[bit 9, bit8] NS1, NS0: ノードステータスの bit1 および bit0
NS1, NS0 ビットは , 現在のノードステータスを表します。
この関係を表 18.3-6 に示します。
表 18.3-6 NS1 および NS0 とノードステータスの対応
NS1
NS0
0
0
エラーアクティブ
0
1
ワーニング ( エラーアクティブ )
1
0
エラーパッシブ
1
1
バスオフ
ノードステータス
<注意事項>
ワーニング ( エラーアクティブ ) は , ノードステータスに対する CAN 仕様 2.0B における
エラーアクティブに含まれますが , 送信エラーカウンタまたは受信エラーカウンタが 96
を超えたことを表します。ノードステータスの遷移図を図 18.3-2 に示します。
図 18.3-2 ノードステータス遷移図
ハードウェアリセット
REC :受信エラーカウンタ
TEC :送信エラーカウンタ
REC≧96
または
TEC≧96
ワーニング
エラー
アクティブ
レジスタ(SCR)のHALTビットに"0"
が書き込まれた後, 連続的な11ビット
ハイレベル(リセッシブビット)が
受信入力端子(RX)に128回入力
REC<96
および
TEC<96
REC≧128
または
TEC≧128
エラー
パッシブ
CM44-10150-1
REC<128
または
TEC<128
TEC≧256
バスオフ
FUJITSU MICROELECTRONICS LIMITED
491
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
[bit 7] TOE: 送信出力許可ビット
TOE ビットに "1" を書き込むと , 汎用ポート端子を CAN コントローラの送信端子
に切り換えます。
• 0: 汎用ポート端子
• 1:CAN コントローラの送信端子
[bit 2] NIE: ノードステータス遷移割込み許可ビット
NIE ビットは , ノードステータス遷移割込み (NT=1 の場合 ) を許可または禁止しま
す。
• 0: ノードステータス遷移割込みを禁止する
• 1: ノードステータス遷移割込みを許可する
[bit 0] HALT: バス動作停止ビット
HALT ビットはバス動作停止をセットまたは解除し , またはそのステートを表示し
ます。
読出し時
• 0: バス動作中
• 1: バス動作停止
書込み時
• 0: バス動作停止を解除
• 1: バス動作停止をセット
<注意事項>
バスオフ時に HALT ビットに "0" を書き込む場合は , HALT ビットが "1" になっているこ
とを確認後に "0" を書き込んでください。
参考プログラム例 :
switch(IO_CANCT0.CSR.bit.NS)
{
case0:/*error active*/
break;
case1:/*warning*/
break;
case2:/*error passive*/
break;
default:/*bus off*/
for(i=0;(i<=500)&&(IO_CANCT0.CSR.bit.HALT==0);i++);
IO_CANCT0.CSR.word=0x0084;/*HALT=0*/
break;
}
( 注意事項 ) 変数 i はフェイルセーフのために使用しています。
492
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 18 章 CAN コントローラ
18.3
■ バス動作停止ビット (HALT=1)
バス動作停止ビットは , バス動作停止をセットまたは解除しまたはそのステートを表
示します。
● バス動作停止をセットする条件 (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 に "1" を書き込むことによってバス動作停止と
なった状態を解除するには , HALT に "0" が書き込まれて受信入力端子 (RX) に継続的
な 11 ビットのハイレベル ( リセッシブビット ) が入力された後に行われます。
• ノードステータスがバスオフに変化したことによってバス動作停止となった状態を解
除するには , HALT に "0" が書き込まれて受信入力端子 (RX) に継続的な 11 ビットのハ
イレベル ( リセッシブビット ) が 128 回入力された後に行われます。
次に送信および受信エラーカウンタの両者の値が "0" に達して , ノードステータスはエ
ラーアクティブに変化します。
• バスオフ時に HALT ビットに "0" を書き込む場合は , HALT ビットが "1" になっている
ことを確認後に "0" を書き込んでください。
■ バス動作停止間の状態 (HALT=1)
バス動作が停止している間の状態は以下のとおりです。
• バスは , 送信および受信などの動作を一切行いません。
• 送信出力端子 (TX) は , ハイレベル ( リセッシブビット ) を出力します。
• ほかのレジスタおよびエラーカウンタの値は変化しません。
<注意事項>
ビットタイミングレジスタ (BTR) を , バス動作停止 (HALT=1) の間にセットしなければ
なりません。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
493
第 18 章 CAN コントローラ
18.3
18.3.2
MB90930 シリーズ
ラストイベント表示レジスタ (LEIR)
ラストイベント表示レジスタ (LEIR) は , ラストイベントを示します。
NTE, TCE および RCE は排他的なものです。ラストイベントのビットが "1" にセッ
トされたときには , ほかのビットは "0" にセットされます。
■ ラストイベント表示レジスタ (LEIR) のビット構成
図 18.3-3 にラストイベント表示レジスタ (LEIR) のビット構成を示します。
図 18.3-3 ラストイベント表示レジスタ (LEIR) のビット構成
アドレス :
bit7
bit6
bit5
bit4
003D02H (CAN1)
NTE
R/W
0
TCE
R/W
0
RCE
R/W
0
−
−
−
bit3
bit2
bit1
bit0
MBP3 MBP2 MBP1 MBP0
R/W
R/W
R/W
R/W
0
0
0
0
←初期値
R/W: リード / ライト可能
−:
未定義
[bit 7] NTE: ノードステータス遷移イベントビット
NTE ビットが "1" のときは , ノードステータス遷移がラストイベントであることを
表します。
NTE ビットは , 制御ステータスレジスタ (CSR) の NT ビットと同時に "1" にセット
されます。
NTE ビットは , CSR のノードステータス遷移割込み許可ビット (NIE) のセッティン
グとは無関係に "1" にセットされます。
NTE ビットに "0" を書き込むと , NTE ビットは "0" にセットされます。NTE ビット
に "1" を書き込んでも無視されます。
リードモディファイライト (RMW) 系命令が実行されたときには , "1" が読み出され
ます。
[bit 6] TCE: 送信完了イベントビット
TCE ビットが "1" のときは , 送信完了がラストイベントであることを表します。
TCEビットは, 送信完了レジスタ (TCR) のビットのいずれか1つと同時に"1"にセッ
トされます。また , TCE ビットは送信割込み許可レジスタ (TIER) のビットのセッ
ティングとは無関係に "1" にセットされます。
TCE ビットに "0" を書き込むと , TCE ビットは "0" にセットされます。TCE ビット
に "1" を書き込んでも無視されます。
リードモディファイライト (RMW) 系命令が実行されたときには , "1" が読み出され
ます。
このビットが "1" にセットされたとき , MBP3 ∼ MBP0 ビットは , 送信動作を完了し
たメッセージバッファの番号を示すために使用されます。
494
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 18 章 CAN コントローラ
18.3
[bit 5] RCE: 受信完了イベントビット
RCE ビットが "1" のときは , 受信完了がラストイベントであることを表します。
RCE ビットは , 受信完了レジスタ (RCR) のビットのいずれか 1 つと同時に "1" に
セットされます。また , RCE ビットは受信割込み許可レジスタ (RIER) のビットの
セッティングとは無関係に "1" にセットされます。
RCE ビットに "0" を書き込むと , RCE ビットは "0" にセットされます。RCE ビット
に "1" を書き込んでも無視されます。
リードモディファイライト (RMW) 系命令が実行されたときには , "1" が読み出され
ます。
RCE ビットが "1" にセットされたとき , MBP3 ∼ MBP0 ビットは , 受信動作を完了
したメッセージバッファの番号を示すために使用されます。
[bit 3 ∼ bit0] MBP3 ∼ MBP0: メッセージバッファポインタビット
TCE または RCE ビットが "1" にセットされたときに , MBP3 ∼ MBP0 ビットは対応
するメッセージバッファ (0 ∼ 15) の番号を示します。
NTE ビットが "1" にセットされると , MBP3 ∼ MBP0 ビットは意味を持ちません。
MBP3 ∼ MBP0 ビットに "0" を書き込むと , MBP3 ∼ MBP0 ビットは "0" にセットさ
れます。MBP3 ∼ MBP0 ビットに "1" を書き込んでも無視されます。
リードモディファイライト (RMW) 系命令が実行されたときには , "1" が読み出され
ます。もし , LEIR が CAN 割込みハンドラ内でアクセスされたとしても , 割込みを
引き起こしたイベントは , 必ずしも LEIR により表されるものと同じではありませ
ん。割込みハンドラ内で , LEIR アクセスに対する割込みが要求された時点でほかの
CAN イベントが発生する可能性があります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
495
第 18 章 CAN コントローラ
18.3
18.3.3
MB90930 シリーズ
受信 / 送信エラーカウンタ (RTEC)
受信 / 送信エラーカウンタ (RTEC) は , CAN 仕様で定められる送信エラーカウント
および受信エラーカウントを示します。このレジスタは読出し専用です。
■ 受信 / 送信エラーカウンタ (RTEC) のビット構成
図 18.3-4 に受信 / 送信エラーカウンタ (RTEC) のビット構成を示します。
図 18.3-4 受信 / 送信エラーカウンタ (RTEC) のビット構成
アドレス :
bit15
003D05H (CAN1)
TEC7 TEC6 TEC5 TEC4 TEC3 TEC2 TEC1 TEC0
R
R
R
R
R
R
R
R
0
0
0
0
0
0
0
0
bit7
アドレス :
003D04H (CAN1)
bit14
bit6
bit13
bit5
bit12
bit4
bit11
bit3
bit10
bit2
bit9
bit1
bit8
←初期値
bit0
REC7 REC6 REC5 REC4 REC3 REC2 REC1 REC0
R
R
R
R
R
R
R
R
0
0
0
0
0
0
0
0
←初期値
R: リードオンリ
[bit 15 ∼ bit8] TEC7 ∼ TEC0: 送信エラーカウンタ
TEC7 ∼ TEC0 は送信エラーカウンタです。
TEC7 ∼ TEC0 は , カウンタ値が 256 より大きい場合に 0 ∼ 7 を示します。以降のイ
ンクリメントは , カウンタ値にカウントされません。この場合 , バスオフがノード
ステータスで示されます ( 制御ステータスレジスタ (CSR) の NS1 および NS0=11B) 。
[bit 7 ∼ bit0] REC7 ∼ REC0: 受信エラーカウンタ
REC7 ∼ REC0 は受信エラーカウンタです。
REC7 ∼ REC0 は , カウンタ値が 256 より大きい場合に 0 ∼ 7 を示します。以降の
インクリメントは , カウンタ値にカウントされません。この場合 , エラーパッシブ
がノードステータスで示されます ( 制御ステータスレジスタ (CSR) の NS1 および
NS0=10B) 。
496
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
18.3.4
ビットタイミングレジスタ (BTR)
第 18 章 CAN コントローラ
18.3
ビットタイミングレジスタ (BTR) はプリスケーラおよびビットタイミングを設定す
るレジスタです。
■ ビットタイミングレジスタ (BTR) のビット構成
図 18.3-5 にビットタイミングレジスタ (BTR) のビット構成を示します。
図 18.3-5 ビットタイミングレジスタ (BTR) のビット構成
bit15
アドレス :
003D07H (CAN1)
−
−
−
bit7
アドレス :
003D06H (CAN1)
bit14
bit13
bit12
bit11
bit10
bit9
bit8
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
1
1
1
1
1
1
1
RSJ1
R/W
1
bit6
bit5
bit4
bit3
bit2
bit1
←初期値
bit0
RSJ0 PSC5 PSC4 PSC3 PSC2 PSC1 PSC0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
1
1
1
1
1
1
1
←初期値
R/W: リード / ライト可能
−:
未定義
<注意事項>
BTR レジスタは , バス動作停止 (HALT=1) の間にセットしなければなりません。
[bit 14 ∼ bit 12] TS2.2 ∼ TS2.0: タイムセグメント 2 設定ビット 2 ∼ 0
TS2.2 ∼ TS2.0 ビットは , 単位時間 (TQ) を [(TS2.2 ∼ TS2.0)+1] で分周してタイムセ
グメント 2 (TSEG2) を決定します。タイムセグメント 2 は , CAN 仕様におけるフェー
ズバッファセグメント 2 (PHASE_SEG2) に等しいものです。
[bit 11 ∼ bit 8] TS1.3 ∼ TS1.0: タイムセグメント 1 設定ビット 3 ∼ 0
TS1.3 ∼ TS1.0 ビットは , 単位時間 (TQ) を [(TS1.3 ∼ TS1.0)+1] で分周してタイムセ
グメント 1 (TSEG1) を決定します。タイムセグメント 1 は , CAN 仕様におけるプロ
パゲーションセグメント
(PROP_SEG)
+フェーズバッファセグメント 1
(PHASE_SEG1) に等しいものです。
[bit 7, bit 6] RSJ1, RSJ0: 再同期ジャンプ幅設定ビット 1, 0
RSJ1, RSJ0 ビットは , 単位時間 (TQ) を [(RSJ1, RSJ0)+1] で分周して再同期ジャンプ
幅を決定させます。
[bit 5 ∼ bit 0] PSC5 ∼ PSC0: プリスケーラ設定ビット 5 ∼ 0
PSC5 ∼ PSC0 ビットは , 入力クロックを [(PSC5 ∼ PSC0)+1] で分周して CAN コン
トローラの単位時間 (TQ) を決定します。
CAN 仕様および CAN コントローラのそれぞれにおけるビット時間セグメントは , 図
18.3-6 および図 18.3-7 に示されています。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
497
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
図 18.3-6 CAN 仕様におけるビット時間セグメント
ノミナルビット時間
SYNC_SEG
PROP_SEG
PIUSL_SEG1 PIUSL_SEG2
サンプルポイント
図 18.3-7 CAN コントローラにおけるビット時間セグメント
ノミナルビット時間
SYNC_SEG
TSEG2
TSEG1
サンプルポイント
入力クロック (CLK) , 単位時間 (TQ) , ビットタイム (BT) , 同期セグメント (SYNC_SEG) , タイム
セグメント 1, 2 (TSEG1, TSEG2) および再同期ジャンプ幅 [(RSJ1+RSJ0)+1] 周波数分割
としたときの PSC=PSC5 ∼ PSC0, TS1=TS1.3 ∼ TS1.0, TS2=TS2.2 ∼ TS2.0, RSJ=RSJ1 お
よび RSJ0 の間の関係は次に示すとおりです。
TQ
= (PSC+1) × CLK
BT
=SYNC_SEG + TSEG1 + TSEG2
= (1 + (TS1+1) + (TS2+1) ) × TQ
= (3 + TS1+TS2) × TQ
RSJW
= (RSJ + 1) × TQ
正しく動作を行うには , 以下の条件を満足しなければなりません。
BT
≧ 8TQ
TSEG2
≧ RSJW
TSEG2
≧ 2TQ
PSC=0 の場合
TSEG1 ≧ 5TQ
PSC ≧ 1 の場合
TSEG1 ≧ 2TQ
TSEG1 ≧ RSJW
498
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 18 章 CAN コントローラ
18.3
■ ビットタイミングレジスタの設定例
以下にビットタイミングレジスタの設定例を示します。
● 使用条件
• 通信速度 (BT) :100kbps (10μs)
• 1TQ:0.5μs (1BT の 1/20 とする )
• 再同期ジャンプ幅 (RSJW) :4TQ
• 遅延時間 :50ns
• 内部動作周波数 :16MHz (0.0625μs)
● 設定例
以下の手順によって , 各ビットの設定値を決定します。
1. TQ= (PSC+1) × CLK
0.5= (PSC+1) × 0.0625
PSC=0.5/0.0625-1=7
したがって , PSC5 ∼ PSC0 の設定値は , 次のようになります。
PSC5 ∼ PSC0=000111B
2. RSJW= (RSJ+1) × TQ
4TQ= (RSJ+1) × TQ
RSJ=4-1=3
したがって , RSJ1 ∼ RSJ0 の設定値は , 次のようになります。
RSJ1 ∼ RSJ0=11B
3. TSEG2 ≧ RSJW
(TS2+1) × TQ ≧ 4TQ
TS2 ≧ 4-1 ≧ 3
したがって , TS2.2 ∼ TS2.0 の設定値は , 次のようになります。
TS2.2 ∼ TS2.0 ≧ 011B
4. TSEG1 ≧ RSJW
(TS1+1) × TQ ≧ 4TQ
TS1 ≧ 3
したがって , TS1.3 ∼ TS1.0 の設定値は , 次のようになります。
TS1.3 ∼ TS1.0 ≧ 0100B
通信速度 100kbps という条件から 3., 4. は , 以下の組合せとなります。
- TS1.3 ∼ TS1.0=1010B TS2.2 ∼ TS2.0=111B
- TS1.3 ∼ TS1.0=1011B TS2.2 ∼ TS2.0=110B
- TS1.3 ∼ TS1.0=1100B TS2.2 ∼ TS2.0=101B
- TS1.3 ∼ TS1.0=1101B TS2.2 ∼ TS2.0=100B
- TS1.3 ∼ TS1.0=1110B TS2.2 ∼ TS2.0=011B
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
499
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
メッセージバッファ有効レジスタ (BVALR)
18.3.5
メッセージバッファ有効レジスタ (BVALR) は , メッセージバッファ (x) の有効性を
設定し , そのステートを表示するレジスタです。
■ メッセージバッファ有効レジスタ (BVALR) のビット構成
図 18.3-8 にメッセージバッファ有効レジスタ (BVALR) のビット構成を示します。
図 18.3-8 メッセージバッファ有効レジスタ (BVALR) のビット構成
アドレス :
000071H (CAN1)
アドレス :
000070H (CAN1)
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
BVAL15 BVAL14 BVAL13 BVAL12 BVAL11 BVAL10 BVAL9 BVAL8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
bit7
bit6
bit5
bit4
bit3
bit2
bit1
←初期値
bit0
BVAL7 BVAL6 BVAL5 BVAL4 BVAL3 BVAL2 BVAL1 BVAL0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
←初期値
R/W: リード / ライト可能
メッセージバッファ有効レジスタ (BVALR) は 16 ビットから構成され , 各ビットは 16
個あるメッセージバッファの有効 / 無効を設定します。
• 0: メッセージバッファ (x) 無効
• 1: メッセージバッファ (x) 有効
メッセージバッファ (x) が無効 ("0") に設定されると , メッセージを送信または受信し
ません。もし , バッファが送信動作中に無効 ("0") に設定されると , 送信が完了または
エラーにより終了した後に無効 (BVALx=0) になります。また , バッファが受信動作中
に無効 ("0") に設定された場合には , 直ちに無効 (BVALx=0) になります。このとき , 受
信メッセージがメッセージバッファ (x) に格納されていると , メッセージバッファ (x)
はメッセージを格納した後に無効となります。
<注意事項>
• x はメッセージバッファの番号を示します (x=0 ∼ 15) 。
• ビット (BVALx) に"0"を書き込むことによってメッセージバッファ (x) を無効とした場
合には , ビット操作命令の実行がそのビットが "0" にセットされるまで禁止されます。
• CAN コントローラが CAN 通信に参加している状態 (CSR : HALT ビットの読出し値が
"0" で , CAN コントローラが CAN バスの通信に参加しており送受信が可能な状態 ) で ,
メッセージバッファを無効 (BVALR : BVAL=0) にする場合には ,「18.11 CAN コント
ローラ使用上の注意」に従ってください。
500
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
18.3.6
IDE レジスタ (IDER)
IDE レジスタは , 送信 / 受信の間にメッセージバッファ (x) により使用されるフレー
ムフォーマットを設定します。
■ IDE レジスタ (IDER) のビット構成
図 18.3-9 に IDE レジスタ (IDER) のビット構成を示します。
図 18.3-9 IDE レジスタ (IDER) のビット構成
アドレス :
003D09H (CAN1)
アドレス :
003D08H (CAN1)
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
IDE15
R/W
X
IDE14
R/W
X
IDE13
R/W
X
IDE12
R/W
X
IDE11
R/W
X
IDE10
R/W
X
IDE9
R/W
X
IDE8
R/W
X
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
IDE7
R/W
X
IDE6
R/W
X
IDE5
R/W
X
IDE4
R/W
X
IDE3
R/W
X
IDE2
R/W
X
IDE1
R/W
X
IDE0
R/W
X
←初期値
←初期値
R/W: リード / ライト可能
X:
不定値
IDE レジスタ (IDER) は 16 ビットから構成され , 各ビットは 16 個あるメッセージバッ
ファが使用するフレームフォーマットを設定します。
• 0: メッセージバッファ (x) に対して標準フレームフォーマット (ID11 ビット ) が使
用されます。
• 1: メッセージバッファ (x) に対して拡張フレームフォーマット (ID29 ビット ) が使
用されます。
<注意事項>
• このレジスタは , メッセージバッファ (x) が無効のときに ( メッセージバッファ有効レ
ジスタの (BVALR) BVALx=0) に設定してください。バッファが有効は (BVALx=1) とき
に設定すると受信メッセージを不必要にストアする可能性があります。
• CAN コントローラが CAN 通信に参加している状態 (CSR : HALT ビットの読出し値が
"0" で , CAN コントローラが CAN バスの通信に参加しており送受信が可能な状態 ) で ,
メッセージバッファを無効 (BVALR : BVAL=0) にする場合は「18.11
,
CAN コントロー
ラ使用上の注意」に従ってください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
501
第 18 章 CAN コントローラ
18.3
18.3.7
MB90930 シリーズ
送信要求レジスタ (TREQR)
送信要求レジスタ (TREQR) は , メッセージバッファ (x) に対する送信要求を設定し ,
その状態を表示します。
■ 送信要求レジスタ (TREQR) のビット構成
図 18.3-10 に送信要求レジスタ (TREQR) のビット構成を示します。
図 18.3-10 送信要求レジスタ (TREQR) のビット構成
bit15
アドレス :
000073H (CAN1)
bit7
アドレス :
000072H (CAN1)
bit14
bit13
bit12
bit11
bit10
bit9
bit8
TREQ15 TREQ14 TREQ13 TREQ12 TREQ11 TREQ10 TREQ9 TREQ8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
bit6
bit5
bit4
bit3
bit2
bit1
←初期値
bit0
TREQ7 TREQ6 TREQ5 TREQ4 TREQ3 TREQ2 TREQ1 TREQ0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
←初期値
R/W: リード / ライト可能
TREQx に "1" が書き込まれたとき , メッセージバッファ (x) に対する送信を開始しま
す。リモートフレーム受信待機レジスタ (RFWTR) *1 の RFWTx が "0" のときは , 送信
を直ちに開始します。RFWTx=1 のときは , リモートフレームが受信される ( リモート
要求受信レジスタ (RRTRR) *1 が "1" になる ) まで待機した後に送信を開始します。も
し, TREQxに"1"が書き込まれるときにRRTRxが既に"1"になっていた場合は, RFWTx=1
であっても送信を直ちに開始します。*2
*1: TRTRR および RFWTR に関しては「18.3.8 送信 RTR レジスタ (TRTRR)」および
「18.3.9 リモートフレーム受信待機レジスタ (RFWTR)」を参照してください。
*2: 送信の解除に関しては「18.3.10 送信解除レジスタ (TCANR)」および「18.3.11 送信
完了レジスタ (TCR)」を参照してください。
TREQx に "0" を書き込んでも無視されます。
リードモディファイライト(RMW)系命令が実行されたときには"0"が読み出されます。
送信動作の完了時における ("0" への ) クリアおよび "1" の書込みによる設定が同時に
発生した場合にはクリア動作を優先します。
1 つ以上のビットに "1" が書き込まれた場合は , 下位番号のメッセージバッファ (x) か
ら開始して送信が行われます。
TREQx は , 送信が待ち状態中は "1" で , 送信が完了または解除されたときに "0" になり
ます。
502
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
18.3.8
送信 RTR レジスタ (TRTRR)
送信 RTR レジスタ (TRTRR) は , メッセージバッファ (x) による送信 RTR ( リモー
ト送信要求 ) ビットを設定するレジスタです。
■ 送信 RTR レジスタ (TRTRR) のビット構成
図 18.3-11 に送信 RTR レジスタ (TRTRR) のビット構成を示します。
図 18.3-11 送信 RTR レジスタ (TRTRR) のビット構成
アドレス :
003D0BH (CAN1)
アドレス :
003D0AH (CAN1)
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
TRTR15 TRTR14 TRTR13 TRTR12 TRTR11 TRTR10 TRTR9 TRTR8
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
bit7
bit6
bit5
bit4
bit3
bit2
bit1
←初期値
bit0
TRTR7 TRTR6 TRTR5 TRTR4 TRTR3 TRTR2 TRTR1 TRTR0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
←初期値
R/W: リード / ライト可能
送信 RTR レジスタ (TRTRR) は 16 ビットから構成され , 各ビットは 16 個あるメッセー
ジバッファのリモート送信要求を設定します。
• 0: データフレームが送信されます。
• 1: リモートフレームが送信されます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
503
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
リモートフレーム受信待機レジスタ (RFWTR)
18.3.9
リモートフレーム受信待機レジスタ (RFWTR) は , データフレーム送信に対する要求
が設定された ( 送信要求レジスタ (TREQR) の TREQx が "1" で , 送信 RTR レジスタ
(TRTRR) の TRTRx が "0" である ) ときに , 送信を開始する条件を設定します。
■ リモートフレーム受信待機レジスタ (RFWTR) のビット構成
図 18.3-12 にリモートフレーム受信待機レジスタ (RFWTR) のビット構成を示します。
図 18.3-12 リモートフレーム受信待機レジスタ (RFWTR) のビット構成
bit15
アドレス :
003D0DH (CAN1)
アドレス :
003D0CH (CAN1)
bit14
bit13
bit12
bit11
bit10
bit9
bit8
RFWT15 RFWT14 RFWT13 RFWT12 RFWT11 RFWT10 RFWT9 RFWT8
R/W
X
R/W
X
R/W
X
R/W
X
R/W
X
R/W
X
R/W
X
R/W
X
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
RFWT7 RFWT6 RFWT5 RFWT4 RFWT3 RFWT2 RFWT1 RFWT0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
X
X
X
X
X
X
X
X
←初期値
←初期値
R/W: リード / ライト可能
X:
不定値
リモートフレーム受信待機レジスタ (RFWTR) は 16 ビットから構成され , 各ビットは
メッセージバッファがデータフレーム送信に設定されているときの送信開始条件を設
定します。
• 0: 直ちに送信を開始します。
• 1: リモートフレーム受信 ( リモート要求受信レジスタ (RRTRR) が "1" になる ) まで
待機した後に送信を開始します。
<注意事項>
• 送信に対する要求が設定されたときに , RRTRx が既に "1" の場合は送信を直ちに開始
します。
• リモートフレーム送信に対しては , RFWTx を "1" にセットしないでください。
504
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
18.3.10 送信解除レジスタ (TCANR)
送信解除レジスタ (TCANR) は , TCANx に "1" が書き込まれたときに , メッセージ
バッファ (x) への送信に対する待ち状態中の要求を解除します。
解除の完了時に送信要求レジスタ (TREQR) の TREQx は "0" になります。TCANx
に "0" を書き込んでも無視されます。
送信解除レジスタ (TCANR) は書込み専用レジスタで , その読出し値は常に "0" で
す。
■ 送信解除レジスタ (TCANR) のビット構成
図 18.3-13 に送信解除レジスタ (TCANR) のビット構成を示します。
図 18.3-13 送信解除レジスタ (TCANR) のビット構成
アドレス :
000075H (CAN1)
アドレス :
000074H (CAN1)
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
TCAN15 TCAN14 TCAN13 TCAN12 TCAN11 TCAN10 TCAN9 TCAN8
W
0
W
0
W
0
W
0
W
0
W
0
W
0
W
0
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
TCAN7 TCAN6 TCAN5 TCAN4 TCAN3 TCAN2 TCAN1 TCAN0
W
W
W
W
W
W
W
W
0
0
0
0
0
0
0
0
←初期値
←初期値
W: ライトオンリ
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
505
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
送信完了レジスタ (TCR)
18.3.11
メッセージバッファ (x) による送信が完了すると , 対応する TCx が "1" になります。
送信割込み許可レジスタ (TIER) の TIEx が "1" の場合には , 割込みが発生します。
■ 送信完了レジスタ (TCR) のビット構成
図 18.3-14 に送信完了レジスタ (TCR) のビット構成を示します。
図 18.3-14 送信完了レジスタ (TCR) のビット構成
アドレス :
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
000077H (CAN1)
TC15
R/W
0
TC14
R/W
0
TC13
R/W
0
TC12
R/W
0
TC11
R/W
0
TC10
R/W
0
TC9
R/W
0
TC8
R/W
0
アドレス :
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
000076H (CAN1)
TC7
R/W
0
TC6
R/W
0
TC5
R/W
0
TC4
R/W
0
TC3
R/W
0
TC2
R/W
0
TC1
R/W
0
TC0
R/W
0
←初期値
←初期値
R/W: リード / ライト可能
TCx=0 となる条件は以下のとおりです。
• TCx に "0" を書き込む。
• 送信要求レジスタ (TREQR) の TREQx に "1" を書き込む。
送信完了の後で TCx に "0" を書き込むと , それを "0" にセットします。
TCx に "1" を
書き込んでも無視されます。リードモディファイライト (RMW) 系命令が実行された
ときには "1" が読み出されます。
<注意事項>
送信動作の完了時の "1" への設定および "0" の書込みによるクリアが同時に発生した場合に
は "1" への設定を優先します。
506
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
18.3.12 送信割込み許可レジスタ (TIER)
送信割込み許可レジスタ (TIER) は , メッセージバッファ (x) による送信割込みを許
可または禁止します。送信割込みは , 送信完了時 ( 送信完了レジスタ (TCR) の TCx
が "1" になったとき ) に発生します。
■ 送信割込み許可レジスタ (TIER) のビット構成
図 18.3-15 に送信割込み許可レジスタ (TIER) のビット構成を示します。
図 18.3-15 送信割込み許可レジスタ (TIER) のビット構成
アドレス :
bit15
bit10
bit9
bit8
003D0FH (CAN1)
TIE15 TIE14 TIE13 TIE12 TIE11 TIE10
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
bit14
bit13
bit12
bit11
TIE9
R/W
0
TIE8
R/W
0
アドレス :
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
003D0EH (CAN1)
TIE7
R/W
0
TIE6
R/W
0
TIE5
R/W
0
TIE4
R/W
0
TIE3
R/W
0
TIE2
R/W
0
TIE1
R/W
0
TIE0
R/W
0
←初期値
←初期値
R/W: リード / ライト可能
送信割込み許可レジスタ (TIER) は 16 ビットから構成され , 各ビットは 16 個あるメッ
セージバッファの送信割込みの禁止 / 許可を設定します。
• 0: 送信割込みが禁止されます。
• 1: 送信割込みが許可されます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
507
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
受信完了レジスタ (RCR)
18.3.13
受信メッセージのメッセージバッファ (x) へのストアが完了すると , RCx が "1" に
なります。
受信完了割込み許可レジスタの RIEx が "1" の場合には割込みが発生します。
■ 受信完了レジスタ (RCR) のビット構成
図 18.3-16 に受信完了レジスタ (RCR) のビット構成を示します。
図 18.3-16 受信完了レジスタ (RCR) のビット構成
アドレス :
bit15
bit10
bit9
bit8
000079H (CAN1)
bit14
bit13
bit12
bit11
RC15 RC14 RC13 RC12 RC11 RC10
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
RC9
R/W
0
RC8
R/W
0
アドレス :
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
000078H (CAN1)
RC7
R/W
0
RC6
R/W
0
RC5
R/W
0
RC4
R/W
0
RC3
R/W
0
RC2
R/W
0
RC1
R/W
0
RC0
R/W
0
←初期値
←初期値
R/W: リード / ライト可能
RCx=0 となる条件は以下のとおりです。
• RCx に "0" を書き込む。
• 受信メッセージの処理完了後に , RCx に "1" を書き込んでください。RCx に "1" を
書き込んでも無視されます。
リードモディファイライト (RMW) 系命令が実行されたときには "1" が読み出されま
す。
<注意事項>
受信動作の完了時の "1" への設定および "0" の書込みによるクリアが同時に発生した場合に
は "1" への設定を優先します。
508
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
18.3.14 リモート要求受信レジスタ (RRTRR)
受信されたリモートフレームがメッセージバッファ (x) 内にストアされると ,
RRTRx は (RCx 設定が "1" になると同時に ) "1" になります。
■ リモート要求受信レジスタ (RRTRR) のビット構成
図 18.3-17 にリモート要求受信レジスタ (RRTRR) のビット構成を示します。
図 18.3-17 リモート要求受信レジスタ (RRTRR) のビット構成
bit15
アドレス :
00007BH (CAN1)
アドレス :
00007AH (CAN1)
bit14
bit13
bit12
bit11
bit10
bit9
bit8
RRTR15 RRTR14 RRTR13 RRTR12 RRTR11 RRTR10 RRTR9 RRTR8
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
RRTR7 RRTR6 RRTR5 RRTR4 RRTR3 RRTR2 RRTR1 RRTR0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
←初期値
←初期値
R/W: リード / ライト可能
RRTRx=0 となる条件は以下のとおりです。
• RRTRx に "0" を書き込む。
• 受信されたデータフレームがメッセージバッファ (x) にストアされた後 (RCx 設定が
"1" になるのと同時 ) 。
• メッセージバッファ (x) による送信が完了した後 ( 送信完了レジスタ (TCR) の TCx
は "1") 。
RRTRx に "1" を書き込んでも無視されます。
リードモディファイライト (RMW) 系命令が実行されたときには , "1" が読み出され
ます。
<注意事項>
"1" への設定と "0" の書込みによるクリアが同時に発生したときには , "1" への設定を優先
します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
509
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
受信オーバランレジスタ (ROVRR)
18.3.15
メッセージバッファ (x) 内への受信メッセージのストア完了時に受信完了レジスタ
(RCR) が既に "1" の場合には ROVRx は "1" になり , 受信がオーバランしたことを表
します。
■ 受信オーバランレジスタ (ROVRR) のビット構成
図 18.3-18 に受信オーバランレジスタ (ROVRR) のビット構成を示します。
図 18.3-18 受信オーバランレジスタ (ROVRR) のビット構成
アドレス :
00007DH (CAN1)
アドレス :
00007CH (CAN1)
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
ROVR15 ROVR14 ROVR13 ROVR12 ROVR11 ROVR10 ROVR9 ROVR8
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
ROVR7 ROVR6 ROVR5 ROVR4 ROVR3 ROVR2 ROVR1 ROVR0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
←初期値
←初期値
R/W: リード / ライト可能
ROVRx に "0" を書き込むと , ROVRx=0 になります。ROVRx に "1" を書き込んでも無
視されます。受信がオーバランしたことをチェックした後で ROVRx に "0" を書き込む
と , それを "0" に設定します。
リードモディファイライト(RMW)系命令が実行されたときには"1"が読み出されます。
<注意事項>
"1" への設定と "0" の書込みによるクリアが同時に発生したときには , "1" への設定を優先
します。
510
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
18.3.16 受信割込み許可レジスタ (RIER)
受信割込み許可レジスタ (RIER) は , メッセージバッファ (x) による受信割込みを許
可または禁止します。
受信割込みは , 受信完了時 ( 受信完了レジスタ (RCR) の RCx が "1" であるとき ) に
発生します。
■ 受信割込み許可レジスタ (RIER) のビット構成
図 18.3-19 に受信割込み許可レジスタ (RIER) のビット構成を示します。
図 18.3-19 受信割込み許可レジスタ (RIER) のビット構成
アドレス :
00007FH (CAN1)
アドレス :
00007EH (CAN1)
bit15
bit14
bit13
bit12
bit11
bit10
bit9
RIE15 RIE14 RIE13 RIE12 RIE11 RIE10 RIE9
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
bit8
RIE8
R/W
0
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
RIE7
R/W
0
RIE6
R/W
0
RIE5
R/W
0
RIE4
R/W
0
RIE3
R/W
0
RIE2
R/W
0
RIE1
R/W
0
RIE0
R/W
0
←初期値
←初期値
R/W: リード / ライト可能
受信割込み許可レジスタ (RIER) は 16 ビットから構成され , 各ビットは 16 個あるメッ
セージバッファの受信割込みの禁止 / 許可を設定します。
• 0: 受信割込みが禁止されます。
• 1: 受信割込みが許可されます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
511
第 18 章 CAN コントローラ
18.3
18.3.17
MB90930 シリーズ
アクセプタンスマスク選択レジスタ (AMSR)
アクセプタンスマスク選択レジスタ (AMSR) は , 受信メッセージ ID とメッセージ
バッファ (x) ID の比較に対するマスク ( アクセプタンスマスク ) を選択します。
■ アクセプタンスマスク選択レジスタ (AMSR) のビット構成
図 18.3-20 にアクセプタンスマスク選択レジスタ (AMSR) のビット構成を示します。
表 18.3-7 に示すように, 2ビットの組合せによって対応するメッセージバッファのアク
セプタンスマスクを選択します。
図 18.3-20 アクセプタンスマスク選択レジスタ (AMSR) のビット構成
bit7
アドレス :
bit6
bit5
bit4
bit3
bit2
bit1
bit0
AMS3.1 AMS3.0 AMS2.1 AMS2.0 AMS1.1 AMS1.0 AMS0.1 AMS0.0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
X
X
X
X
X
X
X
X
003D10H (CAN1)
bit15
アドレス :
bit14
bit13
bit12
bit11
bit10
bit9
←初期値
bit8
AMS7.1 AMS7.0 AMS6.1 AMS6.0 AMS5.1 AMS5.0 AMS4.1 AMS4.0
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
X
X
X
X
X
X
X
X
003D11H (CAN1)
bit7
アドレス :
003D12H (CAN1)
bit6
bit5
bit4
bit3
bit2
bit1
←初期値
bit0
AMS11.1 AMS11.0 AMS10.1 AMS10.0 AMS9.1 AMS9.0 AMS8.1 AMS8.0
アドレス :
003D13H (CAN1)
R/W
X
R/W
X
R/W
X
R/W
X
R/W
X
R/W
X
R/W
X
R/W
X
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
←初期値
AMS15.1 AMS15.0 AMS14.1 AMS14.0 AMS13.1 AMS13.0 AMS12.1 AMS12.0
R/W
X
R/W
X
R/W
X
R/W
X
R/W
X
R/W
X
R/W
X
R/W
X
←初期値
R/W: リード / ライト可能
X:
不定値
表 18.3-7 アクセプタンスマスクの選択
512
AMSx.1
AMSx.0
0
0
フルビット比較
0
1
フルビットマスク
1
0
アクセプタンスマスクレジスタ 0 (AMR0)
1
1
アクセプタンスマスクレジスタ 1 (AMR1)
アクセプタンスマスク
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 18 章 CAN コントローラ
18.3
<注意事項>
• AMSx.1 および AMSx.0 はメッセージバッファ (x) が無効である ( メッセージバッファ
有効レジスタ (BVALR) の BVALx が "0" である ) ときに設定しなければなりません。
バッファが有効 (BVALx=1) なときに設定すると , 不要な受信メッセージがストアされ
る可能性があります。
• CAN コントローラが CAN 通信に参加している状態 (CSR : HALT ビットの読出し値が
"0" で , CAN コントローラが CAN バスの通信に参加しており送受信が可能な状態 ) で ,
メッセージバッファを無効 (BVALR : BVAL=0) にする場合は「18.11
,
CAN コントロー
ラ使用上の注意」に従ってください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
513
第 18 章 CAN コントローラ
18.3
18.3.18
MB90930 シリーズ
アクセプタンスマスクレジスタ 0 および 1 (AMR0/
AMR1)
AMR0 および AMR1 の 2 種類のアクセプタンスマスクレジスタがあり , 両者ともに
標準フレームフォーマットまたは拡張フレームフォーマットのいずれかで使用でき
ます。
AM28 ∼ AM18 (11 ビット ) は , 標準フレームフォーマットにおけるアクセプタンス
マスクに使用され , AM28 ∼ AM0 (29 ビット ) は拡張フレームフォーマットでアク
セプタンスマスクに使用されます。
■ アクセプタンスマスクレジスタ 0 および 1 (AMR0/AMR1) のビット構成
図 18.3-21 にアクセプタンスマスクレジスタ 0 および 1 (AMR0/AMR1) のビット構成を
示します。
図 18.3-21 アクセプタンスマスクレジスタ 0 および 1 (AMR0/AMR1) のビット構成
AMR0 BYTE0
アドレス :
003D14H (CAN1)
bit7
AM28
R/W
X
bit6
AM27
R/W
X
bit5
AM26
R/W
X
bit4
AM25
R/W
X
bit3
AM24
R/W
X
bit2
AM23
R/W
X
bit1
AM22
R/W
X
bit0
AM21
R/W
X
←初期値
bit15
AM20
R/W
X
bit14
AM19
R/W
X
bit13
AM18
R/W
X
bit12
AM17
R/W
X
bit11
AM16
R/W
X
bit10
AM15
R/W
X
bit9
AM14
R/W
X
bit8
AM13
R/W
X
←初期値
bit7
AM12
R/W
X
bit6
AM11
R/W
X
bit5
AM10
R/W
X
bit4
AM9
R/W
X
bit3
AM8
R/W
X
bit2
AM7
R/W
X
bit1
AM6
R/W
X
bit0
AM5
R/W
X
←初期値
bit15
AM4
R/W
X
bit14
AM3
R/W
X
bit13
AM2
R/W
X
bit12
AM1
R/W
X
bit11
AM0
R/W
X
bit10
−
−
−
bit9
−
−
−
bit8
−
−
−
←初期値
bit7
AM28
R/W
X
bit6
AM27
R/W
X
bit5
AM26
R/W
X
bit4
AM25
R/W
X
bit3
AM24
R/W
X
bit2
AM23
R/W
X
bit1
AM22
R/W
X
bit0
AM21
R/W
X
←初期値
bit15
AM20
R/W
X
bit14
AM19
R/W
X
bit13
AM18
R/W
X
bit12
AM17
R/W
X
bit11
AM16
R/W
X
bit10
AM15
R/W
X
bit9
AM14
R/W
X
bit8
AM13
R/W
X
←初期値
AMR0 BYTE1
アドレス :
003D15H (CAN1)
AMR0 BYTE2
アドレス :
003D16H (CAN1)
AMR0 BYTE3
アドレス :
003D17H (CAN1)
AMR1 BYTE0
アドレス :
003D18H (CAN1)
AMR1 BYTE1
アドレス :
003D19H (CAN1)
( 続く )
514
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
( 続き )
AMR1 BYTE2
アドレス :
003D1AH (CAN1)
bit7
AM12
R/W
X
bit6
AM11
R/W
X
bit5
AM10
R/W
X
bit4
AM9
R/W
X
bit3
AM8
R/W
X
bit2
AM7
R/W
X
bit1
AM6
R/W
X
bit0
AM5
R/W
X
←初期値
bit15
AM4
R/W
X
bit14
AM3
R/W
X
bit13
AM2
R/W
X
bit12
AM1
R/W
X
bit11
AM0
R/W
X
bit10
−
−
−
bit9
−
−
−
bit8
−
−
−
←初期値
AMR1 BYTE3
アドレス :
003D1BH (CAN1)
R/W: リード / ライト可能
X:
不定値
−:
未定義
● 0: 比較
このビットに対応するアクセプタンスコード ( 受信メッセージ ID と比較するための ID
レジスタ IDRx) を受信メッセージ ID のビットと比較します。一致しなければメッセー
ジは受信されません。
● 1: マスク
このビットに対応するアクセプタンスコード ID レジスタ (IDRx) をマスクします。受
信メッセージ ID のビットとの比較は行われません。
<注意事項>
• AMR0 および AMR1 は , AMR0 および AMR1 を選択するメッセージバッファ (x) のす
べてが無効 ( メッセージバッファ有効レジスタ (BVALR) の BVALx が "0") な場合に設
定してください。メッセージバッファが有効 (BVALx=1) な場合に設定すると , 不必要
な受信メッセージがストアされる可能性があります。
• CAN コントローラが CAN 通信に参加している状態 (CSR : HALT ビットの読出し値が
"0" で , CAN コントローラが CAN バスの通信に参加しており送受信が可能な状態 ) で ,
メッセージバッファを無効 (BVALR : BVAL=0) にする場合は「18.11
,
CAN コントロー
ラ使用上の注意」に従ってください。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
515
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
メッセージバッファ
18.3.19
メッセージバッファは 16 個あり , 1 つのメッセージバッファ x (x=0 ∼ 15) は ID レ
ジスタ (IDRx) , DLC レジスタ (DLCRx) およびデータレジスタ (DTRx) から構成され
ています。
■ メッセージバッファ
メッセージバッファ (x) は , 送信および受信の両方に使用されます。
下位番号のメッセージバッファの方が高い優先順位を割り当てられています。
送信時に送信要求が1つ以上のメッセージバッファに対して出されたときには, 最下位
番号のメッセージバッファから開始して送信が行われます (「18.4 CAN コントローラ
の送信」を参照 ) 。
受信時に , 1 つ以上のメッセージバッファのアクセプタンスフィルタ ( 受信メッセージ
のアクセプタンスマスク ID とメッセージバッファとを比較する機構 ) を受信メッセー
ジ ID が通過するときに , 受信メッセージは最下位番号のメッセージバッファ内に記憶
されます (「18.5 CAN コントローラの受信」を参照 ) 。
同一のアクセプタンスフィルタが 1 つ以上のメッセージバッファ内に設定されたとき
に , メッセージバッファをマルチレベルメッセージバッファとして使用することがで
きます。これにより , 受信時間に対する余裕が与えられます (「18.8 メッセージバッ
ファ (x) による受信方法」を参照 ) 。
<注意事項>
• メッセージバッファおよび汎用 RAM 領域への書込み動作を , ワード単位で偶数アドレ
スに対して行わなければなりません。バイト単位で書込み動作を行うと , 下位バイトへ
の書込み時に上位バイトに不定データを書き込んでしまいます。
• メッセージバッファ有効レジスタ (BVALR) の BVALx ビットが "0" ( 無効 ) であるとき
に , メッセージバッファ (x) (IDRx, DLCRx および DTRx) は汎用 RAM として使用する
ことができます。ただし , CAN コントローラが送受信動作中にはメッセージバッファ
を使用するので , CPU のアクセスが最大で 64 マシンサイクル待たされることがありま
す。これは , 汎用 RAM 領域 (CAN0: アドレス 003A00H ∼ 003A1FH およびアドレス
003B00H ∼ 003B1FH) についても同様です。
516
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
18.3.20 ID レジスタ x (x=0 ∼ 15) (IDRx)
第 18 章 CAN コントローラ
18.3
ID レジスタ x (x=0 ∼ 15) (IDRx) は , メッセージバッファ (x) に対する ID レジスタ
です。
■ ID レジスタ x (x=0 ∼ 15) (IDRx) のビット構成
図 18.3-22 に ID レジスタ x (x=0 ∼ 15) (IDRx) のビット構成を示します。
図 18.3-22 ID レジスタ x (x=0 ∼ 15) (IDRx) のビット構成
BYTE0
アドレス :
003B20H +4x (CAN1)
bit7
ID28
R/W
X
bit6
ID27
R/W
X
bit5
ID26
R/W
X
bit4
ID25
R/W
X
bit3
ID24
R/W
X
bit2
ID23
R/W
X
bit1
ID22
R/W
X
bit0
ID21
R/W
X
←初期値
bit15
ID20
R/W
X
bit14
ID19
R/W
X
bit13
ID18
R/W
X
bit12
ID17
R/W
X
bit11
ID16
R/W
X
bit10
ID15
R/W
X
bit9
ID14
R/W
X
bit8
ID13
R/W
X
←初期値
bit7
ID12
R/W
X
bit6
ID11
R/W
X
bit5
ID10
R/W
X
bit4
ID9
R/W
X
bit3
ID8
R/W
X
bit2
ID7
R/W
X
bit1
ID6
R/W
X
bit0
ID5
R/W
X
←初期値
bit15
ID4
R/W
X
bit14
ID3
R/W
X
bit13
ID2
R/W
X
bit12
ID1
R/W
X
bit11
ID0
R/W
X
bit10
−
−
−
bit9
−
−
−
bit8
−
−
−
BYTE1
アドレス :
003B21H +4x (CAN1)
BYTE2
アドレス :
003B22H +4x (CAN1)
BYTE3
アドレス :
003B23H +4x (CAN1)
←初期値
R/W: リード / ライト可能
X:
不定値
−:
未定義
標準フレームフォーマット (IDE レジスタ (IDER) の IDEx=0) でメッセージバッファ (x)
を使用しているときは , ID28 ∼ ID18 の 11 ビットを使用してください。拡張フレーム
フォーマット (IDEx=1) でバッファを使用しているときは , ID28 ∼ ID0 の 29 ビットを
使用してください。
ID28 ∼ ID0 の機能は次のとおりです。
• アクセプタンスコード設定 ( 受信メッセージ ID との比較用の ID)
• 送信メッセージ ID の設定
標準フレームフォーマットでは , ID28 ∼ ID22 のビットのすべてに "1" をセットす
ることは禁止されています。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
517
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
• 受信メッセージ ID の記憶
受信メッセージ IDは , アクセプタンスマスクでマスクされているビットにも記憶さ
れます。標準フレームフォーマットでは , ID17 ∼ ID0 は不定値 ( 前回受信したメッ
セージの一部 ) が記憶されます。
<注意事項>
• ID レジスタへの書込み動作は , ワード単位で行ってください。バイト単位で書込み動
作を行うと , 下位バイトへの書込み時に上位バイトに不定データを書き込んでしまい
ます。上位バイトへの書込みは無視されます。
• ID レジスタは , メッセージバッファ (x) が無効 ( メッセージバッファ有効レジスタ
(BVALR) の BVALx が "0") な場合に設定されなければなりません。バッファが有効
(BVALx=1) であるときに設定すると , 不必要な受信メッセージがストアされてしまい
ます。
• CAN コントローラが CAN 通信に参加している状態 (CSR : HALT ビットの読出し値が
"0" で , CAN コントローラが CAN バスの通信に参加しており送受信が可能な状態 ) で ,
メッセージバッファを無効 (BVALR : BVAL=0) にする場合には ,「18.11 CAN コント
ローラ使用上の注意」に従ってください。
■ ID レジスタの設定例
標準フレームフォーマットおよび拡張フレームフォーマットにおける ID レジスタの設
定例を表 18.3-8 および表 18.3-9 に示します。
表 18.3-8 標準フレームフォーマットにおける ID レジスタの設定例 (1 / 2)
ID (10 進数 )
ID (16 進数 )
BYTE0
BYTE1
1
1
00
20
2
2
00
40
3
3
00
60
4
4
00
80
5
5
00
A0
6
6
00
C0
7
7
00
E0
8
8
01
00
9
9
01
20
10
A
01
40
・
・
518
・
・
30
1E
03
C0
31
1F
03
C1
32
20
03
C2
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
表 18.3-8 標準フレームフォーマットにおける ID レジスタの設定例 (2 / 2)
ID (10 進数 )
ID (16 進数 )
BYTE0
BYTE1
・
・
・
・
100
064
0C
80
101
065
0C
A0
・
・
・
・
200
0C8
19
00
・
・
・
・
2043
7FB
FF
06
2044
7FC
FF
80
2045
7FD
FF
A0
2046
7FE
FF
C0
2047
7FF
FF
E0
表 18.3-9 拡張フレームフォーマットにおける ID レジスタの設定例 (1 / 2)
ID (10 進数 )
ID (16 進数 )
BYTE0
BYTE1
BYTE0
BYTE1
1
1
00
00
00
08
2
2
00
00
00
10
3
3
00
00
00
18
4
4
00
00
00
20
5
5
00
00
00
28
6
6
00
00
00
30
7
7
00
00
00
38
8
8
00
00
00
40
9
9
00
00
00
48
10
A
00
00
00
50
・
・
CM44-10150-1
・
・
30
1E
00
00
00
F0
31
1F
00
00
00
F8
32
20
00
00
01
00
FUJITSU MICROELECTRONICS LIMITED
519
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
表 18.3-9 拡張フレームフォーマットにおける ID レジスタの設定例 (2 / 2)
ID (10 進数 )
ID (16 進数 )
BYTE0
BYTE1
・
・
BYTE1
・
・
100
064
00
00
03
20
101
065
00
00
03
28
06
40
・
・
200
・
・
0C8
00
00
・
・
・
・
2043
7FB
00
00
3F
D8
2044
7FC
00
00
3F
E0
2045
7FD
00
00
3F
E8
2046
7FE
00
00
3F
F0
2047
7FF
00
00
3F
F8
・
・
・
・
8190
1FFE
00
00
FF
F0
8191
1FFF
00
00
FF
F8
8192
2000
00
01
00
00
・
・
520
BYTE0
・
・
536870905
1FFFFFF9
FF
FF
FC
80
536870906
1FFFFFFA
FF
FF
FD
00
536870907
1FFFFFFB
FF
FF
FD
80
536870908
1FFFFFFC
FF
FF
FE
00
536870909
1FFFFFFD
FF
FF
FE
80
536870910
1FFFFFFE
FF
FF
FF
00
536870911
1FFFFFFF
FF
FF
FF
80
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
18.3.21 DLC レジスタ x (x=0 ∼ 15) (DLCRx)
DLC レジスタ x (x=0 ∼ 15) (DLCRx) は , メッセージバッファ x に対する DLC をス
トアします。
■ DLC レジスタ x (x=0 ∼ 15) (DLCRx) のビット構成
図 18.3-23 に DLC レジスタ x (x=0 ∼ 15) (DLCRx) のビット構成を示します。
図 18.3-23 DLC レジスタ x (x=0 ∼ 15) (DLCRx) のビット構成
アドレス :
003B60H +2x (CAN1)
bit7
−
−
−
bit6
−
−
−
bit5
−
−
−
bit4
−
−
−
bit3
DLC3
R/W
X
bit2
DLC2
R/W
X
bit1
DLC1
R/W
X
bit0
DLC0
R/W
X
←初期値
R/W: リード / ライト可能
X:
不定値
−:
未定義
● 送信
• データフレームが送信する ( 送信 RTR レジスタ (TRTRR) の TRTRx が "0") ときに ,
送信メッセージのデータ長 ( バイト単位 ) を設定します。
• リモートフレームが送信する (TRTRx=1) ときに , 要求メッセージのデータ長 ( バイ
ト単位 ) を設定します。
<注意事項>
0000B ∼ 1000B (0 ∼ 8 バイト ) 以外の設定は禁止されています。
● 受信
• データフレームが受信された ( リモートフレーム要求受信レジスタ (RRTRR) の
RRTRx が "0") ときに , 受信メッセージのデータ長 ( バイト単位 ) を記憶します。
• リモートフレームが受信された (RRTRx=1) ときに , 要求メッセージのデータ長 ( バ
イト単位 ) を記憶します。
<注意事項>
DLC レジスタへの書込み動作は , ワード単位で行わなければなりません。バイト単位で書
込み動作をすると , 下位バイトへの書込み時に上位バイトに不定データを書き込んでしま
います。上位バイトへの書込みは無視されます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
521
第 18 章 CAN コントローラ
18.3
18.3.22
MB90930 シリーズ
データレジスタ x (x=0 ∼ 15) (DTRx)
データレジスタ x (x=0 ∼ 15) (DTRx) は , メッセージバッファ (x) に対するデータレ
ジスタです。
データレジスタ x (x=0 ∼ 15) (DTRx) はデータフレームの送信および受信にのみ使
用されるレジスタで , リモートフレームの送信および受信には使用されません。
■ データレジスタ x (x=0 ∼ 15) (DTRx) のビット構成
図 18.3-24 にデータレジスタ x (x=0 ∼ 15) (DTRx) のビット構成を示します。
図 18.3-24 データレジスタ x (x=0 ∼ 15) (DTRx) のビット構成
BYTE0
アドレス :
003B80H +8x (CAN1)
bit7
D7
R/W
X
bit6
D6
R/W
X
bit5
D5
R/W
X
bit4
D4
R/W
X
bit3
D3
R/W
X
bit2
D2
R/W
X
bit1
D1
R/W
X
bit0
D0
R/W
X
←初期値
bit15
D7
R/W
X
bit14
D6
R/W
X
bit13
D5
R/W
X
bit12
D4
R/W
X
bit11
D3
R/W
X
bit10
D2
R/W
X
bit9
D1
R/W
X
bit8
D0
R/W
X
←初期値
bit7
D7
R/W
X
bit6
D6
R/W
X
bit5
D5
R/W
X
bit4
D4
R/W
X
bit3
D3
R/W
X
bit2
D2
R/W
X
bit1
D1
R/W
X
bit0
D0
R/W
X
←初期値
bit15
D7
R/W
X
bit14
D6
R/W
X
bit13
D5
R/W
X
bit12
D4
R/W
X
bit11
D3
R/W
X
bit10
D2
R/W
X
bit9
D1
R/W
X
bit8
D0
R/W
X
←初期値
bit7
D7
R/W
X
bit6
D6
R/W
X
bit5
D5
R/W
X
bit4
D4
R/W
X
bit3
D3
R/W
X
bit2
D2
R/W
X
bit1
D1
R/W
X
bit0
D0
R/W
X
←初期値
bit15
D7
R/W
X
bit14
D6
R/W
X
bit13
D5
R/W
X
bit12
D4
R/W
X
bit11
D3
R/W
X
bit10
D2
R/W
X
bit9
D1
R/W
X
bit8
D0
R/W
X
←初期値
BYTE1
アドレス :
003B81H +8x (CAN1)
BYTE2
アドレス :
003B82H +8x (CAN1)
BYTE3
アドレス :
003B83H +8x (CAN1)
BYTE4
アドレス :
003B84H +8x (CAN1)
BYTE5
アドレス :
003B85H +8x (CAN1)
( 続く )
522
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.3
MB90930 シリーズ
( 続き )
BYTE6
アドレス :
003B86H +8x (CAN1)
bit7
D7
R/W
X
bit6
D6
R/W
X
bit5
D5
R/W
X
bit4
D4
R/W
X
bit3
D3
R/W
X
bit2
D2
R/W
X
bit1
D1
R/W
X
bit0
D0
R/W
X
←初期値
bit15
D7
R/W
X
bit14
D6
R/W
X
bit13
D5
R/W
X
bit12
D4
R/W
X
bit11
D3
R/W
X
bit10
D2
R/W
X
bit9
D1
R/W
X
bit8
D0
R/W
X
←初期値
BYTE7
アドレス :
003B87H +8x (CAN1)
R/W: リード / ライト可能
X:
不定値
● 送信メッセージデータ (0 ∼ 8 バイトのいずれか ) の設定
データは MSB で開始して BYTE0, BYTE1, ...BYTE7 の順で送信されます。
● 受信メッセージデータ
データは MSB で開始して BYTE0, BYTE1, ...BYTE7 の順で記憶されます。
受信メッセージデータが8バイトより少なくても, データが記憶されるデータレジスタ
(DTRx) の残りのバイトは不定となります。
<注意事項>
データレジスタへの書込み動作は , ワード単位で行わなければなりません。バイト単位で
書き込むと , 下位バイトへの書込み時に上位バイトに不定データを書き込んでしまいま
す。上位バイトへの書込みは無視されます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
523
第 18 章 CAN コントローラ
18.4
18.4
MB90930 シリーズ
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) 。データフレームまたはリモートフレームのいずれをストアしても送信要
求は解除されます。
524
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.4
MB90930 シリーズ
■ CAN コントローラの送信の完了
送信が成功したときに RRTRx および TREQx は "0" になり , 送信完了レジスタ (TCR)
の TCx は "1" になります。送信完了割込みが許可されている場合 ( 送信割込み許可レ
ジスタ (TIER) の TIEx が "1" の場合 ) には , 割込みが発生します。
■ CAN 送信設定フローチャート
図 18.4-1 に CAN 送信設定のフローチャートを示します。
図 18.4-1 CAN 送信設定のフローチャート
開始
ビットタイミングの設定
フレームフォーマットの設定
IDの設定
アクセプタンスフィルタの設定
ビットタイミングレジスタ(BTR)
IDEレジスタ(IDER)
IDレジスタ(IDR)
アクセプタンスマスク選択レジスタ(AMSR)
アクセプタンスマスクレジスタ(AMR0,1)
使用するメッセージバッファを選択する
メッセージバッファ有効レジスタ(BVALR)
送信完了割込みの設定
送信割込み許可レジスタ(TIER)
データフレーム
フレームタイプの選択
リモートフレーム
フレームタイプの設定
送信RTRレジスタ(TRTRR=0)
フレームタイプの設定
送信RTRレジスタ(TRTRR=1)
要求データ長の設定
DLCレジスタ(DLCR)
送信データ長の設定
DLCレジスタ(DLCR)
データレジスタに送信データを格納
データレジスタ(DTR)
リモートフレーム
受信待ち
YES
NO
リモートフレーム受信待ち
RFWTR=0
リモートフレーム受信待ち
RFWTR=1
バス動作停止の解除HALT=1
メッセージ信号
データフレームの送信要求の設定
データフレーム送信(TREQR)
リモートフレーム受信待ち
通信エラー
送信成功?
TCR
YES:1
NO:0
送信キャンセル?
NO
YES
送信要求のキャンセル
送信TCANRレジスタ
TREQR
1
0
1
TCR
0
送信完了
送信キャンセル
終了
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
525
第 18 章 CAN コントローラ
18.4
MB90930 シリーズ
■ CAN コントローラの送信フローチャート
図 18.4-2 に , CAN コントローラの送信フローチャートを示します。
図 18.4-2 CAN コントローラの送信フローチャート
送信要求
(TREQx = 1)
TCx = 0
0
TREQx?
1
0
RFWTx?
1
PRTRx?
0
1
上記条件を満足するほかのメッセージバッファ
がある場合, その中で最下位番号メッセージ
バッファを選択
バスは使用されて
いないか?
NO
YES
0
TRTRx?
1
リモートフレームが送信される
データフレームが送信される
送信は
成功したか。
NO
YES
TCANx ?
RRTEx = 0
TREQx = 0
TC = 1
TIEx?
0
0
1
TREQx = 0
1
送信完了割込みが
発生する
送信の終了
526
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
18.5
CAN コントローラの受信
第 18 章 CAN コントローラ
18.5
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 に
記憶されます。
図 18.5-1 には , 受信メッセージを記憶すべきメッセージバッファ x を決定するための
フローチャートが示されています。メッセージバッファは , バッファ番号順に , AMSR
の各ビットが全ビット比較にセットされたメッセージバッファ , AMR0 または AMR1
を使用しているメッセージバッファおよび AMSR の各ビットが全ビットマスクにセッ
トされたメッセージバッファの順番に設定されることを推奨します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
527
第 18 章 CAN コントローラ
18.5
MB90930 シリーズ
図 18.5-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" になります。こ
の結果 , 送信を実行しなかったメッセージバッファへのリモートフレームの送信に対
する要求は解除されます。
<注意事項>
• データフレーム送信に対する要求は解除されません。
• 送信要求の解除に関しては「18.4 CAN コントローラの送信 」を参照してください。
528
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.5
MB90930 シリーズ
■ 受信完了
受信完了レジスタ (RCR) の RCx は , 受信メッセージを記憶した後に "1" になります。
受信割込みが許可されていると ( 受信割込み許可レジスタ (RIER) の RIEx が "1") 割込
みが発生します。
<注意事項>
この CAN コントローラは , それ自身が送信したメッセージを受信することはありません。
■ CAN 受信設定のフローチャート
図 18.5-2 に CAN 受信設定のフローチャートを示します。
図 18.5-2 CAN 受信設定フローチャート
開始
ビットタイミングの設定
ビットタイミングレジスタ(BTR)
フレームフォーマットの設定 IDEレジスタ(IDER)
IDの設定
IDレジスタ(IDR)
アクセプタンスフィルタの設定 アクセプタンスマスク選択レジスタ(AMSR)
アクセプタンスマスクレジスタ(AMR0,1)
使用するメッセージバッファを選択する
メッセージバッファ有効レジスタ(BVALR)
受信完了割込みの設定
受信割込み要求許可レジスタ(RIER)
バス動作停止の解除HALT=1
メッセージが受信されたか
RCR=1?
NO
YES
メッセージ格納処理
受信完了割込みなどにて処理
受信バイト数読出し
受信オーバランフラグクリア
ROVRR=0
受信メッセージの読出し
受信オーバラン?
ROVRR=0?
NO
YES
受信完了割込みフラグクリア
RCR=0
終了
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
529
第 18 章 CAN コントローラ
18.5
MB90930 シリーズ
■ CAN コントローラの受信フローチャート
図 18.5-3 に , CAN コントローラの受信フローチャートを示します。
図 18.5-3 CAN コントローラの受信フローチャート
データフレームまたはリモート
フレームの開始(SDF)の検出
NO
アクセプタンスフィルタを
パスするメッセージバッファ(x)
はあるか。
YES
NO
受信は成功したか。
YES
受信メッセージを記憶する
メッセージバッファ(x)を決定
受信メッセージをメッセージ
バッファ(x)に記憶
1
RCx?
0
ROVRx = 1
リモートフレーム
データフレーム
受信メッセージは?
RRTRx = 0
RRTRx = 1
1
TRTRx?
0
TREQx = 0
RCx = 1
1
RIEx?
0
受信割込みが発生する
受信の終了
530
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
18.6
CAN コントローラの使用方法
第 18 章 CAN コントローラ
18.6
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) なときに設定すると , 不必要な受信メッセージがストアされる可能性があ
ります。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
531
第 18 章 CAN コントローラ
18.6
MB90930 シリーズ
■ アクセプタンスフィルタの設定
メッセージバッファ (x) のアクセプタンスフィルタは , アクセプタンスコードおよびア
クセプタンスマスク設定により設定されます。それはアクセプタンスメッセージバッ
ファ (x) が無効 ( メッセージバッファ有効レジスタ (BVALR) の BVALx が "0") なとき
に設定しなければなりません。バッファが有効 (BVALx=1) なときに設定すると , 不必
要な受信メッセージがストアされる可能性があります。
各メッセージバッファ (x) で使用されたアクセプタンスマスクをアクセプタンスマス
ク選択レジスタ (AMSR) により設定してください。アクセプタンスマスクレジスタ
(AMR0 および AMR1) も使用する場合には設定しなければなりません ( 設定の詳細に
関しては「18.3.17 アクセプタンスマスク選択レジスタ (AMSR)」および「18.3.18 アク
セプタンスマスクレジスタ 0 および 1 (AMR0/AMR1)」を参照 ) 。
アクセプタンスマスクは , 不必要な受信メッセージがストアされたときでも送信要求
が解除されないように設定しなければなりません。例えば , それは同一の ID のメッ
セージのみを送信する場合には , フルビット比較に設定しなければなりません。
■ 低消費電力モードの設定
F2MC-16LX を低消費電力モード ( 停止など ) に設定するには , 制御ステータスレジス
タ (CSR) のバス動作停止ビット (HALT) に "1" を書き込んでから , バス動作が停止した
か (HALT=1) をチェックしてください。
532
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.7
MB90930 シリーズ
18.7
メッセージバッファ (x) による送信方法
ビットタイミングの設定 , フレームフォーマットの設定 , ID の設定およびアクセプ
タンスフィルタの設定が完了した後で , BVALx を "1" に設定してメッセージバッ
ファ (x) を有効にしてください。
■ メッセージバッファ (x) による送信方法
● 送信データ長コードの設定
送信データ長コード ( バイト単位 ) を DLC レジスタ (DLCRx) の DLC3 ∼ DLC0 に設定
してください。
データフレーム送信 ( 送信 RTR レジスタ (TRTRR) の TRTRx が "0" のとき ) に対して
は , 送信メッセージのデータ長を設定してください。
リモートフレーム送信 (TRTRx=1 のとき ) に対しては , 要求メッセージのデータ長 ( バ
イト単位 ) を設定してください。
0000B ∼ 1000B (0 ∼ 8 バイト ) 以外の設定は禁止されています。
● 送信データの設定 ( データフレームの送信に対してのみ )
データフレーム送信 ( 送信 RTR レジスタ (TRTRR) の TRTRx が "0" のとき ) に対して
は , データを送信バイト数分データレジスタ (DTRx) に設定してください。
送信データは , 送信要求レジスタ (TREQR) の TREQx ビットを "0" に設定して再書込み
しなければなりません。
メッセージバッファ有効レジスタ (BVALR) の BVALx ビットを "0" に設定する必要は
ありません。BVALx ビットを "0" に設定すると , リモートフレーム受信を喪失する可
能性があります。
● 送信 RTR レジスタの設定
データフレーム送信に対しては , 送信 RTR レジスタ (TRTRR) の TRTRx を "0" に設定
してください。
リモートフレーム送信に対しては , TRTRx を "1" に設定してください。
● 送信開始条件の設定 ( データフレームの送信のみ )
データフレーム送信に対する要求が設定された直後に送信を開始するには , リモート
フレーム受信待機レジスタ (RFWTR) の RFWTx を "0" に設定してください ( 送信要求
レジスタ (TREQR) のTREQxは"1"で, 送信RTRレジスタ (TRTRR) のTRTRxは"0"です) 。
データフレーム送信に対する要求が設定 (TREQx=1 および TRTRx=0) された後にリ
モートフレームを受信する ( リモート要求受信レジスタ (RRTRR) の RRTRx が "1" にな
る ) まで待機した後に送信を開始するには , RFWTx を "1" に設定してください。
RFWTx が "1" に設定されると , リモートフレーム送信を行うことはできません。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
533
第 18 章 CAN コントローラ
18.7
MB90930 シリーズ
● 送信完了割込みの設定
送信完了割込みを発生する場合には , 送信割込み許可レジスタ (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" を書き込んでそれを "0" に設定してください。
これにより , 送信完了割込みが解除されます。
次の場合には , 待ち状態中の送信要求はメッセージの受信および記憶により解除され
ます。
• データフレームの受信によるデータフレーム送信の要求
• データフレームの受信によるリモートフレーム送信の要求
• リモートフレームの受信によるリモートフレーム送信の要求
データフレーム送信に対する要求は , リモートフレームの受信および記憶によっては
解除されません。ただし , ID および DLC は , 受信したリモートフレームの ID および
DLC により変更されます。送信されるべきデータフレームの ID および DLC は , 受信
したリモートフレームの値になることに注意してください。
534
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.8
MB90930 シリーズ
18.8
メッセージバッファ (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" を書き込んで ,
それを "0" に設定し ( 受信完了割込みも解除されます ) 受信を終了します。
ROVRx=1 の場合は受信オーバランが発生し , 処理された受信メッセージに新たな受信
メッセージが上書きされている可能性があります。この場合には , ROVRx ビットに "0"
を書き込んで , それを "0" に設定した後に受信メッセージを再処理しなければなりませ
ん。
図 18.8-1 に , 受信割込み処理の一例を示します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
535
第 18 章 CAN コントローラ
18.8
MB90930 シリーズ
図 18.8-1 受信割込み処理の例
RCx = 1で割込み
受信メッセージの読出し
A := ROVRx
ROVRx := 0
A = 0?
NO
YES
RCx := 0
終了
536
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.9
MB90930 シリーズ
18.9
マルチレベルメッセージバッファの構成の決定
受信が頻繁に行われる場合または不特定多数のメッセージを受信する場合 , すなわ
ちメッセージを処理する時間が不十分なときは , 1 つ以上のメッセージバッファを組
み合せてマルチレベルメッセージバッファにすることにより , CPU による受信メッ
セージの処理に対して余裕を与えてください。
■ マルチレベルメッセージバッファの構成の決定
マルチレベルメッセージバッファを用意するには , 組み合せられた各メッセージバッ
ファに同じアクセプタンスフィルタを設定してください。
アクセプタンスマスク選択レジスタ (AMSR) の各ビットが , 全ビット比較 ( (AMSx.1,
AMSx.0) = (0, 0) ) に設定されている場合には, メッセージバッファをマルチレベルメッ
セージ構成とすることはできません。これは , 全ビット比較では , 受信完了レジスタ
(RCR) の RCx ビットの値のいかんにかかわらず , 受信メッセージが記憶されることか
ら , 1 つ以上のメッセージバッファに対して全ビット比較および同一アクセプタンス
コード (IDレジスタ (IDRx) ) が指定されたとしても, 受信メッセージが常に下位番号の
( 優先度の低い ) メッセージバッファに記憶されるからです。このため , 全ビット比較
および同一アクセプタンスコードを 1 つ以上のメッセージバッファに指定してはなり
ません。
図 18.9-1 にマルチレベルメッセージバッファの動作例を示します。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
537
第 18 章 CAN コントローラ
18.9
MB90930 シリーズ
図 18.9-1 マルチレベルメッセージバッファの動作例
:初期化
AMS15, AMS14, AMS13
AMSR 10 10 10
AM28~AM18
AMR0選択
AMS0
0000 1111 111
IDE
ID28~ID18
RC15, RC14, RC13
メッセージバッファ 13
0101 0000 000
0
RCR
0
0
0
メッセージバッファ 14
0101 0000 000
0
ROVRR
0
0
0
メッセージバッファ 15
0101 0000 000
ROVR15, ROVR14, ROVR13
マスク
メッセージ受信中:受信メッセージはメッセージバッファ13に記憶されます。
IDE
ID28~ID18
メッセージ受信中
0101 1111 000
0
メッセージバッファ 13
0101 1111 000
0
メッセージバッファ 14
0101 0000 000
メッセージバッファ 15
0101 0000 000
RCR
0
0
1
ROVRR
0
0
0
0
メッセージ受信中:受信メッセージはメッセージバッファ14に記憶されます。
メッセージ受信中
0101 1111 001
0
メッセージバッファ 13
0101 1111 000
0
メッセージバッファ 14
0101 1111 001
メッセージバッファ 15
0101 0000 000
RCR
0
1
1
ROVRR
0
0
0
0
メッセージ受信中:受信メッセージはメッセージバッファ15に記憶されます。
メッセージ受信中
0101 1111 010
0
メッセージバッファ 13
0101 1111 000
0
メッセージバッファ 14
0101 1111 001
メッセージバッファ 15
0101 0000 010
RCR
1
1
1
ROVRR
0
0
0
0
メッセージ受信中:オーバランが発生した場合(ROVR=13), 受信メッセージはメッセージバッファ13に
記憶されます。
メッセージ受信中
0101 1111 011
0
メッセージバッファ 13
0101 1111 011
0
メッセージバッファ 14
0101 1111 001
メッセージバッファ 15
0101 0000 010
RCR
1
1
1
ROVRR
0
0
1
0
<注意事項>
4 個のメッセージが , 同一のアクセプタンスフィルタ設定によりメッセージバッファ 13,
14 および 15 に受信されます。
538
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.10
MB90930 シリーズ
18.10 CAN ウェイクアップ機能
RX1 は INT1 と , それぞれ端子を共有しています。INT1 の割込みを許可することに
よって , CAN の受信動作でウェイクアップすることができます。
■ CAN ウェイクアップ機能で使用する端子について
RX1 と INT1 端子は端子を共有しているので , INT1 の割込みを許可することでウェイ
クアップ機能を使用することができます。
表 18.10-1 に CAN ウェイクアップ機能と RX 端子および INT 端子の関係を示します。
表 18.10-1 CAN ウェイクアップ機能と RX 端子および INT 端子
CAN1
RX 端子
割込み機能
RX1
INT1
■ CAN ウェイクアップ機能について
CAN の受信データによりスリープモード , タイムベースタイマモード , ストップモー
ドの各モードから復帰することができます。
<注意事項>
CAN ウェイクアップ機能を使用する場合は , スリープモード , タイムベースタイマモード ,
ストップモードの各モードに移行する前に外部割込みの設定を行っておく必要がありま
す。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
539
第 18 章 CAN コントローラ
18.11
18.11
MB90930 シリーズ
CAN コントローラ使用上の注意
CAN コントローラを使用する場合は , 以下の点に注意してください。
■ BVAL ビットによるメッセージバッファ禁止時の注意
メッセージバッファの内容の読出しや書込みの処理を行うために, BVALビットを使用
してメッセージバッファを禁止すると , CAN コントローラの送受信が正常に行われな
い可能性があります。本注意事項は , この現象を回避する方法を説明しています。
● 発生条件
以下の 2 つの条件を同時に満たす場合に , CAN コントローラの送信動作が正常に行わ
れない可能性があります。
• CAN コントローラが CAN 通信に参加している状態 , つまり HALT ビットの読出し
値が "0" で , CAN コントローラが CAN バスの通信に参加しており送受信が可能な
状態
• BVAL ビットの設定でメッセージバッファを禁止して , メッセージバッファの内容
へ読出しや書込みの処理を行う場合
● 処置
• 送信要求の抑止をする場合の操作
送信要求を抑止または中止する場合は , BVAL ビットを使用せず , TCAN ビットを
使用してください。
• 送信メッセージを構成する場合の操作
送信メッセージの構成を行うために , ID レジスタや IDE レジスタの設定を行う場合 ,
BVAL ビットを使用してメッセージバッファを禁止してください。この際 , 送信要
求ビットを読み出して "0" であること (TREQ=0) を確認するか , 送信完了ビットに
より送信が完了したこと (TC=1) を確認した後で , BVAL ビットによる禁止処理
(VBAL=0) を行ってください。
メッセージバッファを無効にする場合 , 必ず待機中の送信要求がないことを確認し
てください ( 事前に送信要求を行った場合 )。処理中の送信がないことを確認する
まで BVALx ビットに "0" を書き込まないでください。
a) 送信要求をキャンセルする : TCANx=1 ( 必要がある場合 )
b) 送信完了を待つ (TREQx=1 の間 ) : ビットをポーリングまたは送信完了割込み
必ず , 上記の手順を踏んだ後で送信バッファを無効 (BVALx=0) にしてください。
<注意事項>
上記 a) において , すでにバッファが送信を開始している場合は , 送信キャンセルは無視さ
れます。バッファは送信完了後に無効になります。
540
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 18 章 CAN コントローラ
18.12
MB90930 シリーズ
18.12 CAN プログラム例
CAN のプログラム例を示します。
■ CAN 送受信のプログラム例
● 処理仕様
CAN0 のバッファ 5 をデータフレーム送信 , バッファ 0 を受信に設定します。
• フレームフォーマットの設定を標準フレームフォーマットにします。
• ID の設定 : バッファ 0 ID=0, バッファ 5 ID=5
• ビットレートを 100kbps ( 内部動作周波数 f=16MHz)
• アクセプタンスマスク ( フルビット比較 )
• バスにエントリした後 (HALT=0) にデータ A0A0H を送信します。
• 送信完了割込みルーチン内で送信要求 (TREQx=1) を出し , 同じデータを送信します
(TREQx を送信開始に設定すると , 送信完了割込みフラグはクリアされます ) 。
• 受信割込みルーチンでは , 受信割込みフラグをクリアします。
[ コーディング例 ]
:
:
:
// データフォーマット設定 (CAN 初期化 )
MOVW
IDER0, #0000H
MOVW
BTR0, #05CC7H
MOVW
BVALR0, #21H
MOVW
IDR51, #0A000H
MOVW
IDR01, #2000H
MOVW
ANSR00, #0000H
// 送信設定
MOVW
DLCR5, #020H
MOVW
RFTR0, #0000H
MOVW
TRTR0, #0000H
送信 )
MOVW
TIRER0, #0020H
; 送信割込み許可レジスタ
// 送信設定
MOVW
RIER5, #0001H
; 受信割込み許可レジスタ
// バス動作開始
MOVW
CSR00, #80H
shift
BBS CSR00:0, shift
; 制御ステータスレジスタ (HALT=0)
; HALT=0 待ち
// 送信データセット
MOVW
DTR50, #0A0A0H
MOVW
TREQR0, #0020H
:
:
:
// 受信完了割込み
CAN0RX
MOVW, #0000H
RETI
// 送信完了割込み
CAN0TX
MOVW TREQR0, #0020H
RETI
:
:
:
CM44-10150-1
; フレームフォーマット設定 (0: 設定 , 1: 拡張 )
; ビットレート設定 100kbit/s( 内部動作周波数 f=16MHz))
; メッセージバッファ 5, 0 有効
; データフレーム 5ID 設定 (ID=0005)
; データフレーム 0ID 設定 (ID=0001)
; アクセプタンスマスク選択レジスタ ( フルビット比較 )
; 転送データ長設定 (00H 0 バイト長 08H 8 バイト長 )
; リモートフレーム受信待機レジスタ
; リモート送信要求 (0: データ転送 , 1: リモートフレーム
; メッセージバッファ 5 のデータレジスタに A0A0H を書く
; 送信要求レジスタ (1: 送信開始 0: 送信停止 )
; 受信完了レジスタ
; 送信要求レジスタ (1: 送信完了 , O: 送信停止 )
FUJITSU MICROELECTRONICS LIMITED
541
第 18 章 CAN コントローラ
18.12
542
MB90930 シリーズ
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 19 章
LCD コントローラ /
ドライバ
LCD コントローラ / ドライバの機能と動作につい
て説明します。
19.1 LCD コントローラ / ドライバの概要
19.2 LCD コントローラ / ドライバの構成
19.3 LCD コントローラ / ドライバの端子
19.4 LCD コントローラ / ドライバのレジスタ
19.5 LCD コントローラ / ドライバの表示用 RAM
19.6 LCD コントローラ / ドライバの動作
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
543
第 19 章 LCD コントローラ / ドライバ
19.1
19.1
MB90930 シリーズ
LCD コントローラ / ドライバの概要
LCD コントローラ / ドライバは , 16 × 8 ビットの表示データメモリを内蔵し , 4 本
のコモン出力と 32 本のセグメント出力によって LCD 表示の制御を行います。3 種
類のデューティ出力を選択でき , LCD パネル ( 液晶表示器 ) を直接駆動できます。
■ LCD コントローラ / ドライバの機能
LCD コントローラ / ドライバは , 表示データメモリ ( 表示用 RAM) の内容をセグメント
出力とコモン出力によって LCD パネル ( 液晶表示器 ) を直接表示する機能があります。
• LCD 駆動電圧分割抵抗を内蔵しています。また , 外部分割抵抗を接続できます。
• 最大で 4 本のコモン出力 (COM0 ∼ COM3) と 32 本のセグメント出力 (SEG00 ∼
SEG31) を使用できます。
• 16 バイトの表示データメモリ ( 表示用 RAM) を内蔵しています。
• デューティは, 1/2, 1/3, 1/4を選択できます (バイアスの設定によって制限されます) 。
• LCD を直接駆動できます。
表 19.1-1 に使用できるバイアスデューティの組合せを示します。
表 19.1-1 バイアスデューティの組合せ表
1/2 デューティ
1/3 デューティ
1/4 デューティ
1/2 バイアス
○
×
×
1/3 バイアス
×
○
○
バイアス
○ : 推奨モード
× : 使用禁止
<注意事項>
各 SEG 端子は , LCRH, LOCR1, LOCR2 の設定で汎用ポートを選択した場合にはセグメン
ト出力としては使用できません。
544
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 19 章 LCD コントローラ / ドライバ
19.2
MB90930 シリーズ
19.2
LCD コントローラ / ドライバの構成
LCD コントローラ / ドライバは , 次の 8 つのブロックで構成されており , 機能的には
表示用 RAM の内容に従って , セグメント信号とコモン信号を発生するコントローラ
部と , LCD を駆動するためのドライバ部に分けられます。
• LCD 制御レジスタ (LCRL/LCRH)
• 表示用 RAM
• プリスケーラ
• タイミングコントローラ
• 交流化回路
• コモンドライバ
• セグメントドライバ
• 分割抵抗
■ LCD コントローラ / ドライバのブロックダイヤグラム
図 19.2-1 に LCD コントローラ / ドライバのブロックダイヤグラムを示します。
図 19.2-1 LCD コントローラ / ドライバのブロックダイヤグラム
V0 V1 V2 V3
LCD制御レジスタ下位
(LCRL)
分割抵抗
タイミング
コントローラ
交流化
サブクロック
回路
セグメントドライバ
内部データバス
タイムベース
タイマ出力
プリ
スケーラ
コモンドライバ
4
32
表示用RAM
16×8ビット
COM0
COM1
COM2
COM3
SEG00
SEG01
SEG02
SEG03
SEG04
~
SEG26
SEG27
SEG28
SEG29
SEG30
SEG31
LCD制御レジスタ上位
(LCRH)
コントローラ
CM44-10150-1
ドライバ
FUJITSU MICROELECTRONICS LIMITED
545
第 19 章 LCD コントローラ / ドライバ
19.2
MB90930 シリーズ
● LCD 制御レジスタ下位 (LCRL)
LCD 駆動電源制御 , 表示 / 表示ブランキングの選択 , 表示モードの選択 , LCD クロック
の周期選択を行います。
● LCD 制御レジスタ上位 (LCRH)
セグメント出力 (SEG12 ∼ SEG23) と汎用ポートとの切換えを行うレジスタです。
● LCD 出力制御レジスタ 1/2 (LOCR1/LOCR2)
セグメント出力 (SEG00 ∼ SEG11, SEG24 ∼ SEG31) と汎用ポートとの切換えを行うレ
ジスタです。
● LCD 出力制御レジスタ 3 (LOCR3)
基準電源端子 (V0 ∼ V2) と汎用ポートとの切換えを行うレジスタです。
● 表示用 RAM
セグメント出力信号発生用の 16 × 8 ビットの RAM です。この RAM の内容は , コモ
ン信号の選択タイミングに同期して自動的に読み出され , セグメント出力端子より出
力されます。
● プリスケーラ
4 種類の周波数から選択された設定によって , フレーム周波数を発生します。
● タイミングコントローラ
フレーム周波数と LCRL レジスタの設定を元に , コモン信号 , セグメント信号の制御を
行います。
● 交流化回路
タイミングコントローラの信号から , LCD を駆動するための交流波形を生成します。
● コモンドライバ
LCD のコモン端子のドライバです。
● セグメントドライバ
LCD のセグメント端子のドライバです。
● 分割抵抗
LCD 駆動電圧を分割して発生させるための抵抗です。分割抵抗は外付けすることもで
きます。
■ LCD コントローラ / ドライバの電源電圧
LCD ドライバの電源電圧は , 内蔵の分割抵抗を使用するか , V0 ∼ V3 端子に分割抵抗
を接続することにより設定します。
546
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 19 章 LCD コントローラ / ドライバ
19.2
MB90930 シリーズ
19.2.1
LCD コントローラ / ドライバの内部分割抵抗
LCD ドライバの電源電圧は , V0 ∼ V3 端子に接続された外部分割抵抗または内部分
割抵抗によって作られます。
■ LCD コントローラ / ドライバの内部分割抵抗
LCD コントローラ / ドライバには , 内部分割抵抗が内蔵されています。また , LCD 駆
動用電源端子 (V0 ∼ V3) に外部分割抵抗を接続することもできます。
内部分割抵抗と外部分割抵抗の選択は , LCD 制御レジスタの駆動電源制御ビット
(LCRL の VSEL) で行います。VSEL ビットを "1" にすることにより内部分割抵抗が通
電状態になるので , 外部分割抵抗を接続せずに , 内部分割抵抗を使用する場合には
VSEL ビットを "1" に設定してください。
LCD コントローラ許可は , LCD 動作停止 (LCRL の MS1, MS0=00B) のときに非アクティ
ブになります。
図 19.2-2 に内部分割抵抗の等価回路を示します。
図 19.2-2 内部分割抵抗の等価回路
VCC
V3
V3
P-ch
R
N-ch
V2
V2
P-ch
R
N-ch
V1
V1
P-ch
R
N-ch
V0
LCDコント
ローラ許可
V0
N-ch
VSEL
V0~V3 : V0~V3端子の電圧値
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
547
第 19 章 LCD コントローラ / ドライバ
19.2
MB90930 シリーズ
■ 内部分割抵抗の使用
内部分割抵抗を使用した場合でも , VCC ∼ V3 端子間には外部に抵抗を接続してくださ
い。図 19.2-3 に内部分割抵抗を使用するときの状態を示します。
1/2 バイアス設定を行う場合は , V2 端子と V1 端子を短絡してください。
図 19.2-3 内部分割抵抗を使用時の状態
VCC
VCC
VR
VR
V3
V3
V3
V2
R
V2
V3
R
V2
V2
短絡する
R
V1
R
V0
LCDコントローラ
許可
R
V0
V0
N-ch
R
V1
V1
V0
N-ch
LCDコントローラ
許可
1/2バイアス
V1
1/3バイアス
V0~V3 : V0~V3端子の電圧値
■ 内部分割抵抗使用時の輝度調整
内部分割抵抗を使用して輝度が上がらない場合には , 図 19.2-4 に示すように , VCC ∼
V3 端子間に外部 可変抵抗 (VR) を接続して V3 の電圧を調節してください。
図 19.2-4 内部分割抵抗を使用時の輝度調節
VCC
VR
V3
V2
V1
V0
LCDコントローラ
許可
V3
R
R
R
V2
V1
V0
N-ch
輝度調整をしたい場合
V0~V3 : V0~V3端子の電圧値
548
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 19 章 LCD コントローラ / ドライバ
19.2
MB90930 シリーズ
19.2.2
LCD コントローラ / ドライバの外部分割抵抗
外部分割抵抗または内部分割抵抗を使用して LCD 駆動電圧を発生します。
VCC と V3 端子間に可変抵抗を接続することで , 輝度を調節することができます。
■ LCD コントローラ / ドライバの外部分割抵抗
LCD 駆動電源端子 (V0 ∼ V3) に外部分割抵抗を接続して使用することができます。バ
イアス方式に対応した外部分割抵抗の接続および LCD 駆動電圧を図 19.2-5 , 表 19.2-1
に示します。
図 19.2-5 外部分割抵抗の接続例
VCC
VCC
VR
VR
V3
V3
R
R
V2
V2
VLCD
R
V1
V0
VLCD
V1
R
R
V0
V0=VSS
V0=VSS
1/2バイアス
1/3バイアス
表 19.2-1 LCD 駆動電圧の設定
V3
V2
V1
V0
1/2 バイアス
VLCD
1/2VLCD
1/2VLCD
VSS
1/3 バイアス
VLCD
2/3VLCD
1/3VLCD
VSS
V0 ∼ V3 :V0 ∼ V3 端子の電圧
VLCD
CM44-10150-1
:LCD の動作電圧
FUJITSU MICROELECTRONICS LIMITED
549
第 19 章 LCD コントローラ / ドライバ
19.2
MB90930 シリーズ
■ 外部分割抵抗の使用
V0 端子は内部でトランジスタを通して VSS (GND) に接続されているので , 外部分割抵
抗を使用する場合には分割抵抗の VSS 側を V0 端子にのみ接続することにより , LCD コ
ントローラ停止時に抵抗に流れる電流を遮断することができます。
図 19.2-6 に外部分割抵抗使用時の状態を示します。
図 19.2-6 外部分割抵抗使用時の状態
VCC
V3
V3
V2
V1
V0
VR
RX
R
V2
R
V1
R
V0
RX
RX
V0=VSS
LCDコントローラ許可
N-ch
• 内部分割抵抗の影響を受けずに外部抵抗を接続するには , LCD 制御レジスタの駆動
電圧制御ビット (LCRL の VSEL) に "0" を書き込み , 内部分割抵抗全体を切り離す必
要があります。
• 内部分割抵抗を切り離した状態で, LCD制御レジスタの表示モード選択ビット (LCRL
の MS1, MS0) に "00B" 以外を書き込むと , LCDC 許可トランジスタ (N-ch) が "ON"
になって外部分割抵抗に電流が流れます。
• 表示モード選択ビット (MS1, MS0) に "00B" を書き込むと , LCDC 許可トランジスタ
が "OFF" になって外部分割抵抗に電流が流れなくなります。
<注意事項>
外部に抵抗の RX は , 使用する LCD により異なるので , 適切な値を選択してください。
550
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 19 章 LCD コントローラ / ドライバ
19.3
MB90930 シリーズ
19.3
LCD コントローラ / ドライバの端子
LCD コントローラ / ドライバに関連する端子 , 端子のブロックダイヤグラムを示し
ます。
■ LCD コントローラ / ドライバに関連する端子
LCD コントローラ / ドライバに関連する端子は , 4 本のコモン出力端子 (COM0 ∼ COM3) ,
32 本のセグメント出力端子 (SEG00 ∼ SEG31) , 4 本の LCD 駆動用電源端子 (V0 ∼ V3)
です。
● COM0 ∼ COM3 端子
COM0 ∼ COM3 端子は , LCD コモン出力端子です。
● P22/SEG00 ∼ P35/SEG11, P36/SEG12 ∼ P43/SEG17, P44/SEG18 ∼ P47/SEG21, P90/
SEG22, P91/SEG23, P00/SEG24 ∼ P07/SEG31 端子
上記すべての端子が汎用入出力ポートと LCD セグメント出力端子としての機能を兼用
しています。切換えは , LCRH, LOCR1/2 各レジスタの設定によって行います。
● V0 ∼ V3 端子
V0 ∼ V3 端子は , LCD 駆動用電源端子 (V0 ∼ V3) です。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
551
第 19 章 LCD コントローラ / ドライバ
19.3
MB90930 シリーズ
■ LCD コントローラ / ドライバに関連する端子のブロックダイヤグラム
図 19.3-1 にセグメント出力兼用端子の場合のブロックダイヤグラムを示します。
図 19.3-1 LCD コントローラ / ドライバに関連する端子のブロックダイヤグラム
セグメント出力兼用端子の場合
コモン・セグメント制御信号
P-ch
LCD駆動電圧(V3またはV2)
N-ch
リセット・動作停止信号
LCRH設定
N-ch
P-ch
LCD駆動電圧(V1またはV0)
N-ch
コモンセグメント制御信号
PDR(ポートデータレジスタ)
ストップモード(SPL=1)
またはLCD許可
内部データバス
PDRリード
PDRリード(ビット操作命令時)
出力ラッチ
P-ch
PDRライト
端子
DDR
(ポート方向レジスタ)
DDRライト
N-ch
P00/SEG24~P07/SEG31
P22/SEG00~P27/SEG05
P30/SEG06~P37/SEG13
P40/SEG14~P47/SEG21
P90/SEG22, P91/SEG23
ストップモード(SPL=1)またはLCD許可
SPL
:低消費電力モード制御レジスタ(LPMCR)の端子状態指定ビットです。
V0~V3 :V0~V3端子の電圧値
552
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 19 章 LCD コントローラ / ドライバ
19.4
MB90930 シリーズ
19.4
LCD コントローラ / ドライバのレジスタ
LCD コントローラ / ドライバに関連するレジスタを示します。
■ LCD コントローラ / ドライバに関連するレジスタのビット構成
図 19.4-1 に LCD コントローラ / ドライバに関連するレジスタのビット構成を示します。
図 19.4-1 LCD コントローラ / ドライバに関連するレジスタのビット構成
LCRL (LCDC 制御レジスタ下位 )
アドレス
00006CH
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
CSS
R/W
LCEN
R/W
VSEL
R/W
BK
R/W
MS1
R/W
MS0
R/W
FP1
R/W
FP0
R/W
初期値
00010000B
LCRH (LCDC 制御レジスタ上位 )
アドレス
00006DH
bit15
bit14
bit13
bit12
bit11
bit10
bit9
bit8
予約
R/W
SEG5
R/W
SEG4
R/W
DTCH
R/W
SEG3
R/W
SEG2
R/W
SEG1
R/W
SEG0
R/W
初期値
00000000B
R/W : リード / ライト可能
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
553
第 19 章 LCD コントローラ / ドライバ
19.4
19.4.1
MB90930 シリーズ
LCD 制御レジスタ下位 (LCRL)
LCD 制御レジスタ下位 (LCRL) は , 駆動電源の制御 , 表示ブランキング , 表示モード
の選択を行うレジスタです。
■ LCD 制御レジスタ下位 (LCRL) のビット構成
図 19.4-2 に LCD 制御レジスタ下位 (LCRL) のビット構成を示します。
図 19.4-2 LCD 制御レジスタ下位 (LCRL) のビット構成
アドレス
bit7
00006CH
CSS LCEN VSEL
R/W
bit6
R/W
bit5
R/W
bit4
bit3
bit2
bit1
bit0
初期値
BK
MS1
MS0
FP1
FP0
00010000B
R/W
R/W
R/W
R/W
R/W
フレーム周期選択ビット
タイムベースタイマ サブクロックを選択
FP1 FP0
出力を選択した場合 した場合(CSS=1)
(CSS=0)
0
0
Fc/ (211 × N)
SCLK / (25 × N)
0
1
Fc/ (212 × N)
SCLK / (26 × N)
1
0
Fc/ (213 × N)
SCLK / (27 × N)
1
1
14
Fc/ (2 × N)
SCLK / (28 × N)
N : 時分割数
Fc : 原発振
SCLK : サブクロック
MS1 MS0
0
LCD動作停止
0
1
1/2 デューティ出力モード (時分割数 N=2)
1
0
1/3 デューティ出力モード (時分割数 N=3)
1
1
1/4 デューティ出力モード (時分割数 N=4)
表示ブランキング選択ビット
BK
0
表示
1
表示ブランキング
VSEL
外部分割抵抗を使用する
1
内部分割抵抗を使用する
時計モード時動作許可ビット
0
時計モード時動作を停止する
1
時計モード時動作を停止しない
CSS
554
LCD駆動電源制御ビット
0
LCEN
R/W : リード/ライト可能
: 初期値
表示モード選択ビット
0
クロック選択ビット
0
タイムベースタイマ出力を選択する
1
サブクロックを選択する
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
MB90930 シリーズ
第 19 章 LCD コントローラ / ドライバ
19.4
表 19.4-1 LCD 制御レジスタ下位 (LCRL) の各ビットの機能説明
ビット名
機能
bit7
CSS:
クロック
選択ビット
フレーム周期発生用クロックの選択ビットです。
このビットが "0" のときにタイムベースタイマ出力が選択され , "1" の
ときにサブクロックが選択されます。
bit6
LCEN:
タイムベースタイ
マモード時
動作許可ビット
タイムベースタイマモード時の動作許可ビットです。
タイムベースタイマモード時 , このビットが "0" のときは停止し , "1"
のときは動作します。
bit5
VSEL:
LCD 駆動電源
制御ビット
内部分割抵抗に通電するかどうかを選択するビットです。
このビットが "0" のときに内部分割抵抗は遮断され , "1" のときに導通
します。外部分割抵抗を接続する場合には , このビットを "0" にする必
要があります。
bit4
BK:
表示ブランキング
選択ビット
LCD の表示 / 非表示を選択します。
表示部ブランキング ( 非表示 , BK=1) では , セグメント出力は非選択波
形 ( 表示条件とならない波形 ) になります。
MS1, MS0:
表示モード
選択ビット
出力波形のデューティを 3 種類の中から選択します。
選択したデューティ出力モードに対応して , 使用するコモン端子が決ま
ります。
これらのビットが "0" のときは , LCD コントローラ / ドライバは表示動
作を停止します。
( 注意事項 )
選択したフレーム周期発生用クロックがストップモードへの移行など
で停止する場合には , あらかじめ表示動作を停止してください。
FP1, FP0:
フレーム周期
選択ビット
LCD 表示のフレーム周期を 4 種類の中から選択します。
( 注意事項 )
使用する LCD モジュールに応じて最適フレーム周波数を計算して , レ
ジスタの設定をしてください。
フレーム周波数は , 原発振の周波数の影響を受けます。
bit3,
bit2
bit1,
bit0
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
555
第 19 章 LCD コントローラ / ドライバ
19.4
MB90930 シリーズ
LCD 制御レジスタ上位 (LCRH)
19.4.2
バイアスモードの選択 , セグメント出力 (SEG12 ∼ SEG23) と汎用ポート (P36,
P37, P40 ∼ P47, P90, P91) との切換えを行うレジスタです。
■ LCD 制御レジスタ上位 (LCRH) のビット構成
図 19.4-3 に LCD 制御のレジスタ上位 (LCRH) のビット構成を示します。
図 19.4-3 LCD 制御レジスタ上位 (LCRH) のビット構成
アドレス
bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8
初期値
00006DH
予約 SEG5 SEG4 DTCH SEG3 SEG2 SEG1 SEG0
00000000B
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
バイアス選択ビット
DTCH
0
1/3 バイアス
1
1/2 バイアス
SEG SEG SEG SEG SEG SEG
セグメント出力
5
4
3
2
1
0
0
0
0
0
0
0
なし
0
0
0
0
0
1
SEG12~SEG15 P42~P47,P90,P91
0
0
0
0
1
1
SEG12~SEG19 P46,P47,P90,P91
0
0
0
1
1
1
SEG12~SEG20 P47,P90,P91
0
0
1
1
1
1
SEG12~SEG21 P90,P91
0
1
1
1
1
1
SEG12~SEG22 P91
1
1
1
1
1
1
SEG12~SEG23 なし
予約
R/W : リード/ライト可能
汎用ポート
P36,P37,P40~P47,P90,P91
予約ビット
必ず”0”を設定してください。
: 初期値
556
FUJITSU MICROELECTRONICS LIMITED
CM44-10150-1
第 19 章 LCD コントローラ / ドライバ
19.4
MB90930 シリーズ
表 19.4-2 LCD 制御レジスタ上位 (LCRH) の各ビットの機能説明
ビット名
機能
bit15
予約 : 予約ビット
必ず "0" を設定してください。
bit14
SEG5:
セグメント
端子切換えビット
P91/SEG23 端子をセグメント出力として使用するか , 汎用ポートと
して使用するかを切り換えます。
bit13
SEG4:
セグメント
端子切換えビット
P90/SEG22 端子をセグメント出力として使用するか , 汎用ポートと
して使用するかを切り換えます。
bit12
DTCH:
バイアス選択ビット
内部分割抵抗を使用時の 1/2 または 1/3 バイアスを選択します。こ
のビットが "0" のときに 1/2 バイアスモードが使用され , "1" のとき
に 1/3 バイアスモードが使用されます。1/2 バイアスモードを使用す
るには , 外部抵抗 (LCRL : VSEL=0) で V1 と V2 端子を短絡または内
部抵抗 (LCRL : VSEL=1) でこのビットを "1" に設定してデバイス内
部を短絡してください。
bit11
SEG3:
セグメント
端子切換えビット
P47/SEG21 端子をセグメント出力として使用するか , 汎用ポートと
して使用するかを切り換えます。
bit10
SEG2:
セグメント
端子切換えビット
P46/SEG20 端子をセグメント出力として使用するか , 汎用ポートと
して使用するかを切り換えます。
bit9
SEG1:
セグメント
端子切換えビット
P42/SEG16 ∼ P45/SEG19 端子をセグメント出力として使用するか ,
汎用ポートとして使用するかを切り換えます。
bit8
SEG0:
セグメント
端子切換えビット
P36/SEG12, P37/SEG13, P40/SEG14, P41/SEG15 端子をセグメント出
力として使用するか , 汎用ポートとして使用するかを切り換えます。
CM44-10150-1
FUJITSU MICROELECTRONICS LIMITED
557
第 19 章 LCD コントローラ / ドライバ
19.4
19.4.3
MB90930 シリーズ
LCD 出力制御レジスタ 2/1 (LOCR2/LOCR1)
セグメント出力 (SEG00 ∼ SEG11, SEG24 ∼ SEG31) と汎用ポート (P22 ∼ P27,
P30 ∼ P35, P00 ∼ P07) との切換えを行うレジスタです。
■ LCD 出力制御レジスタ 2/1 (LOCR2/LOCR1) のビット構成
図 19.4-4 に LCD 出力制御のレジスタ 2/1 (LOCR2/LOCR1) のビット構成を示します。
図 19.4-4 LCD 出力制御のレジスタ 2/1 (LOCR2/LOCR1) のビット構成
LOCR1
アドレス 000058H
初期値
LOCR2
アドレス 000059H
初期値
bit7
bit6
bit5
bit4
bit3
bit2
bit1
bit0
SEG010_11
SEG08_09
SEG06_07
SEG04_05
SEG03
SEG02
SEG01
SEG00
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
1
1
1
1
1
1
1
1
bit15
bit14
bBit13
bit12
bit11
bit10
bit9
bit8
SEG31
SEG30
SEG29
SEG28
SEG27
SEG26
SEG25
SEG24
R/W
R/W
R/W
R/W
R/W
R/W
R/W
R/W
0
0
0
0
0
0
0
0
R/W: リード / ライト可能
表 19.4-3 LCD 出力制御レジスタ 2/1 (LOCR2/LOCR1) の設定と端子機能 (1 / 2)
SEG31 ∼ SEG24
SEG10_11 ∼ SEG00
初期値 00000000B
初期値 11111111B
SEG00 ∼ SEG11
P00 ∼ P07
初期値 00000000B
初期値 11111110B
SEG01 ∼ SEG11
P00 ∼ P07, P22
初期値 00000000B
初期値 11111100B
SEG02 ∼ SEG11
P00 ∼ P07, P22, P23
初期値 00000000B
初期値 11111000B
SEG03 ∼ SEG11
P00 ∼ P07, P22 ∼ P24
初期値 00000000B
初期値 11110000B
SEG04 ∼ SEG11
P00 ∼ P07, P22 ∼ P25
初期値 00000000B
初期値 11100000B
SEG06 ∼ SEG11
P00 ∼ P07, P22 ∼ P27
初期値 00000000B
初期値 11000000B
SEG08