R8C/(10〜29)制限事項および準備項目
1.ユーザ側での準備項目
デバックモニタが常駐するためのエリア番地をあけてください。(R5F21xx4/6/8の場合のみ)
ユーザスタックエリアを4バイト使用します。
メモリマップ

  プログラム開始Adr. モニタエリア 書換回数 使用可能内蔵RAM OnChip
R5F211x1 0xF000( 4KB) 公開範囲外 100/1000* 0x400〜0x57F 8MHz
R5F211x2 0xE000( 8KB) 公開範囲外 100/1000* 0x400〜0x5FF 8MHz
R5F211x3 0xD000(12KB) 公開範囲外 100/1000* 0x400〜0x6FF 8MHz
R5F211x4 0xC800(16KB) 0xC000(2KB) 100/1000* 0x400〜0x7FF 8MHz
R5F212x5(x=4/5) 0xA000(24KB) 公開範囲外 100/1000* 0x400〜0xBFF 20MHz
R5F212x5(x=6/7/8/9) 0xA000(24KB) 公開範囲外 100/1000* 0x400〜0x9FF 20MHz
R5F212x6(x=4/5) 0x8800(32KB) 0x8000(2KB) 100/1000* 0x400〜0xBFF 20MHz
R5F212x6(x=6/7/8/9) 0x8800(32KB) 0x8000(2KB) 100/1000* 0x400〜0x9FF 20MHz
R5F212x7(x=4/5) 0x4000(48KB) 公開範囲外 100/1000* 0x400〜0xDFF 20MHz
R5F212x8(x=4/5) 0x4000(64KB) 0x13800(2KB) 100/1000* 0x400〜0xFFF 20MHz
*グループによる。


D1(0xFFDF) ID2(0xFFE3) ID3(0xFFEB) ID4(0xFFEF) ID5(0xFFF3) ID6(0xFFF7) ID7(0xFFFB)

【デフォルト】 R8C10->13(0x82) R8C14->29(0xFF)
2.使用制限事項
モニタ使用の割り込みベクタは、(BRK命令)・(アドレス一致)・(シングルステップ)・(予約)です。(ダウンロード時に自動セット)
リセットベクタ値は各ROM開始アドレスとし、ROM開始アドレスにはスタックポインタ設定の命令を配置して下さい。DEF8Kの[Start]時に、スタックポインタ値のアドレス場所がRAMであるかの調査をしますので、必ずRAM場所を示して下さい。
ターゲットとの接続は、推奨接続参考図をもとに設計して下さい。
H-debuggerのステータスランプが緑で点滅している場合は、モニタ不在です。
必ず<ファイル>−<ブートロード>−<モニタプログラム>を実行してモニタを組み入れて下さい。<
R8Cは、リセット解除時低速リングオシレータで動作しますので、ユーザプログラムにて高速又は中速に切り替えて下さい。ただし、デバッガ起動(エミュレーションモード開始[Start])時は高速リングオシレータ(8/20MHz)になっています。
フラシュメモリへの書き込み時は、内部高速リングオシレータの(÷2)で動作します。
モニタ動作時においては、クロック指定(内部・外部切り替え、分周比設定等)は一切干渉しません。
ただし、デバッグ時は低速リングオシレータ使用時の分周比を2以上にしないで下さい。(通信時タイムオーバエラーになります。)
デバッグ中は、ターゲット基板をハードによるリセットはしないで下さい。仮にリセットした場合は[Start]から開始して下さい。
H-debuggerでのデバッグ時は、VCC(1.8V以上)にして下さい。
エミュレーションモード遷移時(RstMon等)内蔵RAMの内容が書き換わります。
デバイス側の制限としてフラッシュメモリの書き換え回数に制限があります。
3.機能制限事項
レジスタのISP(スタックポインタ)とINTBは、リードオンリです。
メモリへのアクセスは、全てバイトアクセスになっています。(例[short]の場合2バイトアクセス)
4.ブレークに対する注意事項
実行前ブレーク固定です。
MCUに内蔵したアドレス一致割り込みを利用しています。(PC値の補正は、モニタで処理)
MCUに内蔵したシングルステップ割り込みを利用しています。
5.各MCUの特記事項
【R8C10〜13】
この品種は、エミュレーションモード遷移時にIDコードの相違がありますと、フラッシュROM全消去されますのでIDの扱いには注意願います。
デバッグ中、ウォッチドックを使用しないで下さい。
使用端子は、E7/E8仕様と同等の信号線を占有使用します。
RxD1(P1) TxD1(P32) CNVss(P2) MODE(P28) RESET(共有)
IDコード登録・変更機能を追加した関係上、この品種のフラッシュ書き込みにおいてモニタなしの指定はできません。
ソースブレークは利用できますが、PUTCHは利用できません。
【R8C14〜17】
デバッグ中、ウォッチドック使用可能です。
使用端子は、E8a仕様と同等の信号線を占有使用します。
MODE RESET(共有)
ソースブレーク、PUTCHを利用することができません。
【R8C18〜1B】
【R8C24〜25】
【R8C26〜29】
デバッグ中、ウォッチドック使用可能です。
使用端子は、E8a仕様と同等の信号線を占有使用します。
MODE RESET(共有)
ソースブレーク、PUTCHを利用することができません。
UART1関連レジスタは、一切使用しないで下さい。
6.ファーム起動時のMCUに対する設定
モニタ実行時に、下記設定内容を毎時実行します。
モニタ使用シリアルポート(UART)の初期設定
7.低消費電力モード状態の注意事項
特にありません。
8.ウォッチドッグタイマの注意事【R8C14〜29】
ブレークモード時(ファーム実行時)はウォッチドッグタイマをリフレッシュしています。
復帰時(モニタ終了時)に再開します。
9.その他の注意事項【R8C10〜13】
ある一定期間のみ出荷されたMCUに限り、通常仕様ではデバッグモードならないMCUがありました。
10.オンザフライ時のMCU停止時間の計測値
品種 R8C10〜13
コマンド 停止時間 単位(msec)
CPU設定 割込みを使用しない 割込みを使用する
デバッグI/F クロック同期 クロック同期
割込み方式 ブレーク割込み
割込みが使用できる条件 なし
バイトのメモリアクセス 0.70
1バイト増毎に+0.1ms
(MAX 128byte 13.5ms)
0.10
バイト数に影響されない
全レジスタ 7.00 0.10
個別レジスタ(Rレジスタ) 0.50 0.10
個別レジスタ(FLGレジスタ) 0.50 0.10
個別レジスタ(PCレジスタ) 0.60 0.10
1行の逆アセンブラ 1.60 0.10
DI,EI.IntFlg(割込み系) 5.00 5.00
ブレークポイントの設定 10.0 10.0
ブレークポイントの解除 10.0 10.0
停止時間の計測方法 [NMI]のLow巾 [NMI]のLow巾

品種 R8C14〜1B
コマンド 停止時間 単位(msec)
CPU設定 割込みを使用しない 割込みを使用する
デバッグI/F 一線式調歩同期 一線式調歩同期
割込み方式 ブレーク割込み
割込みが使用できる条件 なし
1バイトのメモリアクセス 2.40
1バイト増毎に+0.6ms
(MAX 128byte 80.0ms)
0.80
バイト数に影響されない
全レジスタ 22.0 0.80
個別レジスタ(Rレジスタ) 1.50 0.80
個別レジスタ(FLGレジスタ) 1.50 0.80
個別レジスタ(PCレジスタ) 2.00 0.80
1行の逆アセンブラ 5.80 0.80
DI,EI.IntFlg(割込み系) 6.00 6.00
ブレークポイントの設定 12.00 12.00
ブレークポイントの解除 12.00 12.00
停止時間の計測方法 計測不可 計測不可

品種 R8C24〜29
コマンド 停止時間 単位(msec)
CPU設定  割込みを使用しない 割込みを使用する  
デバッグI/F 一線式調歩同期 一線式調歩同期
割込み方式 ブレーク割込み
割込みが使用できる条件 なし
1バイトのメモリアクセス 1.50
1バイト増毎に+0.4ms
(MAX 128byte 53.0ms)
0.45
バイト数に影響されない
全レジスタ 10.0 0.45
個別レジスタ(Rレジスタ) 0.80 0.45
個別レジスタ(FLGレジスタ) 0.80 0.45
個別レジスタ(PCレジスタ) 1.00 0.45
1行の逆アセンブラ 3.00 0.45
DI,EI.IntFlg(割込み系) 5.00 5.00
ブレークポイントの設定 10.0 10.0
ブレークポイントの解除 10.0 10.0
停止時間の計測方法 計測方法なし 計測方法なし

*クロックが20.0MHz時の実測値

<オンザフライ機能使用時の注意事項 割込み方式が「ブレーク割込み」の場合>
BP(ブレークポイント)を張ってる状態で、オンザフライの自動実行とBP停止が同時に発生した場合、自動実行側が優先されます。