• 検索結果がありません。

Text.book

N/A
N/A
Protected

Academic year: 2022

シェア "Text.book"

Copied!
243
0
0

読み込み中.... (全文を見る)

全文

(1)

ZZZUHQHVDVFRP

(2)

1. 本資料に記載された回路、ソフトウェアおよびこれらに関連する情報は、半導体製品の動作例、

応用例を説明するものです。お客様の機器・システムの設計において、回路、ソフトウェアお よびこれらに関連する情報を使用する場合には、お客様の責任において行ってください。これ らの使用に起因して、お客様または第三者に生じた損害に関し、当社は、一切その責任を負い ません。

2. 本資料に記載されている情報は、正確を期すため慎重に作成したものですが、誤りがないこと を保証するものではありません。万一、本資料に記載されている情報の誤りに起因する損害が お客様に生じた場合においても、当社は、一切その責任を負いません。

3. 本資料に記載された製品デ-タ、図、表、プログラム、アルゴリズム、応用回路例等の情報の 使用に起因して発生した第三者の特許権、著作権その他の知的財産権に対する侵害に関し、当 社は、何らの責任を負うものではありません。当社は、本資料に基づき当社または第三者の特 許権、著作権その他の知的財産権を何ら許諾するものではありません。

4. 当社製品を改造、改変、複製等しないでください。かかる改造、改変、複製等により生じた損 害に関し、当社は、一切その責任を負いません。

5. 当社は、当社製品の品質水準を「標準水準」および「高品質水準」に分類しており、

各品質水準は、以下に示す用途に製品が使用されることを意図しております。

標準水準: コンピュータ、OA 機器、通信機器、計測機器、AV 機器、

家電、工作機械、パーソナル機器、産業用ロボット等 高品質水準: 輸送機器(自動車、電車、船舶等)、交通用信号機器、

防災・防犯装置、各種安全装置等

当社製品は、直接生命・身体に危害を及ぼす可能性のある機器・システム(生命維持装置、人 体に埋め込み使用するもの等) 、もしくは多大な物的損害を発生させるおそれのある機器・シ ステム(原子力制御システム、軍事機器等)に使用されることを意図しておらず、使用するこ とはできません。 たとえ、意図しない用途に当社製品を使用したことによりお客様または第三 者に損害が生じても、当社は一切その責任を負いません。 なお、ご不明点がある場合は、当社 営業にお問い合わせください。

6. 当社製品をご使用の際は、当社が指定する最大定格、動作電源電圧範囲、放熱特性、実装条件 その他の保証範囲内でご使用ください。当社保証範囲を超えて当社製品をご使用された場合の 故障および事故につきましては、当社は、一切その責任を負いません。

7. 当社は、当社製品の品質および信頼性の向上に努めていますが、半導体製品はある確率で故障 が発生したり、使用条件によっては誤動作したりする場合があります。また、当社製品は耐放 射線設計については行っておりません。当社製品の故障または誤動作が生じた場合も、人身事 故、火災事故、社会的損害等を生じさせないよう、お客様の責任において、冗長設計、延焼対 策設計、誤動作防止設計等の安全設計およびエージング処理等、お客様の機器・システムとし ての出荷保証を行ってください。特に、マイコンソフトウェアは、単独での検証は困難なため、

お客様の機器・システムとしての安全検証をお客様の責任で行ってください。

8. 当社製品の環境適合性等の詳細につきましては、製品個別に必ず当社営業窓口までお問合せく ださい。ご使用に際しては、特定の物質の含有・使用を規制する RoHS 指令等、適用される環境 関連法令を十分調査のうえ、かかる法令に適合するようご使用ください。お客様がかかる法令 を遵守しないことにより生じた損害に関して、当社は、一切その責任を負いません。

9. 本資料に記載されている当社製品および技術を国内外の法令および規則により製造・使用・販 売を禁止されている機器・システムに使用することはできません。また、当社製品および技術 を大量破壊兵器の開発等の目的、軍事利用の目的その他軍事用途に使用しないでください。当 社製品または技術を輸出する場合は、「外国為替及び外国貿易法」その他輸出関連法令を遵守し、

かかる法令の定めるところにより必要な手続を行ってください。

10. お客様の転売等により、本ご注意書き記載の諸条件に抵触して当社製品が使用され、その使用か ら損害が生じた場合、当社は何らの責任も負わず、お客様にてご負担して頂きますのでご了承く ださい。

11. 本資料の全部または一部を当社の文書による事前の承諾を得ることなく転載または複製するこ とを禁じます。

注 1. 本資料において使用されている「当社」とは、ルネサス エレクトロニクス株式会社およびルネ サス エレクトロニクス株式会社がその総株主の議決権の過半数を直接または間接に保有する 会社をいいます。

注 2. 本資料において使用されている「当社製品」とは、注1において定義された当社の開発、製造 製品をいいます。

(2012.4)

(3)

ンコース ” 用に作成されたものです。

このテキストは、上段がスライド部、下段が解説部の構成となっています。(セミナースケジュール の都合上、説明を省略する場合があります)。

※ 本書中のシステム、製品名などは一般に各社の登録商標または商標です。

※ 尚、本文中には TM マークは明記していません。

(4)

1.2  プロセッサレジスタとメモリマップ ... 1-8 1.3  RL78 のアドレッシングモード ... 1-14 1.4  RL78 の命令セット ... 1-21

第 2 章 クロック制御とスタンバイ機能

2.1  クロック発生回路 ... 2-2 2.2  オプションバイト ... 2-13 2.3  スタンバイ機能 ... 2-20

第 3 章 リセット機能

3.1  リセット ... 3-2 3.2  電圧検出回路(LVD)... 3-7 3.3  ウォッチドッグタイマ ... 3-12

第 4 章 安全機能

4.1  RL78 の安全機能 ... 4-2 4.2  フラッシュメモリ CRC 演算機能 ... 4-3 4.3  RAM パリティエラー検出機能 ... 4-6 4.4  データの保護機能 ... 4-7 4.4.1  RAM ガード機能... 4-7 4.4.2  SFR ガード機能... 4-8 4.4.3  不正メモリアクセス機能 ... 4-9 4.5  周辺機能を使用した安全機能 ... 4-11 4.5.1  周波数検出機能 ... 4-11 4.5.2  A/D テスト機能... 4-12

第 5 章 I/O ポート

5.1  特殊機能レジスタ (SFR) 領域のアクセス方法 ... 5-2 5.2  入出力ポートの操作方法 ... 5-3 5.3  入出力ポート使用例 ... 5-13

第 6 章 割り込み制御

6.1  割り込み動作と制御方法 ... 6-2 6.2  C 言語での割り込み制御方法と割り込み関数指定 ... 6-18 6.3  割り込みプログラム記述例 ... 6-23 6.4  イベントリンクコントローラ ... 6-29

第 7 章 タイマ

7.1  タイマ・アレイ・ユニットの構成と機能 ... 7-3 7.2  インターバルタイマモードと関連レジスタ ... 7-11 7.3  複数チャネル連動動作機能(PWM 出力)... 7-24

(5)

8.4  DTC のプログラム記述例 ... 8-22

第 9 章 SAU(シリアル・アレイ・ユニット)

9.1  シリアルアレイユニット (SAU) の構成 ... 9-2 9.2  シリアルアレイユニットの制御レジスタ ... 9-5 9.3  UART モード ... 9-23

第 10 章 A/D コンバータ

10.1  A/D コンバータの構成と制御レジスタ ... 10-2 10.2  A/D コンバータの動作モード ... 10-14

(6)

1-1

1.1  RL78 概要 ...1-2

1.2  プロセッサレジスタとメモリマップ ...1-8

1.3  RL78 のアドレッシングモード ...1-14

1.4  RL78 の命令セット ...1-21

(7)

1-2

32ビット クラス

16ビット クラス

8ビット クラス

V850ES V850E

78K0R 78K0 78K0S

V850E2 SH-4A SH-A

RX600 RX200

R8C

低消費電力 低消費電力 高性能CPU 高性能 CPU

高性能 高性能 周辺機器 周辺機器

RL: Renesas Low Power

の略称。

低消費電力を実現する製品。

RL78は、R8Cと78Kの優れたDNAを融合した新ファミリ

(8)

1-3

RL78シリーズ展開

・RL78/G14:ELC、DTC、タイマRD(三相モータ制御用タイマ)、タイマRG(位相計数用タイマ)内蔵

・RL78/I1A:PFC制御用タイマ、DARI通信機能、プログラマブルゲインアンプ(PGA)およびコンパレータ内蔵、

     高温度保証

・RL78/F12:LIN内蔵、高温度保証

・RL78/G1A:高性能12bit A/Dコンバータ 最大28チャネル内蔵

・RL78/G1E(RL78/G1A+スマートアナログIC):

     コンフィギュラブルアンプ、ゲイン調整アンプ、ローパス/ハイパスフィルタなどを内蔵

・RL78/L12:LCDコントローラ/ドライバ内蔵(最大35セグメント×8コモンまたは39セグメント×4コモン)

・RL78/L13:LCDコントローラ/ドライバ内蔵(最大47セグメント×8コモンまたは51セグメント×4コモン)、

      IH用タイマ、コンパレータ、リセットレスRTC内蔵

・RL78/G1C:USBホスト/ファンクションインタフェース(USB2.0フルスピード)内蔵、Battery Charging 1.2       サポート

・RL78/D1A:ステッピングモータコントローラ/ドライバ、LCDセグメントコントローラ/ドライバ、

      サウンドジェネレータ内蔵 RL78/G13

RL78/G12

RL78/G14

RL78/G1E

RL78/G1A RL78/G1C

RL78/G1x RL78/G1x

RL78/G1x

Standard High function

Low Pin Count (20~30)

Smart Analog MCU

USB function

Low Pin Count (10~20)

Touch function Enhanced peripheral

RL78/L13

RL78/L12 RL78/L1x RL78/L1x

LCD Standard

Enhanced Analog Enhanced peripheral

LCD Low Pin Count

RL78/L1x

USB function

RL78/F12

RL78/I1A

Auto Body Lighting Power

RL78/F1x

Auto Enhanced peripheral

RL78/D1A

Auto Dashboard

RL78/L1x

Meter

自動車 PC,OA

民生

ASSP

産業

LCD

汎用

2010 2011 2012 2013~

Enhanced Analog

(9)

1-4 動作周波数:1.6V 動作時= 〜 4MHz

      1.8V 動作時= 〜 8MHz       2.4V 動作時= 〜 16MHz       2.7V 〜 5.5V 動作時= 32MHz

(10)

1-5

グループ名 RL78/G14

ピン数 30ピン 32ピン 36ピン 40ピン 44ピン 48ピン 52ピン 64ピン 80ピン 100ピン

製品型名 R5F104A R5F104B R5F104C R5F104E R5F104F R5F104G R5F104J R5F104L R5F104M R5F104P

メモリ

Flash ROM 96KB ~128KB 96KB ~

192KB 96KB ~ 256KB

データ・フラッシュ 8KB

RAMサイズ max. 24KB

CPU RL78 CPU ※乗除算命令、積和演算命令追加

動作周波数 max.32MHz(max.) (内蔵発振クロック使用時) / max.20MHz (外部発振子使用時)

クロック発 振機

水晶/セラミック 1MHz ~ 20MHz

- 32.768kHz

オンチップ オシレータ

高速 64MHz, 48MHz, 32MHz, 24MHz, 16MHz, 12MHz, 8MHz, 4MHz, 1MHz +/-1%(target)

低速 15kHz+/-15%(target)

I/O 26 28 32 36 40 44 48 58 74 92

タイマ 16ビット・タイマ 16ビット・タイマTAU x 4ch, タイマRJ, タイマRD, タイマRG

16ビット・タイマTAU x 4ch, “16ビット・ タイマ x1ch / 8ビット・タイマ x2ch” TAU x 4ch, タイマRJ, タイマRD, タイマRG

12ビット・タイマ インターバル・タイマ x 1ch (15kHz / 32.768kHz)

リアルタイム・クロック 1

10ビットA/Dコンバータ

(スキャン 4ch,変換結果比較機能) 8ch 8ch 8ch 9ch 10ch 10ch 12ch 12ch 17ch 20ch

8ビット D/A コンバータ 2ch

コンパレータ 2ch(同時使用でウィンドウ・コンパレータとして使用可能)

シリアル インタ フェース

CSI 2ch/ UART/ I2C 2ch - - - 1 1 2 2 3 4 4

CSI/ UART/ I2C 3 3 3 2 2 1 1 - - -

I2C 1 1 1 1 1 1 1 1 2 2

外部割込み 6 6 6 6 6 9 11 12 12 12

DTC(データトランスファーコントローラ) 35要因 36要因 37要因 39要因

ELC(イベントリンクコントローラ) イベント入力:20、イベントトリガ出力:7

その他周辺機能 LVD, POR, キーリターン *1

安全機能 WDT, TRAP命令、FlashメモリCRC演算機能、RAMパリティエラー検出機能、不正メモリアクセス検出機能、

周波数検出機能、RAMガード機能、SFRガード機能, A/DC テスト機能、I/Oポート出力信号レベル検知機能

グループ名 RL78/G14

ピン数 30ピン 32ピン 36ピン 40ピン 44ピン 48ピン 52ピン 64ピン 80ピン 100ピン

製品型名 R5F104A R5F104B R5F104C R5F104E R5F104F R5F104G R5F104J R5F104L R5F104M R5F104P

メモリ

Flash ROM 96KB ~128KB 96KB ~

192KB 96KB ~ 256KB

データ・フラッシュ 8KB

RAMサイズ max. 24KB

CPU RL78 CPU ※乗除算命令、積和演算命令追加

動作周波数 max.32MHz(max.) (内蔵発振クロック使用時) / max.20MHz (外部発振子使用時)

クロック発 振機

水晶/セラミック 1MHz ~ 20MHz

- 32.768kHz

オンチップ オシレータ

高速 64MHz, 48MHz, 32MHz, 24MHz, 16MHz, 12MHz, 8MHz, 4MHz, 1MHz +/-1%(target)

低速 15kHz+/-15%(target)

I/O 26 28 32 36 40 44 48 58 74 92

タイマ 16ビット・タイマ 16ビット・タイマTAU x 4ch, タイマRJ, タイマRD, タイマRG

16ビット・タイマTAU x 4ch, “16ビット・ タイマ x1ch / 8ビット・タイマ x2ch” TAU x 4ch, タイマRJ, タイマRD, タイマRG

12ビット・タイマ インターバル・タイマ x 1ch (15kHz / 32.768kHz)

リアルタイム・クロック 1

10ビットA/Dコンバータ

(スキャン 4ch,変換結果比較機能) 8ch 8ch 8ch 9ch 10ch 10ch 12ch 12ch 17ch 20ch

8ビット D/A コンバータ 2ch

コンパレータ 2ch(同時使用でウィンドウ・コンパレータとして使用可能)

シリアル インタ フェース

CSI 2ch/ UART/ I2C 2ch - - - 1 1 2 2 3 4 4

CSI/ UART/ I2C 3 3 3 2 2 1 1 - - -

I2C 1 1 1 1 1 1 1 1 2 2

外部割込み 6 6 6 6 6 9 11 12 12 12

DTC(データトランスファーコントローラ) 35要因 36要因 37要因 39要因

ELC(イベントリンクコントローラ) イベント入力:20、イベントトリガ出力:7

その他周辺機能 LVD, POR, キーリターン *1

安全機能 WDT, TRAP命令、FlashメモリCRC演算機能、RAMパリティエラー検出機能、不正メモリアクセス検出機能、

周波数検出機能、RAMガード機能、SFRガード機能, A/DC テスト機能、I/Oポート出力信号レベル検知機能

*1: 30, 32, 36 ピン版製品は非対応。

(11)

1-6

※ 内蔵 ROM 96K バイト以上の製品には、D/A コンバートとコンパレータが搭載されます。

メモリサイズ メモリサイズ RTC (リアルタイム・クロック)

RTC (リアルタイム・クロック)

WDT(ウォッチドッグ・タイマ) WDT(ウォッチドッグ・タイマ)

入出力ポート : 58本

(出力専用1本、入力専用5本含む)

入出力ポート : 58本

(出力専用1本、入力専用5本含む)

ROM 64KB ROM 64KB

RAM

5.5KB RAM 5.5KB

12ビット・インターバル・タイマ

12ビット・インターバル・タイマ

外部割込み12本 外部割込み12本

LVD(電圧検出回路) LVD(電圧検出回路)

RL78 CPU コア

(乗除算命令, 積和演算命令追加)

RL78 CPU コア

(乗除算命令, 積和演算命令追加)

POR(パワーオン・リセット) POR(パワーオン・リセット)

DTC(データトランスファーコントローラ)

DTC(データトランスファーコントローラ)

16ビット・タイマ (TAU) 16ビット・タイマ (TAU)

4 ch

4 ch

データフラッシュ・メモリ 4KB データフラッシュ・メモリ 4KB 16ビット・タイマ (タイマRJ)

16ビット・タイマ (タイマRJ)

16ビット・タイマ (タイマRG)

16ビット・タイマ (タイマRG)

16ビット・タイマ (タイマRD)

Max 64MHz

16ビット・タイマ (タイマRD)

Max 64MHz

ELC(イベントリンクコントローラ)

ELC(イベントリンクコントローラ)

不正メモリアクセス検出機能 不正メモリアクセス検出機能 フラッシュメモリ CRC 演算機能 フラッシュメモリ CRC 演算機能

RAM パリティエラー検出機能 RAM パリティエラー検出機能

RAM ガード機能 RAM ガード機能

クロックストップ/ 周波数検出 クロックストップ/ 周波数検出

SFR ガード機能 SFR ガード機能

A/Dコンバータ テスト機能 A/Dコンバータ テスト機能 I/Oポート出力レベル検知機能 I/Oポート出力レベル検知機能

オンチップオシレータ オンチップオシレータ

1MHz ~ 20MHz (発振子, 外部入力) 1MHz ~ 20MHz (発振子, 外部入力)

32.768kHz(発振子, 外部入力) 32.768kHz(発振子, 外部入力)

電源電圧範囲: 1.6V ? 5.5V 電源電圧範囲: 1.6V ? 5.5V

32MHz

32MHz 24MHz24MHz 16MHz16MHz 12MHz

12MHz 8MHz8MHz 4MHz4MHz 1MHz1MHz 15kHz (WDT, RTC, 12ビット・タイマ用)

15kHz (WDT, RTC, 12ビット・タイマ用)

64MHz

64MHz 48MHz48MHz ※タイマRD用

I2C I2C CSI 2ch / UART /簡易I2C 2ch CSI 2ch / UART

/簡易I2C 2ch 3ユニット3ユニット

10ビットA/Dコンバータ

10ビットA/Dコンバータ 12 ch12 ch 赤文字:RL78/G13との差分

1ユニット 1ユニット

(12)

1-7

TOOL0 端子は、エミュレータと通信端子以外に、CPU 起動モードを選択する端子になっています。

リセット後 TOOL0 =“H(VDD) レベル ” で通常動作モード、“L レベル ” でフラッシュメモリプログラミング モードで起動します。

RL78/G14 は、供給電源を 2 系統入力可能です。これにより、電圧の異なるデバイスをレベルシフタなしで接続 することができます。 1.6 V ≦EVDD0≦VDD≦5.5 V

TOOL0 :オンチップデバッガとの通信用およびCPU起動モードの設定端子 REGC :内部レギュレータ出力安定容量接続端子(0.47μ〜1μF程度の

コンデンサを介してVSSに接続)

VDD  :ポートP20-P27,P121-P124,P137およびポート部以外の正電源 供給端子

EVDD0 :ポートP20-P27,P121-P124,P137以外のポートの正電源供給端子

:VDDからの電源供給端子

( ):PIOR0, PIOR1レジスタによって兼用機能 の割り当てが変更された場合の端子名

R5F104Lx

(64ピン製品)

64

48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 1

2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

63 62 61 60 59 58 57 56 55 54 53 52 51 50 49

17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

P30/INTP3/RTC1HZ/SCK00/SCL00/TRJO0P05/(INTP10)P06/(INTP11)P70/KR0/SCK21/SCL21P71/KR1/SI21/SDA21P72/KR2/SO21P73/KR3/SO01P74/KR4/INTP8/SI01/SDA01P75/KR5/INTP9/SCK01/SCL01P76/KR6/INTP10/(RxD2)P77/KR7/INTP11/(TxD2)P31/TI03/TO03/INTP4/(PCLBUZ0)/(TRJIO0)P63P62/SSI00P61/SDAA0P60/SCLA0

P147/ANI18/VCOUNT1 P146

P10/SCK11/SCL11/TRDIOD1 P11/SI11/SDA11/TRDIOC1 P12/SO11/TRDIOB1/IVREF1 P13/TxD2/SO20/TRDIOA1/IVCMP1 P14/RxD2/SI20/SDA20/TRDIOD0/(SCLA0) P15/SCK20/SCL20/TRDIOB0/(SDAA0)

P16/TI01/TO01/INTP5/TRDIOC0/IVREF0/(RxD0)/(SI00) P17/TI02/TO02/TRDIOA0/TRDCLK0/IVCMP0/(TxD0)/(SO00) P55/(PCLBUZ1)/(SCK00)/(INTP4)

P54/(INTP3) P53/(INTP2) P52/(INTP1)

P51/INTP2/SO00/TxD0/TOOLTxD/TRGIOB

P50/INTP1/SI00/RxD0/TOOLRxD/SDA00/TRGIOA/(TRJO0) P27/ANI7P26/ANI6P25/ANI5P24/ANI4P23/ANI3/ANO1P22/ANI2/ANO0

P21/ANI1/AVREFMP20/ANI0/AVREFPP130P04/SCK10/SCL10P03/ANI16/SI10/RxD1/SDA10P02/ANI17/SO10/TxD1P01/TO00/TRGCLKB/TRJIO0P00/TI00/TRGCLKA/(TRJO0)P141/PCLBUZ1/INTP7P140/PCLBUZ0/INTP6

P120/ANI19/VCOUT0 P43/(INTP9) P42/(INTP8) P41 P40/TOOL0 RESET P124/XT2/EXCLKS P123/XT1 P137/INTP0 P122/X2/EXCLK P121/X1 REGC VSS EVSS0 VDD EVDD0

(13)

1-8

RL78 の汎用レジスタは、アセンブリ言語で記述する際、「機能名称」と「絶対名称」のどちらでも指定ができます。

またレジスタは 4 バンク構成となっており、1 バンク 8 レジスタ、計 32 バイトが存在します。(デフォルトは、 

バンク 0 を使用します。)

割り込み発生時に、レジスタバンクを切り換えることで、割り込みの応答遅延を短縮することができます。

レジスタバンク0

レジスタバンク1

レジスタバンク2

レジスタバンク3

HL DE BC AX

H L D E B C A X

16ビット処理時 8ビット処理時 FFEFFH

FFEF8H

FFEF0H

FFEE8H

FFEE0H

レジスタバンク0

レジスタバンク1

レジスタバンク2

レジスタバンク3

RP3 RP2 RP1 RP0

R7 R6 R5 R4 R3 R2 R1 R0

16ビット処理時 8ビット処理時 FFEFFH

FFEF8H

FFEF0H

FFEE8H

FFEE0H

【機能名称】

【絶対名称】

(14)

1-9

IE フラグ、RSB フラグおよび ISP フラグは、割り込み使用時にユーザが設定、あるいは CPU が操作します。

IE(割り込み許可フラグ):CPUの割り込み要求受け付けを制御するフラグです。

IE=0で割り込み禁止、IE=1で割り込み許可。

Z(ゼロフラグ):演算結果が“0”のとき“1”にセットされます。

RBS1,RBS0(レジスタバンク選択フラグ):使用するレジスタバンク(バンク0〜3)を選択するビットです。

AC(補助キャリーフラグ):ビット3からキャリーまたはボローがあったとき1にセットされます。

ISP1,ISP0(インサービスプライオリティフラグ):受け付け可能なマスカブル割り込みの優先レベルを 決定するフラグです。

CY(キャリーフラグ):加減算命令実行時のオーバフロー/アンダフロー時およびローテート命令実行時の シフトアウト時(8ビット演算時はb7のキャリー/ボロー、16ビット演算時はb15の キャリー/ボロー)に、それぞれ“1”にセットされます。

PSW IE Z RBS1 AC RBS0 ISP1   ISP0 CY

7 6 5 4 3 2 1 0

(15)

1-10

SP 0

スタックポインタは2バイトづつ増減します。

SP

b1

b15 b0

(16)

1-11

near 領域内でのダイレクトアドレッシングによるデータアクセスや分岐命令実行時は、ES および CS レジスタは 使用せず、F0000H 〜 FFFFFH 番地および 00000H 〜 0FFFFH 番地の 64K 空間のみのアクセスとなります。

よって ES、CS レジスタは、far 空間でのデータアクセスや分岐命令実行時に、アクセスするアドレスの最上位 4 ビットを格納して使用します。

ES 0 0 0 0 ES3 ES0

7 6 5 4 3 2 1 0

ES2 ES1

CS 0 0 0 0 CS3 CS0

7 6 5 4 3 2 1 0

CS2 CS1

ESレジスタはデータアクセス時に使用します。ESレジスタでアクセスするアドレスの最上位4ビットを 指定することで、00000h〜FFFFFhの1Mバイト空間をアクセスできます。

CSレジスタは分岐命令実行時に使用します。CSレジスタで分岐先アドレスの最上位4ビットを指定する ことで、00000h〜FFFFFhの1Mバイト空間へ分岐できます。

リセット後の値:0FH

リセット後の値:00H

(17)

1-12

※ 内蔵 ROM が 64k バイトを超えている製品の場合、ミラーリングエリアを「プロセッサモードコントロール   レジスタ (PMC) 」 の “MAA ビット ” で変更できます。ミラーリングされるエリアは以下の通りです。

  MAA=0:00000H 〜 0FFFFH(デフォルト)

  MAA=1:10000H 〜 1FFFFH  

データフラッシュは、RL78 では 1,000,000 回以上の書き換え回数を保証 ( 条件あり ) します。またデータフラッ シュ書き換え中は、コードフラッシュ上の命令を実行することができます。

なお RL78 のデータフラッシュデータエリアは、データ専用エリアとして扱いますので、プログラムコードを  配置することはできません ( コードフェッチ不可 )。

SFR 領域でショートダイレクトアドレッシングでアクセス可能な FFF00H 〜 FFF1FH の 32 バイトの空間には、以下 の周辺機能レジスタが割り付いています。

・ポートレジスタ

・シリアルデータレジスタ

・タイマデータレジスタ

・A/D 変換結果レジスタ

プログラム領域 特殊機能レジスタ(SFR)

(256バイト)

RAM

(5.5kバイト)

Mirror領域

(50.25kバイト)

データ・フラッシュ

(4kバイト)

使用不可 特殊機能レジスタ

(2nd SFR)

(2kバイト)

FFFFFh FFF00h FFEFFh

FE900h FE8FFh

F2000h F1FFFh F1000h F0FFFh F0800h F07FFh F0000h EFFFFh

10000h 0FFFFh

00000h

汎用レジスタ

(8×4 = 32バイト)

FFF20h FFF1Fh

FFE20h FFE1Fh FFEE0h SADDR

(ショート・ダイレクト・

アドレッシング)領域

(256バイト)

02000h 0E8FFh

near領域②

(コードおよびROMデータ)

ミラー

コード・フラッシュ

near領域①

(データ)

プログラム領域

オプションバイト領域

(4バイト)

CALLTテーブル領域 (64バイト(1ベクタ2バイト))

ベクタテーブル領域

(128バイト)

オンチップ・デバッグ・

セキュリティID領域 オプションバイト領域

(4バイト)

CALLTテーブル領域 (64バイト(1ベクタ2バイト))

ベクタテーブル領域

(128バイト)

オンチップ・デバッグ・

セキュリティID領域 ブートクラスタ1

ブートクラスタ0

0007Fh 00080h 000BFh 000C0h 000C3h 000C4h 000CDh 000CEh 00FFFh 01000h 0107Fh 01080h 010BFh 010C0h 010C3h 010C4h 010CDh 010CEh 01FFFh 02000h 0E8FFh

プログラム領域 0FFFFh

00000h データの

読み出しのみ

使用不可 far領域

(コード/

データ)

ミラーされる エリア

(18)

1-13

フラッシュメモリのセルフプログラミング時にブートスワップ機能が使えます。

セルフ・プログラミングにてブート領域の書き換え中に,電源の瞬断などにより書き換えが失敗した場合,

ブート領域のデータが壊れて,リセットによるプログラムの再スタートや,再書き込みができなくなります。

この問題を回避するため機能が、ブート・スワップ機能です。

セルフ・プログラミングにてブート・プログラム領域であるブート・クラスタ 0 の消去を行う前に,あらかじ め新しいブート・プログラムをブート・クラスタ 1 に書き込んでおきます。ブート・クラスタ 1 への書き込みが正 常終了したら,RL78/G13 内蔵のファームウエアで,ブート・クラスタ 1 とブート・クラスタ 0 をスワップしま す。このあと,必要に応じて本来のブート・プログラム領域であるブート・クラスタ0へ消去や書き込みを行います。

これによってブート・プログラミング領域の書き換え中に電源瞬断が発生しても,次のリセット・スタート時 は,スワップ対象のブート・クラスタ1からブートを行うため,正常にプログラムが動作します。

ブートクラスタ0:ブートプログラム領域 ブートクラスタ1:スワップ対象領域

プログラム領域

(スタートアップ プログラムなど)

オプションバイト領域 CALLTテーブル ベクタテーブル オンチップデバッグ セキュリティID領域

00FFFh 01fffh

00000h 000CEh

プログラム領域

オプションバイト領域 CALLTテーブル ベクタテーブル オンチップデバッグ セキュリティID領域

ブート クラスタ0 01000h

010CEh

プログラム領域

02000h

ブート クラスタ1

プログラム領域

(スタートアップ プログラムなど)

オプションバイト領域 CALLTテーブル ベクタテーブル オンチップデバッグ セキュリティID領域

00FFFh 01fffh

00000h 000CEh

新ブートプログラム

オプションバイト領域 CALLTテーブル ベクタテーブル オンチップデバッグ セキュリティID領域

ブート クラスタ0 01000h

010CEh

プログラム領域

02000h

ブート クラスタ1

新ブートプログラム

ブートクラスタ1 へ書き込み

内蔵RAM

新ブートプログラム

オプションバイト領域 CALLTテーブル ベクタテーブル オンチップデバッグ セキュリティID領域

00FFFh 01fffh

00000h 000CEh

旧プログラム

オプションバイト領域 CALLTテーブル ベクタテーブル オンチップデバッグ セキュリティID領域

ブート クラスタ1 01000h

010CEh

プログラム領域

02000h

ブート クラスタ0 セルフプログラミング

ライブラリ

セルフプログラミング ライブラリ

“ブートスワップビット”

の設定後、リセットにより ブートクラスタ1と0が

スワップします。

必要に応じて クラスタ0の 消去、書き込み

を行います。

(19)

1-14

C 言語で変数宣言した場合、デフォルト near 修飾されたものとして扱われ、変数を near 領域 (F0000H 〜 FFFFFH の 64K 領域 ) に配置します。

命令語中のイミーディエト・データがオペランド・アドレスとなり,対象となるアドレスを直接指定する アドレッシングです。

PREFIX命令以外はnear領域(F0000H〜FFFFFH)の64K空間がアクセス対象となります。

F0000h

メモリ

FFFFFh

00000h アドレス下位8bit

【ダイレクトアドレッシング 】

オペコード オペランド

データ アドレス中位8bit

64kバイト

メモリ FFFFFh

00000h アドレス下位8bit

オペコード オペランド

データ アドレス中位8bit

1Mバイト

アドレス上位4bit ESレジスタ

F0000h

<PREFIX命令実行時>

ESレジスタに設定した値がアクセス対象の最上位アドレスとなり、フルアドレス空間(00000H〜FFFFFH)で

PREFIX命令:“ES:”で示されるPREFIX命令は、命令コードの先頭に“PREFIX命令コード”が付加され、

PREIX命令コード直後の1命令だけをESレジスタの値を付加したアドレスとして実行します。

通常記述例) MOV !addr16, #byte PREFIX命令指定時) MOV ES:!addr16, #byte

(20)

1-15

0x1234

コードサイズ2バイト(最小)でメモリアクセスが可能。

命令語中の8ビット・データで対象となるアドレスを直接指定するアドレッシングです。このアドレッシングが 適用されるのはFFE20H-FFF1FHの空間(SADDR領域)に限られます。

FFE20h FFF1Fh

256バイト メモリ FFFFFh

00000h アドレス下位8bit

【ショートダイレクトアドレッシング (SADDR)】

オペコード オペランド

データ saddr領域

CALLT命令 テーブル番号

00080h 000BFh

64バイト

(関数32個分)

メモリ

00

01 31

テーブルNo.

CALLTテーブル

関数実体

01234h

FFFFFh

00000h オペコード

オペランド

関数アドレスの 下位16ビット

·

·

·

·

コードサイズ2バイトで関数コールが可能。

命令語中の5ビット・イミーディエト・データによりCALLTテーブル領域(0080H-00BFH)のテーブル・アドレスを 指定することで,指定したテーブルに書かれているアドレスへ分岐するアドレッシングです。

テーブル・インダイレクト・アドレッシングはCALLT命令にのみ適用され、00000H-0FFFFHの64Kバイト空間で分岐 が可能です。

【テーブルインダイレクトアドレッシング 】

(21)

1-16

命令語で指定される以下のレジスタ・ペアの内容をベース・アドレスとし,8ビット・イミーディエト・データ または16ビット・イミーディエト・データをオフセット・データとしてベース・アドレスに加算した結果で対象と なるアドレスを指定するアドレッシングです。

最小2バイトのコードサイズで64K空間の任意のアドレスに対してアクセスできます。

F0000h メモリ FFFFFh

00000h オフセット値(8bit)

【ベーストアドレッシング】

オペコード オペランド

データ 64kバイト

記述方法

[HL+byte],[DE + byte],[SP + byte]

F0000H-FFFFFH

64k

空間 アクセス領域

word[B]

word[C]

word[BC]

00000H-FFFFFH

のフルアドレス空間  (ESレジスタでアドレス最上位4ビット

を指定)

ES:[HL+byte],ES:[DE + byte]

ES:word[B]

ES:word[C]

ES:word[BC]

レジスタペア(HL/DE)

(22)

1-17

プログラム・カウンタ(PC)の値(次に続く命令の先頭アドレス)に対し,命令語に含まれるディスプレースメント値

(-128〜+127または-32768〜+32767)を加算した結果を,プログラム・カウンタ(PC)に格納し分岐先プログラム

・アドレスを指定するアドレッシングです。

レラティブ・アドレッシングは分岐命令のみに適用されます。

【レラティブアドレッシング 】

プログラム・カウンタ(PC)の値(次に続く命令の先頭アドレス)に対し,命令語に含まれるディスプレースメント値

(-128〜+127または-32768〜+32767)を加算した結果を,プログラム・カウンタ(PC)に格納し分岐先プログラム

・アドレスを指定するアドレッシングです。

レラティブ・アドレッシングは分岐命令のみに適用されます。

【イミーディエトアドレッシング 】

20bit絶対アドレス指定時

(例)CALL !!addr20 BR !!addr20

16bit絶対アドレス指定時

(例)CALL !addr16 BR !addr16

命令語で指定されるカレント・レジスタ・バンク内の汎用レジスタ・ペア(AX/BC/DE/HL)とCSレジスタの内容を 20ビット・データとしてプログラム・カウンタ(PC)に格納し,プログラム・アドレスを指定するアドレッシング です。

レジスタ・ダイレクト・アドレッシングは、CALL AX / BC / DE / HL と、BR AX 命令にのみ適用されます。

【レジスタダイレクトアドレッシング 】

OP code

PC

OP code DISPLACE

PC

Low Addr.

High Addr.

Seg Addr.

PCS PCH PCL

PC

0000

OP code Low Addr.

High Addr.

OP code

PCS PCH PCL

PC

CS reg pair

(23)

1-18 インプライド・アドレッシングは、MULU Xのみに適用されます。

【インプライドアドレッシング 】

汎用レジスタをオペランドとしてアクセスするアドレッシングです。8ビット・レジスタを指定する場合は 命令語の3ビット,16ビット・レジスタを指定する場合は命令語の2ビットによりレジスタが選択されます。

【レジスタアドレッシング 】

命令語中の8ビット・データで対象となるSFRアドレスを直接指定するアドレッシングです。このアドレッシングが 適用されるのは、FFF00H-FFFFFHの256空間に限られます。

【SFRアドレッシング 】

MULU X 命令(8×8=16)の動作

Aレジスタ Xレジスタ

×

表現形式 rp

記述方法

 X,A,C,B,E,D,L,H  AX,BC,DE,HL

OP code Aレジスタ

メモリ

OP code レジスタ

メモリ

メモリ OP code SFR

SFR FFF00H

FFF00H Aレジスタ Xレジスタ

(上位) (下位)

(24)

1-19

命令語で指定されたレジスタ・ペアの内容がオペランド・アドレスになり,対象となるアドレスを指定する アドレッシングです。

【レジスタインダイレクトアドレッシング 】

[DE],[HL]の場合 表現形式

記述方法 [DE],[HL]

(F0000H〜FFFFFH空間を指定可能)

 ES:[DE],ES:[HL]

(ESレジスタでアドレスの最上位4ビットを指定)

ES:[DE],ES:[HL]の場合

メモリ OP code

FFFFFH

reg pair ターゲットメモリ

F0000H

メモリ

ターゲットメモリ

OP code reg pair ES

FFFFFH

00000H

(25)

1-20

命令語で指定されるレジスタ・ペアの内容をベース・アドレスとし,同様に命令語で指定されるBレジスタまたは Cレジスタの内容をオフセット・アドレスとしてベース・アドレスに加算した結果で,対象となるアドレスを指定する アドレッシングです。

【ベーストインデクストアドレッシング 】

[HL+B],[HL+C]の場合 表現形式

記述方法 [HL+B],[HL+C]

(F0000H〜FFFFFH空間を指定可能)

 ES:[HL+B],ES:[HL+C]

(ESレジスタでアドレスの最上位4ビットを指定)

ES:[HL+B],ES:[HL+C]の場合

メモリ

ターゲットメモリ

OP code

rp(HL)

r(B/C)

F0000H FFFFFH

00000H FFFFFH

OP code

rp(HL)

r(B/C) ES

メモリ

ターゲットメモリ

(26)

1-21

命令群 ニーモニック 機能

MOV バイトデータの 転送 XCH バイトデータの 交換

ONEB バイトデータへの 01Hセット CLRB バイトデータの 0クリア

MOVS バイトデータの 転送(Xレジスタとの 転送)

バイトデータの 加算

ADDC キャリー付きバイト加算

SUB バイトデータの 減算

SUBC キャリー(ボロー)付きバイト減算 AND バイトデータの 論理積

OR バイトデータの 論理和

XOR バイトデータの 排他的論理和 CMP バイトデータの 比較

CMP0 バイトデータの 0比較

CMPS バイトデータの 比較(Xレジスタとの 比較) ワードデータの 加算

ワードデータの 減算 ワードデータの 比較

MULU 符号なし8ビット乗算(8×8→16bit)

MULHU 符号なし16ビット乗算(16×16→32bit) MULH 符号付き16ビット乗算(16×16→32bit) DIVHU 符号なし16ビット除算(16÷16→16bit) DIVWU 符号なし32ビット除算(32÷32→32bit) MACHU 符号なし積和演算 (16×16+32→32bit) MACH 符号付き積和演算 (16×16+32→32bit)

INC バイトデータのインクリメント

DEC バイトデータのデクリメント

INCW ワードデータのインクリメント

DECW ワードデータのデクリメント

転送命令

MOVW XCHW ONEW CLRW ADD

ワードデータ 転送 ワードデータ 交換

ワードデータへの 0001Hセット ワードデータの 0クリア 演算命令

SUBW CMPW ワード ADDW

演算 ワード 演算

乗除 積和算

※ RL78/G13には搭載されていません 増減命令

ワード 演算

指定レジスタのプッシュ 指定レジスタのポップ PUSH

POP

(27)

1-22

命令群 ニーモニック 機能

SHR バイトデータの 右方向論理シフト SHL バイトデータの 左方向論理シフト SAR バイトデータの 右方向算術シフト

SHRW SHLW

バイトデータの 左方向ローテートwithキャリー

ROLWC ワードデータの 左方向ローテートwithキャリー MOV1 1ビットデータの 転送

AND1 1ビットデータの 論理積 OR1 1ビットデータの 論理和 XOR1 1ビットデータの 排他的論理和 SET1 1ビットデータのセット CLR1 1ビットデータのクリア NOT1 1ビットデータの 否定

CALL サブルーチンコール

コールテーブルによるサブルーチンコール ソフトウェア 割り込み

サブルーチンからの 復帰

RETI ハードウェア 割り込みからの 復帰

ソフトウェア 割り込み(BRK命令)からの復帰 シフト、

ローテート 命令

SARW ROR ROL RORC ROLC

バイトデータの 右方向ローテート バイトデータの 左方向ローテート

バイトデータの 右方向ローテートwithキャリー

ビット操作 命令

BRK RET CALLT ワード

演算

ワードデータの 右方向論理シフト ワードデータの 左方向論理シフト ワードデータの 右方向算術シフト

RETB

分岐命令 無条件分岐 (相対/絶対)

キャリーフラグによる 条件分岐

BZ ゼロフラグによる 条件分岐

BC BNC

BR

BNZ

コール・

リターン 命令

キャリーとゼロフラグによる 条件分岐

BT 指定したビットによる 条件分岐

BH BNH

BF

指定したビットによる 条件分岐&クリア BTCLR

(28)

1-23

命令群 ニーモニック 機能

SELL レジスタバンクの 選択 ノーオペレーション

割り込みの許可(IEフラグのセット ) 割り込みの禁止(IEフラグのクリア ) HALT ホルトモードへの 移行

ストップモードへの 移行 EI

DI NOP

STOP 分岐付き

スキップ 命令 キャリーフラグによるスキップ (後続命令のみ非実行)

SKNZ ゼロフラグによるスキップ (後続命令のみ非実行) SKNC

SKZ SKC

CPU制御命令

キャリーとゼロフラグによるスキップ (後続命令のみ非実行) SKH

SKNH

(29)

1-24

(30)

2-1

2.1  クロック発生回路 ...2-2

2.2  オプションバイト ...2-13

2.3  スタンバイ機能 ...2-20

(31)

2-2

(32)

2-3

RL78/G14 のクロック発生回路は以下の回路で構成されています。

(1) 高速システムクロック発振回路(1 〜 20MHz)

(2) 高速オンチップオシレータ(1 〜 64MHz)

(3) 低速オンチップオシレータ(ウォッチドッグタイマ/インターバルタイマ/リアルタイムクロック   /タイマアレイユニット ch1 /タイマ RJ 用、15kHz)

(4) サブシステムクロック発振回路(32.768kHz)

リセット後、内蔵発振回路のみ発振状態で、外部クロック(X1,XT1)については停止していますので、    

X1 および XT1 を使用するシステムではスタートアップで発振を開始する必要があります。

:リセット後のクロック供給 高速システム

クロック 発振回路

高速 オンチップ オシレータ

低速 オンチップ オシレータ サブシステム

クロック 発振回路

セレクタ

セ レ ク タ

XT1 XT2 /EXCLKS X1 X2 /EXCLK

初期状態は 発振停止

初期状態は 発振停止

fMX

fIH

fIL

fSUB

15kHz(Typ) 20MHz(Max)

1/2

fHOCO

1/4/8/12/16/24/32/48/64MHz

fMAIN

クロック出力/ブザー出力

CPU

タイマアレイユニット シリアルアレイユニット A/Dコンバータ

タイマRD タイマRG タイマRJ DTC

D/Aコンバータ コンパレータ

f

CLK

ウォッチドッグタイマ タイマアレイユニット(ch1) セ

レ ク タ

クロック出力/ブザー出力 タイマRJ

リアルタイムクロック 12ビットインターバルタイマ

タイマRJ WUTMMCK0ビット

(33)

2-4

CPU /周辺ハードウエア・クロックの選択,分周比を設定するレジスタです。

CKC レジスタは,1 ビット・メモリ操作命令または 8 ビット・メモリ操作命令で設定します。

アドレス:FFFA4H リセット時:00H R/W注1

略号 7 6 5 4 3 2 1 0

CKC CLS CSS MCS MCM0 0 0 0 0

CLS CPU/ 周 辺 ハ ー ド ウエ ア・ クロッ ク (fCLK)の ステ ー タ ス 0 メ イン ・ シス テ ム・ク ロッ ク(fMAIN)

1 サ ブシ ス テム ・ クロッ ク(fSUB)

CSS CPU/ 周 辺ハ ー ド ウエ ア・ クロッ ク (fCLK)の選択 0 メ イン ・ シス テ ム・ク ロッ ク(fMAIN)

1 サ ブシ ス テム ・ クロッ ク(fSUB)

MCS メ イン ・ シス テ ム・ク ロッ ク(fMAIN)の ス テー タ ス 0 高 速オ ン チッ プ オシレ ータ クロッ ク (fIH)

1 高 速シ ス テム ・ クロッ ク(fMX)

MCM0 メ イ ン・ シ ステ ム ・ク ロ ック(fMAIN)の動 作 制御

0 メ イン ・ シス テ ム・ク ロッ ク(fMAIN) に高 速内 蔵 発 振ク ロッ ク (fIH)を選択 1 メ イン・シ ス テ ム・ク ロッ ク( fMAIN)に 高 速 シ ス テム・クロ ッ ク(fMX)を選択 注1. ビット7, 5は,Read Onlyです。

(34)

2-5

X1/P121, X2/EXCLK/P122端子およびXT1/P123, XT2/EXCLKS/P124端子の動作モードの設定(クロック入力端子と して使用するか否か ) と,発振回路のゲインを選択するレジスタです。

CMC レジスタは,リセット解除後,8 ビット・メモリ操作命令で 1 回のみ書き込み可能です。読み出す場合は, 

1 ビット・メモリ操作命令,または 8 ビット・メモリ操作命令で操作可能です。

アドレス:FFFA0H リセット時:00H R/W

略号 7 6 5 4 3 2 1 0

CMC EXCLK OSCSEL EXCLKS OSCSELS 0 AMPHS1 AMPHS0 AMPH

EXCLK OSCSEL 高速システム・クロック 端子の動作モード

X1/P121端子 X2/EXCLK/P122端子

0 0 入力ポート・モード 入力ポート

0 1 X1発振モード 水晶/セラミック発振子接続

1 0 入力ポート・モード 入力ポート

1 1 外部クロック入力モード 入力ポート 外部クロック入力

EXCLKS OSCSELS サブシステム・クロック 端子の動作モード

XT1/P123端子 XT2/EXCLKS/P124 端子

0 0 入力ポート・モード 入力ポート

0 1 XT1発振モード 水晶/セラミック発振子接続

1 0 入力ポート・モード 入力ポート

1 1 外部クロック入力モード 入力ポート 外部クロック入力

AMPHS1 AMPHS0 XT1発振回路の発振モード選択

0 0 低消費発振(デフォルト)

0 1 通常発振

1 0 超低消費発振

1 1 設定禁止

AMPH X1クロック発振周波数の制御

0 1 MHz≦fX≦10 MHz 1 10 MHz<fX≦20 MHz

高速システムクロック(X1)設定用

高速システムクロック(X1)設定用 サブシステムクロック(XT1)設定用

注1:リセット解除後、8ビットメモリ操作命令で   “1回のみ”書き込みが可能です。

(35)

2-6

高速システム・クロック,高速オンチップオシレータクロック,サブシステム・クロックの発振/停止を   制御するレジスタ

です(低速オンチップオシレータクロックは除く)。

CSC レジスタは,1 ビット・メモリ操作命令または 8 ビット・メモリ操作命令で設定します。

アドレス:FFFA1H リセット時:C0H R/W

略号 7 6 5 4 3 2 1 0

CSC MSTOP XTSTOP 0 0 0 0 0 HIOSTOP

高速システム・クロックの動作制御 MSTOP

X1発振モード時 外部クロック入力モード時 入力ポート・モード時

0 X1発振回路動作 EXCLK端子か らの外部ク ロッ ク有効

1 X1発振回路停止 EXCLK端子か らの外部ク ロッ ク無効

入力ポ ート

サブシステム・クロックの動作制御 XTSTOP

XT1発振モード時 外部クロック入力モード時 入力ポート・モード時 0 XT1発振回路動作 EXCLKS 端 子 か ら の 外 部 ク ロ

ック有効

1 XT1発振回路停止 EXCLKS 端 子 か ら の 外 部 ク ロ ック無効

入力ポート

HIOSTOP 高速オンチップオシレータクロックの動作制御

0 高速オンチップオシレータ動作 1 高速オンチップオシレータ停止

注意1. リセット解除後は,クロック動作モード制御レジスタ(CMC)を設定してからCSCレジスタを設定してください。

(36)

2-7

OSMC レジスタは,不要なクロック機能を停止させることにより,低消費電力化することを目的としたレジスタ です。

  RTCLPC = 1 に設定すると,STOP モード時およびサブシステム・クロックで CPU 動作中の HALT モード時に, 

 リアルタイム・クロック,インターバル・タイマ以外の周辺機能へのクロック同期回路を停止するので,消費   電流を低減することが可能です。

  なお、サブクロックで CPU 動作中に HALT 命令実行による消費電流の削減を図りたい場合は、RTCLPC = 1 の   状態で、周辺イネーブルレジスタ 0(PER0) の RTCEN ビットのみを “1” とし、その他のビット (PER0 レジスタ   の bit6 〜 0 および PER1 の bit7 〜 0) は “0” にしてください。

OSMC レジスタは,8 ビット・メモリ操作命令で設定します。

アドレス:F00F3H リセット時:00H R/W

略号 7 6 5 4 3 2 1 0

OSMC RTCLPC 0 0 WUTMMCK0 0 0 0 0

RTCLPC STOPモード時およびサブシステム・クロックでCPU動作中のHALTモード時の設定 0 周辺機能へのサブシステム・クロック供給許可

1 リアルタイム・クロック ,12ビット・インターバル・タイマ以外の周辺機能への サブシステム・クロック供給停止

WUTMMCK0 リアルタイム・クロック,12ビット・インターバル・タイマ,タイマRJ の動作クロックの選択

0 サブシステムクロック(fSUB

・リアルタイム・クロック,12ビット・インターバル・タイマの動作クロックは サブシステム・クロックになります。

・タイマRJのカウントソースに低速オンチップ・オシレータを選択することは できません。

1 低速オンチップオシレータクロック(fIL

・リアルタイム・クロック,12ビット・インターバル・タイマの動作クロックは 低速オンチップ・オシレータ・クロックになります。

・タイマRJのカウントソースは低速オンチップ・オシレータ,サブシステム クロックのいずれかを選択することができます。

(37)

2-8

オプション・バイト(000C2H/010C2H)で設定した高速オンチップオシレータの周波数を変更するレジスタです。

ただし,オプション・バイト(000C2H/010C2H)の CMODE1,CMODE2 ビットで設定されている動作周波数範囲を  超える値に変更することはできません。(詳細は、5.2 オプションバイトを参照してください。)

HOCODIV は,8 ビット・メモリ操作命令で設定します。

アドレス:F00A8H リセット時:不定 R/W

略号 7 6 5 4 3 2 1 0

HOCODIV 0 0 0 0 0 HOCODIV 2 HOCODIV 1 HOCODIV 0

高速オンチップオシレータクロック周波数(fHOCO)の選択 FRQSEL4 = 0 FRQSEL4 = 1 HOCODIV2 HOCODIV1 HOCODIV0

FRQSEL3 = 0 FRQSEL3 = 1 FRQSEL3 = 0 FRQSEL3 = 1 0 0 0 fIH=24 MHz fIH=32 MHz fIH=24 MHz,fHOCO=48MHz fIH=32 MHz,fHOCO=64 MHz 0 0 1 fIH=12 MHz fIH=16 MHz fIH=12 MHz,fHOCO=24MHz fIH=16 MHz,fHOCO=32 MHz 0 1 0 fIH=6 MHz fIH=8 MHz fIH=6 MHz,fHOCO=12 MHz fIH=8 MHz,fHOCO=16 MHz 0 1 1 fIH=3 MHz fIH=4 MHz fIH=3 MHz,fHOCO=6 MHz fIH=4 MHz,fHOCO=8 MHz 1 0 0 設定禁止 fIH=2 MHz 設定禁止 fIH=2 MHz,fHOCO=4 MHz 1 0 1 設定禁止 fIH=1 MHz 設定禁止 fIH=1 MHz,fHOCO=2 MHz

上記以外 設定禁止

オプションバイト (000C2H/010C2H)の値 CMODE1 CMODE2

フラッシュ動作モード 動作周波数範囲 動作電圧範囲

0 0 LV(低電圧メイン)モード 1MHz〜4MHz 1.6V〜5.5V 1 0 LS(低速メイン)モード 1MHz〜8MHz 1.8V〜5.5V 1MHz〜16MHz 2.4V〜5.5V 1 1 HS(高速メイン)モード

1MHz〜32MHz 2.7V〜5.5V

設定したフラッシュ動作 モードの動作周波数 範囲内で変更すること。

(38)

2-9

HIOTRM レジスタは、高速オンチップオシレータの周波数を補正するレジスタです。

HIOTRM は,8 ビット・メモリ操作命令で設定します。

値を 1 つ増減するごとに、約 0.05% 変化します。

※ 精度補正後に温度や Vdd 端子電圧が変化した場合、周波数は変動しますので、その都度あるいは定期的に補正する      必要があります。

アドレス:F00A0H リセット時:チップごとに異なります R/W

略号 7 6 5 4 3 2 1 0

HIOTRM 0 0 HIOTRM5 HIOTRM4 HIOTRM3 HIOTRM2 HIOTRM1 HIOTRM0

HIOTRM5 HIOTRM4 HIOTRM3 HIOTRM2 HIOTRM1 HIOTRM0 高速オンチップ オシレータ

0 0 0 0 0 0 最低速

0 0 0 0 0 1

0 0 0 0 1 0

0 0 0 0 1 1

0 0 0 1 0 0

1 1 1 1 1 0

1 1 1 1 1 1 最高速

(39)

2-10

STOP モード解除時の X1 クロックの発振安定時間を選択するレジスタです。

CPU クロックに X1 クロックを選択した場合,STOP モード解除後は、OSTS レジスタで設定した時間分自動でウェ イトします。

CPU クロックに高速オンチップオシレータクロックを選択した場合,STOP モード解除後は,発振安定時間カウ ンタ状態レジスタ(OSTC)で発振安定時間が経過したかを確認してください。

OSTS レジスタは 8 ビット操作命令で設定します。

アドレス:FFFA3H リセット時:07H R/W

略号 7 6 5 4 3 2 1 0

OSTS 0 0 0 0 0 OSTS2 OSTS1 OSTS0

発振安定時間の選択 OSTS2 OSTS1 OSTS0

fX = 10 MHz時 fX = 20 MHz時 0 0 0 28/fX 25.6 μs 12.8 μs 0 0 1 29/fX 51.2 μs 25.6 μs 0 1 0 210/fX 102.4 μs 51.2 μs 0 1 1 211/fX 204.8 μs 102.4 μs 1 0 0 213/fX 819.2 μs 409.6 μs 1 0 1 215/fX 3.27 ms 1.64 ms 1 1 0 217/fX 13.11 ms 6.55 ms 1 1 1 218/fX 26.21 ms 13.11 ms

※ 発振を開始するまでの時間は、

X1クロックの発振安定時間には 含みません。

参照

関連したドキュメント

 リ〇

アメリカ心理学会 APA はこうした動向に対応し「論 文作成マニュアル」の改訂を実施してきている。 21 年前 の APA Publication Manual 4th Edition(American

Notum sit omnibus, quod dominus Egino de Flies et fratres sororesque eius habentes predium quoddam apud Sconnowe, quod tradidernt domino Sigibotoni comiti pro precio Ⅳ

このうち, 「地域貢献コーディネー ターの設置」,「金沢学への招待」及

当第1四半期において、フードソリューション、ヘルスサポート、スペシャリティーズの各領域にて、顧客

Max-flow min-cut theorem and faster algorithms in a circular disk failure model, INFOCOM 2014...

節点領域辺連結度 (node-to-area edge-connectivity), 領域間辺連結度 (area-to-area edge-connectivity) の問題. ・優モジュラ関数

板岡優里  芸術学部アート・デザイン表現学科ヒーリング表現領域