236
2017 Microchip Technology Inc. DS20005619A_JP - p.1 特長 入力電圧 : 4.5 42 V 電流または電圧調整のための独立したアナログ 制御ループ 以下を含む ( ただしこれらに限定されない ) 複数の 回路方式で使うよう設定可能 - フライバック - Ćuk - 昇圧 - SEPIC (Single-Ended Primary-Inductor Converter) 擬似共振または固定周波数動作が可能 待機時消費電流 : 5 mA (typ.) スリープ電流 : 50 μA (typ.) ローサイドゲート駆動 : - +5 Vゲート駆動で0.5 Aのシンク/ ソース電流 - +10 V ゲート駆動で 1 A のシンク / ソース電流 ピーク電流モード制御 差動リモート出力検出 多出力システム : - マスタまたはスレーブ • AEC-Q100 認証済み 設定可能なパラメータ : -V REF 、高精度 I OUT /V OUT 設定点 (DAC) - ADC 参照スイッチ (V DD または AV DD ) - 入力低電圧ロックアウト (UVLO) - 入力過電圧ロックアウト (OVLO) - 検出と保護 -1 次側電流のリーディング エッジ ブランキング (050100200 ns) - ゲート駆動のデッドタイム (16 256 ns) - 固定スイッチング周波数レンジ : 31.25 kHz 2.0 MHz - スロープ補償 - 内蔵コンパレータとプログラマブル オフ セット電圧調整による擬似共振構成 -1 次側電流のオフセット調整 - GPIO ピン 内蔵ローサイド差動電流センスアンプ 誤差 ±5% 未満の電流調整 サーマル シャットダウン マイクロコントローラの特長 高精度 8 MHz 内部オシレータ ブロック : - 工場にて ±1% (typ.) に校正済み 割り込み対応 : - ファームウェア - 状態変化割り込みピン 命令は 35 しかなく習得が容易 • 4,095 ワードの内蔵プログラムメモリ 高書き込み耐性フラッシュ : - 10 万回の書き換えを保証するフラッシュ - フラッシュデータ保持期間 : 40 年以上 独立したオシレータを用いたウォッチドッグ タイマ (WDT) による高信頼性動作 プログラマブルなコード保護 •2 本のピンを介してのインサーキット シリアル プログラミング ™ (ICSP™) •8 本の I/O ピンと 1 本の入力専用ピン : -2 本のオープンドレイン ピン • A/D コンバータ (ADC): - 10 ビット分解能 - 外部チャンネル : 5 Timer0: 8 ビットタイマ / カウンタ、8 ビット プリスケーラ付き 拡張 Timer1: - 16 ビットタイマ、プリスケーラ付き -2 つのクロック源を選択可能 Timer2: 8 ビットタイマ、プリスケーラ付き : -8 ビットの周期レジスタ I 2 C 通信 : -7 ビット アドレス マスキング -2 つの専用アドレスレジスタ MCP19124/5 マイコン内蔵同期ローサイド デュアル PWM アナログ電源コントローラ 注意 : この日本語版文書は参考資料としてご利用ください。最新情報は必ずオリジ ナルの英語版をご参照願います。

Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

  • Upload
    vannhi

  • View
    225

  • Download
    6

Embed Size (px)

Citation preview

Page 1: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.1

特長

• 入力電圧 : 4.5 ~ 42 V

• 電流または電圧調整のための独立したアナログ制御ループ

• 以下を含む ( ただしこれらに限定されない ) 複数の回路方式で使うよう設定可能

- フライバック

- Ćuk

- 昇圧

- SEPIC (Single-Ended Primary-Inductor Converter)

• 擬似共振または固定周波数動作が可能

• 待機時消費電流 : 5 mA (typ.)

• スリープ電流 : 50 µA (typ.)

• ローサイドゲート駆動 :

- +5 Vゲート駆動で0.5 Aのシンク/ソース電流

- +10 Vゲート駆動で1 Aのシンク /ソース電流

• ピーク電流モード制御

• 差動リモート出力検出

• 多出力システム :

- マスタまたはスレーブ

• AEC-Q100 認証済み

• 設定可能なパラメータ :

- VREF、高精度 IOUT/VOUT 設定点 (DAC)

- ADC 参照スイッチ (VDD または AVDD)

- 入力低電圧ロックアウト (UVLO)

- 入力過電圧ロックアウト (OVLO)

- 検出と保護

- 1 次側電流のリーディング エッジ ブランキング (0、50、100、200 ns)

- ゲート駆動のデッドタイム (16 ~ 256 ns)

- 固定スイッチング周波数レンジ : 31.25 kHz ~ 2.0 MHz

- スロープ補償

- 内蔵コンパレータとプログラマブル オフセット電圧調整による擬似共振構成

- 1 次側電流のオフセット調整

- GPIO ピン

• 内蔵ローサイド差動電流センスアンプ

• 誤差 ±5% 未満の電流調整

• サーマル シャットダウン

マイクロコントローラの特長

• 高精度 8 MHz 内部オシレータ ブロック :

- 工場にて ±1% (typ.) に校正済み

• 割り込み対応 :

- ファームウェア

- 状態変化割り込みピン

• 命令は 35 しかなく習得が容易

• 4,095 ワードの内蔵プログラムメモリ

• 高書き込み耐性フラッシュ :

- 10 万回の書き換えを保証するフラッシュ

- フラッシュデータ保持期間 : 40 年以上

• 独立したオシレータを用いたウォッチドッグ タイマ (WDT) による高信頼性動作

• プログラマブルなコード保護

• 2 本のピンを介してのインサーキット シリアル プログラミング ™ (ICSP™)

• 8 本の I/O ピンと 1 本の入力専用ピン :

- 2 本のオープンドレイン ピン

• A/D コンバータ (ADC):

- 10 ビット分解能

- 外部チャンネル : 5 本

• Timer0: 8 ビットタイマ / カウンタ、8 ビット プリスケーラ付き

• 拡張 Timer1:

- 16 ビットタイマ、プリスケーラ付き

- 2 つのクロック源を選択可能

• Timer2: 8 ビットタイマ、プリスケーラ付き :

- 8 ビットの周期レジスタ

• I2C 通信 :

- 7 ビット アドレス マスキング

- 2 つの専用アドレスレジスタ

MCP19124/5マイコン内蔵同期ローサイド デュアル PWM アナログ電源コントローラ

注意 : この日本語版文書は参考資料としてご利用ください。 新情報は必ずオリジナルの英語版をご参照願います。

Page 2: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.2 2017 Microchip Technology Inc.

ピン配置図 – 24 ピン QFN (MCP19124)

* 露出サーマルパッド付き ( 表 1 参照 )

VIN

VD

D

I SP

I SN

IP

DE

SA

T_

N

AGND

GPA0/AN0/TEST_OUT

PDRV

PGND

SDRV

VS

VC

OM

P

VDR

GPA1/AN1/CLKPIN

GPA2/AN2/T0CKI/INT

GPA3/AN3

GPA7/SCL/ICSPCLK

GPA6/CCD/ICSPDAT

DE

SA

T_

P

GP

B1

/AN

4/V

RE

F2

MCP19124

GP

B0/S

DA

I CO

MP

2324 2122 1920

7 10 1298 11

GP

A5

/MC

LR

/TE

ST

_E

N1

2

3

4

5

6 13

14

15

16

17

18

EXP-25 *

Page 3: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.3

MCP19124/5

表 1: 24 ピン QFN (MCP19124) のまとめ

I/O

24ピン

QF

N

AN

SE

L

A/D

タイマ

MS

SP

割り込み

プルアップ

基本機能 備考

GPA0 1 Y AN0 — — IOC Y — アナログ / デジタルデバッグ出力 (1)

GPA1 2 Y AN1 — — IOC Y — 同期信号入出力 (2)

GPA2 3 Y AN2 T0CKI — IOCINT

Y — —

GPA3 4 Y AN3 — — IOC Y — —

GPA5 7 N — — — IOC (3) Y (4) MCLR テストイネーブル入力

GPA6 6 N — — — IOC Y ICSPDAT デュアル キャプチャ / コンペア入力

GPA7 5 N — — SCL IOC N ICSPCLK —

GPB0 8 N — — SDA IOC N — —

GPB1 24 Y AN4 — — IOC Y — VREF2 (5)

DESATN 9 N — — — — — — DESAT 負入力

DESATP 10 N — — — — — — DESAT 正入力

ISP 11 N — — — — Y — 電流検出アンプ正入力

ISN 12 N — — — — — — 電流検出アンプ負入力

IP 13 N — — — — — — 1 次側入力電流検出

AGND 14 N — — — — — AGND 小信号用グランド

PGND 15 N — — — — — PGND MOSFET 接続用グランド

SDRV 16 N — — — — — — 2 次側 LS ゲート駆動出力

PDRV 17 N — — — — — — 1 次側 LS ゲート駆動出力

VDR 18 N — — — — — VDR ゲート駆動電源電圧

VDD 19 N — — — — — VDD VDD 出力

VIN 20 N — — — — — VIN 入力電源電圧

VS 21 N — — — — — — 出力電圧検出

VCOMP 22 N — — — — — — EA2 電圧エラーアンプ出力

ICOMP 23 N — — — — — — EA1 電流エラーアンプ出力

EXP 25 N — — — — — — 露出サーマルパッド

Note 1: アナログ / デジタルデバッグ出力は、ABECON レジスタの制御によって選択されます。

2: MODECON レジスタの MSC<1:0> ビットを適切に設定して、マスタまたはスレーブとして動作している場合に選択されます。

3: MCLR が有効な場合、IOC は無効になります。

4: MCLR が有効な場合、弱プルアップは常に有効になります。それ以外の場合はユーザによって制御されます。

5: MODECON レジスタの MSC<1:0> ビットを適切にマスタとして設定している場合、VREF2 出力が選択されます。

Page 4: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.4 2017 Microchip Technology Inc.

ピン配置図 – 28 ピン QFN (MCP19125)

* 露出サーマルパッド付き ( 表 2 参照 )

VIN

I SP

I SN

IP

DE

SA

T_

N

AGND

GPA0/AN0/TEST_OUT

PDRV

PGND

SDRV

VS

VC

OM

P

VDRGPA1/AN1/CLKPIN

GPA2/AN2/T0CKI/INT

GPA3/AN3

GPA7/SCL

GPA6/CCD

DE

SA

T_P

GP

B1/A

N4/V

RE

F2

MCP19125

GP

B0

/SD

A

I CO

MP

2728 2526 2324

8 11 13109 12

GP

A5

/MC

LR

/TE

ST

_E

N

1

2

3

4

5

6 16

17

18

19

20

21

EXP-29 *

7 15

14

22

GPB4/AN5/ICSPDAT

GP

B7/C

CD

VDD

GP

B5

/AN

6/I

CS

PC

LK

GP

B6/A

N7

Page 5: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.5

MCP19124/5

表 2: 28 ピン (MCP19125) のまとめ

I/O

28ピン

QF

N

AN

SE

L

A/D

タイマ

MS

SP

割り込み

プルアップ

基本機能 備考

GPA0 1 Y AN0 — — IOC Y — アナログ /デジタルデバッグ出力 (1)

GPA1 2 Y AN1 — — IOC Y — 同期信号入出力 (2)

GPA2 3 Y AN2 T0CKI — IOCINT

Y — —

GPA3 5 Y AN3 — — IOC Y — —

GPA5 8 N — — — IOC (3) Y (4) MCLR テストイネーブル入力

GPA6 7 N — — — IOC Y — デュアル キャプチャ/シングルコンペア 1 入力

GPA7 6 N — — SCL IOC N — —

GPB0 10 N — — SDA IOC N — —

GPB1 26 Y AN4 — — IOC Y — VREF2 (5)

GPB4 4 Y AN5 — — IOC Y ICSPDAT —

GPB5 27 Y AN6 — — IOC Y ICSPCLK —

GPB6 28 Y AN7 — — IOC Y — —

GPB7 9 Y — — — IOC Y — シングルコンペア 2 入力

DESATN 11 N — — — — — — DESAT 負入力

DESATP 12 N — — — — — — DESAT 正入力

ISP 13 N — — — — Y — 電流検出アンプ非反転入力

ISN 14 N — — — — — — 電流検出アンプ反転入力

IP 15 N — — — — — — 1 次側入力電流検出

AGND 16 N — — — — — AGND 小信号用グランド

PGND 17 N — — — — — PGND MOSFET 接続用グランド

SDRV 18 N — — — — — — 2 次側 LS ゲート駆動出力

PDRV 19 N — — — — — — 1 次側 LS ゲート駆動出力

VDR 20 N — — — — — VDR ゲート駆動電源電圧

VDD 21 N — — — — — VDD VDD 出力

VIN 22 N — — — — — VIN 入力電源電圧

VS 23 N — — — — — — 出力電圧検出

VCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力

ICOMP 25 N — — — — — — EA1 電流エラーアンプ出力

EXP 29 N — — — — — — 露出サーマルタブ

Note 1: アナログ / デジタルデバッグ出力は、ABECON レジスタの制御によって選択されます。

2: MODECON レジスタの MSC<1:0> ビットを適切に設定して、マスタまたはスレーブとして動作している場合に選択されます。

3: MCLR が有効な場合、IOC は無効になります。

4: MCLR が有効な場合、弱プルアップは常に有効になります。それ以外の場合はユーザによって制御されます。

5: MODECON レジスタの MSC<1:0> ビットを適切に設定して、マスタとして設定している場合、VREF2出力が選択されます。

Page 6: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.6 2017 Microchip Technology Inc.

目次

特長 ............................................................................................................. 1マイクロコントローラの特長......................................................................................... 1ピン配置図 – 24 ピン QFN (MCP19124) ............................................................................................................................................... 2ピン配置図 – 28 ピン QFN (MCP19125) ............................................................................................................................................... 4目次 ............................................................................................................. 6大切なお客様へ..................................................................................................... 7

新のデータシート................................................................................................. 7エラッタ........................................................................................................... 7お客様向け通知システム............................................................................................. 71.0 デバイス概要.................................................................................................. 92.0 ピンの説明................................................................................................... 133.0 機能説明..................................................................................................... 194.0 電気的特性................................................................................................... 225.0 デジタル電気的特性........................................................................................... 316.0 MCP19124/5 の設定........................................................................................... 397.0 代表性能曲線................................................................................................. 538.0 システム ベンチテスト ........................................................................................ 579.0 デバイスの校正............................................................................................... 5910.0 メモリ構成................................................................................................... 6911.0 デバイス コンフィグレーション ................................................................................ 8112.0 リセット..................................................................................................... 8313.0 割り込み..................................................................................................... 9114.0 パワーダウン モード ( スリープ ) ............................................................................................................................................. 10115.0 ウォッチドッグ タイマ (WDT).................................................................................................................................................. 10316.0 オシレータモード............................................................................................ 10517.0 I/O ポート................................................................................................... 10718.0 状態変化割り込み............................................................................................ 11519.0 A/D コンバータ (ADC) モジュール ............................................................................. 11920.0 フラッシュ プログラムメモリ制御 ............................................................................. 13121.0 Timer0 モジュール ........................................................................................... 13722.0 Timer1 モジュール ( ゲート制御対応 )...................................................................................................................................... 13923.0 Timer2 モジュール ........................................................................................... 14324.0 デュアル キャプチャ / コンペア (CCD) モジュール............................................................... 14525.0 内部温度インジケータ モジュール ............................................................................. 14926.0 PWM 制御ロジック .......................................................................................... 15127.0 拡張 PWM モジュール........................................................................................ 15328.0 マスタ同期シリアルポート (MSSP) モジュール.................................................................. 15729.0 命令セットのまとめ.......................................................................................... 20130.0 インサーキット シリアル プログラミング ™(ICSP™) .............................................................................................................21131.0 開発サポート................................................................................................ 21332.0 パッケージ情報.............................................................................................. 217補遺 A: 改訂履歴.................................................................................................. 223Microchip 社のウェブサイト........................................................................................ 225お客様向け変更通知サービス....................................................................................... 225お客様サポート................................................................................................... 225索引 ........................................................................................................... 227製品識別システム................................................................................................. 233商標 ........................................................................................................... 235各国の営業所とサービス........................................................................................... 236

Page 7: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.7

MCP19124/5

大切なお客様へ

弊社は、大切なお客様が Microchip 社製品を 適にお使いになれるよう、文書の作成に 善の努力を尽くしています。このため、

お客様のニーズにより的確にお応えできるよう継続的に文書の改善に努め、更新版をリリースする際に内容の見直しと充実を

図って参ります。

本書に関してご質問またはご意見がございましたら、マーケティング コミュニケーション部宛てにメールでご連絡ください。

メールの宛先は [email protected] です。皆様からのご意見をお待ちしております。

新のデータシート

本データシートの 新版を入手するには、以下のウェブサイトで登録手続きを行ってください。

http://www.microchip.com からダウンロードできます。

データシートのリビジョンは、各ページの欄外下隅に記載されている文書番号で確認できます。文書番号の 後の文字がリビジョン番号を表します ( 例 : DS30000000A_JP であれば文書 DS30000000_JP のリビジョン A)。

エラッタ

現行デバイスの動作とデータシート上の動作との間に微細な差違が生じた場合、その相違点と推奨対応策を記載したエラッタシートを発行する場合があります。弊社はデバイスや文書に関する問題を認識した時点でエラッタを発行します。エラッタには、該当するシリコンと文書のリビジョンを明記します。

お使いのデバイス向けにエラッタシートが発行されているかどうかは以下で確認できます。

• Microchip 社のウェブサイト : http://www.microchip.com• Microchip 社営業所 ( 本書の 後のページに記載 )お問い合わせの際は、お使いのデバイス、シリコンとデータシートのリビジョン ( 文書番号含む ) をお知らせください。

お客様向け通知システム

弊社ウェブサイト (www.microchip.com) でご登録頂いたお客様には、弊社の全製品に関する 新情報をお届けします。

Page 8: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.8 2017 Microchip Technology Inc.

NOTE:

Page 9: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.9

MCP19124/5

1.0 デバイス概要

MCP19124/5 は、4.5 ~ 42 V で動作する高集積ミクストシグナル ローサイド同期式コントローラです。本ファミリは、電流と電圧調整のためにそれぞれ独立したアナログ PWM 制御ループを備えています。これらの機能と内蔵マイクロコントローラ コアにより、本ファミリはバッテリ充電アプリケーション、LED 照明システム、その他のローサイド スイッチ PWM アプリケ ー シ ョ ン 向 け の 理 想 的 な デ バ イ ス で す。MCP19124/5 は、一部の追加機能と電圧調整のための追加アナログ制御ループを除き、MCP19114/5 拡張PWM コントローラをベースとしています。デバイスの動作パラメータのカスタマイズ、起動 / シャットダウンプロファイル、保護レベルとフォルト処理手順は、Microchip 社 MPLAB® X 統合開発環境ソフトウェアとMicrochip 社インサーキット デバッガおよびデバイスプログラマを使って設定します。

MCP19124/5 は、プログラマブル入力 UVLO/OVLO、プログラマブル出力過電圧 (OV)、独立したプログラマブル デッドタイムを備えた 2 つのローサイドゲート駆動出力、プログラマブル リーディング エッジ ブランキング (4 段階 )、プログラマブル 6 ビットスロープ補償、固定周波数向けの内部プログラマブル オシレータを備えています。EA2 電圧エラーアンプと制御ループによって電圧を調整する場合、出力OVは無効になります。内蔵8ビット参照電圧 (VREF)を使って出力電流を設定します。独立した 8 ビット参照電圧 (OVREF) を使って電圧調整設定点または過電圧保護設定点を設定します。内蔵コンパレータは擬似共振回路をサポートしています。拡張調光機能を含む追加制御のために、追加のキャプチャおよびコンペア モジュールを内蔵しています。

MCP19124/5 は、2 つの LDO を内蔵しています。5 VLDO (VDD) は、内部プロセッサに電力を供給し外部に5 V を提供するのに使います。4 V LDO (AVDD) は、内部アナログ回路に電力を供給するのに使います。VDD とAVDD のどちらかを、10 ビット A/D コンバータの参照入力に内部的に接続できます。5 V 外部出力は、ゲート駆動に給電するのに使えます。5 V ゲート駆動に VDDを供給する場合、VDD 出力と VDR 入力の間にアナログフィルタを備える事を推奨します。2 つの 4.7 µF のコンデンサをそれぞれ VDD と VDR のできるだけ近い場所に配置し、10 の分離抵抗で分離する事を推奨します。VDD に接続するコンデンサの静電容量は 10 µFを超えてはいけません。外部電源には高いゲート駆動電圧を実装する必要があります。

VDD から電力供給して VDR を提供する Microchip 社のTC1240A電圧ダブラを利用する事で 10 Vのゲート駆動を実現できます。

4 V LDO は、内部アナログ回路に電力を供給するのに使います。2 つのローサイド ドライバは、電力コンバータを双方向モードで動作させるのに使えます。これらのローサイド ドライバを使って、LED アプリケーションの LED 調光電流の「シェーピング」またはバッテリ駆動アプリケーション向け双方向電力コンバータを開発できます。

MCP19124 は、24 ピン 4 mm x 4 mm QFN でパッケージ化しています。また、28 ピン 5 mm x 5 mm QFN でも提供しています。MCP19125 は、28 ピン 5 mm x 5 mmQFN でパッケージ化しています。

MCP19124/5 を使うとシステム設計者がアプリケーションの機能を構成できるため、高価な基板の面積と余分な部品コストを節約できます。MCP19124/5 の汎用I/O (GPIO)は以下のステータスを出力するように設定できます。

• 外部スイッチを制御するためのデバイス イネーブル

• スイッチング周波数同期出力または入力

• デバイス ステータスまたは「ハートビート」インジケータ

出力電流調整と動的出力電圧調整等の内蔵機能を備える MCP19124/5 ファミリは、クラス 高の性能と現在可能な 高レベルの統合を達成しています。

このアーキテクチャがサポートするパワートレインは昇圧、フライバック、擬似共振フライバック、SEPIC、Ćuk等を含みますがこれらに限定されません。

2 つのローサイド ゲートドライバは、10 V の VDR で1 A の電流をシンク / ソースできます。5 V ゲート駆動を使うと、0.5 A の電流をシンク / ソースできます。UVLOEN ビットをセットすると、VIN の UVLO でドライバをシャットダウンさせる事ができます。このビットをセットしていない場合、デバイスのドライバはUVLO 条件をライドスルーし、VDR がゲート駆動のUVLO 値に達するまで動作を続けます。この値には 2.7 Vまたは 5.4 V を選択でき、常に有効です。マイクロコントローラ コアの内部リセットは 2.0 V に設定されています。内部コンパレータ モジュールは、擬似共振回路でスイッチングを同期するためにフライバック変圧器のゼロ電流を検出するのに使います。

デバイスの通常動作の動作入力電圧は 4.5 ~ 42 V であり、絶対 大定格は 44 V です。 大過渡電圧は 48 V(500 ms) です。I2C シリアルバスは、PWM コントローラからシステムへのデバイス通信に使います。

Page 10: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MC

P19124/5

DS

20005619A

_JP - p.10

2017 M

icrochip Technolo

gy Inc.

図 1-1: MCP19124/5 のフライバック同期擬似共振のブロック図

5V to 10V

VIN

PDRV

IP

SDRV

DESATN

DESATP

ISN

ISP

GPIO

GPIO

AGND PGND

VDD

VDD VDD

VDR

4.7uF

4.7uF

10

Place recommended VDD and VDR 4.7 µF capacitors as close to respective pins as possible.

VIN

VDR

VDD (5V)

BGAP

UVLO

8

8

BGAP

PIC COREOSC

OV UVLO

PDRV

ISN

I

A = 10

IP LEB2

EA_SCPWM Comp

PWM Logic

DESATN

QRS

VDR

AGND MCLR DIMISDA TEMP

VS

BINI/O x 3

(x7 MCP19125)

OV

6

CCD

SDRV

4

4

EN1 EN2

OVLO

4

VCOMP

PGND

PGND

PGND

VDD

GPB1

I/O

LDO1LDO2

Bias Gen

AVDD (4V)AVDD

VDD

8

DESATMUX

4V to 20V

8.8V to 44V

BGAP

DESATP

ISP

VDD_OK

GateDrive

Timing

GateDrive

Timing

IP_COMPA2

EA1

OVLO_REF

UVLO_REF

Interrupt and Logic to PWM & PIC

AM

UX

4 msb

VIN_UVLO

Log

Lin

SlopeComp

ADJOffset

VIN_OVLO

+

-

-

+ OVLO

DM

UX

PWM

BGAP

BGAP

BGAP

VDRUVLO

BGAP 2.7V or 5.4V

ADC

4 msb

2 lsb

2 lsb

BGAP

BGAP

EA2

OV

EA1DIS

EA2DIS

EA2DISEA1DIS

VDD or AVDD

REF

VREFLin

OVREFLin

VREFLin

Page 11: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.11

MCP19124/5

図 1-2: MCP19124 の Ćuk 同期正出力の応用回路図

図 1-3: MCP19124 のフライバック バッテリ充電器の応用回路図

VIN

VDR

ISP

PGND

VS

IP

VIN

PDRV

BIN

DIMI

DESATN

MCLR

CCD

MCP19124

ICOMP

I/OTEMP SNS

EN

2

SDRV

AGND

VDD

4x4 m

m 2

4-L

d Q

FN

VDD

I/O

I/O

I/O

2

VDD

5V

DESATP

ISN

I/O

TC1240VOLTAGE

DOUBLER

10V

VCOMP

VIN

VDR

ISN

PGNDVS

IP

VIN

PDRV

DESAT_N

MCLR

MCP19124

ISP

ICOMP

EN

SDRV

AGND

4x4

mm

24

-Ld

QF

N

I/O

VDD

5V

DESAT_P

BA

TT

ER

Y

+

-

VCOMP

VDD

SDA

SCL

7

Page 12: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.12 2017 Microchip Technology Inc.

図 1-4: マイクロコントローラ コアのブロック図

I2C

13 Data Bus 8

14ProgramBus

Direct Addr 7

RAM Addr 9

IndirectAddr

TESTCLKIN

PORTA

8

8

8

3

8 Level Stack

(13-bit)

MCLR

T0CKI

PORTB

Configuration

Flash

ProgramMemory

4000 x 14

Program Counter

Instruction reg

Instruction

Decode &

Control

Timing

Generation

8 MHz Internal

Ocillator

VIN AGND

Timer0 Timer1 Timer2

Analog Interface Registers Enhanced PWM

GPA6 GPB7 (MCP19125)

Enhanced CCD

PMDATL

EEADDR

Self read/write

flash memory

SDA

SCL

Power-up

Timer

Power-on

Reset

Watchdog

Timer

W reg

MUX

ALU

STATUS reg

FSR reg

Addr MUX

RAM

256 bytes

File Registers

GPA0

GPA1

GPA2

GPA7

GPA6

GPA5

GPB0

GPB1

GPB7 (MCP19125)

GPB6 (MCP19125)

GPB5 (MCP19125)

GPA3

GPB4 (MCP19125)

Page 13: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.13

MCP19124/5

2.0 ピンの説明

24 ピン MCP19124 および 28 ピン MCP19125 には複数の機能が割り当てられたピンがあります。表 2-1 に、これらの機能の説明を示します。詳細はセクション2.1

「ピン機能の詳細な説明」を参照してください。

表 2-1: MCP19124/5 のピンの説明

ピン名 機能入力タイプ

出力タイプ

説明

GPA0/AN0/TEST_OUT GPA0 TTL CMOS 汎用 I/O

AN0 AN — A/D チャンネル 0 入力

TEST_OUT — — 内部アナログ/デジタル信号マルチプレクサ出力(1)

GPA1/AN1/CLKPIN GPA1 TTL CMOS 汎用 I/O

AN1 AN — A/D チャンネル 1 入力

CLKPIN ST CMOS スイッチング周波数クロックの入力または出力 (2)

GPA2/AN2/T0CKI/INT GPA2 ST CMOS 汎用 I/O

AN2 AN — A/D チャンネル 2 入力

T0CKI ST — Timer0 クロック入力

INT ST — 外部割り込み

GPA3/AN3 GPA3 TTL CMOS 汎用 I/O

AN3 AN — A/D チャンネル 3 入力

GPA5/MCLR GPA5 TTL — 汎用の入力専用

MCLR ST — 内部プルアップ付きマスタクリア

GPA6/CCD/ICSPDAT GPA6 ST CMOS 汎用 I/O

ICSPDAT ST CMOS シリアル プログラミングのデータ I/O

CCD ST CMOS シングルコンペア出力デュアル キャプチャ入力

GPA7/SCL/ICSPCLK GPA7 ST OD 汎用のオープンドレイン I/O

SCL I2C OD I2C クロック

ICSPCLK ST — シリアル プログラミングのクロック

GPB0/SDA GPB0 TTL OD 汎用 I/O

SDA I2C OD I2C データ入出力

GPB1/AN4/VREF2 GPB1 TTL CMOS 汎用 I/O

AN4 AN — A/D チャンネル 4 入力

VREF2 — AN VREF2 DAC 出力 (3)

GPB4/AN5/ICSPDAT(MCP19125 のみ )

GPB4 TTL CMOS 汎用 I/O

AN5 AN — A/D チャンネル 5 入力

ICSPDAT ST CMOS インサーキット シリアル プログラミングのデータI/O

GPB5/AN6/ICSPCLK/(MCP19125 のみ )

GPB5 TTL CMOS 汎用 I/O

AN6 AN — A/D チャンネル 6 入力

ISCPCLK ST — インサーキット シリアル プログラミングのクロック

Legend: AN = アナログ入出力 CMOS = CMOS 互換入出力 OD = オープンドレイン

TTL = TTL 互換入力 ST = CMOS レベルのシュミットトリガ入力 I2C = I2C レベルのシュミットトリガ入力

Note 1: アナログ / デジタルデバッグ出力は、ABECON レジスタの制御によって選択されます。

2: MODECON レジスタの MSC<1:0> ビットを適切に設定して、マスタまたはスレーブとして動作している場合に選択され

ます。

3: MODECON レジスタの MSC<1:0> ビットを適切に設定して、マスタとして設定している場合、VREF2 出力が選択され

ます。

Page 14: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.14 2017 Microchip Technology Inc.

GPB6/AN7 GPB6 TTL CMOS 汎用 I/O

AN7 AN — A/D チャンネル 7 入力

GPB7/CCD GPB7 TTL CMOS 汎用 I/O

CCD ST CMOS シングルコンペア出力デュアル キャプチャ入力

VIN VIN — — デバイス入力電源電圧

VDD VDD — — 内部 +5 V LDO 出力ピン

VDR VDR — — ゲート駆動電源電圧

AGND AGND — — 小信号用グランド

PGND PGND — — MOSFET 接続用電源グランド

PDRV PDRV — — 1 次側ローサイド MOSFET ゲート駆動

SDRV SDRV — — 2 次側ローサイド MOSFET ゲート駆動

IP IP — — 1 次側入力電流検出

ISN ISN — — 2 次側電流検出アンプ負入力

ISP ISP — — 2 次側電流検出アンプ正入力

VS VS — — 過電圧 DAC と比較する検出電圧

VCOMP VCOMP — — EA2 電圧エラーアンプ出力

ICOMP ICOMP — — EA1 電流エラーアンプ出力

DESATP DESATP — — DESATP: DESAT 検出コンパレータ正入力

DESATN DESATN — — DESATN: DESAT 検出コンパレータ負入力

表 2-1: MCP19124/5 のピンの説明 ( 続き )

ピン名 機能入力タイプ

出力タイプ

説明

Legend: AN = アナログ入出力 CMOS = CMOS 互換入出力 OD = オープンドレイン

TTL = TTL 互換入力 ST = CMOS レベルのシュミットトリガ入力 I2C = I2C レベルのシュミットトリガ入力

Note 1: アナログ / デジタルデバッグ出力は、ABECON レジスタの制御によって選択されます。

2: MODECON レジスタの MSC<1:0> ビットを適切に設定して、マスタまたはスレーブとして動作している場合に選択され

ます。

3: MODECON レジスタの MSC<1:0> ビットを適切に設定して、マスタとして設定している場合、VREF2 出力が選択され

ます。

Page 15: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.15

MCP19124/5

2.1 ピン機能の詳細な説明

2.1.1 GPA0 ピン

GPA0 は汎用の TTL 入力または CMOS 出力ピンです。データ方向は TRISGPA で制御します。内部弱プルアップと状態変化割り込みも使用可能です。

AN0 は A/D への入力です。A/D のチャンネル 0 によるこのピンの読み出しを設定するには、TRISA0 とANSA0 の両ビットをセットする必要があります。

ABECON レジスタは、このピンが TEST_OUT 機能を持つように設定できます。これは、内部アナログまたはデジタル信号マルチプレクサのバッファ付き出力です。このピンに出力されるアナログ信号は、ADCON0 レジスタで制御します。このピンに出力されるデジタル信号は、ABECON レジスタで制御します。

2.1.2 GPA1 ピン

GPA1 は汎用の TTL 入力または CMOS 出力ピンです。データ方向は TRISGPA で制御します。内部弱プルアップと状態変化割り込みも使用可能です。

AN1 は A/D への入力です。A/D のチャンネル 1 によるこのピンの読み出しを設定するには、TRISA1 とANSA1 の両ビットをセットする必要があります。

MCP19124/5をマスタまたはスレーブとして設定する場合、このピンはスイッチング周波数同期入力または出力 (CLKPIN) に設定できます。

2.1.3 GPA2 ピン

GPA2 は汎用の ST 入力または CMOS 出力ピンです。データ方向は TRISGPA で制御します。内部弱プルアップと状態変化割り込みも使用可能です。

AN2 は A/D への入力です。A/D のチャンネル 2 によるこのピンの読み出しを設定するには、TRISA2 とANSA2 の両ビットをセットする必要があります。

OPTION_REGレジスタのT0CSビットをセットすると、T0CKI の機能が有効になります。詳細はセクション21.0「Timer0 モジュール」を参照してください。

GPA2 は、INTE ビットをセットする事で外部割り込みピンとしても設定できます。詳細はセクション 13.2「GPA2/INT 割り込み」を参照してください。

2.1.4 GPA3 ピン

GPA3 は汎用の TTL 入力または CMOS 出力ピンです。データ方向は TRISGPA で制御します。内部弱プルアップと状態変化割り込みも使用可能です。

AN3 は A/D への入力です。A/D のチャンネル 3 によるこのピンの読み出しを設定するには、TRISA3 とANSA3 の両ビットをセットする必要があります。

2.1.5 GPA5 ピン

GPA5 は、汎用の TTL 入力専用ピンです。内部弱プルアップと状態変化割り込みも使用可能です。

プログラミングが目的の場合、このピンはシリアルプログラマの MCLR ピンに接続します。詳細はセクション 30.0「インサーキット シリアル プログラミング ™(ICSP™)」を参照してください。

CONFIG レジスタで MCLRE ビットをセットしている場合、このピンは MCLR です。

2.1.6 GPA6 ピン

GPA6 は汎用の CMOS 出力または ST 入力ピンです。データ方向は TRISGPA で制御します。

ICSPDAT はシリアル プログラミングのデータ入出力機能です。デバイスをシリアル プログラミングする場合に ICSPCLK と併用します。

GPA6 は CCD モジュールの一部です。詳細はセクション 24.0「デュアル キャプチャ / コンペア (CCD) モジュール」を参照してください。

2.1.7 GPA7 ピン

GPA7 は真のオープンドレイン汎用ピンです。データ方向は TRISGPA で制御します。このピンはチップ内部でデバイス VDD に接続されていません。弱プルアップは接続されていませんが、状態変化割り込みは利用できます。

このピンはインサーキット シリアル プログラミングの ICSPCLK 入力です。デバイスをシリアル プログラミングする場合に ICSPDAT と併用します。

MCP19124/5 を I2C 通信用に設定した場合 ( セクション 28.2「I2C モードの概要」参照 )、GPA7 は I2C クロック (SCL) として機能します。適切に動作させるには、このピンを入力として設定する必要があります。

Page 16: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.16 2017 Microchip Technology Inc.

2.1.8 GPB0 ピン

GPB0 は真のオープンドレイン汎用ピンです。データ方向は TRISGPB で制御します。このピンはチップ内部でデバイス VDD に接続されていません。弱プルアップは接続されていませんが、状態変化割り込みは利用できます。MCP19124/5 を I2C 通信用に設定した場合( セクション 28.2「I2C モードの概要」参照 )、GPB0は I2C クロック (SDA) として機能します。適切に動作させるには、このピンを入力として設定する必要があります。

2.1.9 GPB1 ピン

GPB1 は汎用の TTL 入力または CMOS 出力ピンです。データ方向は TRISGPB で制御します。内部弱プルアップと状態変化割り込みも使用可能です。

AN4 は A/D への入力です。A/D のチャンネル 4 によるこのピンの読み出しを設定するには、TRISB1 とANSB1 の両ビットをセットする必要があります。

MCP19124/5 をマスタとして設定する場合、このピンはVREF2 DAC 出力に設定できます。

2.1.10 GPB4 ピン (MCP19125 のみ )

GPB4 は汎用の TTL 入力または CMOS 出力ピンです。データ方向は TRISGPB で制御します。内部弱プルアップと状態変化割り込みも使用可能です。

AN5 は A/D への入力です。A/D のチャンネル 5 によるこのピンの読み出しを設定するには、TRISB4 とANSB4 の両ビットをセットする必要があります。

ICSPDATはインサーキット シリアル プログラミングのデータ入出力機能です。デバイスをシリアル プログラミングする場合に ICSPCLK と併用します。

2.1.11 GPB5 ピン (MCP19125 のみ )

GPB5 は汎用の TTL 入力または CMOS 出力ピンです。データ方向は TRISGPB で制御します。内部弱プルアップと状態変化割り込みも使用可能です。

AN6 は A/D への入力です。A/D のチャンネル 6 によるこのピンの読み出しを設定するには、TRISB5 とANSB5 の両ビットをセットする必要があります。

ICSPCLKはインサーキット シリアル プログラミングのクロック機能です。デバイスをシリアル プログラミングする場合に ICSPDAT と併用します。

2.1.12 GPB6 ピン (MCP19125 のみ )

GPB6 は汎用の TTL 入力または CMOS 出力ピンです。データ方向は TRISGPB で制御します。内部弱プルアップと状態変化割り込みも使用可能です。

AN7 は A/D への入力です。A/D のチャンネル 7 によるこのピンの読み出しを設定するには、TRISB6 とANSB6 の両ビットをセットする必要があります。

2.1.13 GPB7 ピン (MCP19125 のみ )

GPB7 は汎用の TTL 入力または CMOS 出力ピンです。データ方向は TRISGPB で制御します。内部弱プルアップと状態変化割り込みも使用可能です。

GPB7 は CCD モジュールの一部です。詳細はセクション 24.0「デュアル キャプチャ / コンペア (CCD) モジュール」を参照してください。

2.1.14 DESATN ピン

内部コンパレータ反転入力です。ゼロ電流検出のための擬似共振動作中に使います。

2.1.15 DESATP ピン

擬似共振動作中、ゼロ電流検出のために内部コンパレータを使う場合、このピンをコンパレータの非反転入力に接続します。

2.1.16 ISP ピン

内部電流検出アンプへの非反転入力です。通常、2 次側電流の差動リモート検出に使います。PE1 レジスタの ISPUEN ビットをセットすると、このピンは内部でVDD にプルアップされます。

2.1.17 ISN ピン

内部電流検出アンプへの反転入力です。通常、2 次側電流の差動リモート検出に使います。

2.1.18 IP ピン

電流モード制御とピーク電流制限のための 1 次側入力電流検出です。電圧モード制御の場合、このピンはランプに接続できます。

2.1.19 AGND ピン

AGND は小信号のグランド接続ピンです。このピンはパッケージ裏面の露出パッドに接続します。

2.1.20 PGND ピン

MOSFET 接続のグランドは、全て PGND に接続します。これらの MOSFET 接続グランドのトレースは、ノイズに敏感な配線にスイッチング ノイズがカップリングしないように、ループ面積を小さくし、配線長も 短とします。

2.1.21 SDRV ピン

ローサイド 2 次側 MOSFET のゲートは、SDRV に接続します。SDRV をゲートに接続するプリント基板のトレースは、駆動電流の大きなピークと高速の電圧遷移に対応できるように、長さを 短に抑え、適切な幅を持たせる必要があります。

Page 17: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.17

MCP19124/5

2.1.22 PDRV ピン

ローサイド 1 次側 MOSFET のゲートは、PDRV に接続します。PDRV をゲートに接続するプリント基板のトレースは、駆動電流の大きなピークと高速の電圧遷移に対応できるように、長さを 短に抑え、適切な幅を持たせる必要があります。

2.1.23 VDR ピン

ローサイド ドライバの電源はこのピンに接続します。このピンの絶対 大定格は +13.5 V です。このピンはRC フィルタを介して VDD ピンに接続できます。

2.1.24 VDD ピン

内部 +5.0 V レギュレータの出力は、このピンに接続されます。このピンとデバイスの GND ピンの間に 1.0 µF以上 /4.7 µF 以下のバイパス コンデンサを接続する事を推奨します。バイパス コンデンサは、できるだけデバイスの近くに配置します。

2.1.25 VIN ピン

デバイスの入力電源接続ピンです。このピンとデバイスの GND ピンの間にコンデンサを接続する事を推奨します。

2.1.26 VS ピン

過電圧コンパレータの非反転入力に接続するアナログ入力です。通常、出力電圧の過電圧保護として使います。過電圧コンパレータの反転入力は OVREF DACで制御されます。

2.1.27 VCOMP ピン

外部補償回路に接続する EA2 エラーアンプ出力信号です。

2.1.28 ICOMP ピン

外部補償回路に接続する EA1 エラーアンプ出力信号です。

2.1.29 露出パッド (EP)

露出パッドは AGND に接続する事を推奨します。

Page 18: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.18 2017 Microchip Technology Inc.

NOTE:

Page 19: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.19

MCP19124/5

3.0 機能説明

3.1 リニア レギュレータ

MCP19124/5 の動作入力電圧レンジは 4.5 ~ 42 V です。2つの低ドロップアウト (LDO)電圧レギュレータが内蔵されています。5 V LDO は、内部プロセッサに電力を供給し外部用に 5 V を出力するのに使います。もう1 つの 4 V LDO (AVDD) は 4 V レギュレータであり、その他のアナログ内部回路に電力を供給するのに使います。AVDD は 4.096 V に校正済みであり、既定値の ADC参照電圧です。ADC 参照電圧は AVDD と VDD に切り換える事ができます。スリープモードに入る前には、ADC 参照電圧を AVDD に設定する必要があります。LDO を使って MCP19124/5 に電力を供給するため、入 力 電圧は抵抗分 圧器を使って監 視します。MCP19124/5 はブラウンアウト保護機能も備えています。詳細はセクション 12.3「ブラウンアウト リセット (BOR)」を参照してください。PIC コアは、VDD が2.0 V になるとリセットします。

3.2 出力駆動回路

MCP19124/5 は、同期フライバックおよび同期 Ćukコンバータ等の同期アプリケーション向けの外部ローサイド N チャンネル MOSFET を駆動するために 2 つのローサイド ドライバを内蔵しています。どちらのコンバータタイプも、同期 FET をダイオードで置き換える事で非同期制御向けに構成できます。フライバックも擬似共振動作が可能です。

MCP19124/5 は昇圧または SEPIC スイッチング モード電源 (SMPS) としても構成できます。昇圧モードでは、非同期固定周波数または非同期擬似共振制御を利用できます。このデバイスは、固定周波数非同期SEPICSMPS としても使えます。ローサイド駆動は、通常のSMPS 用途で MOSFET を高周波数でスイッチングできます。ゲート駆動 (VDR) には 5 ~ 10 V の電力を供給できます。この駆動力は、10 V ゲート駆動で 1 A のシンク / ソース、5 V ゲート駆動で 0.5 A のシンク /ソースが可能です。プログラマブル遅延はゲートのターンオン デッドタイムを設定するために使います。これにより、コンバータの効率を低下させるオーバーラップと貫通電流を防止します。各ドライバは、マイクロコントローラ コアが制御する専用の EN 入力を備えています。

3.3 電流検出

MCP19124/5 は出力電流を差動検出します。これは、低電流用途において電流検出抵抗での電力損失を 小化する事で高いシステム効率を維持するのに役立ちます。差動電流検出も、外部グランドの変動による誤差を 小化するのに役立ちます。内部差動アンプのゲインは 10 V/V (typ.) であり、工場で調整済みです。

3.4 ピーク電流モード

MCP19124/5 は、1 次側 MOSFET と直列の電流検出素子を使ったピーク電流モードで制御するデバイスです。プログラマブルなリーディング エッジ ブランキングを実装する事で、ターンオンによる電流スパイクを無視します。このブランク時間は ICLEBCON レジスタで制御できます。

ユーザプログラム機能によって 1 次側入力電流オフセット調整もできるため、1 次側入力ピーク電流を制限できます。このオフセット調整は ICOACON レジスタで制御します。

3.5 ゼロ電流検出内部コンパレータ モジュールは、擬似共振回路向けにパワートレインのゼロ電流を検出するのに使います。このコンパレータ出力は、次のスイッチング サイクルの開始を同期させる信号として使います。この動作は、従来の固定周波数とは異なります。DESAT コンパレータ出力は、PWM 回路に接続する場合は有効にし、固定周波数の場合は無効にします。擬似共振 (QR) 動作中、DESAT コンパレータ出力は有効になり、1 対のワンショット タイマと 1 つのフリップフロップと組み合わさって PWM 動作を維持します。Timer2 (TMR2) は、初期化し 低 QR 動作周波数より低い周波数で実行するように設定する必要があります。DESATCON レジスタの CDSWDE ビットがセットされている場合、TMR2はウォッチドッグとして機能します。

同期QR動作のフライバックSMPSのイベント順序例を以下に示します。

• 1 次側ゲート駆動 (PDRV) が High になる。

• DESAT コンパレータ出力が High になる。

• IPが電流エラーアンプ(EA1)のレベルに達しPWMコンパレータ出力が Low になるまで、1 次側電流が増える。

• PDRV が Low になり、2 次側ゲート駆動 (SDRV)が High になる ( プログラマブル デッドタイムの後 )。これにより 初のワンショットがトリガされ、200 ns のパルスを発生させてフリップフロップと TMR2 (WDM_RESET) をリセットする。

• 200 ns のワンショット パルスは、DESAT コンパレータ出力での、スイッチング ノイズによって生じる偽の遷移を全てマスクするように設計されている。

• SDRV は、2 次側巻き線がエネルギを完全に使い果たすまで High を維持する。この時、出力静電容量は巻き線と 2 次側 MOSFET を通して電流を逆にソースし始める。

• DESAT コンパレータはこれを検出し、その出力が Low になる。これによりフリップフロップがセットされ、2 番目のワンショットがトリガされ、制御ロジックへの 33 ns のパルスが発生してSDRV を Low、PDRV を High にする ( プログラマブル デッドタイムの後 )。

Page 20: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.20 2017 Microchip Technology Inc.

• 以後はこのサイクルを繰り返す。何らかの理由でリセットのワンショットがトリガされない場合、WDM_RESET 信号は Low に維持され、TMR2 はPWM 信号が新規サイクルを開始するまで実行できる。

ゼロ電流コンパレータ モジュールは、DESATCONレジスタで制御します。

3.6 起動

起動中に出力電流を制御するため、MCP19124/5 はユーザの裁量でシステム電流を単調増加させる事ができます。これは参照電圧 DAC (VREF) の制御で実現します。また、Timer2 と PR2 レジスタを使ってファームウェアでスイッチング周波数を制御する事もできます。大デューティ サイクルの制御はPWMRLレジスタで

行います。詳細はセクション 27.0「拡張 PWM モジュール」を参照してください。起動プロファイル全体はユーザがソフトウェアで制御できます。

3.7 ドライバ制御回路

MCP19124/5のドライバ制御回路は2つのエラーアンプ(EA1/EA2) を内蔵しています。両方のエラーアンプは、外部補償回路を備えたトランス コンダクタンス デザインです。このデュアル エラーアンプ構成により、デバイスは電流または電圧を調整できます。8 ビットDAC の VREF はペデスタル電圧 (VZC) と合計され、電流調整用エラーアンプ(EA1)の非反転入力に接続して電流調整設定点を形成します。これは MCP19114/5が使っている電流調整方式と非常によく似ています。

MCP19124/5 では、電圧制御エラーアンプ (EA2) を利用した 2 次側制御ループで電圧制御調整を実装できます。各エラーアンプの出力は 50 mV (typ.) になるように他方の出力にクランプされます。電圧または電流制御ループがより小さなエラーアンプ出力信号を必要とする場合、PWM 制御ループを使います。8 ビット OVREF DAC は、電圧制御エラーアンプ (EA2) の非反転入力に接続し、電圧コマンドレベルを設定します。ABECON レジスタの EA2DIS ビットで EA2 が無効になっている場合、過電圧コンパレータは有効になり、MCP19114/5 と同様過電圧検出 / 保護として機能します。

電流調整を実装している場合、エラーアンプ (EA1) が高速PWMコンパレータが使う制御電圧を発生します。本デバイスは内部生成した参照電圧 VREF を備えています。この内部参照電圧と 2 次側電流検出出力からの実際の帰還電圧の差 ( つまりエラー ) が制御電圧となります。電圧調整を実装している場合、エラーアンプ(EA2) が高速 PWM コンパレータが使う制御電圧を発生します。デバイスは内部生成した参照電圧 OVREF を備えています。この内部参照電圧と VS ピンに表れる実際の帰還電圧の差 ( つまりエラー ) が制御電圧となります。ICOMP ピンと VCOMP ピンに独立した外部補償ネットワークが接続されているため、各種状況に合わせて簡単に補償でき、制御システムの電圧および電流調整の安定性を向上させる事ができます。

MCP19124/5 はピーク電流モードで制御するため、コンパレータは1次側の電流に基づく1次側ピーク電流波形(IP) をエラーアンプの制御出力電圧と比較します。このエラーアンプ制御出力電圧は、それから減算するユーザプログラマブル スロープ補償も備えています。固定周波数では、インダクタ電流波形の下降スロープの 1/2より大きくなるようにスロープ補償信号が生成されます。この信号は SLPCRCON レジスタで制御します。過電流保護用の 1 次側スイッチのピーク電流制限値を設定するため、オフセット調整機能も使えます。スロープ補償ランプのレンジを指定します。電流検出信号が、制御電圧からスロープ補償を引いたレベルに達すると、ON サイクルは終了し、次のクロックサイクルで始まる次のサイクルの開始まで外部 PDRV スイッチは OFFにラッチされます。

低レベルでの電流調整性能を向上させるため、BG(1.23 V) に設定されたペデスタル電圧 (VZC) が電流調整アナログ制御ループに実装されています。この仮想的なグランドは、エラーアンプ (EA1)、スロープ補償、電流検出アンプ (A2)、IP オフセット調整のための参照電圧として機能します。

S-R ラッチ ( セット / リセット フリップフロップ ) により、次のクロックサイクルが始まるまで PWM 回路が外部スイッチを ON に切り換える事を抑止します。

3.8 固定 PWM 周波数

MCP19124/5 のスイッチング周波数は、DESAT コンパレータ出力では制御しませんが、8 MHz 内部クロックを使って生成します。MCP19124/5 のスイッチング周波数は、PR2 レジスタで設定します。PDRV デューティ サイクルの 大許容値は調整が可能で、PWMRLレジスタで制御します。設定可能なスイッチング周波数のレンジは 31.25 kHz ~ 2 MHz です。スイッチング周波数は FSW = 8 MHz/N (N は 4 N 256 の整数 ) として設定します。詳細はセクション 27.0「拡張 PWMモジュール」を参照してください。

3.9 VREF

この参照電圧は、電流エラーアンプ (EA1) の非反転入力に接続する電圧を発生させるのに使います。アナログ制御ループ全体は、バンドギャップ電圧 (1.23 V) と等しい仮想グランド ペデスタル電圧 (VZC) まで上昇します。

Page 21: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.21

MCP19124/5

3.10 OV REF

この参照電圧の 2 つの目的は、電圧調整設定点の設定と出力過電圧設定点の設定です。この参照電圧は、既定値で、電圧エラーアンプ (EA2) の非反転入力に接続されています。ABECON レジスタの EA2DIS ビットをセットする事で電圧エラーアンプが無効になると、この参照電圧は過電圧コンパレータの非反転入力に接続されます。ここで、この参照電圧は VS 入力ピンと比較されます。通常このピンは外部抵抗分圧器の出力電圧に比例しています。OV 保護は、有効な場合、システム回路の保護のための値に設定できます。または、再配置のためにコンバータ出力電圧の「リップル」を制限するのに使えます。コンパレータ出力は、ファームウェアが必要な追加動作を実行できるような設定可能な割り込みをトリガします。

3.11 プログラマブル遅延を備えた独立したゲート駆動

同期アプリケーション向けに、独立した 2 つのローサイドゲート駆動が内蔵されています。効率を向上させ、貫通電流を防止するため、プログラマブル遅延が実装されています。各ゲート駆動は、PE1 レジスタで制御する独立したイネーブル入力とDEADCONレジスタで制御するプログラマブル デッドタイムを備えています。

3.12 温度管理

3.12.1 サーマル シャットダウン

過熱条件から MCP19124/5 を保護するため、接合部温度150 でのサーマル シャットダウンが実装されています。接合部温度がこの制限値に達すると、デバイスは出力ドライバを無効にします。シャットダウン モードでは、PDRV および SDRV 出力は無効になり、PIR2レジスタの過熱フラグ (OTIF) がセットされます。接合部温度が 20 低下して 130 になると、MCP19124/5は通常の出力駆動スイッチングを再開できます。

3.12.2 温度報告

MCP19124/5 は、アナログテスト MUX を通して ADCで読み出せるもう 1 つの温度監視回路を内蔵しています。この内部温度監視回路の詳細はセクション 25.0「内部温度インジケータ モジュール」を参照してください。

Page 22: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.22 2017 Microchip Technology Inc.

4.0 電気的特性

4.1 絶対 大定格 †

VIN – VGND (DC) ............................................................................................................................................................-0.3 ~ +44 VVIN ( 過渡 < 500 ms)................................................................................................................................................+48 VPDRV ............................................................................................................................... (GND - 0.3 V) ~ (VDR + 0.3 V)SDRV ............................................................................................................................... (GND - 0.3 V) ~ (VDR + 0.3 V)VDD 内部生成 ..........................................................................................................................................................+6.5 VVDR 外部生成 ....................................................................................................................................................... +13.5 VGND を基準とした MCLR の電圧 ............................................................................................................. -0.3 ~ +13.5 V

大電圧 : その他全てのピン ...........................................................................................(VGND - 0.3 V) ~ (VDD + 0.3 V)全ての I/O ピンの 1 本あたりの 大出力シンク電流 ..............................................................................................25 mA全ての I/O ピンの 1 本あたりの 大出力ソース電流 ..............................................................................................25 mA全 GPIO の 大シンク電流 .................................................................................................................................... 90 mA全 GPIO の 大ソース電流 ....................................................................................................................................35 mA保管温度 ...................................................................................................................................................–65 ~ +150

高接合部温度 ................................................................................................................................................... +150 動作時接合部温度 .....................................................................................................................................-40 ~ +125 全ピンの ESD 保護 (CDM) ..................................................................................................................................... 2.0 kV全ピンの ESD 保護 (HBM) ..................................................................................................................................... 1.0 kV全ピンの ESD 保護 (MM) ........................................................................................................................................ 200 V

† Notice: ここに記載した「絶対 大定格」を超える条件は、デバイスに恒久的な損傷を生じさせる可能性があります。これはストレス定格です。本仕様書の動作表に示す条件外でのデバイスの運用は想定していません。絶対 大定格条件を超えて長期間曝露させるとデバイスの信頼性に影響する可能性があります。

4.2 電気的特性

電気的仕様 : 特に明記しない場合、VIN = 12 V、FSW = 150 kHz、TA = +25 です。太字の仕様は -40 ~ +125 のTA レンジに適用します。

パラメータ 記号 Min. Typ. Max. 単位 条件

入力

入力電圧 VIN 4.5 — 42 V

入力静止電流 IQ — 5 10 mA VIN = 12 V、スイッチングしていない状態

— 5 10 VIN = 20 V、スイッチングしていない状態

シャットダウン電流 ISHDN— 35 80 µA VIN = 12 V

(Note 1)

リニア レギュレータ VDD

内部回路バイアス電圧 VDD 4.75 5.1 5.5 V VIN = 6.0 ~ 42 V

大外部VDD出力電流 IDD_OUT 35 — — mA VIN = 6.0 ~ 42 V(Note 2)

スリープ中の内部回路のバイアス電圧

VDD_SLEEP 2.8 — 4.0 V VIN = 4.5 ~ 42 VIDD_OUT = 1 mA

Note 1: セクション 14.0「パワーダウン モード ( スリープ )」を参照してください。

2: VDD は VDD ピンに出力される電圧です。

3: ドロップアウト電圧は、VIN と VDD の間の電位差 1 V の条件で計測した公称値より出力電圧が 2% 下回った時の、入力から出力への電圧差と定義されます。

4: 設計時に検証していますが、量産検査は実施していません。

5: これらのパラメータは特性データであり、製造時の検査は実施していません。

6: VDD LDO は総ソース電流を 大 35 mA に制限します。個々のピンの 大ソース電流は 15 mA です。

Page 23: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.23

MCP19124/5

スリープ中の外部VDDの 大出力電流

IDD_OUT_SLEEP 1 — — mA VIN = 6.0 ~ 42 VVDD = VDD_SLEEP

ライン レギュレーション

VDD_OUT/(VDD_OUT x VIN)

-0.1 0.002 0.1 %/V (VDD + 1.0 V) VIN 20 V(Note 2)

負荷レギュレーション VDD_OUT/VDD_OUT

-1 0.1 +1 % IDD_OUT = 1 ~ 20 mA(Note 2)

出力短絡電流 IDD_SC — 50 — mA VIN = (VDD + 1.0 V)(Note 2)

ドロップアウト電圧 VIN - VDD — 0.3 0.5 V IDD_OUT = 20 mA(Note 2, 3)

PSRR( 電源電圧変動除去比 )

PSRRLDO — 60 — dB f 1000 HzIDD_OUT = 25 mACIN = 0 µF, CDD = 1 µF

リニア レギュレータ AVDD

内部アナログ 電源電圧

AVDD — 4.096 — V

AVDD 公差 AVDD_TOL -2.5 ±0.1 2.5 % 調整済み

バンドギャップ電圧 BG — 1.23 — V 公差 1.0% で調整済み

バンドギャップ公差 BGTOL -2.5 — +2.5 %

入力 UVLO 電圧

UVLO レンジ UVLOON 4.0 — 20 V VIN 立ち下がり

UVLOONトリップ公差 UVLOTOL -14 — 14 % VIN 立ち下がり UVLOトリップは 9 V に設定VINUVLO = 0x21h

UVLO ヒステリシス UVLOHYS 1 4 8 % ヒステリシスは UVLOON設定に基づくUVLO トリップは 9 V に設定VINUVLO = 0x21h

分解能 nbits — 6 — ビット 対数ステップ

UVLO コンパレータ

入力から出力までの遅延

TD — 5 — µs 1 V まで 100 ns の立ち上がり時間VIN でオーバードライブVIN > UVLO でフラグセット

4.2 電気的特性 ( 続き )電気的仕様 : 特に明記しない場合、VIN = 12 V、FSW = 150 kHz、TA = +25 です。太字の仕様は -40 ~ +125 のTA レンジに適用します。

パラメータ 記号 Min. Typ. Max. 単位 条件

Note 1: セクション 14.0「パワーダウン モード ( スリープ )」を参照してください。

2: VDD は VDD ピンに出力される電圧です。

3: ドロップアウト電圧は、VIN と VDD の間の電位差 1 V の条件で計測した公称値より出力電圧が 2% 下回った時の、入力から出力への電圧差と定義されます。

4: 設計時に検証していますが、量産検査は実施していません。

5: これらのパラメータは特性データであり、製造時の検査は実施していません。

6: VDD LDO は総ソース電流を 大 35 mA に制限します。個々のピンの 大ソース電流は 15 mA です。

Page 24: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.24 2017 Microchip Technology Inc.

入力 OVLO 電圧

OVLO レンジ OVLOON 8.8 — 44 V VIN 立ち上がり

OVLOON トリップ公差 OVLOTOL -18 — 18 % VIN 立ち上がりOVLO トリップは 18 V に設定VINOVLO = 0x1Fh

OVLO ヒステリシス OVLOHYS 1 4 8 % ヒステリシスは OVLOON設定に基づくOVLO トリップは 18 V に設定VINOVLO = 0x1Fh

分解能 nbits — 6 — ビット 対数ステップ

OVLO コンパレータ

入力から出力までの遅延

TD — 5 — µs 1 V まで 100 ns の立ち上がり時間VIN でオーバードライブVIN > OVLO でフラグセット

出力 OV DAC (OVREF)

分解能 nbits — 8 — ビット リニア DAC

フルスケール レンジ FSR 0 — 2 x BG V

公差 OVREFTOL -2.0 ±0.3 2.0 % 25 でコード 0 = CC に調整済み、0 ~ 85

-3.3 — 3.3 % -45 ~ 0 85 ~ 125

出力 OV コンパレータ

OV ヒステリシス OVHYS — 50 — mV

入力バイアス電流 IBIAS — ±1 — µA

コモンモード入力電圧レンジ

VCMR 0 — 3.0 V Note 4

入力から出力までの遅延

TD — 200 — ns 1 V まで 100 ns の立ち上がり時間VS でオーバードライブVS > OV でフラグセット(Note 4)

参照電圧 DAC (VREF)

分解能 nbits — 8 — V/V リニア DAC

フルスケール レンジ FSR BG — 2 x BG V ペデスタル電圧は BG に設定

4.2 電気的特性 ( 続き )電気的仕様 : 特に明記しない場合、VIN = 12 V、FSW = 150 kHz、TA = +25 です。太字の仕様は -40 ~ +125 のTA レンジに適用します。

パラメータ 記号 Min. Typ. Max. 単位 条件

Note 1: セクション 14.0「パワーダウン モード ( スリープ )」を参照してください。

2: VDD は VDD ピンに出力される電圧です。

3: ドロップアウト電圧は、VIN と VDD の間の電位差 1 V の条件で計測した公称値より出力電圧が 2% 下回った時の、入力から出力への電圧差と定義されます。

4: 設計時に検証していますが、量産検査は実施していません。

5: これらのパラメータは特性データであり、製造時の検査は実施していません。

6: VDD LDO は総ソース電流を 大 35 mA に制限します。個々のピンの 大ソース電流は 15 mA です。

Page 25: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.25

MCP19124/5

公差 VREFTOL -2.0 ±0.2 2.0 % 25 でコード 0xCC に調整済み0 ~ 85

-2.5 — 2.5 % −40 ~ 0 85 ~ 125

参照電圧 DAC (VREF2)

分解能 nbits — 8 — ビット リニア DAC

フルスケール レンジ FSR 0 — BG V

公差 VREF2_TOL -2.0 ±0.2 2.0 % 25 でコード 0xCC に調整済み0 ~ 85

-2.5 — 2.5 % −40 ~ 0 85 ~ 125

シンク電流 ISINK -3 — — mA VREF2 = 0x29ISINK = 3 mAVREF2 < 60 mV

ソース電流 ISOURCE 3 — — mA VREF2 = 0xFFISOURCE = 3 mAVREF2 < 60 mV

電流検出アンプ (A2)

アンプ PSRR PSRR — 65 — dB VCM = 2 x BG

閉ループ電圧ゲイン A2VCL — 10 — V/V RL = 5 kを 2.048 V に接続、100 mV < A2 < AVDD - 100 mV VCM = BG

閉ループ電圧ゲイン公差

A2VCL_TOL -1.75 0.5 +1.75 % 調整済み

Low レベル出力 VOL — 300 — mV RL = 5 kを 2.048 V に対して接続

ゲイン帯域幅積 GBWP — 10 — MHz AVDD = 4 V

入力インピーダンス RIN — 10 — k

シンク電流 ISINK -3 — — mA ISP = ISN = GNDRL = 300を 2 x BG に接続(Note 4)

ソース電流 ISOURCE 3 — — mA ISP = ISN = GNDRL = 300を GND に接続(Note 4)

4.2 電気的特性 ( 続き )電気的仕様 : 特に明記しない場合、VIN = 12 V、FSW = 150 kHz、TA = +25 です。太字の仕様は -40 ~ +125 のTA レンジに適用します。

パラメータ 記号 Min. Typ. Max. 単位 条件

Note 1: セクション 14.0「パワーダウン モード ( スリープ )」を参照してください。

2: VDD は VDD ピンに出力される電圧です。

3: ドロップアウト電圧は、VIN と VDD の間の電位差 1 V の条件で計測した公称値より出力電圧が 2% 下回った時の、入力から出力への電圧差と定義されます。

4: 設計時に検証していますが、量産検査は実施していません。

5: これらのパラメータは特性データであり、製造時の検査は実施していません。

6: VDD LDO は総ソース電流を 大 35 mA に制限します。個々のピンの 大ソース電流は 15 mA です。

Page 26: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.26 2017 Microchip Technology Inc.

コモンモード レンジ VCMR GND - 0.3 — VBG + 0.3 V Note 4

コモンモード 除去比

CMRR — 70 — dB

ペデスタル電圧

ペデスタル電圧レベル VZC — BG — V

エラーアンプ (EA1)

入力オフセット電流 IOS — 2 — µA 調整済み

エラーアンプ PSRR PSRR — 99 — dB VCM = BG

コモンモード入力レンジ

VCM 0.8 V — 3 V Note 4

コモンモード 除去比

CMRR — 65 — dB VCM = 0 V ~ BG

開ループ電圧ゲイン AVOL — 70 — dB Note 4

トランスコンダクタンス

Gm 180 200 220 µA/V 調整済み

ゲイン帯域幅積 GBWP — 3.5 — MHz Note 4

エラーアンプ (EA2)

入力オフセット電圧 VOS — 2 — mV 調整済み

エラーアンプ PSRR PSRR — 99 — dB VCM = BG

コモンモード入力レンジ

VCM 0.8 — 3 V Note 4

コモンモード 除去比

CMRR — 65 — dB VCM = 0 V ~ BG

開ループ電圧ゲイン AVOL — 70 — dB Note 4

トランスコンダクタンス

Gm 180 200 220 µA/V 調整済み

ゲイン帯域幅積 GBWP — 3.5 — MHz

EA1/EA2 エラーアンプ出力クランプ

正出力 大オフセット電圧 ( ループを制御していない EA)

VEA_OUTOFF_MAX — — +50 mV ループを制御していないEA に適用

ピーク電流検出入力

4.2 電気的特性 ( 続き )電気的仕様 : 特に明記しない場合、VIN = 12 V、FSW = 150 kHz、TA = +25 です。太字の仕様は -40 ~ +125 のTA レンジに適用します。

パラメータ 記号 Min. Typ. Max. 単位 条件

Note 1: セクション 14.0「パワーダウン モード ( スリープ )」を参照してください。

2: VDD は VDD ピンに出力される電圧です。

3: ドロップアウト電圧は、VIN と VDD の間の電位差 1 V の条件で計測した公称値より出力電圧が 2% 下回った時の、入力から出力への電圧差と定義されます。

4: 設計時に検証していますが、量産検査は実施していません。

5: これらのパラメータは特性データであり、製造時の検査は実施していません。

6: VDD LDO は総ソース電流を 大 35 mA に制限します。個々のピンの 大ソース電流は 15 mA です。

Page 27: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.27

MCP19124/5

1 次側 大電流検出信号電圧

VIP_MAX — BG 1.5 V Note 4

PWM コンパレータ

入力から出力までの遅延

TD — 11 20 ns Note 4

ピーク電流リーディング エッジ ブランキング

分解能 LEB — 2 — ビット

ブランキング時間 可変レンジ

LEBRANGE 0 — 256 ns 4ステップのプログラマブル レンジ(0, 50,100, 200 ns)(Note 4)

オフセット調整 (IP 検出 )

分解能 OSADJ — 4 — ビット

オフセット調整レンジ OSADJ_RANGE 0 — 750 mV Note 4

オフセット調整ステップサイズ

OSADJ_STEP — 50 — mV リニアステップ

可変スロープ補償

分解能 SCRES — 6 — ビット 対数ステップ

スロープ m 4 — 437 mV/µs

スロープ ステップサイズ

SCSTEP — 8 — % 対数ステップ

ランプ設定点公差 mTOL — ±1 ±32 %

ゼロ電流検出コンパレータ

入力オフセット電圧 VOS — ±1 — mV 調整済み、5 ビット可変

入力バイアス電流 IBIAS — ±1 — µA 内部回路の影響を受ける

コモンモード入力電圧レンジ

VCMR GND – 0.3 V

— 2.7 V Note 4

入力から出力までの遅延

TD — 20 — ns

VDR UVLO

VDR 入力抵抗 VDR_RIN — 230 — k

VDR UVLO(2.7 V VDR 立ち下がり )

VDR_UVLO_2.7_F 2.45 — 2.9 V

VDR UVLO(2.7 V VDR 立ち上がり )

VDR_UVLO_2.7_R 2.68 — 3.23 V

VDR UVLO(2.7 V ヒステリシス )

VDR_UVLO 2.7 HYS 185 — 425 mV

4.2 電気的特性 ( 続き )電気的仕様 : 特に明記しない場合、VIN = 12 V、FSW = 150 kHz、TA = +25 です。太字の仕様は -40 ~ +125 のTA レンジに適用します。

パラメータ 記号 Min. Typ. Max. 単位 条件

Note 1: セクション 14.0「パワーダウン モード ( スリープ )」を参照してください。

2: VDD は VDD ピンに出力される電圧です。

3: ドロップアウト電圧は、VIN と VDD の間の電位差 1 V の条件で計測した公称値より出力電圧が 2% 下回った時の、入力から出力への電圧差と定義されます。

4: 設計時に検証していますが、量産検査は実施していません。

5: これらのパラメータは特性データであり、製造時の検査は実施していません。

6: VDD LDO は総ソース電流を 大 35 mA に制限します。個々のピンの 大ソース電流は 15 mA です。

Page 28: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.28 2017 Microchip Technology Inc.

VDR UVLO(5.4 V VDR 立ち下がり )

VDR_UVLO_5.4_F 4.7 — 5.96 V

VDR UVLO(5.4 V VDR 立ち上がり )

VDR_UVLO_5.4_R 5.2 — 6.6 V

VDR UVLO(5.4 V ヒステリシス )

VDR_UVLO 5.4 HYS 360 — 840 mV

出力ドライバ (PDRV、SDRV)

PDRV/SDRV ゲート駆動ソース抵抗

RDR-SRC — — 13.5 VDR = 4.5 V(Note 4)

PDRV/SDRV ゲート駆動シンク抵抗

RDR-SINK — — 12 VDR = 4.5 V(Note 4)

PDRV/SDRV ゲート駆動ソース電流

IDR-SRC — 0.5 — A VDR = 5 VVDR = 10 V(Note 4)

— 1.0 —

PDRV/SDRV ゲート駆動シンク電流

IDR-SINK — 0.5 — A VDR = 5 VVDR = 10 V(Note 4)

— 1.0 —

デッドタイム調整

分解能 DTRES — 4 — ビット

デッドタイム可変レンジ

DTRANGE 16 — 256 ns Note 4

デッドタイム ステップサイズ

DTSTEP — 16 — ns リニアステップ

デッドタイム公差 DTTOL — ±8 — ns

オシレータ /PWM

内部オシレータ 周波数

FOSC 7.60 8.00 8.40 MHz

スイッチング周波数 FSW — FOSC/N — MHz

スイッチング周波数レンジ選択

N 4 — 255 — FMAX = 2 MHz

A/D コンバータ (ADC) の特性

分解能 NR — — 10 ビット

積分非直線性誤差 EIL — — ±1 LSb VREF_ADC = AVDDVREF_ADC = VDD

4.2 電気的特性 ( 続き )電気的仕様 : 特に明記しない場合、VIN = 12 V、FSW = 150 kHz、TA = +25 です。太字の仕様は -40 ~ +125 のTA レンジに適用します。

パラメータ 記号 Min. Typ. Max. 単位 条件

Note 1: セクション 14.0「パワーダウン モード ( スリープ )」を参照してください。

2: VDD は VDD ピンに出力される電圧です。

3: ドロップアウト電圧は、VIN と VDD の間の電位差 1 V の条件で計測した公称値より出力電圧が 2% 下回った時の、入力から出力への電圧差と定義されます。

4: 設計時に検証していますが、量産検査は実施していません。

5: これらのパラメータは特性データであり、製造時の検査は実施していません。

6: VDD LDO は総ソース電流を 大 35 mA に制限します。個々のピンの 大ソース電流は 15 mA です。

Page 29: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.29

MCP19124/5

微分非直線性誤差 EDL — — ±1 LSb 10 ビットVREF_ADC = AVDD でノー ミッシングコード VREF_ADC = VDD(Note 5)

オフセット誤差 EOFF — +3.0 +7 LSb VREF_ADC = AVDDVREF_ADC = VDD

ゲイン誤差 EGN — ±2 ±6 LSb VREF_ADC = AVDDVREF_ADC = VDD

選択可能な ADC 参照電圧

VREF_ADC — AVDD — V AVDD = 4 VADCON1<VCFG = 0>

— VDD — V VDD = 5 VADCON1<VCFG = 1>

フルスケール レンジ FSRA/D GND — AVDD — ADC参照電圧としてAVDD を選択

GND — VDD — ADC 参照電圧として VDD を選択

GPIO ピン

GPIO 大シンク電流 ISINK_GPIO — — 90 mA Note 6

GPIO 大ソース電流 ISOURCE_GPIO — — 35 mA Note 6

GPIO 弱プルアップ電流

IPULL-UP_GPIO 50 250 400 µA

GPIO 入力 Low 電圧

VGPIO_IL GND — 0.8 V TTL バッファ付き I/O ポートVDD < 5 V

GND — 0.2 VDD V シュミットトリガ バッファ付き I/O ポート、VDD = 5 V

GND — 0.2 VDD V MCLR

GPIO 入力 High 電圧

VGPIO_IH 2.0 — VDD V TTL バッファ付き I/O ポートVDD < 5 V

0.8 VDD — VDD V シュミットトリガ バッファ付き I/O ポート、VDD = 5 V

0.8 VDD — VDD V MCLR

GPIO 出力 Low 電圧 VGPIO_OL — — 0.12 VDD V IOL = 7 mAVDD < 5 V

4.2 電気的特性 ( 続き )電気的仕様 : 特に明記しない場合、VIN = 12 V、FSW = 150 kHz、TA = +25 です。太字の仕様は -40 ~ +125 のTA レンジに適用します。

パラメータ 記号 Min. Typ. Max. 単位 条件

Note 1: セクション 14.0「パワーダウン モード ( スリープ )」を参照してください。

2: VDD は VDD ピンに出力される電圧です。

3: ドロップアウト電圧は、VIN と VDD の間の電位差 1 V の条件で計測した公称値より出力電圧が 2% 下回った時の、入力から出力への電圧差と定義されます。

4: 設計時に検証していますが、量産検査は実施していません。

5: これらのパラメータは特性データであり、製造時の検査は実施していません。

6: VDD LDO は総ソース電流を 大 35 mA に制限します。個々のピンの 大ソース電流は 15 mA です。

Page 30: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.30 2017 Microchip Technology Inc.

GPIO 出力 High 電圧 VGPIO_OH VDD - 0.7 — — V IOH = 2.5 mAVDD < 5 V

GPIO 入力リーク電流 GPIO_IIL — ±0.1 ±1 µA 負の電流値は、ピンからのソース電流として定義しています。

POR

パワーオン リセット 電圧

VPOR — 2.13 — V VDD 立ち上がり(Note 4)

パワーオン リセット 電圧ヒステリシス

VPOR_HYS — 100 — mV

BOR

ブラウンアウト リセット 電圧

VBOR — 2.7 — V VDD 立ち下がり(Note 4)

ブラウンアウト リセット 電圧ヒステリシス

VBOR_HYS — 100 — mV

サーマル シャットダウン

サーマル シャットダウン

TSHD — 150 —

サーマル シャットダウンヒステリシス

TSHD_HYS — 20 —

4.2 電気的特性 ( 続き )電気的仕様 : 特に明記しない場合、VIN = 12 V、FSW = 150 kHz、TA = +25 です。太字の仕様は -40 ~ +125 のTA レンジに適用します。

パラメータ 記号 Min. Typ. Max. 単位 条件

Note 1: セクション 14.0「パワーダウン モード ( スリープ )」を参照してください。

2: VDD は VDD ピンに出力される電圧です。

3: ドロップアウト電圧は、VIN と VDD の間の電位差 1 V の条件で計測した公称値より出力電圧が 2% 下回った時の、入力から出力への電圧差と定義されます。

4: 設計時に検証していますが、量産検査は実施していません。

5: これらのパラメータは特性データであり、製造時の検査は実施していません。

6: VDD LDO は総ソース電流を 大 35 mA に制限します。個々のピンの 大ソース電流は 15 mA です。

Page 31: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.31

MCP19124/5

5.0 デジタル電気的特性

5.1 タイミング パラメータの記号

タイミング パラメータの記号は、以下のいずれかの形式で表します。

1.TppS2ppS 3.TCC:ST (I2C 仕様のみ )

2.TppS 4.Ts (I2C 仕様のみ )

T

F 周波数 T 時間

小文字 (pp) の種類と意味 :

pp

cc CCP1 osc OSC1

ck CLKOUT rd RD

cs CS rw RD または WR

di SDI sc SCK

do SDO ss SS

dt データ入力 t0 T0CKI

io I/O ポート wr WR

mc MCLR

大文字の種類と意味 :

S

F 立ち下がり P 周期

H High R 立ち上がり

I 不確定 ( ハイ インピーダンス ) V 確定

L Low Z ハイ インピーダンス

I2C のみ

AA 出力アクセス High High

BUF バスフリー Low Low

TCC:ST (I2C 仕様のみ )

CC

HD ホールド SU セットアップ

ST

DAT データ入力ホールド STO STOP 条件

STA START 条件

Page 32: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.32 2017 Microchip Technology Inc.

図 5-1: 負荷条件

5.2 AC 特性 : MCP19124( 産業用温度レンジ、拡張温度レンジ )

図 5-2: 外部クロック タイミング

表 5-1: 外部クロックのタイミング要件

パラメータNo. 記号 特性 Min. Typ.† Max. 単位 条件

— FOSC オシレータ周波数 (1) — 8 — MHz

1 TOSC オシレータ周期 (1) — 250 — ns

2 TCY 命令サイクル時間 (1) — TCY ns TCY = 4 xTOSC

* これらのパラメータは特性データであり、製造時の検査は実施していません。

† 「Typ.」欄のデータは、特に明記しない限り VIN = 12 V (VDD = 5 V)、25 時のものです。これらのパラ

メータは設計上の目安であり、製造時の検査は実施していません。

Note 1: 命令サイクル周期 (TCY) は、入力オシレータのタイムベース周期の 4 倍です。全ての仕様値は、標準動作条件下でデバイスにコードを実行させた時の、特定オシレータタイプの特性データに基づいています。

VDD/2

CL

RL

Pin Pin

AGND AGND

CL

RL = 464 Ω

CL = 50 pF (全てのGPIOピンに対して)

負荷条件 1 負荷条件 2

OSC

Q4 Q1 Q2 Q3 Q4 Q1

1

2

Page 33: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.33

MCP19124/5

図 5-3: I/O タイミング

表 5-2: I/O タイミング要件

パラメータ

No.記号 特性 Min. Typ.† Max. 単位 条件

17 TosH2ioV OSC1 (Q1 サイクル ) からポート出力有効

— 50 70* ns

18 TosH2ioI OSC1(Q2 サイクル ) からポート入力無効(I/O 入力ホールド時間 )

50 — — ns

19 TioV2osH ポート入力有効から OSC1(I/O 入力セットアップ時間 )

20 — — ns

20 TioR ポート出力立ち上がり時間 — 32 40 ns

21 TioF ポート出力立ち下がり時間 — 15 30 ns

22* Tinp INT ピンの High または Low時間

25 — — ns

23* TRABP GPIO状態変化割り込みの新しい入力レベル時間

TCY — — ns

* これらのパラメータは特性データであり、製造時の検査は実施していません。

† 「Typ.」欄のデータは、特に明記しない限り VIN = 12 V (VDD = 5 V)、+25 時のものです。

OSC

I/O Pin(input)

I/O Pin(output)

Q4 Q1 Q2 Q3

17

20, 21

2223

19 18

old value new value

Page 34: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.34 2017 Microchip Technology Inc.

図 5-4: リセット、ウォッチドッグ タイマ、オシレータ起動タイマ、パワーアップ タイマのタイミング

図 5-5: ブラウンアウト リセットのタイミングと特性

VDD

MCLR

InternalPOR

PWRTTime Out

OSCTime Out

InternalReset

WatchdogTimerReset

33

32

30

3134

I/O Pins

34

VDD

VBORBVHY

VBOR + BVHY

Reset (Due to BOR)

(device not in Brown-out Reset) (device in Brown-out Reset) 64 ms Time Out (if PWRTE)

35

Page 35: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.35

MCP19124/5

図 5-6: Timer0 と Timer1 の外部クロックのタイミング

表 5-3: リセット、ウォッチドッグ タイマ、オシレータ起動タイマ、パワーアップ タイマの要件

パラメータ

No.記号 特性 Min. Typ.† Max. 単位 条件

30 TMCL MCLR パルス幅 (Low) 2 — — µs VDD = 5 V, -40 ~ +85

31 TWDT ウォッチドッグ タイマ タイムアウト時間(プリスケーラなし)

7 18 33 ms VDD = 5 V, -40 ~ +85

32 TOST オシレータ起動タイマ周期 — 1024 TOSC

— — TOSC = OSC1 の周期

33* TPWRT パワーアップ タイマ時間 (4 x TWDT)

28 72 132 ms VDD = 5 V, -40 ~ +85

34 TIOZ MCLR Low またはウォッチドッグ タイマリセットからI/O ハイ インピーダンス

— — 2.0 µs

VBOR ブラウンアウト リセット電圧 — 2.7 — V VDD 立ち下がり

BVHY ブラウンアウト ヒステリシス — 100 — mV

35 TBCR ブラウンアウト リセットパルス幅

100* — — µs VDD VBOR (D005)

48 TCKEZTMR クロックエッジからタイマのインクリメントまでの遅延

2 TOSC — 7 TOSC

* これらのパラメータは特性データであり、製造時の検査は実施していません。

† 「Typ.」欄のデータは、特に明記しない限り VIN = 12 V (VDD = AVDD = 5 V)、25 時のものです。これらの

パラメータは設計上の目安であり、製造時の検査は実施していません。

41

42

40

T0CKI

TMR0

48

Page 36: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.36 2017 Microchip Technology Inc.

図 5-7: PWM のタイミング

表 5-4: Timer0 外部クロックの要件

パラメータ

No.記号 特性 Min. Typ.† Max. 単位 条件

40* Tt0H T0CKI パルス幅 (High) プリスケーラなし

0.5 TCY + 20 — — ns

プリスケーラあり

10 — — ns

41* Tt0L T0CKI パルス幅 (Low) プリスケーラなし

0.5 TCY + 20 — — ns

プリスケーラあり

10 — — ns

42* Tt0P T0CKI 周期 以下のどちらか大きい方 :20 または

— — ns N = プリスケール値(2, 4, ..., 256)

* これらのパラメータは特性データであり、製造時の検査は実施していません。

† 「Typ.」欄のデータは、特に明記しない限り VIN = 12 V、25 時のものです。これらのパラメータは

設計上の目安であり、製造時の検査は実施していません。

表 5-5: PWM の要件

パラメータ

No.記号 特性 Min. Typ.† Max. 単位 条件

53* TccR PWM (CLKPIN) 出力立ち上がり時間 — 10 25 ns

54* TccF PWM (CLKPIN) 出力立ち下がり時間 — 10 25 ns

* これらのパラメータは特性データであり、製造時の検査は実施していません。

† 「Typ.」欄のデータは、特に明記しない限り VIN = 12 V (AVDD = 4 V)、25 時のものです。これらの

パラメータは設計上の目安であり、製造時の検査は実施していません。

TCY 40+N

-----------------------

Note: 負荷条件については図 5-1 を参照してください。

53 54

PWM (CLKPIN)

Page 37: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.37

MCP19124/5

表 5-6: MCP19124/5A/D コンバータ (ADC) の特性 (Note 1)

電気的仕様 : 特に明記しない限り、動作温度 = -40 TA +125

パラメータ

No.記号 特性 Min. Typ.† Max. 単位 条件

AD01 NR 分解能 — — 10 bit

AD02 EIL 積分非直線性誤差 (2) — — ±1 LSb VREF_ADC = AVDDVREF_ADC = VDD

AD03 EDL 微分非直線性誤差 (2) — — ±1 LSb 10 ビットまでノー ミッシングコード (3)

VREF_ADC = AVDDVREF_ADC = VDD

AD04 EOFF オフセット誤差 (2) — +3.0 +7 LSb VREF_ADC = AVDDVREF_ADC = VDD

AD07 EGN ゲイン誤差 (2) — 2 ±6 LSb VREF_ADC = AVDDVREF_ADC = VDD

AD07 VAIN フルスケール レンジ AGND — AVDD V ADC 参照電圧として AVDD を選択

AGND — VDD V ADC 参照電圧として VDD を選択

AD08 ZAIN アナログ電圧源の推奨インピーダンス

— — 10 k

* これらのパラメータは特性データであり、製造時の検査は実施していません。

† 「Typ.」欄のデータは、特に明記しない限り VIN = 12 V (AVDD = 4 V)、25 時のものです。

これらのパラメータは設計上の目安であり、製造時の検査は実施していません。

Note 1: ADC モジュールを OFF にした場合、リーク電流以外にモジュールの消費電流は発生しません。パワーダウン電流の仕様は、この ADC モジュールのリーク電流を含んだ値です。スリープ電流を 小にするには、ADC 参照電圧を AVDD( 既定値 ) に設定する必要があります。

2: 総絶対誤差には、積分非直線性誤差、微分非直線性誤差、オフセット誤差、ゲイン誤差が含まれます。

3: 入力電圧が増大して A/D 変換結果が減少する事はありません。また、ミッシングコードもありません。

表 5-7: MCP19124/5 の A/D 変換の要件

電気的仕様 : 特に明記しない限り、動作温度 = -40 TA +125

パラメータ

No.記号 特性 Min. Typ.† Max. 単位 条件

AD130* TAD A/D クロック周期 1.6 — 9.0 µs TOSC ベース

A/D 内部 RC オシレータ周期

1.6 4.0 6.0 µs ADCS<1:0> = 11 (ADRC モード )

AD131 TCNV 変換時間( アクイジション時間を除く )(1)

— 11 — TAD A/D 変換結果レジスタに新しいデータを読み込むには GO/DONE ビットをセットします。

AD132* TACQ アクイジション時間 — 11.5 — µs

AD133* TAMP アンプのセトリングタイム — — 5 µs

AD134 TGO Q4からA/Dクロック起動まで

— TOSC/2 — —

* これらのパラメータは特性データであり、製造時の検査は実施していません。

† 「Typ.」欄のデータは、特に明記しない限り VIN = 12 V (VDD = AVDD = 5 V)、25 時のものです。これらの

パラメータは設計上の目安であり、製造時の検査は実施していません。

Note 1: ADRESH および ADRESL レジスタは、以下の TCY サイクルで読み出す事ができます。

Page 38: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.38 2017 Microchip Technology Inc.

図 5-8: A/D 変換タイミング

131

130

132

BSF ADCON0, GO

Q4

A/D CLK

A/D DATA

ADRES

ADIF

GO

SAMPLE

OLD_DATA

SAMPLING STOPPED

NEW_DATA

9 8 7 3 2 1 0

1/2 T CY

6

134

DONE

Note 1: A/D クロック源に RC を選択した場合、A/D クロックの起動前に TCY の時間が追加されます。これによって SLEEP命令が実行できます。

Page 39: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.39

MCP19124/5

6.0 MCP19124/5 の設定

MCP19124/5 は、デジタル周辺モジュールを備えたアナログ コントローラです。これは、デバイスの設定を外付け部品の追加ではなく、レジスタの設定で行える事を意味します。アナログ回路をデジタル処理に接続するため、今日の多くの PIC MCU( 例 : PIC16F1824/1828) の標準コンパレータ モジュールと非常によく似た複数のコンパレータ モジュールを内蔵しています。以下のセクションでは、パラメータを設定するためのアナログ制御レジスタを説明します。

6.1 入力低電圧および過電圧ロックアウト(UVLO および OVLO)

VINCON は、VINUVLO レジスタと VINOVLO レジスタの両方のためのコンパレータ制御レジスタです。VINCON には両方の保護回路のイネーブルビット、エッジ検出極性ビット、ステータス出力ビットが含まれます。PIR2 レジスタの割り込みフラグ (UVLOIF、OVLOIF) は VINCON レジスタのイネーブルビット(UVLOEN、OVLOEN) とは無関係です。VINCON レジスタの UVLOOUT 低電圧ロックアウト ステータス出力ビットは、UVLO イベントが発生したかどうかを示します。VINCON レジスタの OVLOOUT 過電圧ロックアウト ステータス出力ビットは、OVLO イベントが発生したかどうかを示します。

VINUVLO レジスタでは、入力低電圧ロックアウトを設定します。UVLO のレンジは 4 ~ 20 V です。このレンジを下回り、かつプロセッサの 小動作電圧(VDD = 2 V) を上回る VIN 値の場合、UVLO コンパレータと UVLOOUT ステータスビットは低電圧条件を示します。起動 VIN の設定に UVLO を使っている場合、ステータスを調べるためにUVLOOUTビットをポーリングする事を推奨します。MCP19124/5 の VIN ピンの入力電圧がここで設定した値を下回り、VINCONレジスタの UVLOEN ビットがセットされていると、PDRVおよびSDRVゲートドライバがどちらも無効になります。このビットは、MCP19124/5 の VIN 電圧が設定値を上回るとクリアされます。

VINOVLO レジスタでは、入力過電圧ロックアウトを設定します。OVLO のレンジは 8.8 ~ 44 V です。MCP19124/5 の VIN ピンの入力電圧がここで設定した値を上回り、VINCON レジスタの OVLOEN ビットがセットされていると、PDRV および SDRV ゲートドライバがどちらも無効になります。このビットは、MCP19124/5 の VIN 電圧が設定値を下回るとクリアされます。

Note: 割り込み条件が発生すると、対応するイネーブルビットまたはINTCONレジスタのグローバル イネーブルビット (GIE) の状態に関係なく UVLOIF または OVLOIF割り込みフラグビットがセットされます。

レジスタ 6-1: VINCON: UVLO および OVLO コンパレータ制御レジスタ

R/W-0 R-0 R/W-0 R/W-0 R/W-0 R-0 R/W-0 R/W-0

UVLOEN UVLOOUT UVLOINTP UVLOINTN OVLOEN OVLOOUT OVLOINTP OVLOINTN

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7 UVLOEN: UVLO コンパレータ モジュール ロジック イネーブルビット

1 = UVLO コンパレータ モジュール ロジックを有効にする0 = UVLO コンパレータ モジュール ロジックを無効にする

bit 6 UVLOOUT: 低電圧ロックアウト ステータス出力

1 = UVLO イベントが発生した0 = UVLO イベントは発生していない

bit 5 UVLOINTP: 立ち上がりエッジでの UVLO コンパレータ割り込みイネーブルビット

1 = UVLO の立ち上がりエッジで UVLOIF 割り込みフラグをセットする0 = UVLO の立ち上がりエッジで UVLOIF 割り込みフラグをセットしない

bit 4 UVLOINTN: 立ち下がりエッジでの UVLO コンパレータ割り込みイネーブルビット

1 = UVLO の立ち下がりエッジで UVLOIF 割り込みフラグをセットする0 = UVLO の立ち下がりエッジで UVLOIF 割り込みフラグをセットしない

Page 40: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.40 2017 Microchip Technology Inc.

bit 3 OVLOEN: OVLO コンパレータ モジュール ロジック イネーブルビット

1 = OVLO コンパレータ モジュール ロジックを有効にする0 = OVLO コンパレータ モジュール ロジックを無効にする

bit 2 OVLOOUT: 過電圧ロックアウト ステータス出力ビット

1 = OVLO イベントが発生した0 = OVLO イベントは発生していない

bit 1 OVLOINTP: 立ち上がりエッジでの OVLO コンパレータ割り込みイネーブルビット

1 = OVLO の立ち上がりエッジで OVLOIF 割り込みフラグをセットする0 = OVLO の立ち上がりエッジで OVLOIF 割り込みフラグをセットしない

bit 0 OVLOINTN: 立ち下がりエッジでの OVLO コンパレータ割り込みイネーブルビット

1 = OVLO の立ち下がりエッジで OVLOIF 割り込みフラグをセットする0 = OVLO の立ち下がりエッジで OVLOIF 割り込みフラグをセットしない

レジスタ 6-2: VINUVLO: 入力低電圧ロックアウト レジスタ

U-0 U-0 R/W-x R/W-x R/W-x R/W-x R/W-x R/W-x

— — UVLO5 UVLO4 UVLO3 UVLO2 UVLO1 UVLO0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-6 未実装 :「0」として読み出し

bit 5-0 UVLO<5:0>: 低電圧ロックアウト コンフィグレーション ビット

UVLO(V) = 3.57 x (1.028578N) (N は VINUVLO に書き込まれた 0 ~ 63 の 10 進値 )

レジスタ 6-3: VINOVLO: 入力過電圧ロックアウト レジスタ

U-0 U-0 R/W-x R/W-x R/W-x R/W-x R/W-x R/W-x

— — OVLO5 OVLO4 OVLO3 OVLO2 OVLO1 OVLO0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-6 未実装 :「0」として読み出し

bit 5-0 OVLO<5:0>: 過電圧ロックアウト コンフィグレーション ビット

OVLO(V) = 7.5212 x (1.028645N) (N は VINOVLO に書き込まれた 0 ~ 63 の 10 進値 )

レジスタ 6-1: VINCON: UVLO および OVLO コンパレータ制御レジスタ ( 続き )

Page 41: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.41

MCP19124/5

6.2 出力過電圧保護

MCP19124/5 は出力過電圧保護を備えています。このOV 保護回路を利用するには、ABECON レジスタのEN2DIS ビットをセットして電圧調整エラーアンプ(EA2)を無効にする必要があります。EA2が無効の場合、OV 保護機能は標準の PIC コンパレータ モジュールに似たコンパレータ モジュールを利用します。これにより、負荷を切り離した際、電源システムが損傷しないようにします。OVREFCON レジスタでは、コンパレータの反転入力のアナログDAC 電圧を設定します。分圧したパワートレイン出力電圧 ( コンパレータの非反転入力 (VS) に接続 ) を OVREF 参照電圧と比較する事でユーザは過電圧イベント発生の有無を把握し、自動的に対応策を取る事ができます。

OVCON レジスタは、出力ステータスビットと共に割り込みフラグ極性ビットと OV イネーブルビットを備えています。これは、入力電圧のUVLOおよびOVLO向けに VINCON が備えているのと同様です。OVCONレジスタの OVEN ビットがセットされており、かつ過電圧が発生した場合、制御ロジックは自動的に 2 次側ゲート駆動出力 (SDRV) を High に設定し、1 次側ゲート駆動出力 (PDRV) を Low に設定します。

Note: 割り込み条件が発生すると、対応するイネーブルビットまたはINTCONレジスタのグローバル イネーブルビット (GIE) の状態に関係なく OVIF 割り込みフラグビットがセットされます。

レジスタ 6-4: OVCON: 出力過電圧コンパレータ制御レジスタ

U-0 U-0 U-0 U-0 R/W-0 R-0 R/W-0 R/W-0

— — — — OVEN OVOUT OVINTP OVINTN

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-4 未実装 :「0」として読み出し

bit 3 OVEN: OV コンパレータ出力イネーブルビット

1 = OV コンパレータ出力を有効にする0 = OV コンパレータ出力を無効にする

bit 2 OVOUT: 出力過電圧ステータス出力ビット

1 = 出力過電圧が発生した0 = 出力過電圧は発生していない

bit 1 OVINTP: 立ち上がりエッジでの OV コンパレータ割り込みイネーブルビット

1 =OV の立ち上がりエッジで OVIF 割り込みフラグをセットする

0 =OV の立ち上がりエッジで OVIF 割り込みフラグをセットしない

bit 0 OVINTN: 立ち下がりエッジでの OV コンパレータ割り込みイネーブルビット

1 =OV の立ち下がりエッジで OVIF 割り込みフラグをセットする

0 =OV の立ち下がりエッジで OVIF 割り込みフラグをセットしない

Page 42: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.42 2017 Microchip Technology Inc.

6.3 電圧調整の設定

電圧エラーアンプ (EA2) の参照電圧は OVREFCONレジスタで制御します。この参照電圧は、電圧調整設定点の設定に使います。OVREFCON レジスタ値を使って、8 ビット DAC はアナログ値を設定します。このアナログ値は、電圧エラーアンプ (EA2) の非反転ノードに接続されています。この値は、VS ピンに接続した帰還電圧である EA2 反転入力の電圧と比較されます。OVREF DAC は、9.6 mV/ ステップの 255

ステップで、約 0 V から 2.46 V の間の値に調整できます。しかし、電圧調整では、エラーアンプ (EA2) のコモンモード電圧入力レンジの下限は0.8 Vである事に注意する必要があります。正確な電圧調整を維持するため、EA2 入力は 0.8 ~ 2.46 V にスケーリングします。出力電圧フィードバックは、この電圧レンジ内に分圧してから VS ピンに接続する必要があります。どちらかのエラーアンプ (EA1 または EA2) の出力信号が小さい場合、PWM 制御ループを調整します。

レジスタ 6-5: OVREFCON: 電圧調整および出力過電圧検出レベルレジスタ

R/W-x R/W-x R/W-x R/W-x R/W-x R/W-x R/W-x R/W-x

OOV7 OOV6 OOV5 OOV4 OOV3 OOV2 OOV1 OOV0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-0 OOV<7:0>: 出力過電圧検出レベル コンフィグレーション ビット

VOV_REF(V) = 2 x VBG x N/255 (N は OVREFCON レジスタの OOV<7:0> に書き込まれた 0 ~ 255 の

10 進値 )

Page 43: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.43

MCP19124/5

6.4 擬似共振動作のためのゼロ電流検出

MCP19124/5 は、擬似共振回路方式向け専用設計の内蔵ゼロ電流検出コンパレータ モジュールを使って設計されています。これは、LED タイプのアプリケーションに特に役立ちます。MCP19124/5 を使うと、同期式と非同期式の擬似共振回路方式を実装できます。DESAT コンパレータ モジュールは、複数のプログラマブルな追加パラメータを備えている事を除いてUVLO/OVLO およびOVコンパレータ モジュールと同じ機能を備えています。

DESATCON レジスタには、このモジュールの設定制御ビットがあります。共通制御ビットは割り込みフラグのエッジトリガ極性 (CDSINTP、CDSINTN)、コンパレータ出力極性制御 (CDSPOL)、出力イネーブル(CDSOE)、出力ステータス (CDSOUT) の各ビットです。他のコンパレータ モジュールと同様、CDSIF はCDSOE イネーブルビットとは無関係です。DESATコンパレータの非反転入力に接続したフロントエンドには、DESATP ピンと、内部生成した固定バンドギャップ電圧のどちらかに接続した2チャンネルMUXがあります。また、DESAT コンパレータの入力オフセット電圧は ±1 mV (typ.) 以内に工場でトリミング済みです。工場でトリミング済みのこれらの値は CALWD2レジスタのアドレス 2081h に書き込まれています。ファームウェアはこれらの値を DSTCAL レジスタ(196h) に読み込む必要があります。さらに大きなオフセットが必要な場合、DSTCAL に書き込まれた値を実装ごとに調整できます。

レジスタ 6-6: DESATCON: ゼロ電流コンパレータ制御レジスタ

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

CDSMUX CDSWDE 予約済み CDSPOL CDSOE CDSOUT CDSINTP CDSINTN

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7 CDSMUX: DESAT コンパレータ モジュール マルチプレクサ チャンネル選択ビット1 = BG を選択する0 = DESATP を選択する ( 既定値 )

bit 6 CDSWDE: DESAT コンパレータ ウォッチドッグ イネーブルビット1 = ウォッチドッグ信号で PWM リセットを有効にする0 = ウォッチドッグ信号では PWM リセットを許可しない

bit 5 予約済み

bit 4 CDSPOL: DESAT コンパレータ極性選択ビット1 = DESAT コンパレータ出力を反転する0 = DESAT コンパレータ出力を反転しない

bit 3 CDSOE: DESAT コンパレータ出力イネーブルビット1 = DESAT コンパレータ出力 PWM を有効にする0 = DESAT コンパレータ出力 PWM を無効にする

bit 2 CDSOUT: DESAT コンパレータ出力ステータスビットCDSPOL = 1( 極性反転 ) の場合1 = CDSVP < CDSVN (DESAT を検出している )0 = CDSVP > CDSVN (DESAT を検出していない )CDSPOL = 0( 極性非反転 ) の場合1 = CDSVP > CDSVN (DESAT を検出していない )0 = CDSVP < CDSVN (DESAT を検出している )

bit 1 CDSINTP: 立ち上がりエッジでの CDSIF コンパレータ割り込みイネーブルビット1 = 立ち上がりエッジで CDSIF 割り込みフラグをセットする0 = 立ち上がりエッジで CDSIF 割り込みフラグをセットしない

bit 0 CDSINTN: 立ち下がりエッジでの CDSIF コンパレータ割り込みイネーブルビット1 = 立ち下がりエッジで CDSIF 割り込みフラグをセットする0 = 立ち下がりエッジで CDSIF 割り込みフラグをセットしない

Page 44: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.44 2017 Microchip Technology Inc.

6.5 1 次側入力電流のオフセット調整

1 次側入力電流のオフセット調整を使うと、1 次側入力電流信号にオフセットを加算できます。これにより、1 次側入力ピーク電流制限値を設定できます。このオフセット調整は、ICOACON レジスタの 4 つのビットで制御します。

レジスタ 6-7: ICOACON: 入力電流オフセット調整制御レジスタ

U-0 U-0 U-0 U-0 R/W-x R/W-x R/W-x R/W-x

— — — — ICOAC3 ICOAC2 ICOAC1 ICOAC0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-4 未実装 :「0」として読み出し

bit 3-0 ICOAC<3:0>: 入力電流オフセット調整コンフィグレーション ビット

0000 = 0 mV0001 = 50 mV0010 = 100 mV0011 = 150 mV0100 = 200 mV0101 = 250 mV0110 = 300 mV0111 = 350 mV1000 = 400 mV1001 = 450 mV1010 = 500 mV1011 = 550 mV1100 = 600 mV1101 = 650 mV1110 = 700 mV1111 = 750 mV

Page 45: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.45

MCP19124/5

6.6 リーディング エッジ ブランキング

調整可能なリーディング エッジ ブランキング (LEB)は、1次側スイッチのターンオンによる 1次側電流スパイクを見えなくするのに使います。調整可能な LEB を実装する事で、1 次側電流検出に RC フィルタ処理による歪みを発生させないで、システムはターンオンノイズを無視できます。LEB のために、ゼロを含み 4 つの設定が使えます。これらの設定は、ICLEBCON レジスタの 2 つのビットで制御します。

レジスタ 6-8: ICLEBCON: 入力電流リーディング エッジ ブランキング制御レジスタ

U-0 U-0 U-0 U-0 U-0 U-0 R/W-x R/W-x

— — — — — — ICLEBC1 ICLEBC0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-2 未実装 :「0」として読み出し

bit 1-0 ICLEBC<1:0>: 入力電流リーディング エッジ ブランキング コンフィグレーション ビット

00 = 0 ns01 = 50 ns10 = 100 ns11 = 200 ns

Page 46: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.46 2017 Microchip Technology Inc.

6.7 スロープ補償

エラーアンプの出力には負の電圧スロープを加算します。その目的は、以下の場合に分数調波による不安定性を防ぐ事です。

1. 動作デューティ サイクルが 50% より大きい

2. デューティ サイクルが大きく変化する

エラーアンプの出力に付加する負のスロープ量はスロープ補償スルーレート制御ビットで制御します。

スロープ補償を有効にするには、SLPCRCON レジスタの SLPBY ビットをクリアします。

レジスタ 6-9: SLPCRCON: スロープ補償ランプ制御レジスタ

U-0 R/W-0 R/W-x R/W-x R/W-x R/W-x R/W-x R/W-x

— SLPBY SLPS5 SLPS4 SLPS3 SLPS2 SLPS1 SLPS0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7 未実装 :「0」として読み出し

bit 6 SLPBY: スロープ補償バイパス制御ビット

1 = スロープ補償をバイパスする0 = スロープ補償をバイパスしない ( 既定値 )

bit 5-0 SLPS<5:0>: スロープ補償スルーレート制御ビット

SLPS (mV/µs) = 4.2785 x 1.0765N (N は SLPCRCON レジスタの SLPS<5:0> に書き込まれた 0 ~ 63 の10 進値 )

Page 47: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.47

MCP19124/5

6.8 MOSFET ドライバのプログラマブル デッドタイム

PDRVおよびSDRVローサイド駆動信号のターンオンデッドタイムは、それぞれ独立して設定できます。これによって、各種 MOSFET および回路基板レイアウトに対して 適化できます ( 図 6-1 参照 )。

PE1 レジスタの PDRVBY および SDRVBY ビットをクリアすると、それぞれ PDRV と SDRV のローサイドのデッドタイマが有効になります。付加するデッドタイム量は DEADCON レジスタで制御します。

FIGURE 6-1:MOSFET ドライバのデッドタイム

PDT

SDT

PDRV

SDRV

レジスタ 6-10: DEADCON: ドライバのデッドタイム制御レジスタ

R/W-x R/W-x R/W-x R/W-x R/W-x R/W-x R/W-x R/W-x

PDRVDT3 PDRVDT2 PDRVDT1 PDRVDT0 SDRVDT3 SDRVDT2 SDRVDT1 SDRVDT0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-4 PDRVDT<3:0>: PDRV デッドタイム コンフィグレーション ビット (tTD_1)0000 = 16 ns の遅延0001 = 32 ns の遅延0010 = 48 ns の遅延0011 = 64 ns の遅延0100 = 80 ns の遅延0101 = 96 ns の遅延0110 = 112 ns の遅延0111 = 128 ns の遅延1000 = 144 ns の遅延1001 = 160 ns の遅延1010 = 176 ns の遅延1011 = 192 ns の遅延1100 = 208 ns の遅延1101 = 224 ns の遅延1110 = 240 ns の遅延1111 = 256 ns の遅延

bit 3-0 SDRVDT<3:0>: SDRV デッドタイム コンフィグレーション ビット (tTD_2)0000 = 16 ns の遅延0001 = 32 ns の遅延0010 = 48 ns の遅延0011 = 64 ns の遅延0100 = 80 ns の遅延0101 = 96 ns の遅延0110 = 112 ns の遅延0111 = 128 ns の遅延1000 = 144 ns の遅延1001 = 160 ns の遅延1010 = 176 ns の遅延1011 = 192 ns の遅延1100 = 208 ns の遅延1101 = 224 ns の遅延1110 = 240 ns の遅延1111 = 256 ns の遅延

Page 48: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.48 2017 Microchip Technology Inc.

6.9 電流調整参照電圧の設定

エラーアンプの参照電圧はVREFCONレジスタで制御します。この参照電圧は、電流調整設定点の設定に使います。VREFCON レジスタ値を使って、8 ビットDAC はアナログ値を設定します。このアナログ値は、電流エラーアンプ (EA1) の非反転ノードでペデスタル電圧 (VZC) が加算されます。VZC はバンドギャップ電圧(1.23 V) と同じです。電流検出アンプ A2 の出力にも

ペデスタル電圧を加算する事で、入力に対するペデスタル電圧の影響を効果的に相殺します。低レベルでの精度を向上させるため、このペデスタル電圧の加算はアナログ電流制御ループ全体で行っています。VREFDAC は、4.8 mV/ ステップの 255 ステップで調整できます。EA1 と EA2 のどちらのエラーアンプの出力信号が小さくなっても、PWM 制御ループを制御します。

レジスタ 6-11: VREFCON: 電流 / 電圧調整設定点制御レジスタ

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

VREF7 VREF6 VREF5 VREF4 VREF3 VREF2 VREF1 VREF0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-0 VREF<7:0>: 電圧制御電流調整設定点ビット

VREF (V) = VBG x N/255 (NはVREFCONレジスタのVREF<7:0>に書き込まれた0~255の10進値 )

Page 49: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.49

MCP19124/5

6.10 VREF2 参照電圧

VREF2CON レジスタは、外部で使えるもう 1 つの参照DAC を制御します。例えば、この参照電圧をチップ外に出力し、MCP1631PWM の電流調整設定点の設定に使えます。VREF2 を GPB1 に接続するには、MODECONレジスタの MSC<0:1> ビットを「01」にしてマスタモードで MCP19124/5 を設定する必要があります。

スタンドアロン モードでは VREF2 を設定できません。VREFCON2 は VREF2 DAC の設定に使うデジタル値を格納します。この参照電圧はチップ外に供給する事を意図しているため、ペデスタル電圧オフセットを加算せずグランド基準としています。VREF2 DAC は 8 ビットDAC であり、4.8 mV/ ステップの 255 ステップに対応する 0 ~ 1.23 V (BG) のレンジを持っています。

6.11 アナログ周辺モジュール制御

MCP19124/5 は、各種アナログ周辺モジュールを搭載しています。これらの周辺モジュールは、カスタマイズされた動作を実行できるように設定が可能です。詳細はレジスタ 6-13 を参照してください。

6.11.1 MOSFET ゲートドライバ イネーブル

MCP19124/5 は、1 次側駆動 (PDRV) と 2 次側駆動(SDRV) の MOSFET ゲートドライバ出力を独立して有効 / 無効にできます。PE1 レジスタの PDRVENビットをセットすると 1 次側駆動が有効になります。PE1 レジスタの SDRVEN ビットをセットすると 2 次側駆動が有効になります。詳細はレジスタ 6-13 を参照してください。

レジスタ 6-12: VREF2CON: VREF2 電圧設定点レジスタ

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

VREF2<7:0>

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-0 VREF2<7:0>: 電圧制御電流調整設定点ビット

VREF2 (V) = VBG x N/255 (NはVREF2CONレジスタのVREF2<7:0>に書き込まれた0~255の10進値)

レジスタ 6-13: PE1: アナログ周辺モジュール イネーブル 1 制御レジスタ

R/W-0 R/W-0 R/W-0 R/W-0 U-0 R/W-0 R/W-0 R/W-0

PDRVEN SDRVEN PDRVBY SDRVBY — ISPUEN PWMSTR_PEN PWMSTR_SEN

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7 PDRVEN: PDRV ゲート駆動イネーブルビット

1 = PDRV ゲート駆動を有効にする0 = PDRV ゲート駆動を無効にする

bit 6 SDRVEN: SDRV ゲート駆動イネーブルビット

1 = SDRV ゲート駆動を有効にする0 = SDRV ゲート駆動を無効にする

Page 50: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.50 2017 Microchip Technology Inc.

6.11.2 MOSFET ドライバのデッドタイム

セクション 6.8「MOSFET ドライバのプログラマブルデッドタイム」で説明した通り、MOSFET駆動のデッドタイムは調整可能です。デッドタイムは、DEADCONレジスタを使って 16 ~ 256 ns を 16 ns ステップで、各ドライバに対して独立して設定できます。デッドタイムは、PE1 レジスタのバイパスビット (PDRVBY、SDRVBY) をセットする事で、各ドライバに対して個別に無効にする事もできます。

6.11.3 2 次側電流検出プルアップ

PE1レジスタの ISPUENビットをセットする事で、ISPピンで高インピーダンスのプルアップを設定できます。セットすると、ISP ピンは内部で VDD にプルアップされます。詳細はレジスタ 6-13 を参照してください。

6.11.4 PWM ステアリング

MCP19124/5 は、出力の開ループの再配置を可能にするための制御回路も備えています。PWMSTR_PENビットは、固定の周波数とデューティ サイクルを持つ1 次側のみの PWM 信号を有効にして出力電圧を上げます。PWMSTR_SEN ビットは、固定の周波数とデューティ サイクルを持つ 2 次側のみの PWM 信号を有効にして出力電圧を下げます。出力電圧を下げる場合、PWMSTR_SEN を有効にして SDRV を PWM でパルス駆動すると同時に、出力過電圧保護を有効にする必要があります。周波数とデューティ サイクルは、TMR2 レジスタの PR2 と TMR1L で制御します。PWMSTPR_PENとPWMSTR_SENは決して同時にアクティブにしてはいけません。従って、PWMSTPR_PENがドミナントビットです。開ループの再配置中に擬似共振動作を行うには、DEADCON レジスタの CDSOEビットで DESAT コンパレータ出力を無効にする必要があります。

6.12 アナログおよびデジタルテスト信号のイネーブルと制御

レジスタ 6-14「ABECON: アナログブロック イネーブル制御レジスタ」に示す通り、各種アナログおよびデジタルテスト信号を有効または無効に設定できます。これらの信号は GPA0 に接続するように設定できます。DIGOEN ビットをセットすると、デジタルテスト信号がGPA0 に接続されます。DSEL<2:0> はデジタル チャンネルを選択します。ANAOEN ビットをセットすると、アナログテスト信号が GPA0 に接続されます。ANAOENとDIGOENを両方共セットした場合、DIGOENビットが優先します。ANAOEN ビットをセットしない場合、アナログテスト信号は内部 ADC に接続されます。アナログテスト チャンネルの選択はADCON0レジスタで設定します。

6.12.1 MOSFET ドライバ低電圧ロックアウト選択

MOSFET ゲートドライバは、ABECON レジスタのDRUVSEL ビットで制御する低電圧保護を内蔵しています。ゲート駆動は VDR ピンを通して外部から電力供給されるため、ドライバはロジックレベル FET またはより高い 10 V( 大 13.5 V) FET を駆動できます。DRUVSEL は既定値でクリアされているため、ゲート駆動の UVLO は 2.7 V に設定されています。DRUVSELをセットすると、より高い 5.4 V のゲート駆動 UVLOが選択されます。その他の電気的特性はセクション4.2「電気的特性」を参照してください。

bit 5 PDRVBY: PDRV デッドタイム バイパスビット

1 = PDRV デッドタイムをバイパスする0 = PDRV デッドタイムをバイパスしない

bit 4 SDRVBY: SDRV デッドタイム バイパスビット

1 = SDRV デッドタイムをバイパスする0 = SDRV デッドタイムをバイパスしない

bit 3 未実装 :「0」として読み出し

bit 2 ISPUEN: ISP 弱プルアップ イネーブルビット

1 = ISP の弱プルアップを有効にする0 = ISP の弱プルアップを無効にする

bit 1 PWMSTR_PEN: PDRV PWM ステアリング ビット

1 = PDRV に対する開ループ PWM 制御を有効にする

0 = PDRV に対する開ループ PWM 制御を無効にする

bit 0 PWMSTR_SEN: SDRV PWM ステアリング ビット

1 = SDRV に対する開ループ PWM 制御を有効にする

0 = SDRV に対する開ループ PWM 制御を無効にする

レジスタ 6-13: PE1: アナログ周辺モジュール イネーブル 1 制御レジスタ ( 続き )

Page 51: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.51

MCP19124/5

6.12.2 エラーアンプの無効化

エラーアンプを無効にする事で、エラーアンプの出力が他方のエラーアンプへのループを制御しないようにできます。エラーアンプ出力は互いにクランプされているため、無効化されたアンプの出力は有効なアンプの出力に従います。しかし、ループの制御は受けません。両方のエラーアンプを無効にすると、両方の出力はLow にプルされます ( 使われません )。EADIS ビットは既定値でクリアされているため、通常動作中エラーアンプは有効です。

レジスタ 6-14: ABECON: アナログブロック イネーブル制御レジスタ

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

DIGOEN DSEL2 DSEL1 DSEL0 DRUVSEL EA2DIS EA1DIS ANAOEN

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7 DIGOEN: GPA0 へのデジタルテスト MUX 接続制御ビット

1 = デジタルテスト MUX 出力を外部ピン GPA0 に接続する0 = デジタルテスト MUX 出力を外部ピン GPA0 に接続しない

bit 6-4 DSEL<2:0>: デジタルテスト MUX 信号チャンネル選択ビット

000 = QRS (DESAT コンパレータの出力 )001 = PWM_L( 単安定後の PWM 出力 )010 = PWM( マイクロコントローラからのオシレータ出力 )011 = TMR2EQ (TMR2 が PR2 と等しい場合 )100 = OV( 過電圧コンパレータ出力 )101 = SWFRQ( スイッチング周波数出力 )110 = SDRV_ON_ONESHOT (WDM ロジックをリセットするための 200 ns のワンショット信号 )111 = 未実装

bit 3 DRUVSEL: ゲート駆動低電圧ロックアウト レベル選択

1 = ゲート駆動の UVLO を 5.4 V に設定する0 = ゲート駆動の UVLO を 2.7 V に設定する

bit 2 EA2DIS: 電圧エラーアンプ ディセーブルビット

1 = 電圧エラーアンプを無効にする (OV コンパレータ保護を有効にする )0 = 電圧エラーアンプを有効にする

bit 1 EA1DIS: 電流エラーアンプ ディセーブル ビット

1 = 電流エラーアンプを無効にする0 = 電流エラーアンプを有効にする

bit 0 ANAOEN: アナログ MUX 出力制御ビット

1 = アナログ MUX 出力を外部ピン GPA0 に接続する0 = アナログ MUX 出力を外部ピン GPA0 に接続しない

Page 52: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.52 2017 Microchip Technology Inc.

6.13 モードおよび RFB MUX 制御

MODECONレジスタはマスタ /スレーブ設定を制御します。

マスタモードでは、マスタの MCP19124/5 の VREF2 信号をバッファリングし GPIO ピンに接続できます。この出力信号を VREF 入力でスレーブ PWM ドライバ(MCP1631) に接続する事で、スレーブ PWM コント

ローラで電流を調整できます。マスタモードでも、CLKOUT 同期信号は GPA1 に接続されます。セミマスタモードでは、ユーザは VREF2 と CLKOUT を別々に実装できます。スレーブモードでは、PWM スイッチング周波数は GPA1 の CLKIN ピンから得る事ができます。スタンドアロン モードでは、VREF2 のユニティゲインバッファは独立したGPIOピンには接続されておらず、PWM スイッチング周波数は内部的に生成されます。

レジスタ 6-15: MODECON: マスタ / スレーブおよび RFB MUX 制御レジスタ

R/W-0 R/W-0 U-0 U-0 R/W-0 U-0 U-0 U-0

MSC1 MSC0 — — MSC2 — — —

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-6 MSC<1:0>: マスタ / スレーブ コンフィグレーション ビット

00 = デバイスをスタンドアロン ユニットとして設定する (VREF2 は無効、PWM スイッチング周波数は内部生成 )

01 = デバイスをマスタとして設定する (VREF2 は GPB1、CLKOUT 同期は GPA1 に接続 )

10 = デバイスをスレーブとして設定する (CLKIN スイッチング周波数同期信号を GPA1 に接続 )

11 = デバイスをセミマスタとして設定する

bit 5-4 未実装 :「0」として読み出し

bit 3 MSC2: セミマスタモード オプションビット

0 = GPB1 を VREF2 出力にし、GPA1 を汎用 I/O にする

1 = GPB1 を汎用出力にし、GPA1 を CLKOUT にする

bit 2-0 未実装 :「0」として読み出し

Page 53: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.53

MCP19124/5

7.0 代表性能曲線

Note: 特に明記しない限り、VIN = 12 V、FSW = 150 kHz、TA = +25 の値です。

図 7-1: 温度に対する IQ

図 7-2: スリープモード時の温度に対する IQ

図 7-3: 負荷電流に対するスリープ VDD

図 7-4: ライン レギュレーション

図 7-5: 負荷制御

図 7-6: 電流に対する VDD 降下電圧

Note: 以下の図表は限られたサンプル数に基づく統計的な結果であり、あくまでも情報提供を目的としています。ここに記載する性能特性は検査されておらず、保証されません。下図表の一部には、仕様動作レンジ外で計測されたデータも含みます ( 例 : 仕様レンジ外の電源を使用 )。従ってこれらのデータは保証範囲外です。

4

4.5

5

5.5

6

6.5

7

-40 -25 -10 5 20 35 50 65 80 95 110 125

Qu

iescen

t C

urr

en

t (m

A)

Temperature (°C)

VIN = 40V

VIN = 20V

VIN = 12V

VIN = 5V

Non-Switching

26

28

30

32

34

36

38

40

-40 -25 -10 5 20 35 50 65 80 95 110 125

Sle

ep

Cu

rren

t (u

A)

Temperature (°C)

VIN = 40V

VIN = 20V

VIN = 12V

VIN = 5V

3.35

3.40

3.45

3.50

3.55

3.60

3.65

3.70

0 0.2 0.4 0.6 0.8 1

VD

D S

leep

(V

)

Current (mA)

-40°C

+25°C

+125°C

5.04

5.08

5.12

5.16

5.20

5.24

6 8 10 12 14 16 18 20 22 24 26 28 30 32

VD

D (V

)

VIN (V)

-40°C

+125°C

+25°C

IDD = 1 mA

5.04

5.06

5.08

5.10

5.12

5.14

5.16

5.18

5.20

5.22

0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30

VD

D (V

)

Current (mA)

-40°C

+25°C

+125°C

0.0

0.1

0.2

0.3

0.4

0.5

0.6

0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30

VD

D D

rop

ou

t (V

)

Current (mA)

-40°C +25°C

+125°C

Page 54: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.54 2017 Microchip Technology Inc.

Note: 特に明記しない限り、VIN = 12 V、FSW = 150 kHz、TA = +25 の値です。

図 7-7: 温度に対する VDD 降下電圧

図 7-8: 出力ドライバ デッドタイムのコードおよび温度依存性

図 7-9: 温度に対するソース出力ドライバのRDSon

図 7-10: 温度に対するシンク出力ドライバのRDSon

図 7-11: 温度に対するソース出力ドライバのRDSon

図 7-12: 温度に対するシンク出力ドライバのRDSon

0.15

0.20

0.25

0.30

0.35

0.40

-40 -25 -10 5 20 35 50 65 80 95 110 125

VD

D D

rop

ou

t V

olt

ag

e (

V)

Temperature (°C)

IDD = 20 mA

0

50

100

150

200

250

300

0 2 4 6 8 10 12 14 16

PD

RV

/SD

RV

Dead

tim

e (

nS

)

Code (d)

-40°C +25°C

+125°C

3.5

4.0

4.5

5.0

5.5

6.0

-40 -25 -10 5 20 35 50 65 80 95 110 125

RD

So

n (Ω

)

Temperature (°C)

RPDRV-SOURCE

RSDRV-SOURCE

VDR = 10V

2.5

3.0

3.5

4.0

4.5

5.0

-40 -25 -10 5 20 35 50 65 80 95 110 125

RD

So

n (Ω

)

Temperature (°C)

RPDRV-SINK

RSDRV-SINK

VDR = 10V

4.5

5.0

5.5

6.0

6.5

7.0

7.5

8.0

8.5

-40 -25 -10 5 20 35 50 65 80 95 110 125

RD

So

n(Ω

)

Temperature (°C)

RSDRV-SOURCE

RPDRV-SOURCE

VDR = 4.5V

3.5

4.0

4.5

5.0

5.5

6.0

6.5

7.0

-40 -25 -10 5 20 35 50 65 80 95 110 125

RD

So

n(Ω

)

Temperature (°C)

RPDRV-SINK

RSDRV-SINK

VDR = 4.5V

Page 55: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.55

MCP19124/5

Note: 特に明記しない限り、VIN = 12 V、FSW = 150 kHz、TA = +25 の値です。

図 7-13: 温度に対するオシレータ周波数

図 7-14: 電流に対する平均 GPIO 出力電圧

7.92

7.94

7.96

7.98

8.00

8.02

8.04

8.06

-40 -25 -10 5 20 35 50 65 80 95 110 125

Oscilla

tor

Fre

qu

en

cy (

MH

z)

Temperature (°C)

4.6

4.7

4.7

4.8

4.8

4.9

4.9

5.0

5.0

0 1 2 3 4 5

GP

IO V

OH (

V)

Current (mA)

-45°C

+25°C

+130°C

Page 56: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.56 2017 Microchip Technology Inc.

NOTE:

Page 57: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.57

MCP19124/5

8.0 システム ベンチテスト

システム設計とベンチテストを容易にするために、MCP19124/5 は各種の内部アナログ信号を出力するマルチプレクサを搭載しています。これらの信号は、ユニティゲイン バッファを介して GPA0 ピンで計測できます。GPA0 ピンは ABECON レジスタで設定します。

ユニティゲイン アナログバッファから出力する信号は、ADCON0 レジスタで設定します。

レジスタ 8-1: ADCON0: ADC 制御レジスタ

U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

— CHS4 CHS3 CHS2 CHS1 CHS0 GO/DONE ADON

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7 未実装 :「0」として読み出し

bit 6-2 CHS<4:0>: アナログ チャンネル選択ビット00000 = VIN/n の電圧計測 (VIN/15.5328)00001 = VREF + VZC (DAC 参照電圧 + VZC ペデスタル電圧設定電流調整レベル )00010 = OVREF( 過電圧コンパレータの参照電圧 )00011 = VBGR( バンドギャップ リファレンス )00100 = VS (VOUT に比例した電圧 )00101 = EA_SC( スロープ補償出力の後のエラーアンプ )00110 = A2 (RFB_INT 接続での 2 次側電流検出アンプ出力 )00111 = ペデスタル ( ペデスタル電圧 )01000 = 予約済み01001 = 予約済み01010 = IP_ADJ (PWM コンパレータでのペデスタル電圧およびオフセット調整の後の IP)01011 = IP_OFF_REF (IP オフセット参照電圧 )01100 = VDR/n (VDR/n のアナログドライバ電圧計測 = 0.229 V/V x VDR)01101 = TEMP_SNS( 内部温度を表すアナログ電圧 )01110 = DLL_VCON( 遅延ロックループ参照電圧 - デッドタイム用制御電圧 )01111 = SLPCMP_REF( スロープ補償参照電圧 )10000 = EAOR (2 つのエラーアンプ (EA1、EA2) の論理和を取った出力ノード )10001 = 未実装10010 = 未実装10011 = 未実装10100 = 未実装10101 = 未実装10110 = 未実装10111 = 未実装11000 = GPA0/AN0 (ADDR1)11001 = GPA1/AN1 (ADDR0)11010 = GPA2/AN2( 温度センサ入力 )11011 = GPA3/AN3 (BIN)11100 = GPB1/AN411101 = GPB4/AN5 (MCP19125 のみ )11110 = GPB5/AN6 (MCP19125 のみ )11111 = GPB6/AN7 (MCP19125 のみ )

Page 58: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.58 2017 Microchip Technology Inc.

bit 1 GO/DONE: A/D 変換ステータスビット1 = A/D 変換サイクルを実行中である。このビットをセットすると A/D 変換サイクルが開始する

このビットは、A/D 変換が完了するとハードウェアで自動的にクリアされます。0 = A/D 変換サイクルが完了している ( 進行中でない )

bit 0 ADON: ADC イネーブルビット1 = A/D コンバータ モジュールを有効にする0 = A/D コンバータを OFF にして消費電流をゼロにする

レジスタ 8-1: ADCON0: ADC 制御レジスタ ( 続き )

Page 59: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.59

MCP19124/5

9.0 デバイスの校正

読み出し専用のメモリ位置 2080h から 208Fh には、工場出荷時に書き込まれた校正データが格納されています。これらのメモリ位置からの読み出し方法は、セクション 20.0「フラッシュ プログラムメモリ制御」を参照してください。

9.1 校正ワード 1

校正ワード 1 はメモリ位置 2080h にあり、電流調整エラーアンプと電圧調整エラーアンプのトランスコンダクタンス Gm 調整のための校正ビットを含んでいます。CGM<3:0> ビットで、トランス コンダクタンス電流ループ エラーアンプ (EA1) を調整します。VGM<3:0> ビットで、トランス コンダクタンス電圧ループ エラーアンプ (EA2) を調整します。ファームウェアでこれらの値を読み出し、バンク 3 の 197h のCGMVGMCAL 特殊機能レジスタにコピーする必要があります。

レジスタ 9-1: CALWD1: 校正ワード 1 レジスタ

U-0 U-0 U-0 U-0 U-0 U-0

— — — — — —

bit 13 bit 8

R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1

CGM3 CGM2 CGM1 CGM0 VGM3 VGM2 VGM1 VGM0

bit 7 bit 0

Legend:

R = 読み出し可能ビット P = プログラム可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 13-8 未実装 :「0」として読み出し

bit 7-4 CGM<3:0>: 電流エラーアンプ (EA1) の Gm 調整ビット

bit 3-0 VGM<3:0>: 電圧エラーアンプ (EA2) の Gm 調整ビット

Page 60: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.60 2017 Microchip Technology Inc.

9.2 校正ワード 2

校正ワード 2 はメモリ位置 2081h にあります。この校正ワードは、ゼロ電流コンパレータ電流計測入力オフセット電圧のための校正ビットを含んでいます。工場でのオフセット校正を行うには、ファームウェアでこれらの値を読み出し、DSTCAL レジスタに書き込む必要があります。工場でのオフセット校正はオフセット電圧を 小にします。ゼロ電流コンパレータは、ユーザが自分でオフセット電圧値を実装できる数少ない例の1 つです。それには、ユーザ定義の値を DSTCAL レジスタに書き込みます。工場での校正値を実装するには、ファームウェアでこれらの値を読み出し、バンク 3 の196h の DSTCAL 特殊機能レジスタにコピーする必要があります。

レジスタ 9-2: CALWD2: 校正ワード 2 レジスタ

U-0 U-0 U-0 U-0 U-0 U-0

— — — — — —

bit 13 bit 8

U-0 U-0 U-0 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1

— — — DST4 DST3 DST2 DST1 DST0

bit 7 bit 0

Legend:

R = 読み出し可能ビット P = プログラム可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 13-5 未実装 :「0」として読み出し

bit 4-0 DST<4:0>: ゼロ電流コンパレータ電流計測オフセット校正ビット

11111 = 大負オフセット校正 (-30 mV)•••

10000 = スケール中央 (0 mV) 00000 = スケール中央 (0 mV) •••

01111 = 大正オフセット校正 (+30 mV)

Page 61: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.61

MCP19124/5

9.3 校正ワード 3

メモリ位置 2082h の BGR<4:0> ビットは、バンドギャップ リファレンスを校正します。ファームウェアでこれらの値を読み出し、バンク3の19BhのBGRCAL特殊機能レジスタにコピーする必要があります。

9.4 校正ワード 4

メモリ位置 2083h の TTA<3:0> ビットは、工場設定の加熱しきい値の校正ビットを含んでいます。ファームウェアでこれらの値を読み出し、バンク 3 の 19Ah のTTACAL 特殊機能レジスタにコピーする必要があります。

レジスタ 9-3: CALWD3: 校正ワード 3 レジスタ

U-0 U-0 U-0 U-0 U-0 U-0

— — — — — —

bit 13 bit 8

U-0 U-0 U-0 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1

— — — BGR4 BGR3 BGR2 BGR1 BGR0

bit 7 bit 0

Legend:

R = 読み出し可能ビット P = プログラム可能ビット U = 未使用ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 13-5 未使用 :「0」として読み出し

bit 4-0 BGR<4:0>: バンドギャップ リファレンス校正ビット

レジスタ 9-4: CALWD4: 校正ワード 4 レジスタ

U-0 U-0 U-0 U-0 U-0 U-0

— — — — — —

bit 13 bit 8

U-0 U-0 U-0 U-0 R/P-1 R/P-1 R/P-1 R/P-1

— — — — TTA3 TTA2 TTA1 TTA0

bit 7 bit 0

Legend:

R = 読み出し可能ビット P = プログラム可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 13-4 未実装 :「0」として読み出し

bit 3-0 TTA<3:0>: 過熱しきい値校正ビット

Page 62: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.62 2017 Microchip Technology Inc.

9.5 校正ワード 5

メモリ位置 2084h の TANA<9:0> ビットは、シリコン温度が28 の時の内部温度センサのADC読み値を格納しています。この温度は通常 +2/-3 のレンジで変動

します。この 10 ビット読み値を使うとシリコンダイ温度を計算できます。内部温度センサの温度係数は14.0 +/- 0.8 mV/ (-20 ~ +125 ) です ( セクション25.0「内部温度インジケータ モジュール」参照 )。

9.6 校正ワード 6

メモリ位置 2085h の FCAL<6:0> ビットは、内部オシレータの校正を設定します。ファームウェアでこれらの値を読み出し、バンク 3 の 198h の OSCCAL 特殊機能レジスタにコピーする必要があります。

レジスタ 9-5: CALWD5: 校正ワード 5 レジスタ

U-0 U-0 U-0 U-0 R/P-1 R/P-1

— — — — TANA9 TANA8

bit 13 bit 8

R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1

TANA7 TANA6 TANA5 TANA4 TANA3 TANA2 TANA1 TANA0

bit 7 bit 0

Legend:

R = 読み出し可能ビット P = プログラム可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 13-10 未実装 :「0」として読み出し

bit 9-0 TANA<9:0>: 30 における内部シリコン温度の ADC 読み値校正ビット

レジスタ 9-6: CALWD6: 校正ワード 6 レジスタ

U-0 U-0 U-0 U-0 U-0 U-0

— — — — — —

bit 13 bit 8

U-0 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1

— FCAL6 FCAL5 FCAL4 FCAL3 FCAL2 FCAL1 FCAL0

bit 7 bit 0

Legend:

R = 読み出し可能ビット P = プログラム可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 13-7 未実装 :「0」として読み出し

bit 6-0 FCAL<6:0>: 内部オシレータ校正ビット

Page 63: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.63

MCP19124/5

9.7 校正ワード 7

メモリ位置 2086h の DCS<6:0> ビットは、ISOUT を使って構成した電流検出差動アンプ(A2)の工場設定のオフセット校正値を格納します。ファームウェアでこれらの値を読み出し、バンク 3 の 199h の DCSCAL特殊機能レジスタにコピーする必要があります。内部帰還抵抗を使う場合、レジスタ9-1を参照してください。

レジスタ 9-7: CALWD7: 校正ワード 7 レジスタ

U-0 U-0 U-0 U-0 U-0 U-0

— — — — — —

bit 13 bit 8

U-0 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1

— DCS6 DCS5 DCS4 DCS3 DCS2 DCS1 DCS0

bit 7 bit 0

Legend:

R = 読み出し可能ビット P = プログラム可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 13-7 未実装 :「0」として読み出し

bit 6-0 DCS<6:0>: ISOUT と併用する場合の差動電流検出アンプ校正ビット

Page 64: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.64 2017 Microchip Technology Inc.

9.8 校正ワード 8

メモリ位置 2087h の校正ワード 8 は、電圧調整エラーアンプのオフセット電圧校正ビットを含んでいます。電 圧 ア ン プ オ フ セ ッ ト 電 圧 調 整 ビ ッ ト はVEAOFFCAL<6:0> です。ファームウェアでこの値を読み出し、VEAOFFCAL をバンク 2 の 10Dh の特殊機能レジスタにコピーする必要があります。

レジスタ 9-8: CALWD8: 校正ワード 8 レジスタ

U-0 U-0 U-0 U-0 U-0 U-0

— — — — — —

bit 13 bit 8

U-0 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1

— VEAOFFCAL6 VEAOFFCAL5 VEAOFFCAL4 VEAOFFCAL3 VEAOFFCAL2 VEAOFFCAL1 VEAOFFCAL0

bit 7 bit 0

Legend:

R = 読み出し可能ビット P = プログラム可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 13-7 未実装 :「0」として読み出し

bit 6-0 VEAOFFCAL<6:0>: 電圧エラーアンプのオフセット電圧校正ビット

Page 65: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.65

MCP19124/5

9.9 校正ワード 9

校正ワード 9 はメモリ位置 2088h にあり、OVREF DACスパン調整 (OVRSPCAL<4:0>)と電流検出アンプゲイン校正 (A2GCAL<3:0>) のための校正ビットを含んでいます。OVRSPCAL<4:0> は、OVREF DAC 校正専用の独立した調整ビットです。ファームウェアでこれらの値を読み出し、バンク 3 の 19Fh の OVRSPCAL 特殊機能レジスタにコピーする必要があります。

A2 ゲイン校正調整ビットで、電流検出アンプ (A2) の10 V/V のゲインを設定します。ファームウェアでA2GCAL<3:0> 校正ビットの値を読み出し、バンク 3 の19Eh の A2GCAL 特殊機能レジスタにコピーする必要があります。

レジスタ 9-9: CALWD9: 校正ワード 9 レジスタ

U-0 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1

— OVRSPCAL4 OVRSPCAL3 OVRSPCAL2 OVRSPCAL1 OVRSPCAL0

bit 13 bit 8

U-0 U-0 U-0 U-0 R/P-1 R/P-1 R/P-1 R/P-1

— — — — A2GCAL3 A2GCAL2 A2GCAL1 A2GCAL0

bit 7 bit 0

Legend:

R = 読み出し可能ビット P = プログラム可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 13 未実装 :「0」として読み出し

bit 12-8 OVRSPCAL<4:0>: OVREF スパン調整ビット

bit 7-4 未実装 :「0」として読み出し

bit 3-0 A2GCAL<3:0>: A2 電流検出アンプゲイン校正ビット

Page 66: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.66 2017 Microchip Technology Inc.

9.10 校正ワード 10

メモリ位置 2089h の校正ワード 10 は、VREF2 DACスパン調整 (VR2SPCAL<4:0>) と VREF2 DAC スパン調整(VRSPCAL<4:0>)のための校正ビットを含んでいます。VR2SPCAL<4:0> は、VREF2 DAC 校正専用の独立した調整ビットです。ファームウェアでこれらの値を読み出し、バンク 2 の 11Ah の VR2SPCAL 特殊機能レジスタにコピーする必要があります。

VRSPCAL<4:0> は、VREF2 DAC 校正専用の独立した調整ビットです。ファームウェアでこれらの値を読み出し、バンク 2 の 119h の VRSPCAL 特殊機能レジスタにコピーする必要があります。

レジスタ 9-10: CALWD10: 校正ワード 10 レジスタ

U-0 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1

— VR2SPCAL4 VR2SPCAL3 VR2SPCAL2 VR2SPCAL1 VR2SPCAL0

bit 13 bit 8

U-0 U-0 U-0 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1

— — — VRSPCAL4 VRSPCAL3 VRSPCAL2 VRSPCAL1 VRSPCAL0

bit 7 bit 0

Legend:

R = 読み出し可能ビット P = プログラム可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 13 未実装 :「0」として読み出し

bit 12-8 VR2SPCAL<4:0>: VREF2 スパン調整ビット

bit 7-5 未実装 :「0」として読み出し

bit 4-0 VRSPCAL<4:0>: VREF スパン調整ビット

Page 67: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.67

MCP19124/5

9.11 校正ワード 11

メモリ位置208Ahの校正ワード11は、4 V LDO (AVDD)調整 (AVDDCAL<3:0>) とアナログテスト バッファのオフセット電圧 (BUFF<7:0>)のための校正ビットを含んでいます。AVDD は、内部アナログ回路に供給される既定値の ADC 参照電圧です。ファームウェアでこれらの値を読み出し、バンク 3の 19DhのAVDDCAL特殊機能レジスタにコピーする必要があります。

また、アドレス 208Ah にはアナログテスト MUXバッファのオフセット値が格納されます。これは8 ビットの 2 の補数ワードであり、バッファのオフセット電圧を mV 単位で表します。この値は、アナログテスト信号計測のバッファのオフセットを調整するのに使えます。テスト信号の詳細はセクション 8.0「システム ベンチテスト」を参照してください。

レジスタ 9-11: CALWD11: 校正ワード 11 レジスタ

U-0 U-0 R/P-1 R/P-1 R/P-1 R/P-1

— — AVDDCAL3 AVDDCAL2 AVDDCAL1 AVDDCAL0

bit 13 bit 8

R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1

BUFF7 BUFF6 BUFF5 BUFF4 BUFF3 BUFF2 BUFF1 BUFF0

bit 7 bit 0

Legend:

R = 読み出し可能ビット P = プログラム可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 13-12 未実装 :「0」として読み出し

bit 11-8 AVDDCAL<3:0>: AVDD 4 V LDO 調整ビット

bit 7-0 BUFF<7:0>: アナログテスト MUX バッファ オフセットビット11111111 = スケール中央 (-1 mV)••10000000 = 大負オフセット (-128 mV)01111111 = 大正オフセット (+128 mV)••00000000 = スケール中央 (0 mV)

Page 68: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.68 2017 Microchip Technology Inc.

9.12 校正ワード 12

メモリ位置208Bhの校正ワード12は、電流調整エラーアンプのオフセット電圧校正ビットを含んでいます。電流調整アンプオフセット電圧調整ビットは

CEAOFFCAL<6:0> です。ファームウェアでこの値を読み出し、CEAOFFCAL をバンク 3 の 19Ch の特殊機能レジスタにコピーする必要があります。

レジスタ 9-12: CALWD12: 校正ワード 12 レジスタ

U-0 U-0 U-0 U-0 U-0 U-0

— — — — — —

bit 13 bit 8

U-0 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1

— CEAOFFCAL6 CEAOFFCAL5 CEAOFFCAL4 CEAOFFCAL3 CEAOFFCAL2 CEAOFFCAL1 CEAOFFCAL0

bit 7 bit 0

Legend:

R = 読み出し可能ビット P = プログラム可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 13-7 未実装 :「0」として読み出し

bit 6-0 CEAOFFCAL<6:0>: 電流エラーアンプのオフセット電圧校正ビット

Page 69: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.69

MCP19124/5

10.0 メモリ構成

MCP19124/5 には以下 2 種類のメモリがあります。

• プログラムメモリ

• データメモリ :

- 特殊機能レジスタ (SFR)

- 汎用 RAM

10.1 プログラムメモリの構成

MCP19124/5 には 13 ビットのプログラム カウンタがあり、8000 x 14 のプログラムメモリ空間におけるアドレス指定が可能です。物理的に実装されているのは、 初の 4000 x 14 (0000h ~ 0FFFh) だけです。この境界を超えるアドレスを指定すると、 初の 4000x 14 の空間内でラップアラウンド ( 折り返し ) が発生します。リセットベクタは 0000h、割り込みベクタは0004h です ( 図 10-1 参照 )。プログラムメモリ バス( 命令ワード ) の幅は 14 ビットです。命令は全てが単一ワードであるため、MCP19124/5 の命令空間は8000 です。

図 10-1: MCP19124/5 のプログラムメモリ マップとメモリスタック

Unimplemented

PC<12:0>

13

0000h

0004h

0005h

0FFFh

1FFFh

Stack Level 1

Stack Level 8

Reset Vector

Interrupt Vector

On-chip ProgramMemory

CALL, RETURNRETFIE, RETLW

1000h

User IDs (1)

Device ID (hardcoded) (1)

Config Word (1)

2000h

2005h

2006h

2007h

200Ah

207Fh

20FFh

2003h

2004hICD Instruction (1)

Manufacturing Codes (1)

Note 1:コード保護されていません。

Shadows 000-FFFh

2008h

Reserved for Manufacturing & Test (1)

2080hCalibration Words (1)

200Bh

208Fh2090h

Shadows 2000-20FFh

2100h

3FFFh

Reserved

Page 70: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.70 2017 Microchip Technology Inc.

10.1.1 プログラムメモリをデータとして読み出す方法

プログラムメモリの定数にアクセスする方法は 2 つあります。1 つ目は、RETLW命令テーブルを使う方法です。2 つ目は、ファイル選択レジスタ (FSR) を介してプログラムメモリを指定する方法です。

10.1.1.1 RETLW 命令

RETLW 命令を使って定数テーブルへアクセスできます。例 10-1 に、推奨するテーブル作成方法を示します。

例 10-1: RETLW 命令

BRW命令を使うと、このようなテーブルを非常に簡単に実装できます。旧世代のマイクロコントローラとのコード移植性を確保する必要がある場合、BRW命令を使えないため、従来のテーブル読み出し方法を使う必要があります。

10.2 データメモリの構成

データメモリ ( 図 10-1 参照 ) は 4 つのバンクに分割されており、汎用レジスタ (GPR) と特殊機能レジスタ(SFR) を収めています。特殊機能レジスタは各バンクの先頭 32 アドレスに配置されています。バンク 0 のレジスタ位置 20h ~ 7Fh、バンク 1 の A0h ~ EFh、バンク 2 の 120h ~ 16Fh、バンク 3 の 1A0h ~ 1EFhはスタティック RAM として実装された汎用レジスタです。その他の RAM はいずれも未実装で、読み出すと「0」が返されます。STATUS レジスタの RP<1:0>ビットがバンク選択ビットです。

例 10-2: バンク選択

レジスタ間で値を移動する場合、W レジスタを経由する必要があります。これは、全てのレジスタ間移動に 2 命令サイクルが必要である事を意味します。

データメモリの全体には、直接または間接的にアクセスできます。直接アドレス指定の場合、RP<1:0> ビットを使う必要があります。間接アドレス指定の場合、FSRを使う必要があります。間接アドレス指定は、STATUSレジスタの間接レジスタポインタ (IRP) ビットを使ってデータメモリのバンク 0/ バンク 1 またはバンク 2/バンク 3 にアクセスします。

10.2.1 汎用レジスタファイル

MCP19124/5 のレジスタファイルは 64 x 8 構成です。各レジスタには FSR を介して、直接または間接的にアクセスします ( セクション 10.5「間接アドレス指定、INDF および FSR レジスタ」参照 )。

constantsBRW ;Add Index in W to

;program counter to;select data

RETLW DATA0 ;Index0 dataRETLW DATA1 ;Index1 dataRETLW DATA2RETLW DATA3

my_function;… LOTS OF CODE…MOVLW DATA_INDEXcall constants;… THE CONSTANT IS IN W

RP1 RP0

0 0 バンク 0 を選択

0 1 バンク 1 を選択

1 0 バンク 2 を選択

1 1 バンク 3 を選択

Page 71: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.71

MCP19124/5

10.2.2 コアレジスタ

コアレジスタには、基本動作に直接影響するレジスタが含まれます。コアレジスタへは、全バンクからアクセスできます。表 10-1 に、それらのレジスタを示します。詳細は表 10-2 参照してください。

10.2.2.1 STATUS レジスタ

STATUS レジスタの内容は以下の通りです。

• ALU の演算状態

• リセット状態

• データメモリ (RAM) のバンク選択ビット

STATUS レジスタは、他の全てのレジスタと同様に任意の命令の格納先とする事ができます。STATUSレジスタが Z、DC、C のいずれかのビットに影響を及ぼす命令の格納先である場合、これら 3 つのビットには書き込みできません。これらのビットはデバイスのロジックに従ってセットまたはクリアされます。また、TOビットとPDビットには書き込みできません。従って、STATUS レジスタを格納先とする命令を実行した場合、意図した結果とならない場合があります。

例えば、CLRF STATUS は上位 3 ビットをクリアし、Z ビットをセットします。これにより、STATUS レジスタは「000u u1uu」(u = 不変 ) のままです。

従って、STATUS レジスタを変更する際は BCF、BSF、SWAPF、MOVWF 命令等、ステータスビットに影響を与えない命令を推奨します。

表 10-1: コアレジスタ

アドレス バンク x

x00h、x80h、x100h、x180hのいずれか INDF

x02h、x82h、x102h、x182hのいずれか PCL

x03h、x83h、x103h、x183hのいずれか STATUS

x04h、x84h、x104h、x184hのいずれか FSR

x0Ah、x8Ah、x10Ah、x18Ahのいずれか PCLATH

x0Bh、x8Bh、x10Bh、x18Bhのいずれか INTCON

Note 1: 減算では、C ビットが Borrow、DC ビットが Digit Borrow アウトビットとして動作します。

レジスタ 10-1: STATUS: ステータス レジスタ

R/W-0 R/W-0 R/W-0 R-1 R-1 R/W-x R/W-x R/W-x

IRP RP1 RP0 TO PD Z DC (1) C (1)

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 x = ビットは未知 「0」 = ビットはクリア

「1」 = ビットはセット

bit 7 IRP: レジスタバンク選択ビット ( 間接アドレス指定に使用 )

1 = バンク 2、3 (100h ~ 1FFh)0 = バンク 0、1 (00h ~ FFh)

bit 6-5 RP<1:0>: レジスタバンク選択ビット ( 直接アドレス指定に使用 )

00 = バンク 0 (00h ~ 7Fh)01 = バンク 1 (80h ~ FFh)10 = バンク 2 (100h ~ 17Fh)11 = バンク 3 (180h ~ 1FFh)

bit 4 TO: タイムアウト ビット

1 = 電源投入後、CLRWDT命令後、SLEEP命令後のいずれか0 = WDT タイムアウトが発生した

Note 1: Borrow の場合、極性は逆です。減算は、2 番目のオペランドの 2 の補数を加算する事で実行します。ローテート (RRF、RLF) 命令の場合、このビットにはソースレジスタの上位ビットまたは下位ビットのどちらかが読み込まれます。

Page 72: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.72 2017 Microchip Technology Inc.

10.2.3 特殊機能レジスタ

特殊機能レジスタは、CPU と周辺モジュールがデバイスの動作を制御するために使うレジスタです ( 図 10-2参照 )。これらのレジスタはスタティック RAM で実装されています。

特殊レジスタはコアと周辺モジュールの 2 つに分類できます。

このセクションでは、マイクロコントローラ コアに関連する特殊機能レジスタについて説明します。周辺モジュールの動作に関連するレジスタについては、その周辺モジュールの関連セクションの中で説明します。

bit 3 PD: パワーダウン ビット

1 = 電源投入後、または CLRWDT命令後のどちらか0 = SLEEP命令を実行した

bit 2 Z: ゼロビット

1 = 算術演算または論理演算の結果がゼロである0 = 算術演算または論理演算の結果はゼロでない

bit 1 DC: Digit Carry/Digit Borrow ビット (1) (ADDWF、ADDLW、SUBLW、SUBWF命令 )

1 = 演算結果の 下位から 4 ビット目でキャリーアウトが発生した0 = 演算結果の 下位から 4 ビット目でキャリーアウトは発生していない

bit 0 C: Carry/Borrow ビット (1) (ADDWF、ADDLW、SUBLW、SUBWF命令 )

1 = 演算結果の 上位ビットからキャリーアウトが発生した0 = 演算結果の 上位ビットからキャリーアウトは発生していない

レジスタ 10-1: STATUS: ステータス レジスタ ( 続き )

Note 1: Borrow の場合、極性は逆です。減算は、2 番目のオペランドの 2 の補数を加算する事で実行します。ローテート (RRF、RLF) 命令の場合、このビットにはソースレジスタの上位ビットまたは下位ビットのどちらかが読み込まれます。

Page 73: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.73

MCP19124/5

10.3 データメモリ

図 10-2: MCP19124/5 のデータメモリ マップ

Indirect addr.(1) 00h Indirect addr.(1) 80h Indirect addr.(1) 100h Indirect addr.(1) 180h

TMR0 01h OPTION_REG 81h TMR0 101h OPTION_REG 181h

PCL 02h PCL 82h PCL 102h PCL 182h

STATUS 03h STATUS 83h STATUS 103h STATUS 183h

FSR 04h FSR 84h FSR 104h FSR 184h

PORTGPA 05h TRISGPA 85h WPUGPA 105h IOCA 185h

PORTGPB 06h TRISGPB 86h WPUGPB 106h IOCB 186h

PIR1 07h PIE1 87h PE1 107h ANSELA 187h

PIR2 08h PIE2 88h MODECON 108h ANSELB 188h

PCON 09h 89h ABECON 109h 189h

PCLATH 0Ah PCLATH 8Ah PCLATH 10Ah PCLATH 18Ah

INTCON 0Bh INTCON 8Bh INTCON 10Bh INTCON 18Bh

TMR1L 0Ch 8Ch Reserved 10Ch PORTICD (2) 18Ch

TMR1H 0Dh 8Dh VEAOFFCAL 10Dh TRISICD (2) 18Dh

T1CON 0Eh 8Eh 10Eh ICKBUG (2) 18Eh

TMR2 0Fh 8Fh 10Fh BIGBUG (2) 18Fh

T2CON 10h VINUVLO 90h SSPADD 110h PMCON1 190h

PR2 11h VINOVLO 91h SSPBUF 111h PMCON2 191h

12h VINCON 92h SSPCON1 112h PMADRL 192h

PWMPHL 13h CC1RL 93h SSPCON2 113h PMADRH 193h

PWMPHH 14h CC1RH 94h SSPCON3 114h PMDATL 194h

PWMRL 15h CC2RL 95h SSPMSK1 115h PMDATH 195h

PWMRH 16h CC2RH 96h SSPSTAT 116h DSTCAL 196h

17h CCDCON 97h SSPADD2 117h CGMVGMCAL 197h

18h DESATCON 98h SSPMSK2 118h OSCCAL 198h

VREFCON 19h OVCON 99h VRSPCAL 119h DCSCAL 199h

VREF2CON 1Ah OVREFCON 9Ah VR2SPCAL 11Ah TTACAL 19Ah

OSCTUNE 1Bh DEADCON 9Bh 11Bh BGRCAL 19Bh

ADRESL 1Ch SLPCRCON 9Ch 11Ch CEAOFFCAL 19Ch

ADRESH 1Dh ICOACON 9Dh 11Dh AVDDCAL 19Dh

ADCON0 1Eh ICLEBCON 9Eh 11Eh A2GCAL 19Eh

ADCON1 1Fh 9Fh 11Fh OVRSPCAL 19Fh

General Purpose Register

96 Bytes

20h GeneralPurposeRegister80 Bytes

A0h GeneralPurposeRegister

80 Bytes

120h 1A0h

EFh 16F 1EF

7Fh

AccessesBank 0

F0h

FFh

AccessesBank 0

170h

17Fh

AccessesBank 0

1F0h

1FFh

Bank 0 Bank 1 Bank 2 Bank 3

未実装のデータメモリ領域、「0」として読み出し

Note 1: 物理レジスタではありません。

2: DBGEN = 0かつ ICKBUG<INBUG> = 1の場合のみアクセスできます。

FileAddress

FileAddress

FileAddress

FileAddress

Page 74: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MC

P19124/5

DS

20005619A

_JP - p.74

2017 M

icrochip Technolo

gy Inc.

表 10-2: MCP19124/5 の特殊レジスタのまとめ ( バンク 0)

アドレス レジスタ名 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 POR 時の値 その他のリセット時の値 (1)

バンク 0

00h INDF この位置をアドレス指定すると、FSR の内容によってデータメモリのアドレスが指定されます ( 物理レジスタではない )。 xxxx xxxx xxxx xxxx01h TMR0 Timer0 モジュール レジスタ xxxx xxxx uuuu uuuu02h PCL プログラム カウンタ (PC) の下位バイト 0000 0000 0000 000003h STATUS IRP RP1 RP0 TO PD Z DC C 0001 1xxx 000q quuu04h FSR データメモリの間接アドレスポインタ xxxx xxxx uuuu uuuu05h PORTGPA GPA7 GPA6 GPA5 — GPA3 GPA2 GPA1 GPA0 xxx- xxxx uuu- uuuu06h PORTGPB GPB7 GPB6 GPB5 GPB4 — — GPB1 GPB0 xxxx --xx uuuu --uu07h PIR1 — — BCLIF SSPIF CC2IF CC1IF TMR2IF TMR1IF --00 0000 --00 000008h PIR2 CDSIF ADIF — OTIF OVIF DRUVIF OVLOIF UVLOIF 00-0 0000 00-0 000009h PCON ADC_REFR — — — VDDFLAG VDDOK POR BOR 0--- 10qq 0--- 10uu0Ah PCLATH — — — プログラム カウンタ上位 5 ビットの書き込みバッファ ---0 0000 ---0 00000Bh INTCON GIE PEIE T0IE INTE IOCE T0IF INTF IOCF (2) 0000 000x 0000 000u0Ch TMR1L 16 ビット TMR1 の下位バイト保持レジスタ xxxx xxxx uuuu uuuu0Dh TMR1H 16 ビット TMR1 の上位バイト保持レジスタ xxxx xxxx uuuu uuuu0Eh T1CON — — T1CKPS1 T1CKPS0 — — TMR1CS TMR1ON --00 --00 --uu --uu0Fh TMR2 Timer2 モジュール レジスタ 0000 0000 uuuu uuuu10h T2CON — — — — — TMR2ON T2CKPS1 T2CKPS0 ---- -000 ---- -00011h PR2 Timer2 モジュール周期レジスタ 1111 1111 1111 111112h — 未実装 — —13h PWMPHL スレーブの位相シフトレジスタ xxxx xxxx uuuu uuuu14h PWMPHH スレーブの位相シフトレジスタ xxxx xxxx uuuu uuuu15h PWMRL PWM レジスタ下位バイト xxxx xxxx uuuu uuuu16h PWMRH PWM レジスタ上位バイト xxxx xxxx uuuu uuuu17h — 未実装 — —18h — 未実装 — —19h VREFCON VREF7 VREF6 VREF5 VREF4 VREF3 VREF2 VREF1 VREF0 0000 0000 0000 00001Ah VREF2CON VREF2<7:0> 0000 0000 0000 00001Bh OSCTUNE — — — TUN4 TUN3 TUN2 TUN1 TUN0 ---0 0000 ---0 00001Ch ADRESL A/D 結果の下位 8 ビット xxxx xxxx uuuu uuuu1Dh ADRESH A/D 結果の上位 2 ビット 0000 00xx 0000 00uu1Eh ADCON0 — CHS4 CHS3 CHS2 CHS1 CHS0 GO/DONE ADON -000 0000 -000 00001Fh ADCON1 — ADCS2 ADCS1 ADCS0 — — — VCFG -000 ---0 -000 ---0

Legend: — = 未実装、「0」として読み出し、u = 変化なし、x = 未知、q = 条件による、網掛け = 未実装

Note 1: パワーアップ以外のリセットには、通常動作中の MCLR リセットやウォッチドッグ タイマリセットがあります。

2: MCLR および WDT リセットはデータラッチが保持している値には影響を与えません。IOCF ビットはリセットでクリアされますが、不一致が検出されると再度セットされます。

Page 75: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017

Microchip T

echnology Inc.D

S20005

619A_JP

- p.75

MC

P19124/5

表 10-3: MCP19124/5 の特殊レジスタのまとめ ( バンク 1)

アドレス レジスタ名 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 POR 時の値 その他のリセット時の値 (1)

バンク 1

80h INDF この位置をアドレス指定すると、FSR の内容によってデータメモリのアドレスが指定されます ( 物理レジスタではない )。 xxxx xxxx uuuu uuuu81h OPTION_REG RAPU INTEDG T0CS T0SE PSA PS2 PS1 PS0 1111 1111 1111 111182h PCL プログラム カウンタ (PC) の下位バイト 0000 0000 0000 000083h STATUS IRP RP1 RP0 TO PD Z DC C 0001 1xxx 000q quuu84h FSR データメモリの間接アドレスポインタ xxxx xxxx uuuu uuuu85h TRISGPA TRISA7 TRISA6 TRISA5 — TRISA3 TRISA2 TRISA1 TRISA0 1110 1111 1110 111186h TRISGPB TRISB7 TRISB6 TRISB5 TRISB4 — — TRISB1 TRISB0 1111 0011 1111 001187h PIE1 — — BCLIE SSPIE CC2IE CC1IE TMR2IE TMR1IE --00 0000 --00 000088h PIE2 CDSIE ADIE — OTIE OVIE DRUVIE OVLOIE UVLOIE 00-0 0000 00-0 000089h — 未実装 — —

8Ah PCLATH — — — プログラム カウンタ上位 5 ビットの書き込みバッファ ---0 0000 ---0 00008Bh INTCON GIE PEIE T0IE INTE IOCE T0IF INTF IOCF (2) 0000 000x 0000 000u8Ch — 未実装 — —

8Dh — 未実装 — —

8Eh — 未実装 — —

8Fh — 未実装 — —

90h VINUVLO — — UVLO5 UVLO4 UVLO3 UVLO2 UVLO1 UVLO0 --xx xxxx --uu uuuu91h VINOVLO — — OVLO5 OVLO4 OVLO3 OVLO2 OVLO1 OVLO0 --xx xxxx --uu uuuu92h VINCON UVLOEN UVLOOUT UVLOINTP UVLOINTN OVLOEN OVLOOUT OVLOINTP OVLOINTN 0x00 0x00 0u00 0u0093h CC1RL キャプチャ 1/ コンペア 1 レジスタ 1 x 下位バイト (LSB) xxxx xxxx uuuu uuuu94h CC1RH キャプチャ 1/ コンペア 1 レジスタ 2 x 上位バイト (MSB) xxxx xxxx uuuu uuuu95h CC2RL キャプチャ 2/ コンペア 2 レジスタ 1 x 下位バイト (LSB) xxxx xxxx uuuu uuuu96h CC2RH キャプチャ 2/ コンペア 2 レジスタ 2 x 上位バイト (MSB) xxxx xxxx uuuu uuuu97h CCDCON CC2M<3:0> CC1M<3:0> xxxx xxxx uuuu uuuu98h DESATCON CDSMUX CDSWDE 予約済み CDSPOL CDSOE CDSOUT CDSINTP CDSINTN 0000 0x00 0000 0u0099h OVCON — — — — OVEN OVOUT OVINTP OVINTN ---- 0x00 ---- 0u009Ah OVREFCON OOV7 OOV6 OOV5 OOV4 OOV3 OOV2 OOV1 OOV0 xxxx xxxx uuuu uuuu9Bh DEADCON PDRVDT3 PDRVDT2 PDRVDT1 PDRVDT0 SDRVDT3 SDRVDT2 SDRVDT1 SDRVDT0 xxxx xxxx uuuu uuuu9Ch SLPCRCON — SLPBY SLPS5 SLPS4 SLPS3 SLPS2 SLPS1 SLPS0 -xxx xxxx -uuu uuuu9Dh ICOACON — — — — ICOAC3 ICOAC2 ICOAC1 ICOAC0 ---- xxxx ---- uuuu9Eh ICLEBCON — — — — — — ICLEBC1 ICLEBC0 ---- --xx ---- --uu9Fh — 未実装 — —

Legend: — = 未実装、「0」として読み出し、u = 変化なし、x = 未知、q = 条件による、網掛け = 未実装

Note 1: パワーアップ以外のリセットには、通常動作中の MCLR リセットやウォッチドッグ タイマリセットがあります。

2: MCLR および WDT リセットはデータラッチが保持している値には影響を与えません。IOCF ビットはリセットでクリアされますが、不一致が検出されると再度セットされます。

Page 76: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MC

P19124/5

DS

20005619A

_JP - p.76

2017 M

icrochip Technolo

gy Inc.

表 10-4: MCP19124/5 の特殊レジスタのまとめ ( バンク 2)

アドレス レジスタ名 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 POR 時の値 その他のリセット時の値 (1)

バンク 2

100h INDF この位置をアドレス指定すると、FSR の内容によってデータメモリのアドレスが指定されます ( 物理レジスタではない )。 xxxx xxxx xxxx xxxx101h TMR0 Timer0 モジュール レジスタ xxxx xxxx uuuu uuuu102h PCL プログラム カウンタ (PC) の下位バイト 0000 0000 0000 0000103h STATUS IRP RP1 RP0 TO PD Z DC C 0001 1xxx 000q quuu104h FSR データメモリの間接アドレスポインタ xxxx xxxx uuuu uuuu105h WPUGPA — — WPUA5 — WPUA3 WPUA2 WPUA1 WPUA0 --1- 1111 --u- uuuu106h WPUGPB WPUB7 WPUB6 WPUB5 WPUB4 — — WPUB1 — 1111 --1- uuuu --u-107h PE1 PDRVEN SDRVEN PDRVBY SDRVBY — ISPUEN PWMSTR_PEN PWMSTR_SEN 0000 -100 0000 -100108h MODECON MSC1 MSC0 — — MSC2 — — — 00-- 0--- 00-- 0---109h ABECON DIGOEN DSEL2 DSEL1 DSEL0 DRUVSEL EA2DIS EA1DIS ANAOEN 0000 0000 0000 000010Ah PCLATH — — — プログラム カウンタ上位 5 ビットの書き込みバッファ ---0 0000 ---0 000010Bh INTCON GIE PEIE T0IE INTE IOCE T0IF INTF IOCF (2) 0000 000x 0000 000u10Ch — 予約済み — —10Dh VEAOFFCAL — VEAOFFCAL6 VEAOFFCAL5 VEAOFFCAL4 VEAOFFCAL3 VEAOFFCAL2 VEAOFFCAL1 VEAOFFCAL0 -xxx xxxx -uuu uuuu10Eh — 未実装 — —10Fh — 未実装 — —110h SSPADD ADD<7:0> 0000 0000 0000 0000111h SSPBUF 同期シリアルポート受信 / 送信バッファレジスタ xxxx xxxx uuuu uuuu112h SSPCON1 WCOL SSPOV SSPEN CKP SSPM<3:0> 0000 0000 0000 0000113h SSPCON2 GCEN ACKSTAT ACKDT ACKEN RCEN PEN RSEN SEN 0000 0000 0000 0000114h SSPCON3 ACKTIM PCIE SCIE BOEN SDAHT SBCDE AHEN DHEN 0000 0000 0000 0000115h SSPMSK1 MSK<7:0> 1111 1111 1111 1111116h SSPSTAT SMP CKE D/A P S R/W UA BF — —117h SSPADD2 ADD2<7:0> 0000 0000 0000 0000118h SSPMSK2 MSK2<7:0> 1111 1111 1111 1111119h VRSPCAL — — — VRSPCAL4 VRSPCAL3 VRSPCAL2 VRSPCAL1 VRSPCAL0 ---x xxxx ---u uuuu11Ah VR2SPCAL — — — VR2SPCAL4 VR2SPCAL3 VR2SPCAL2 VR2SPCAL1 VR2SPCAL0 ---x xxxx ---u uuuu11Bh — 未実装 — —11Ch — 未実装 — —11Dh — 未実装 — —11Eh — 未実装 — —11Fh — 未実装 — —

Legend: — = 未実装、「0」として読み出し、u = 変化なし、x = 未知、q = 条件による、網掛け = 未実装

Note 1: パワーアップ以外のリセットには、通常動作中の MCLR リセットやウォッチドッグ タイマリセットがあります。

2: MCLR および WDT リセットはデータラッチが保持している値には影響を与えません。IOCF ビットはリセットでクリアされますが、不一致が検出されると再度セットされます。

Page 77: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017

Microchip T

echnology Inc.D

S20005

619A_JP

- p.77

MC

P19124/5

表 10-5: MCP19124/5 の特殊レジスタのまとめ ( バンク 3)

アドレス レジスタ名 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 POR 時の値 その他のリセット時の値 (1)

バンク 3

180h INDF この位置をアドレス指定すると、FSR の内容によってデータメモリのアドレスが指定されます ( 物理レジスタではない )。 xxxx xxxx uuuu uuuu181h OPTION_REG RAPU INTEDG T0CS T0SE PSA PS2 PS1 PS0 1111 1111 1111 1111182h PCL プログラム カウンタ (PC) の下位バイト 0000 0000 0000 0000183h STATUS IRP RP1 RP0 TO PD Z DC C 0001 1xxx 000q quuu184h FSR データメモリの間接アドレスポインタ xxxx xxxx uuuu uuuu185h IOCA IOCA7 IOCA6 IOCA5 — IOCA3 IOCA2 IOCA1 IOCA0 000- 0000 0000 0000186h IOCB IOCB7 IOCB6 IOCB5 IOCB4 — — IOCB1 IOCB0 0000 --00 0000 --00187h ANSELA — — — — ANSA3 ANSA2 ANSA1 ANSA0 ---- 1111 ---- 1111188h ANSELB — ANSB6 ANSB5 ANSB4 — — ANSB1 — -111 --1- -111 --1-189h — 未実装 — —18Ah PCLATH — — — プログラム カウンタ上位 5 ビットの書き込みバッファ ---0 0000 ---0 000018Bh INTCON GIE PEIE T0IE INTE IOCE T0IF INTF IOCF (2) 0000 000x 0000 000u18Ch PORTICD (3)

インサーキット デバッグ ポートレジスタ xxx --xx uuuu --uu18Dh TRISICD (3)

インサーキット デバッグ TRIS レジスタ 1111 0011 1111 001118Eh ICKBUG (3)

インサーキット デバッグレジスタ 0000 0000 000u uuuu18Fh BIGBUG (3)

インサーキット デバッグ ブレークポイント レジスタ 0000 0000 uuuu uuuu190h PMCON1 — CALSEL — — — WREN WR RD -0-- -000 -0-- -000191h PMCON2 プログラムメモリ制御レジスタ 2( 物理レジスタではない ) ---- ---- ---- ----192h PMADRL PMADRL7 PMADRL6 PMADRL5 PMADRL4 PMADRL3 PMADRL2 PMADRL1 PMADRL0 0000 0000 0000 0000193h PMADRH — — — — PMADRH3 PMADRH2 PMADRH1 PMADRH0 ---- 0000 ---- 0000194h PMDATL PMDATL7 PMDATL6 PMDATL5 PMDATL4 PMDATL3 PMDATL2 PMDATL1 PMDATL0 0000 0000 0000 0000195h PMDATH — — PMDATH5 PMDATH4 PMDATH3 PMDATH2 PMDATH1 PMDATH0 --00 0000 --00 0000196h DSTCAL — — — DSTCAL4 DSTCAL3 DSTCAL2 DSTCAL1 DSTCAL0 ---x xxxx ---u uuuu197h CGMVGMCAL CGMCAL3 CGMCAL2 CGMCAL1 CGMCAL0 VGMCAL3 VGMCAL2 VGMCAL1 VGMCAL0 xxxx xxxx uuuu uuuu198h OSCCAL — FCALT6 FCALT5 FCALT4 FCALT3 FCALT2 FCALT1 FCALT1 -xxx xxxx -uuu uuuu199h DCSCAL — DCSCAL6 DCSCAL5 DCSCAL4 DCSCAL3 DCSCAL2 DCSCAL1 DCSCAL0 -xxx xxxx -uuu uuuu19Ah TTACAL — — — — TTA3 TTA2 TTA1 TTA0 ---- xxxx ---- uuuu19Bh BGRCAL — — — BGRT4 BGRT3 BGRT2 BGRT1 BGRT0 ---x xxxx ---u uuuu19Ch CEAOFFCAL — CEAOFFCAL6 CEAOFFCAL5 CEAOFFCAL4 CEAOFFCAL3 CEAOFFCAL2 CEAOFFCAL1 CEAOFFCAL0 -xxx xxxx ---u uuuu19Dh AVDDCAL — — — — AVDDCAL3 AVDDCAL2 AVDDCAL1 AVDDCAL0 ---- xxxx ---- uuuu19Eh A2GCAL — — — — A2GCAL3 A2GCAL2 A2GCAL1 A2GCAL0 ---- xxxx ---- uuuu19Fh OVRSPCAL — — — OVRSPCAL4 OVRSPCAL3 OVRSPCAL2 OVRSPCAL1 OVRSPCAL0 ---x xxxx ---u uuuu

Legend: — = 未実装、「0」として読み出し、u = 変化なし、x = 未知、q = 条件による、網掛け = 未実装

Note 1: パワーアップ以外のリセットには、通常動作中の MCLR リセットやウォッチドッグ タイマリセットがあります。

2: MCLR および WDT リセットはデータラッチが保持している値には影響を与えません。IOCF ビットはリセットでクリアされますが、不一致が検出されると再度セットされます。

3: DBGEN = 0かつ ICKBUG<INBUG> = 1の場合のみアクセスできます。

Page 78: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.78 2017 Microchip Technology Inc.

10.3.1 OPTION_REG レジスタ

OPTION_REG レジスタは、以下を設定する各種制御ビットを含む読み書き可能なレジスタです。

• Timer0/WDT プリスケーラ

• 外部 GPA2/INT 割り込み

• Timer0

• PORTGPA と PORTGPB の弱プルアップ

Note: Timer0 に 1:1 のプリスケーラを割り当てるには、OPTION_REG レジスタの PSAビットを「1」にセットして、WDT にプリスケーラを割り当てます。セクション21.1.3「ソフトウェアでプログラム可能なプリスケーラ」を参照してください。

レジスタ 10-2: OPTION_REG: OPTION レジスタ

R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1

RAPU INTEDG T0CS T0SE PSA PS2 PS1 PS0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 x = ビットは未知 「0」 = ビットはクリア

「1」 = ビットはセット

bit 7 RAPU: ポート GPx プルアップ イネーブルビット (1)

1 = ポート GPx のプルアップを無効にする0 = ポート GPx のプルアップを有効にする

bit 6 INTEDG: 割り込みエッジ選択ビット

0 = INT ピンの立ち上がりエッジで割り込み1 = INT ピンの立ち下がりエッジで割り込み

bit 5 T0CS: TMR0 クロック源選択ビット

1 = T0CKI ピンの遷移0 = 内部命令サイクルクロック

bit 4 T0SE: TMR0 信号源エッジ選択ビット

1 = T0CKI ピンの High から Low への遷移時にインクリメントする0 = T0CKI ピンの Low から High への遷移時にインクリメントする

bit 3 PSA: プリスケーラ割り当てビット

1 = プリスケーラを WDT に割り当てる0 = プリスケーラを Timer0 モジュールに割り当てる

bit 2-0 PS<2:0>: プリスケーラ比選択ビット

Note 1: 個々の WPUx ビットも有効にする必要があります。

ビット値 TMR0 比 WDT 比

000 1:2 1:1

001 1:4 1:2

010 1:8 1:4

011 1:16 1:8

100 1:32 1:16

101 1:64 1:32

110 1:128 1:64

111 1:256 1:128

Page 79: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.79

MCP19124/5

10.4 PCL と PCLATH

プログラム カウンタ (PC) は 13 ビット幅です。プログラム カウンタの下位バイトには、読み書き可能なレジスタである PCL レジスタの値が格納されます。上位バイト (PC<12:8>) には PCLATH の値が格納され、これらは直接読み書きできません。何らかのリセットが発生すると、PC はクリアされます。図 10-3 に、2 通りの PC 書き込み動作を示します。上の例は、PCL への書き込みを実行した場合のPCへの書き込み動作です(PCLATH <4:0> PCH)。図 10-3 の下の例は、CALLまたはGOTO命令を実行した場合のPCへの書き込み動作です (PCLATH<4:3> PCH)。

図 10-3: 各種状況におけるプログラム カウンタ(PC) 書き込み動作

10.4.1 PCL レジスタの書き換え

PCL レジスタを格納先とする命令を実行すると、同時にプログラム カウンタ PC<12:8> ビット (PCH) がPCLATH レジスタの内容で置き換えられます。このため、所定の上位 5 ビットを PCLATH レジスタに書き込む事で、プログラム カウンタの内容全体を変更できます。下位 8 ビットを PCL レジスタに書き込むと、プログラム カウンタの 13 ビット全てが PCLATH レジスタに格納された値と PCL レジスタに書き込む値に変更されます。

10.4.2 計算型 GOTO計算型 GOTOは、プログラム カウンタにオフセットを加算する事で実行されます (ADDWF PCL)。PCL レジスタを変更してルックアップ テーブルまたはプログラム分岐テーブルにジャンプする ( 計算型 GOTO) 場合、注意が必要です。PCLATH にテーブルの開始アドレスを設定する場合を考えると、テーブル長が 255 命令を超えるか、メモリアドレスの下位 8 ビットがテーブルの途中で 0xFFh から 0X00h にロールオーバーする場合、テーブルの先頭とテーブル内の目標位置の間でアドレスロールオーバーが発生するたびにPCLATHをインクリメントする必要があります。

詳細はアプリケーション ノート AN556『Implementinga Table Read』(DS00000556) を参照してください。

10.4.3 計算型関数呼び出し

計算型の関数 CALLを使うと、関数テーブルを保守し、ステートマシンまたはルックアップ テーブルを実現できます。計算型の関数 CALL を使ってテーブル読み出しを実行する場合、PCL のメモリ境界 ( 各 256 バイトブロック )を越えたテーブル位置へのアクセスには注意が必要です。

CALL命令を使う場合、PCH<2:0> と PCL レジスタには CALL 命令のオペランドが読み込まれます。PCH<4:3> には PCLATH<4:3> が書き込まれます。

10.4.4 スタック

MCP19124/5 は 8 レベル x13 ビット幅のハードウェアスタックを搭載しています ( 図 10-1 参照 )。スタック空間は、プログラム空間とデータ空間のどちらにも属しません。また、スタックポインタは読み書き不可です。CALL 命令が実行された場合、または割り込みによって分岐が発生した場合、PCの値がスタックにプッシュされます。RETURN、RETLW、RETFIE命令のいずれかが実行されると、スタックから値がポップされます。PCLATH はプッシュまたはポップの影響を受けません。

スタックはリングバッファとして機能します。つまり、スタックが 8 回プッシュされると、9 回目にプッシュされた値は、1 回目のプッシュで格納された値を上書きします。10 回目のプッシュでは 2 回目のプッシュ値が上書きされます ( 以降同様 )。

10.5 間接アドレス指定、INDF およびFSR レジスタ

INDF レジスタは物理レジスタではありません。INDFレジスタのアドレスを指定すると、間接アドレス指定が実行されます。

間接アドレス指定は INDFレジスタによって可能です。INDF レジスタを使う全ての命令は、実際には FSR( ファイル選択レジスタ ) が指すデータにアクセスします。INDF 自体を間接読み出しした場合、00h が返されます。INDF レジスタに直接書き込んでも書き込み動作は発生しません ( ただし、ステータスビットが変化する場合がある )。図 10-4 に示すように、8 ビットの FSR と STATUS レジスタの IRP ビットを連結する事で、実質 9 ビットのアドレスが得られます。

例 10-3 に、間接アドレス指定を用いて RAM 位置の40h~7Fhをクリアする簡単なプログラムを示します。

PC

12 8 7 0

5PCLATH<4:0>

PCLATH

Instruction with

ALU Result

GOTO, CALL

OPCODE <10:0>

8

PC

12 11 10 0

11PCLATH<4:3>

PCH PCL

8 7

2

PCLATH

PCH PCL

Destination

Note 1: スタック オーバーフローまたはスタックアンダーフロー条件を示すステータスビットは存在しません。

2: PUSHまたはPOPと呼ばれる命令 /ニーモニックはありません。これらは、CALL、RETURN、RETLW、RETFIE命令の実行時、または割り込みアドレスへのベクタ処理時に発生する動作を指しています。

Page 80: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.80 2017 Microchip Technology Inc.

例 10-3: 間接アドレス指定

図 10-4: 直接 / 間接アドレス指定

MOVLW 0x40 ;initialize pointerMOVWF FSR ;to RAM

NEXT CLRF INDF ;clear INDF registerINCF FSR ;inc pointerBTFSS FSR,7 ;all done?GOTO NEXT ;no clear next

CONTINUE ;yes continue

DataMemory

Indirect AddressingDirect Addressing

Bank Select Location Select

RP1 RP0 6 0From Opcode IRP File Select Register7 0

Bank Select Location Select

00 01 10 11180h

1FFh

00h

7Fh

Bank 0 Bank 1 Bank 2 Bank 3

メモリマップの詳細は図 10-2 を参照してください。

Page 81: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.81

MCP19124/5

11.0 デバイス コンフィグレーション

デバイス コンフィグレーションは、コンフィグレーション ワード、コード保護、デバイス ID から構成されます。

11.1 コンフィグレーション ワード

複数のコンフィグレーション ワードビットによって、各種タイマの有効化とメモリ保護オプションの選択ができます。これらはコンフィグレーション ワード(2007h) として実装されています。

Note: コンフィグレーション ワードの DBGENビットは、デバッガやプログラマ等のデバイス開発ツールで自動的に管理されます。デバイスの通常動作中は、このビットを「1」に保持する必要があります。デバッグは MCP19125 でのみ可能です。

レジスタ 11-1: CONFIG: コンフィグレーション ワード

R/P-1 U-1 R/P-1 R/P-1 U-1 R/P-1

DBGEN — WRT1 WRT0 — BOREN

bit 13 bit 8

U-1 R/P-1 R/P-1 R/P-1 R/P-1 U-1 U-1 U-1

— CP MCLRE PWRTE WDTE — — —

bit 7 bit 0

Legend:

R = 読み出し可能ビット P = プログラム可能ビット U = 未実装ビット、「1」として読み出し

-n = POR 時の値 1 = ビットはセット 0 = ビットはクリア x = ビットは未知

bit 13 DBGEN: ICD デバッグビット

1 = ICD デバッグモードを無効にする

0 = ICD デバッグモードを有効にする

bit 12 未実装 :「1」として読み出し

bit 11-10 WRT<1:0>: フラッシュ プログラムメモリ自己書き込みイネーブルビット

11 = 書き込み保護を OFF にする

10 = 000h ~ 3FFh を書き込み保護し、400h ~ FFFh を PMCON1 制御で変更可能にする

01 = 000h ~ 7FFh を書き込み保護し、800h ~ FFFh を PMCON1 制御で変更可能にする

00 = 000h ~ FFFh を書き込み保護し、全プログラムメモリを書き込み保護する

bit 9 未実装 :「1」として読み出し

bit 8 BOREN: ブラウンアウト リセット イネーブルビット

1 = BOR をスリープ中は無効、動作中は有効にする

0 = BOR を無効にする

bit 7 未実装 :「1」として読み出し

bit 6 CP: コード保護

1 = プログラムメモリのコード保護を無効にする

0 = プログラムメモリの外部からの読み出しおよび書き込み保護を有効にする

bit 5 MCLRE: MCLR ピン機能選択

1 = MCLR ピンに MCLR 機能を割り当て、内部弱プルアップを有効にする

0 = MCLR ピンに代替機能を割り当て、MCLR 機能は内部で無効にする

bit 4 PWRTE: パワーアップ タイマ イネーブルビット (1)

1 = PWRT を無効にする

0 = PWRT を有効にする

bit 3 WDTE: ウォッチドッグ タイマ イネーブルビット

1 = WDT を有効にする

0 = WDT を無効にする

bit 2-0 未実装 :「1」として読み出し

Note 1: ビットは予約済みでありユーザは制御できません。

Page 82: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.82 2017 Microchip Technology Inc.

11.2 コード保護

コード保護を使うと、不正なアクセスからデバイスを保護できます。プログラムメモリへの内部アクセスは、コード保護のいかなる設定の影響も受けません。

11.2.1 プログラムメモリ保護

コンフィグレーション ワードの CP ビットによって、

プログラムメモリ空間全体が外部の読み書きから保護されます。CP = 0の場合、プログラムメモリに対する

外部の読み書きが禁止され、読み出し動作には全て「0」が返されます。保護ビットの設定にかかわらず、

CPUは常にプログラムメモリを読み出す事ができます。

プログラムメモリへの書き込みの可否は、書き込み保護の設定で決まります。詳細はセクション 11.3「書き込

み保護」を参照してください。

11.3 書き込み保護

書き込み保護を設定すると、意図しない自己書き込みからデバイスを保護できます。ブートローダ ソフトウェア等のアプリケーションを保護しながら、プログラムメモリの他の部分に対する変更を許可できます。

コンフィグレーション ワードの WRT<1:0> ビットによって、保護するプログラムメモリ ブロックのサイズを定義します。

11.4 ID ロケーション

4 つのメモリアドレス (2000h ~ 2003h) が、ユーザがチェックサムまたはその他のコード識別番号を格納できる ID 位置として指定されています。通常動作中はこれらの位置にアクセスできませんが、プログラム /ベリファイモードでは読み書き可能です。MPLAB 統合開発環境 (IDE) では、ID ロケーションの下位 7 ビットだけが報告されます。

Page 83: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.83

MCP19124/5

12.0 リセット

リセットロジックは、MCP19124/5 を既知の状態に移行させるために使います。リセット要因はデバイスのステータスビットで判断できます。

MCP19124/5 は以下の方法でリセットできます。

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

• 過熱リセット (OT)

• MCLR リセット

• WDT リセット

• ブラウンアウト リセット (BOR)

VDD を安定させるために、必要に応じて POR イベント後のリセット時間を延長するパワーアップ タイマを有効にする事もできます。

一部のレジスタはいかなるリセット条件にも影響されません (POR 時の状態は未知、POR 以外の全てのリセットでは状態が変化しない )。その他のレジスタのほとんどは以下の場合に「リセット状態」へと移行します。

• パワーオン リセット

• MCLR リセット

• スリープ中の MCLR リセット

• WDT リセット

• ブラウンアウト リセット

WDT( ウォッチドッグ タイマ ) 復帰と WDT リセットではレジスタのリセット方法が異なります。復帰は通常動作の再開とみなされるためです。TO ビットとPD ビットは、表 12-1 に示す通り、各種リセット状況に応じて個別にセット / クリアされます。これらのビットを使うと、ソフトウェアでリセットの種類を判定できます。全レジスタのリセット状態に関する詳細は表 12-2 を参照してください。

図 12-1 に、内蔵リセット回路の概略ブロック図を示します。

MCLR リセットパスにはノイズフィルタがあり、小さなパルスは無視されます。パルス幅の仕様はセクション5.0「デジタル電気的特性」を参照してください。

図 12-1: 内蔵リセット回路の概略ブロック図

WDT

Module

VDD Rise

Detect

Brown-Out

Reset

Sleep

BOREN

MCLR/TEST_EN

pin

VDD

External

Reset

S

R Q

On-Chip

RC OSC 11-bit Ripple Counter

PWRT

Enable PWRT

Chip_Reset

Power-On Reset

Time-Out

Reset

Brown-Out

Reset

表 12-1: 各種状態におけるタイムアウト

パワーアップ スリープからの復帰PWRTE = 0 PWRTE = 1

TPWRT — —

Page 84: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.84 2017 Microchip Technology Inc.

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

VDD が適切な動作に十分な電圧に達するまで、内蔵POR回路はチップをリセット状態に保持します。PORは抵抗を介して MCLR ピンを VDD に接続するだけで利用できます。このため、外付けの RC 部品を使わずにパワーオン リセット回路を構築できます。

デバイスがリセット条件を終了して通常動作を開始する際、デバイスの動作パラメータ ( 電圧、周波数、温度等 ) は正常動作の要件を満たす必要があります。これらの条件を満たさない場合、動作条件が満たされるまでデバイスをリセット状態に維持する必要があります。

12.2 MCLR

MCP19124/5のMCLRリセット経路にはノイズフィルタがあります。このフィルタによって、小さなパルスは無視されます。

WDT リセットは MCLR ピンを Low に駆動しない事に注意が必要です。

仕様を超える電圧を MCLR ピンに印加すると、MCLRリセットが発生すると同時に、ESD イベント中にデバイス仕様を超える過剰な電流が流れる可能性があります。そのため、Microchip 社は現在 MCLR ピンの VDD直結を推奨していません。図 12-2 に示すような抵抗 -コンデンサ(RC)ネットワークの使用を推奨しています。

内部 MCLR のオプションは、CONFIG レジスタのMCLRE ビットをクリアすると有効になります。MCLRE = 0の場合、チップに対するリセット信号は内部で生成されます。MCLRE = 1 の場合、MCLR ピンが外部リセット入力として機能します。このモードでは、MCLR ピンに VDD への弱プルアップが適用されます。

図 12-2: MCLR の推奨回路

表 12-2: 各 STATUS/PCON ビットとその意味

POR BOR TO PD 条件

0 x 1 1 パワーオン リセット

u 0 1 1 ブラウンアウト リセット

u u 0 u WDT リセット

u u 0 0 WDT 復帰

u u u u 通常動作中の MCLR リセット

u u 1 0 スリープ中の MCLR リセット

Legend: u = 不変、x = 未知

VDD

MCLR

R11 k (or greater)

C10.1 µF(optional, not critical)

R2

100(needed with SW1

(optional)

MC

P1

9124/5

capacitor)

Page 85: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.85

MCP19124/5

12.3 ブラウンアウト リセット (BOR)

CONFIG レジスタの bit 8 の BOREN は、CONFIGレジスタの定義に従い BOR モードを有効または無効にします。VDD が 100 µs よりも長い期間 VBOR を下回ると、ブラウンアウトが発生します。全てのリセット( 例 : パワーオン、ブラウンアウト、ウォッチドッグ ) で、VDD が VBOR を上回るまで、デバイスはリセット状態のままです ( 図 12-3 参照 )。パワーアップ タイマが有効な場合、リセットによってパワーアップ タイマが起動し、さらに 64 ms の間デバイスをリセット状態に保持します。電源投入中は、VDD が VBOR を上回るまで、BORコンフィグレーション ビットを有効にしてMCUをリセット状態 (OSC は OFF、コード実行なし ) に保つ事を推奨します。PWRTEビットをクリアする事で、64 ms の遅延を追加する事もできます。この時点では、VDD 電圧レベルは MCU 機能のみを動作させる程度の高さにとどまっています。その他のデバイス機能は動作できません。これは、VIN の値 ( 通常 VDD + VDROPOUT)とは無関係です。BOR を有効にした状態でパワー

ダウン中、VDD が VBOR しきい値を下回ると、MCU動作はリセット状態に保たれます。BOR を無効にしている場合、またはスリープモードで動作中、VDD がVPOR しきい値を下回ると、POR はデバイスをリセット状態に保ちます。

図 12-3: ブラウンアウト挙動

Note: パワーアップ タイマを有効にするには、

CONFIGレジスタのPWRTEビットで設定

します。パワーアップ タイマの動作中に

VDD が VBOR を下回ると、デバイスは

再びブラウンアウト リセット状態に戻り、

パワーアップ タイマは再度初期化されます。

次に VDD が VBOR を上回った時点から

パワーアップ タイマが 64 ms のリセット

を実行します。

VDD

InternalReset

VDD

VDD

InternalReset

InternalReset

VBOR

VBOR

VBOR

64 ms(1)

64 ms (1)

64 ms (1)

< 64 ms

Note 1: 64 ms の遅延は、PWRTE ビットが「0」にプログラムされている場合のみ生じます。

Page 86: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.86 2017 Microchip Technology Inc.

12.4 パワーアップ タイマ (PWRT)

パワーアップ タイマは、電源投入時にのみPORリセットから 64 ms( 公称 ) 固定のタイムアウトを提供します。パワーアップ タイマは内部 RC オシレータによって動作します。PWRT がアクティブである限り、チップはリセット状態に維持されます。PWRT 遅延によってVDD は許容レベルまで立ち上がる事ができます。CONFIG レジスタの PWRTE ビットによってパワーアップ タイマを無効 ( セット時 ) または有効 ( クリア時またはプログラム時 ) に設定できます。

以下の要因によって、パワーアップ タイマの遅延はチップごとにばらつきがあります。

• VDD の変動

• 温度の変動

• プロセスの変更

必要に応じてパワーアップ タイマを使い、PORイベント後のデバイス実行を遅延させる事ができます。このタイマは通常、デバイスが動作を開始する前に VDD を安定化させるために使います。

パワーアップ タイマは CONFIG レジスタの PWRTEビットで制御します。

12.5 ウォッチドッグ タイマ (WDT)リセット

ウォッチドッグ タイマは、タイムアウト期間内にファームウェアが CLRWDT 命令を発行しなかった場合、リセットを生成します。STATUS レジスタの TO ビットと PD ビットの変化が WDT リセットを示します。詳細はセクション 15.0「ウォッチドッグ タイマ(WDT)」を参照してください。

12.6 起動シーケンス

POR の解除後にデバイスが実行を開始するには、以下の条件が満たされる必要があります。

• パワーアップ タイマのカウント完了(有効な場合)

• オシレータ起動タイマのカウント完了

• MCLR の解除 ( 有効な場合 )

タイムアウトの合計時間は、PWRTE ビットの状態によって異なります。例えば、PWRTE ビットがクリア(PWRT無効 )の場合、タイムアウトは一切発生しません。図 12-4、12-5、12-6 に、タイムアウト シーケンスを示します。

タイムアウトはPORパルスを起点にカウントするため、MCLRを長時間Lowに保持すると、PWRTが先にタイムアウトします。その後 MCLR を High にすると、ただちに実行が開始します ( 図 12-5 参照 )。この機能は、テスト目的や並列動作している複数の MCP19124/5 の同期に使うと便利です。

12.6.1 電源制御 (PCON) レジスタ

電源制御 (PCON) レジスタ ( アドレス 8Eh) には、直近のリセットタイプを示す 2 つのステータスビットがあります。

図 12-4: パワーアップ後のタイムアウト シーケンス (MCLR を遅延 ): 例 1

Note: MCLR ピンに AGND を下回る電圧スパイクが印加されて 80 mA を超える電流が生じると、ラッチアップが発生する場合があります。このため、MCLR ピンに「Low」レベルを印加する場合、AGND に直接プルダウンせず、50 ~ 100 の直列抵抗を挿入します。

TPWRT

TIOSCST

VDD

MCLR

Internal POR

PWRT Time-Out

OST Time-Out

Internal Reset

Page 87: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.87

MCP19124/5

図 12-5: パワーアップ後のタイムアウト シーケンス (MCLR を遅延 ): 例 2

図 12-6: パワーアップ後のタイムアウト シーケンス (MCLR と VDD 同期 )

12.7 リセット原因の特定

リセットが発生すると STATUS および PCON レジスタのビット値が変化します。これらのビットを観察するとリセットの原因が分かります。表 12-3 および 12-4にこれらのレジスタのリセット条件を示します。

VDD

MCLR

Internal POR

PWRT Time-Out

OST Time-Out

Internal Reset

TPWRT

TIOSCST

VDD

MCLR

Internal POR

PWRT Time-Out

OST Time-Out

Internal Reset

TPWRT

TIOSCST

表 12-3: リセット ステータスビットとその意味

POR BOR TO PD 条件

0 x 1 1 パワーオン リセット

u 0 1 1 ブラウンアウト リセット

u u 0 u WDT リセット

u u 0 0 スリープからの WDT 復帰

u u 1 0 スリープからの割り込み復帰

u u u u 通常動作中のMCLRリセット

u u 1 0 スリープ中のMCLRリセット

0 u 0 x 禁止、TO は POR でセット

0 u x 0 禁止、PD は POR でセット

Page 88: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.88 2017 Microchip Technology Inc.

表 12-4: 特殊レジスタのリセット条件 (Note 1)

条件プログラムカウンタ

STATUSレジスタ

PCONレジスタ

パワーオン リセット 0000h 0001 1xxx ---- --0uブラウンアウト リセット 0000 0001 1xxx ---- --u0通常動作中の MCLR リセット 0000h 000u uuuu ---- --uuスリープ中の MCLR リセット 0000h 0001 0uuu ---- --uuWDT リセット 0000h 0000 uuuu ---- --uuスリープからの WDT 復帰 PC + 1 uuu0 0uuu ---- --uuスリープからの割り込み復帰 PC + 1 (2) uuu1 0uuu ---- --uuLegend: u = 不変、x = 未知、- = 未実装ビット、「0」として読み出し

Note 1: 未実装のステータスビットは「0」として読み出されます。

2: 割り込みによる復帰で、かつ GIE( グローバル割り込みイネーブルビット ) がセットされている場合、リターンアドレス値がスタックにプッシュされ、PC+1 の実行後に PC に割り込みベクタ (0004h) が書き込まれます。

Page 89: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.89

MCP19124/5

12.8 電源制御 (PCON) レジスタ

電源制御 (PCON) レジスタには、以下のリセットの種類を見分けるためのフラグビットがあります。

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

• ブラウンアウト リセット (BOR)

レジスタ 12-1 に、PCON レジスタの各ビットを示します。

レジスタ 12-1: PCON: 電源制御レジスタ

R/W-0 U-0 U-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0

ADC_REFR — — — VDDFLAG VDDOK POR BOR

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 7 ADC_REFR: ADC参照電圧がADCに印加されているかどうかを示すVDD > AVDDステータスビット1 = VDD は AVDD より大きく、ADC 参照電圧が ADC に印加されている0 = VDD は AVDD より大きくなく、ADC 参照電圧が ADC に印加されていない

bit 6-4 未実装 :「0」として読み出し

bit 3 VDDFLAG: VDDOK 履歴ステータスビット1 = VDD LDOは調整レンジ外に低下した事はない(このビットが 後にセットされてからVDDOKは

Low になった事はない )0 = このビットが 後にセットされてから VDD LDO は調整レンジ外に低下した事がある

(VDDOK = 1にするには、ファームウェアで設定する必要がある )

bit 2 VDDOK: VDD ステータスビット1 = VDD は調整されている0 = VDD は調整されていない

bit 1 POR: パワーオン リセット ステータスビット

1 = パワーオン リセットは発生していない0 = パワーオン リセットが発生した ( パワーオン リセット発生後はソフトウェアでセットする必要

がある )

bit 0 BOR: ブラウンアウト リセットビット1 = ブラウンアウト リセットは発生していない 0 = ブラウンアウト リセットが発生した ( ブラウンアウト リセット発生後はソフトウェアでセット

する必要がある )

表 12-5: リセット関連レジスタのまとめ (Note 1)

レジスタ名

bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0レジスタ内容記載ページ

PCON — — — — — — POR BOR 89

STATUS IPR RP1 RP0 TO PD Z DC C 71

Legend: — = 未実装ビット、「0」として読み出し、網掛け部分はリセットでは使いません。

Note 1: パワーアップ以外のリセットには、通常動作中の MCLR リセットやウォッチドッグ タイマリセットがあります。

Page 90: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.90 2017 Microchip Technology Inc.

NOTE:

Page 91: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.91

MCP19124/5

13.0 割り込み

MCP19124/5 には、以下の複数の割り込み要因があります。

• 外部割り込み (INT ピン )

• 状態変化 (IOC) 割り込み

• Timer0 オーバーフロー割り込み

• Timer1 オーバーフロー割り込み

• Timer2 一致割り込み

• ADC 割り込み

• システム入力低電圧エラー

• システム入力過電圧エラー

• SSP

• BCL

• ゼロ電流検出

• ゲート駆動 UVLO

• キャプチャ 1/ コンペア 1

• キャプチャ 2/ コンペア 2

• 過熱

割り込み制御 (INTCON)レジスタと周辺モジュール割り込み要求 (PIRx) レジスタは、個々の割り込み要求をフラグビットに記録します。INTCON レジスタには、個別の割り込みイネーブルビットとグローバル割り込みイネーブルビットも含まれます。

INTCON レジスタの GIE( グローバル割り込みイネーブルビット ) は、セット時にはマスクされていない全ての割り込みを有効にし、クリア時には全ての割り込みを無効にします。各割り込みは、INTCON レジスタとPIEx レジスタの対応するイネーブルビットで個別に無効にできます。GIE はリセット時にクリアされます。

割り込み処理時には以下の動作が自動的に実行されます。

• GIE をクリアして以降の割り込みを無効にする

• リターンアドレスをスタックにプッシュする

• PC に 0004h を読み込む

割り込みサービスルーチン (ISR) のファームウェアでは、割り込みフラグビットをポーリングして割り込み要因を判断します。同じ割り込み動作の繰り返しを避けるため、ISR から抜ける前に割り込みフラグビットをクリアする必要があります。ISR 実行中に発生する割り込みは全て割り込みフラグで記録されますが、GIE ビットがクリアされているためプロセッサがその割り込みベクタにリダイレクトする事はありません。

RETFIE命令は、割り込み前に実行していたアドレスをスタックからポップし、シャドウレジスタに保存されていたコンテクストを復元し、GIE ビットをセットして ISR を終了します。

割り込み動作の詳細は各周辺モジュールの章を参照してください。

13.1 割り込みレイテンシ

INTピンやPORTGPxの状態変化割り込み等の外部割り込みイベントによる割り込みのレイテンシは3~4命令サイクルです。正確なレイテンシは割り込みイベントが発生した時点によって異なります ( 図 13-2 参照 )。1 サイクル命令と 2 サイクル命令のレイテンシはどちらも同じです。

13.2 GPA2/INT 割り込み

GPA2/INT ピンの外部割り込みはエッジトリガ方式です。OPTION_REG レジスタの INTEDG ビットがセットされている場合立ち上がりエッジで、クリアされている場合立ち下がりエッジで割り込みが発生します。GPA2/INT ピンで有効なエッジが発生すると、INTCON レジスタの INTF ビットがセットされます。INTCONレジスタの INTE制御ビットをクリアすると、この割り込みを無効にできます。INTF ビットは、再度この割り込みを有効にする前に、ソフトウェアの割り込みサービスルーチン内でクリアしておく必要があります。スリープに移行する前に INTE ビットをセットしておけば、GPA2/INT 割り込みによってプロセッサをスリープから復帰させる事ができます。スリープの詳細はセクション 14.0「パワーダウン モード ( スリープ )」を参照してください。スリープから GPA2/INT 割り込みによって復帰する場合のタイミングについては、セクション 14.1「スリープからの復帰」を参照してください。

Note 1: 各割り込みフラグビットは、対応するマスクビットまたはGIEビットの状態にかかわらずセットされます。

2: GIE ビットをクリアする命令が実行された場合、次のサイクルで実行するため保留されていた割り込みは全て無視されます。無視された割り込みは、GIE ビットが再度セットされた時に処理するために保留されたままです。

Note: アナログ チャンネルをデジタル入力として設定するために ANSEL レジスタを初期化する必要があります。アナログ入力として設定されたピンは「0」を読み出し、割り込みを生成できません。

Page 92: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.92 2017 Microchip Technology Inc.

図 13-1: 割り込みロジック

図 13-2: INT ピン割り込みのタイミング

TMR1IFTMR1IE

SSPIFSSPIE

IOCFIOCEINTFINTE

GIE

PEIE

Wake-Up (if in Sleep mode)

Interrupt to CPU

PEIF

ADIFADIE

CDSIFCDSIE

OTIFOTIE

OVIFOVIE

DRUVIFDRUVIE

BCLIFBCLIE

TMR2FTMR2E

T0IFT0IE

Plx2

UVLOIFUVLOIE

OVLOIFOVLOIE

Plx1

CC2IFCC2IECC1IFCC1IE

INTCON

Q2Q1 Q3 Q4 Q2Q1 Q3 Q4 Q2Q1 Q3 Q4 Q2Q1 Q3 Q4 Q2Q1 Q3 Q4

CLKIN

INT pin

INTF flag(INTCON reg.)

GIE bit(INTCON reg.)

INSTRUCTION FLOWPC

InstructionFetched

InstructionExecuted

PC PC + 1 PC + 1 0004h 0005h

Inst (0004h) Inst (0005h)

Dummy Cycle

Inst (PC) Inst (PC + 1)

Inst (PC – 1) Inst (0004h)Dummy CycleInst (PC)

Note 1: CLKOUT は INTOSC および RC オシレータモードでのみ使えます。

2: INT の 小パルス幅は、セクション 5.0「デジタル電気的特性」の AC 仕様を参照してください。

3: INTF フラグは、ここでサンプリングされます (Q1 ごと )。

4: INTF は、Q4 ~ Q1 サイクルの間にいつでもセットできます。

5: 非同期割り込みのレイテンシ = 3~4 TCY、同期割り込みのレイテンシ = 3 TCY (TCY = 命令のサイクル時間 ) です。命令 (PC) が 1 サイクルと 2 サイクルのどちらでも、レイテンシは同じです。

CLKOUT (1)

(2)

(3)(4)

(3)

Interrupt Latency (5)

Page 93: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.93

MCP19124/5

13.3 割り込み制御レジスタ

13.3.1 INTCON レジスタ

INTCON レジスタは読み書き可能なレジスタであり、TMR0 レジスタ オーバーフロー割り込み、状態変化割り込み、外部 INT ピン割り込みに関する各種イネーブル /フラグビットが含まれます。

Note: 割り込み条件が発生すると、対応するイネーブルビットまたはINTCONレジスタのグローバル割り込みイネーブルビット(GIE) の状態に関係なく割り込みフラグビットがセットされます。割り込みを有効にする前に、対応する割り込みフラグビットをユーザ ソフトウェアで確実にクリアしておく必要があります。

レジスタ 13-1: INTCON: 割り込み制御レジスタ

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-x

GIE PEIE T0IE INTE IOCE T0IF INTF IOCF

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 7 GIE: グローバル割り込みイネーブルビット

1 = マスクされていない全ての割り込みを有効にする0 = 全ての割り込みを無効にする

bit 6 PEIE: 周辺モジュール割り込みイネーブルビット

1 = マスクされていない全ての周辺モジュール割り込みを有効にする0 = 全ての周辺モジュール割り込みを無効にする

bit 5 T0IE: TMR0 オーバーフロー割り込みイネーブルビット

1 = TMR0 割り込みを有効にする0 = TMR0 割り込みを無効にする

bit 4 INTE: INT 外部割り込みイネーブルビット

1 = INT 外部割り込みを有効にする0 = INT 外部割り込みを無効にする

bit 3 IOCE: 状態変化割り込みイネーブルビット (1)

1 = 状態変化割り込みを有効にする0 = 状態変化割り込みを無効にする

bit 2 T0IF: TMR0 オーバーフロー割り込みフラグビット (2)

1 = TMR0 レジスタがオーバーフローした ( ソフトウェアによるクリアが必要 )0 = TMR0 レジスタはオーバーフローしていない

bit 1 INTF: 外部割り込みフラグビット

1 = 外部割り込みが発生した ( ソフトウェアによるクリアが必要 )0 = 外部割り込みは発生していない

bit 0 IOCF: 状態変化割り込みフラグビット

1 = 状態変化割り込みピンのうち少なくとも 1 本の状態が変化した0 = 状態変化割り込みピンの状態は変化していない

Note 1: IOCx レジスタも有効にする必要があります。

2: TMR0 がロールオーバーすると T0IF ビットがセットされます。TMR0 はリセット時に変化しないため、T0IF ビットをクリアする前に初期化します。

Page 94: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.94 2017 Microchip Technology Inc.

13.3.1.1 PIE1 レジスタ

PIE1 レジスタは、レジスタ 13-2 に示す周辺モジュール割り込みイネーブルビットを収めています。

Note 1: 周辺モジュール割り込みを有効にするには、INTCON レジスタの PEIE ビットをセットする必要があります。

レジスタ 13-2: PIE1: 周辺モジュール割り込みイネーブル レジスタ 1

U-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

— — BCLIE SSPIE CC2IE CC1IE TMR2IE TMR1IE

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 7-6 未実装 :「0」として読み出し

bit 5 BCLIE: MSSP バスコリジョン割り込みイネーブルビット

1 = MSSP バスコリジョン割り込みを有効にする

0 = MSSP バスコリジョン割り込みを無効にする

bit 4 SSPIE: 同期シリアルポート (MSSP) 割り込みイネーブルビット

1 = MSSP 割り込みを有効にする

0 = MSSP 割り込みを無効にする

bit 3 CC2IE: キャプチャ 2/ コンペア 2 割り込みイネーブルビット

1 = キャプチャ 2/ コンペア 2 割り込みを有効にする0 = キャプチャ 2/ コンペア 2 割り込みを無効にする

bit 2 CC1IE: キャプチャ 1/ コンペア 1 割り込みイネーブルビット

1 = キャプチャ 1/ コンペア 1 割り込みを有効にする0 = キャプチャ 1/ コンペア 1 割り込みを無効にする

bit 1 TMR2IE: Timer2 割り込みイネーブル

1 = Timer2 割り込みを有効にする0 = Timer2 割り込みを無効にする

bit 0 TMR1IE: Timer1 割り込みイネーブル

1 = Timer1 割り込みを有効にする0 = Timer1 割り込みを無効にする

Page 95: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.95

MCP19124/5

13.3.1.2 PIE2 レジスタ

PIE2 レジスタは、レジスタ 13-3 に示す周辺モジュール割り込みイネーブルビットを収めています。

Note 1: 周辺モジュール割り込みを有効にするには、INTCON レジスタの PEIE ビットをセットする必要があります。

レジスタ 13-3: PIE2: 周辺モジュール割り込みイネーブル レジスタ 2

R/W-0 R/W-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

CDSIE ADIE — OTIE OVIE DRUVIE OVLOIE UVLOIE

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 7 CDSIE: ゼロ電流検出割り込みイネーブルビット

1 = DESAT 検出割り込みを有効にする0 = DESAT 検出割り込みを無効にする

bit 6 ADIE: ADC 割り込みイネーブルビット

1 = ADC 割り込みを有効にする0 = ADC 割り込みを無効にする

bit 5 未実装 :「0」として読み出し

bit 4 OTIE: 過熱割り込みイネーブルビット

1 = 過熱割り込みを有効にする0 = 過熱割り込みを無効にする

bit 3 OVIE: VOUT 過電圧割り込みイネーブルビット

1 = 過電圧割り込みを有効にする0 = 過電圧割り込みを無効にする

bit 2 DRUVIE: ゲート駆動低電圧ロックアウト割り込みイネーブルビット

1 = ゲート駆動 UVLO 割り込みを有効にする0 = ゲート駆動 UVLO 割り込みを無効にする

bit 1 OVLOIE: VIN 過電圧ロックアウト割り込みイネーブルビット

1 = OVLO 割り込みを有効にする0 = OVLO 割り込みを無効にする

bit 0 UVLOIE: VIN 低電圧ロックアウト割り込みイネーブルビット

1 = UVLO 割り込みを有効にする0 = UVLO 割り込みを無効にする

Page 96: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.96 2017 Microchip Technology Inc.

13.3.1.3 PIR1 レジスタ

PIR1 レジスタは、レジスタ 13-4 に示す周辺モジュール割り込みフラグビットを収めています。

Note 1: 割り込み条件が発生すると、対応するイネーブルビットまたはINTCONレジスタのグローバル割り込みイネーブルビット(GIE) の状態に関係なく割り込みフラグビットがセットされます。割り込みを有効にする前に、対応する割り込みフラグビットをユーザ ソフトウェアで確実にクリアしておく必要があります。

レジスタ 13-4: PIR1: 周辺モジュール割り込みフラグレジスタ 1

U-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

— — BCLIF SSPIF CC2IF CC1IF TMR2IF TMR1IF

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 7-6 未実装 :「0」として読み出し

bit 5 BCLIF: MSSP バスコリジョン割り込みフラグビット

1 = 割り込みを保留中である0 = 割り込みを保留中ではない

bit 4 SSPIF: 同期シリアルポート (MSSP) 割り込みフラグビット

1 = 割り込みを保留中である0 = 割り込みを保留中ではない

bit 3 CC2IF: キャプチャ 2/ コンペア 2 割り込みフラグビット

1 = キャプチャまたはコンペアが発生した0 = キャプチャまたはコンペアが発生していない

bit 2 CC1IF: キャプチャ 1/ コンペア 1 割り込みフラグビット

1 = キャプチャまたはコンペアが発生した0 = キャプチャまたはコンペアが発生していない

bit 1 TMR2IF: Timer2/PR2 一致割り込みフラグ

1 = Timer2 と PR2 が一致した ( ソフトウェアによるクリアが必要 )0 = Timer2 と PR2 は一致していない

bit 0 TMR1IF: Timer1 割り込みフラグ

1 = Timer1 がロールオーバーした ( ソフトウェアによるクリアが必要 )0 = Timer1 はロールオーバーしていない

Page 97: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.97

MCP19124/5

13.3.1.4 PIR2 レジスタ

PIR2 レジスタは、レジスタ 13-5 に示す周辺モジュール割り込みフラグビットを収めています。

Note 1: 割り込み条件が発生すると、対応するイネーブルビットまたはINTCONレジスタのグローバル割り込みイネーブルビット(GIE) の状態に関係なく割り込みフラグビットがセットされます。割り込みを有効にする前に、対応する割り込みフラグビットをユーザ ソフトウェアで確実にクリアしておく必要があります。

レジスタ 13-5: PIR2: 周辺モジュール割り込みフラグレジスタ 2

R/W-0 R/W-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

CDSIF ADIF — OTIF OVIF DRUVIF OVLOIF UVLOIF

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 7 CDSIF: DESAT 検出コンパレータ モジュール割り込みフラグビット

1 = 割り込みを保留中である0 = 割り込みを保留中ではない

bit 6 ADIF: ADC 割り込みフラグビット

1 = A/D 変換が完了した0 = A/D 変換は完了していない、または開始していない

bit 5 未実装 :「0」として読み出し

bit 4 OTIF: 過熱割り込みフラグビット

1 = 過熱イベントが発生した0 = 過熱イベントが発生していない

bit 3 OVIF: 過電圧割り込みフラグビット

OVINTP ビットをセットしている場合、

1 = VOUT 非過電圧から過電圧へのエッジを検出した

0 = VOUT 非過電圧から過電圧へのエッジを検出していない

OVINTN ビットをセットしている場合、

1 = VOUT 過電圧から非過電圧へのエッジを検出した

0 = VOUT 過電圧から非過電圧へのエッジを検出していない

bit 2 DRUVIF: ゲート駆動低電圧ロックアウト割り込みフラグビット

1 = ゲート駆動低電圧ロックアウトが発生した

0 = ゲート駆動低電圧ロックアウトが発生していない

bit 1 OVLOIF: VIN 過電圧ロックアウト割り込みフラグビット

OVLOINTP ビットをセットしている場合、

1 = VIN 非過電圧から VIN 過電圧へのエッジを検出した

0 = VIN 非過電圧から VIN 過電圧へのエッジを検出していない

OVLOINTN ビットをセットしている場合、

1 = VIN 過電圧から VIN 非過電圧へのエッジを検出した

0 = VIN 過電圧から VIN 非過電圧へのエッジを検出していない

Page 98: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.98 2017 Microchip Technology Inc.

13.4 割り込み処理中のコンテクスト保存

割り込みの処理中、スタックにはリターン先の PC 値だけを保存します。通常、割り込み中は重要なレジスタ( 例 : W レジスタ、STATUS レジスタ ) の内容を保存しておきます。そのためにはソフトウェアによる実装が必要です。

GPR 末尾の 16 バイトに一時保持レジスタとしてW_TEMP と STATUS_TEMP を確保します。これら 16個のメモリ位置は全てのバンクで共通のため、バンク指定は不要です。これにより、コンテクストの保存と復元が簡単にできます。例 13-1 に示すコードを使うと、以下の動作が可能です。

• W レジスタの保存

• STATUS レジスタの保存

• ISR コードの実行

• STATUS レジスタ ( バンク選択ビット ) の復元

• W レジスタの復元

bit 0 UVLOIF: VIN 低電圧ロックアウト割り込みフラグビット

UVLOINTP ビットをセットしている場合、

1 = VIN 非低電圧から VIN 低電圧へのエッジを検出した

0 = VIN 非低電圧から VIN 低電圧へのエッジを検出していない

UVLOINTN ビットをセットしている場合、

1 = VIN 低電圧エッジから VIN 非低電圧へのエッジを検出した

0 = VIN 低電圧エッジから VIN 非低電圧へのエッジを検出していない

表 13-1: 割り込み関連レジスタのまとめ

レジスタ名 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0レジスタ内容記載ページ

INTCON GIE PEIE T0IE INTE IOCE T0IF INTF IOCF 93

OPTION_REG RAPU INTEDG T0CS T0SE PSA PS2 PS1 PS0 78

PIE1 TXIE RCIE BCLIE SSPIE CC2IE CC1IE TMR2IE TMR1IE 94

PIE2 CDSIE ADIE — OTIE OVIE DRUVIE OVLOIE UVLOIE 95

PIR1 TXIF RCIF BCLIF SSPIF — — TMR2IF TMR1IF 96

PIR2 CDSIF ADIF — OTIF OVIF DRUVIF OVLOIF UVLOIF 97

Legend: — = 未実装、「0」として読み出し。網掛け部分は割り込みでは使いません。

レジスタ 13-5: PIR2: 周辺モジュール割り込みフラグレジスタ 2 ( 続き )

Note: MCP19124/5ではPCLATHを保存する必要がありません。しかし、ISR とメインコードの両方で計算型 GOTOを使っている場合、PCLATH を保存して ISR 内で復元する必要があります。

Page 99: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.99

MCP19124/5

例 13-1: ステータス レジスタと W レジスタの RAM への保存

MOVWF W_TEMP ;Copy W to TEMP registerSWAPF STATUS,W ;Swap status to be saved into W

;Swaps are used because they do not affect the status bitsMOVWF STATUS_TEMP ;Save status to bank zero STATUS_TEMP register::(ISR) ;Insert user code here:SWAPF STATUS_TEMP,W ;Swap STATUS_TEMP register into W

;(sets bank to original state)MOVWF STATUS ;Move W into STATUS registerSWAPF W_TEMP,F ;Swap W_TEMPSWAPF W_TEMP,W ;Swap W_TEMP into W

Page 100: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.100 2017 Microchip Technology Inc.

NOTE:

Page 101: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.101

MCP19124/5

14.0 パワーダウン モード ( スリープ )

SLEEP命令を実行すると、パワーダウン モードに移行します。

スリープに移行すると以下の条件が発生します。

1. WDT がクリアされる。スリープ中の動作を有効に設定している場合、値はクリアされてもカウントは継続する。

2. STATUSレジスタのPDビットがクリアされる。

3. STATUSレジスタのTOビットがセットされる。

4. CPU クロックが無効化される。

5. ADC 参照電圧を AVDD に設定している間、4 VLDO 電力供給 (AVDD) がないため ADC は動作できない(スリープ電流を 小にするため、ADC参照電圧を既定値の AVDD に設定する必要があります )。

6. I/O ポートは SLEEP 命令実行前の状態 (High、Low、ハイ インピーダンス ) を維持する。

7. WDTとBOR以外のリセットはスリープの影響を受けない。

8. スリープ中、アナログ回路の電力供給 (AVDD) は止まる。

スリープ中の周辺モジュールの動作に関する詳細は各周辺モジュールの章を参照してください。

消費電流を 小限に抑えるため、以下の条件に注意します。

• ABECON レジスタの bit 1 と bit 2 をセットする事で両方のエラーアンプを無効にする

• I/O ピンをフローティングにしない

• I/O ピンから電流をシンクする外部回路

• I/O ピンから電流をソースする内部回路

• 内部弱プルアップ回路によるピンからの電流流入

• Timer1 オシレータを使うモジュール

• ADC参照電圧を既定値条件 (AVDD)に設定する必要がある

• VDD から電力供給した場合、VDD から VDR に少量の電流が流れる ( この小さな電流をなくすには、スリープ中 VDR を VDD から切り離します。)

• ハイ インピーダンス入力の I/O ピンは、外部でVDD または GND に接続して、フローティング入力によるスイッチング電流が流れないようにする

SLEEP 命令によってアナログ回路の電力供給が遮断されます。スリープ中の消費電流をできるだけ減らし、50 µA (typ.) のシャットダウン電流を維持するため、AVDD を遮断します。スリープ中、5 V LDO (VDD) の電圧は 小で 2.9 V にまで低下します。5 V LDO (VDD)からの外部電流の消費は 1 mA 未満に制限する必要があります。スリープ中に 1 mA を超える外部電流を負荷が消費する場合、VDD 電圧が低下し POR が発生する恐れがあります。

スリープ中に POR が発生するとデバイスはスリープから復帰します。アナログ回路の有効化状態は、SLEEP命令が実行されても変化しません。

14.1 スリープからの復帰

以下のイベントのどれかによってスリープから復帰できます。

1. MCLRピンへの外部リセット入力 (有効な場合 )

2. POR リセット

3. ウォッチドッグ タイマ ( 有効な場合 )

4. 全ての外部割り込み

5. スリープ中も動作可能な周辺モジュールによる割り込み ( 詳細は各周辺モジュールの章参照 )

上記の1~2ではデバイスがリセットされます。3~5は、プログラム実行の継続とみなされます。デバイスリセットまたは復帰イベントのどちらが発生したかを判断する方法は、セクション 12.7「リセット原因の特定」を参照してください。

以下の周辺モジュール割り込みによってデバイスをスリープから復帰させる事ができます。

1. 状態変化割り込み

2. INT ピンからの外部割り込み

SLEEP命令の実行中、次の命令 (PC + 1) がプリフェッチされます。割り込みイベントでデバイスを復帰させるには、対応する割り込みイネーブルビットを有効にしておく必要があります。復帰は、GIE ビットの状態に関係なく実行されます。GIE ビットが無効の場合、デバイスは SLEEP 命令の次の命令から実行を再開します。GIE ビットが有効の場合、デバイスは SLEEP命令の次の命令を実行後、割り込みサービスルーチン (ISR) を呼び出します。SLEEP 命令直後の命令を実行しない場合、SLEEP命令の後に NOP命令を配置します。

デバイスがスリープから復帰すると、復帰要因に関係なく WDT はクリアされます。

14.1.1 割り込みによる復帰

グローバル割り込みが無効 (GIE がクリア ) で、何らかの割り込み要因の割り込みイネーブルビットと割り込みフラグビットの両方がセットされると、以下のどちらかが発生します。

• SLEEP命令の実行前に割り込みが発生した場合

- SLEEP命令が NOPとして実行される。

- WDTとWDTプリスケーラはクリアされない。

- STATUS レジスタの TO ビットはセットされない。

- STATUS レジスタの PD ビットはクリアされない。

Page 102: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.102 2017 Microchip Technology Inc.

• SLEEP 命令の実行中または実行後に割り込みが発生した場合

- SLEEP命令が 後まで実行される。

- デバイスがただちにスリープから復帰する。

- WDT と WDT プリスケーラがクリアされる。

- STATUS レジスタの TO ビットがセットされる。

- STATUS レジスタの PD ビットがクリアされ

る。

SLEEP命令の実行前にフラグビットをチェックしたとしても、その後 SLEEP 命令が完了するまでにフラグビットがセットされる可能性があります。SLEEP命令が実行されたかどうかを判断するには、PD ビットを検証します。PD ビットがセットされている場合、SLEEP命令が NOPとして実行された事を示します。

図 14-1: 割り込みによるスリープからの復帰

表 14-1: パワーダウン モード関連レジスタのまとめ

レジスタ名

bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0レジスタ内容記載ページ

INTCON GIE PEIE T0IE INTE IOCE T0IF INTF IOCF 93

IOCA IOCA7 IOCA6 IOCA5 — IOCA3 IOCA2 IOCA1 IOCA0 116

IOCB IOCB7 IOCB6 IOCB5 IOCB4 — — IOCB1 IOCB0 116

PIE1 TXIE RCIE BCLIE SSPIE CC2IE CC1IE TMR2IE TMR1IE 94

PIE2 CDSIE ADIE — OTIE OVIE DRUVIE OVLOIE UVLOIE 95

PIR1 TXIF RCIF BCLIF SSPIF CC2IF CC1IF TMR2IF TMR1IF 96

PIR2 CDSIF ADIF — OTIF OVIF DRUVIF OVLOIF UVLOIF 97

STATUS IRP RP1 RP0 TO PD Z DC C 71

Legend: — = 未実装、「0」として読み出し網掛け部分はパワーダウン モードでは使いません。

Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

OSC

Interrupt flag

GIE bit(INTCON reg.)

Instruction FlowPC

InstructionFetched

InstructionExecuted

PC PC + 1 PC + 2

Inst (PC) = Sleep

Inst (PC – 1)

Inst (PC + 1)

Sleep

Processor inSleep

INST (PC + 2)

Inst (PC + 1)

Inst (0004h) Inst (0005h)

Inst (0004h)Dummy Cycle

PC + 2 0004h 0005h

Dummy Cycle

TOST

PC + 2

Note 1: GIE = 「1」の場合です。この場合、復帰後にプロセッサは 0004h の ISR を呼び出します。GIE = 「0」の場合、分岐せずに命令の実行を継続します。

Interrupt Latency (1)

Page 103: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.103

MCP19124/5

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

ウォッチドッグ タイマ (WDT) はフリーランニングタイマです。WDT は、CONFIG レジスタの WDTEビットをセット ( 既定値 ) すると有効になります。

通常動作中に WDT タイムアウトが発生すると、デバイスをリセットします。デバイスがスリープ中に WDTタイムアウトが発生すると、デバイスを復帰させて通常動作を再開します。

CONFIG レジスタの WDTE ビットをクリアすると、WDT を無効にできます。詳細はセクション 11.1「コンフィグレーション ワード」を参照してください。

15.1 ウォッチドッグ タイマ (WDT) 動作

通常動作中に WDT タイムアウトが発生すると、デバイスをリセットします。デバイスがスリープ中に WDTタイムアウトが発生すると、デバイスを復帰させて通常動作を再開します。これを WDT 復帰と呼びます。WDTE コンフィグレーション ビットをクリアすると、WDT を無効にできます。

ポストスケーラはソフトウェアで制御でき、プログラム実行中に変更可能です。

15.2 WDT 周期

WDT のタイムアウト周期は 18 ms( 公称値 ) です ( プリスケーラなしの場合 )。タイムアウト周期は温度、VDD、デバイスごとの製造ばらつきによって変動します( 表 12-1 参照 )。これより長いタイムアウト周期が必要な場合、 大 1:128 の分周比を持つプリスケーラをWDTに割り当てる事ができます。これは、OPTION_REGレジスタへの書き込みという形でソフトウェア制御できます。この方法により、 大 2.3 秒のタイムアウト周期を実現できます。

CLRWDT および SLEEP 命令は WDT とプリスケーラ( 使っている場合 ) をクリアし、WDT タイムアウトによるデバイスリセットが発生しないようにします。

WDT タイムアウトは STATUS レジスタの TO ビットをクリアします。

15.3 WDT のプログラミング時の注意事項

悪条件 ( すなわち VDD = 小、温度 = 大、WDT プリスケーラ = 大 ) の場合、WDT タイムアウト発生まで数秒かかる事があります。

図 15-1: ウォッチドッグ タイマと共有プリスケーラのブロック図

T0CKIpin

TMR0

WatchdogTimer

WDTTime-Out

Data Bus

Set Flag bit T0IFon Overflow

Note 1: T0SE、T0CS、PSA、PS<2:0> は OPTION_REG レジスタのビットです。

2: WDTE ビットは CONFIG レジスタにあります。

0

10

1

0

1

8

8

8-BitPrescaler

0

1

FOSC/4

Sync2 TCY

TOSE (1) TOCS (1)

PSA (1)

PS<2:0> (1)

PSA (1)

PSA (1)

WDTE (2)

Page 104: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.104 2017 Microchip Technology Inc.

表 15-1: WDT のステータス

条件 WDT

WDTE = 0クリアCLRWDTコマンド

スリープ終了

表 15-2: ウォッチドッグ タイマ関連レジスタのまとめ

レジスタ名 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0レジスタ内容記載ページ

OPTION_REG RAPU INTEDG T0CS T0SE PSA PS2 PS1 PS0 78

Legend: 網掛け部分はウォッチドッグ タイマでは使いません。

Note 1: CONFIG レジスタの全ビットの使い方はレジスタ 11-1 を参照してください。

表 15-3: ウォッチドッグ タイマ関連コンフィグレーション ワードのまとめ

レジスタ名

ビット bit -/7 bit -/6 bit 13/5 bit 12/4 bit 11/3 bit 10/2 bit 9/1 bit 8/0レジスタ内容記載ページ

CONFIG13:8 — — DBGEN — WRT1 WRT0 — BOREN

817:0 — CP MCLRE PWRTE WDTE — — —

Legend: — = 未実装、「1」として読み出し。網掛け部分はウォッチドッグ タイマでは使いません。

Page 105: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.105

MCP19124/5

16.0 オシレータモード

MCP19124/5 のオシレータ設定は、8 MHz 内部オシレータの 1 種類だけです。

16.1 内部オシレータ (INTOSC)

内部オシレータ モジュールは 8 MHz のシステムクロック源を提供します。内部オシレータの周波数は、OSCTUNE レジスタの校正値でトリミングできます。

16.2 オシレータ校正

8 MHz の内部オシレータは工場で校正済みです。工場での校正値は読み出し専用の CALWD6 レジスタに格納されています。これらの値を CALWD6 レジスタから読み出し、OSCCAL レジスタに保存する必要がありま

す。プログラムメモリからの読み出し手順はセクション 20.0「フラッシュ プログラムメモリ制御」を参照してください。

16.3 ユーザモードでの周波数調整

ベース周波数は、工場における校正に加えてユーザアプリケーションでも調整できます。この周波数調整機能によって、ユーザは工場で校正された周波数とは異なる値を設定できます。周波数を調整するにはOSCTUNE レジスタ (レジスタ 16-1 参照 ) に書き込みます。

Note: 内 部 オ シ レ ー タ を 校 正 す る に は、CALWD6 レジスタの FCAL<6:0> ビットをOSCCAL レジスタに書き込む必要があります。

レジスタ 16-1: OSCTUNE: オシレータ調整レジスタ

U-0 U-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

— — — TUN4 TUN3 TUN2 TUN1 TUN0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 7-5 未実装 :「0」として読み出し

bit 4-0 TUN<4:0>: 周波数調整ビット

01111 = 大周波数01110 = 大周波数•••00001 = 00000 = 中心周波数。オシレータ モジュールは工場で校正された周波数で動作する11111 = •••10000 = 小周波数

Page 106: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.106 2017 Microchip Technology Inc.

16.3.1 電源投入時、復帰時、ベース周波数変更時のオシレータ遅延

OSCTUNE レジスタを使って内部オシレータの周波数をシフトさせるアプリケーションでは、内部オシレータの周波数がただちに安定しません。この場合、周波数は新しい値へ徐々にシフトします。この周波数シフトに要する時間は、ベース周波数の 8 サイクル未満です。

電源投入時にパワーアップ タイマが有効な場合、これがタイムアウトするまでデバイスがリセット状態に保持されます。

スリープからの復帰または POR の後は、メモリバイアスが安定してプログラム実行を開始できるようになるまでの時間を確保するために、約 10 µs の内部遅延が適用されます。

表 16-1: クロック源関連レジスタのまとめ

レジスタ名 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0レジスタ内容記載ページ

OSCTUNE — — — TUN4 TUN3 TUN2 TUN1 TUN0 105

Legend: — = 未実装、「0」として読み出し。網掛け部分はクロック源では使いません。

表 16-2: クロック源関連コンフィグレーション ワードのまとめ

レジスタ名 ビット bit -/7 bit -/6 bit 13/5 bit 12/4 bit 11/3 bit 10/2 bit 9/1 bit 8/0レジスタ内容記載ページ

CALWD613:8 — — — — — — — —

627:0 — FCAL6 FCAL5 FCAL4 FCAL3 FCAL2 FCAL1 FCAL0

Legend: — = 未実装、「0」として読み出し。網掛け部分はクロック源では使いません。

Page 107: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.107

MCP19124/5

17.0 I/O ポート

通常、周辺モジュールを有効にしている時には、そのピンを汎用 I/O ピンとして使う事はできません。

各ポートは、レジスタを使って動作します。これらのレジスタは以下の通りです。

• TRISGPx レジスタ ( データ方向レジスタ )

• PORTGPx レジスタ ( デバイスピンのレベル読み取り )

ポートによっては追加レジスタが使えます。これらのレジスタは以下の通りです。

• ANSELx( アナログ選択 )

• WPUGPx( 弱プルアップ )

アナログ機能を持つポートには ANSELx レジスタもあり、このレジスタでデジタル入力を無効にして消費電力を抑える事ができます。図 17-1 に、他の周辺モジュールへのインターフェイスを省略した、汎用 I/Oポートの簡易モデルを示します。

図 17-1: 汎用 I/O PORTGPx の動作

例 17-1: PORTGPA の初期化

17.1 PORTGPA および TRISGPA レジスタ

PORTGPA は 8 ビット幅の双方向ポートで、5 つのCMOS I/O、1 つのオープンドレイン I/O、1 つのオープンドレイン入力専用ピンで構成されます(GPA4は利用できません )。これに対応するデータ方向レジスタが、TRISGPA です。TRISGPA のビットをセットする(=「1」) と、PORTGPA の対応するピンが入力になり、出力ドライバが無効になります。TRISGPA のビットをクリアする (=「0」) と、PORTGPA の対応するピンが出力になり、出力ドライバが有効になります。例外として、GPA5 は入力専用であり、その TRISGPA ビットは常に「1」として読み出されます。例 17-1 に、I/O ポートの初期化方法を示します。

PORTGPA レジスタを読み出すと、ピンの状態が出力されるのに対し、PORTGPA レジスタに書き込むと、PORT ラッチにデータが格納されます。書き込み動作は全て Read-Modify-Write です。

ピンをアナログ入力として使う場合も、TRISGPAレジスタが PORTGPA ピンの出力ドライバを制御します。これらのピンをアナログ入力として使う場合、必ず TRISGPA レジスタのビットをセットしたままにします。アナログ入力として設定された I/O ピンは常に

「0」として読み出されます。ピンがデジタル出力( ポートまたは代替機能 ) に設定されている場合、このピンで信号を駆動し、ピンの状態を読み値に反映させるためには TRISGPA ビットをクリアする必要があります。

17.1.1 状態変化割り込み

PORTGPA の各ピンは、個別に状態変化割り込みピンとして設定できます。各ピンの割り込み機能の有効 /無効は、制御ビット IOCB<7:4> および IOCB<2:0> で設定します。状態変化割り込みは、パワーオン リセット時に無効になります。詳細はセクション 18.0「状態変化割り込み」を参照してください。

17.1.2 弱プルアップ

PORTGPA<3:0>とPORTGPA5は内部弱プルアップ機能を備えています。PORTGPA<7:6> は内部弱プルアップ機能を備えていません。内部弱プルアップは、個別の制御ビットで有効化 /無効化できます (レジスタ17-3参照 )。ポートピンを出力または代替機能に設定した場合、あるいはパワーオン リセットによってOPTION_REGレジスタのRAPUビットがセットされた場合、弱プルアップは自動的に OFF になります。GPA5の弱プルアップは、CONFIG レジスタの bit 5 をセットして GPA5 を MCLR ピンに設定すると有効になり、GPA5 を I/O に設定すると無効になります。MCLRのプルアップはソフトウェア制御できません。

QD

CK

Write LATx

Data Register

Read PORTGPx

Write PORTGPx

TRISGPxRead LATx

Data Bus

To peripherals

ANSELx

VDD

AGND

I/O pin

; This code example illustrates; initializing the PORTGPA register.The ; other ports are initialized in the same; manner.

BANKSEL PORTGPA;CLRF PORTGPA;Init PORTABANKSEL ANSELA;CLRF ANSELA;digital I/OBANKSEL TRISGPA;MOVLW B'00011111';Set GPA<3:0> as

;inputsMOVWF TRISGPA;and set GPA<7:5> as

;outputs

Page 108: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.108 2017 Microchip Technology Inc.

17.1.3 ANSELA レジスタ

ANSELA レジスタは、I/O ピンの入力モードをアナログに設定する場合に使います。ANSELA ビットを High に設定したピンに対してデジタル読み出しを実行すると、全て「0」として読み出され、ピンのアナログ機能が正しく動作します。

ANSELA ビットの状態は、デジタル出力機能には影響を与えません。TRISGPA をクリアして ANSELx をセットしたピンはデジタル出力として動作しますが、入力モードはアナログです。このように設定されたポートに対して Read-Modify-Write 命令を実行すると、予期しない挙動を引き起こす事があります。

17.1.4 PORTGPA 機能と出力の優先度

PORTGPAの各ピンは、他の機能と多重化されています。表 17-1 に、各ピンに割り当てられた複数の機能とそれらの出力の優先度を示します。詳細は本書の該当するセクションを参照してください。

PORTGPA レジスタの GPA7 ピンは完全なオープンドレイン ピンで、VDD には接続されていません。

複数の出力を有効にした場合、 も優先度の高い周辺モジュールからの出力が有効となります。

ADC 等のアナログ入力機能は優先度のリストには記載していません。これらの入力は、ANSELA レジスタで I/O ピンをアナログモードに設定すると有効になります。アナログモードの場合、デジタル出力機能は表17-1 に示した優先度でピンを制御します。

Note: ANSELA ビットのリセット後の既定値はアナログモードです。任意のピンをデジタル汎用入力または周辺入力として使うには、対応する ANSEL ビットをユーザソフトウェアで「0」に初期化する必要があります。

表 17-1: PORTGPA 出力の優先度

ピン名 機能の優先度 (1)

GPA0 GPA0

TEST_OUT

GPA1 GPA1

CLKPIN

GPA2 GPA2

T0CKI

INT

GPA3 GPA3

GPA5 GPA5( オープンドレイン、入力専用 )

MCLR

TEST_EN

GPA6 GPA6

CCD

ICSPDAT

GPA7 GPA7( オープンドレイン出力、ST 入力 )

SCL

Note 1: 出力機能の優先度の高いものから順に記載しています。

Page 109: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.109

MCP19124/5

レジスタ 17-1: PORTGPA: PORTGPA レジスタ

R/W-x R/W-x R-x U-0 R/W-x R/W-x R/W-x R/W-x

GPA7 GPA6 GPA5 — GPA3 GPA2 GPA1 GPA0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7 GPA7: 汎用オープンドレイン I/O ピンビット

1 = PORT ピン > VIH である0 = PORT ピン < VIL である

bit 6 GPA6: 汎用 I/O ピンビット

1 = PORT ピン > VIH である0 = PORT ピン < VIL である

bit 5 GPA5/MCLR/TEST_EN5: 汎用オープンドレイン入力ピンビット

bit 4 未実装 :「0」として読み出し

bit 3-0 GPA<3:0>: 汎用 I/O ピンビット

1 = PORT ピン > VIH である0 = PORT ピン < VIL である

レジスタ 17-2: TRISGPA: PORTGPA 3 ステートレジスタ

R/W-1 R/W-1 R-1 U-0 R/W-1 R/W-1 R/W-1 R/W-1

TRISA7 TRISA6 TRISA5 — TRISA3 TRISA2 TRISA1 TRISA0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-6 TRISA<7:6>: PORTGPA 3 ステート制御ビット

1 = PORTGPA ピンを入力として設定する (3 ステート )0 = PORTGPA ピンを出力として設定する

bit 5 TRISA5: GPA5 ポート 3 ステート制御ビット

GPA5 は入力専用のため、このビットは常に「1」です。

bit 4 未実装 :「0」として読み出し

bit 3-0 TRISA<3:0>: PORTGPA 3 ステート制御ビット

1 = PORTGPA ピンを入力として設定する (3 ステート )0 = PORTGPA ピンを出力として設定する

Page 110: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.110 2017 Microchip Technology Inc.

レジスタ 17-3: WPUGPA: 弱プルアップ PORTGPA レジスタ (Note 1)

U-0 U-0 R/W-1 U-0 R/W-1 R/W-1 R/W-1 R/W-1

— — WPUA5 (2) — WPUA3 WPUA2 WPUA1 WPUA0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-6 未実装 :「0」として読み出し

bit 5 WPUA5: 弱プルアップ レジスタビット

1 = プルアップを有効にする0 = プルアップを無効にする

bit 4 未実装 :「0」として読み出し

bit 3-0 WPUA<3:0>: 弱プルアップ レジスタビット

1 = プルアップを有効にする0 = プルアップを無効にする

Note 1: 弱プルアップ デバイスは、グローバル設定の RAPU ビットがクリア (= 0) されており、ピンが入力モード(TRISGPA = 1) で、個別の WPUA ビットがセット (= 1) されており、ピンがアナログ入力として設定されていない場合のみ有効になります。

2: CONFIG レジスタで GPA5 を MCLR ピンに設定した場合も、GPA5 の弱プルアップが有効になります。

レジスタ 17-4: ANSELA: アナログ選択 GPA レジスタ

U-0 U-0 U-0 U-0 R/W-1 R/W-1 R/W-1 R/W-1

— — — — ANSA3 ANSA2 ANSA1 ANSA0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-4 未実装 :「0」として読み出し

bit 3-0 ANSA<3:0>: アナログ選択 GPA レジスタビット

1 = アナログ入力 : ピンをアナログ入力として割り当てる (1)

0 = デジタル I/O: ピンをポートまたは特殊機能に割り当てる

Note 1: ピンをアナログ入力に設定すると、デジタル入力回路 ( 弱プルアップと状態変化割り込みがある場合はこれらも含む ) は自動的に無効になります。ピン電圧を外部から制御するには、対応する TRISA ビットを入力モードに設定する必要があります。

Page 111: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.111

MCP19124/5

17.2 PORTGPB および TRISGPB レジスタ

特殊機能ピンの要件のため、使える PORTGPB I/O の数は限られています。24 ピン 4x4 mm QFN のMCP19124 は GPB0 と GPB1 を備えています。GPB0はオープンドレイン汎用 I/O または SDA ピンです。GPB1 は汎用 I/O、アナログ入力、VREF2 DAC 出力です。28ピン5x5 mm QFNのMCP19124は4本の追加の汎用PORTGPB I/O ピンを備えています。これに対応するデータ方向レジスタが TRISGPB です。TRISGPB のビットをセットする (=「1」) と、PORTGPB の対応するピンが入力になり出力ドライバが無効になります。TRISGPBのビットをクリアする(=「0」)と、PORTGPBの対応するピンが出力になり出力ドライバが有効になります。例17-1に I/Oポートの初期化方法を示します。

PORTGPB の一部のピンは、周辺モジュールの代替機能またはクロック機能と多重化されています。通常、周辺機能またはクロック機能を有効にしている時には、これらのピンを汎用 I/Oピンとして使う事はできません。

PORTGPBレジスタを読み出すとピンのステータスが読み出され、PORTGPB レジスタに書き込むと PORTラッチに書き込まれます。書き込み動作は全てRead-Modify-Write です。

ピンをアナログ入力として使う場合を含め、TRISGPBレジスタが PORTGPB ピンの出力ドライバを制御します。これらのピンをアナログ入力として使う場合、必ず TRISGPB レジスタのビットをセットしたままにします。アナログ入力として設定された I/O ピンは常に「0」として読み出されます。ピンがデジタル出力 ( ポートまたは代替機能 ) に設定されている場合、このピンで信号を駆動し、ピンの状態を読み値に反映させるためには TRISGPB ビットをクリアする必要があります。

17.2.1 状態変化割り込み

PORTGPB の各ピンは、個別に状態変化割り込みピンとして設定できます。各ピンの割り込み機能の有効 /無効は、制御ビット IOCB<7:4> および IOCB<2:0> で設定します。状態変化割り込みは、パワーオン リセット時に無効になります。詳細はセクション 18.0「状態変化割り込み」を参照してください。

17.2.2 弱プルアップ

PORTGPB の各ピンには、個別に設定可能な内部弱プルアップがあります。各プルアップの有効 / 無効は、制御ビット WPUB<7:4> および WPUB1 で設定します( レジスタ 17-7 参照 )。出力として設定したポートピンの弱プルアップは自動的にOFFになります。全てのプルアップは、パワーオン リセット時に OPTION_REGレジスタの RAPU ビットによって無効化されます。

17.2.3 ANSELB レジスタ

ANSELB レジスタは、I/O ピンの入力モードをアナログに設定する場合に使います。ANSELB ビットを High に設定したピンに対してデジタル読み出しを実行すると、全て「0」として読み出され、ピンのアナログ機能が正しく動作します。

ANSELB ビットの状態は、デジタル出力機能には影響を与えません。TRISGPB をクリアして ANSELB をセットしたピンはデジタル出力として動作しますが、入力モードはアナログです。このように設定されたポートに対して Read-Modify-Write 命令を実行すると、予期しない挙動を引き起こす事があります。

ピンをアナログ入力として使う場合を含め、TRISGPBレジスタが PORTGPB ピンの出力ドライバを制御します。これらのピンをアナログ入力として使う場合、必ずTRISGPBレジスタのビットをセットしたままにします。アナログ入力として設定された I/O ピンは常に「0」として読み出されます。

表 17-2: PORTGPA に関連するレジスタのまとめ

レジスタ名 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0レジスタ内容記載ページ

ANSELA — — — — ANSA3 ANSA2 ANSA1 ANSA0 110

OPTION_REG RAPU INTEDG T0CS T0SE PSA PS2 PS1 PS0 78

PORTGPA GPA7 GPA6 GPA5 — GPA3 GPA2 GPA1 GPA0 109

TRISGPA TRISA7 TRISA6 TRISA5 — TRISA3 TRISA2 TRISA1 TRISA0 109

WPUGPA — — WPUA5 — WPUA3 WPUA2 WPUA1 WPUA0 110

Legend: — = 未実装、「0」として読み出し。網掛け部分は PORTGPA では使いません。

Note: ANSELB ビットのリセット後の既定値はアナログモードです。任意のピンをデジタル汎用入力または周辺入力として使うには、対応する ANSELB ビットをユーザソフトウェアで「0」に初期化する必要があります。

Page 112: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.112 2017 Microchip Technology Inc.

17.2.4 PORTGPB 機能と出力の優先度

PORTGPB の各ピンは、他の機能と多重化されています。表 17-3 に、各ピンに割り当てられた複数の機能とそれらの出力の優先度を示します。詳細は本書の該当するセクションを参照してください。

PORTGPB レジスタの GPB0 ピンは完全なオープンドレイン ピンで、VDD には接続されていません。

複数の出力を有効にした場合、 も優先度の高い周辺モジュールからの出力が有効となります。

ADC 等のアナログ入力機能と一部のデジタル入力機能は下の表には記載されていません。これらの入力は、ANSELB レジスタで I/O ピンをアナログモードに設定すると有効になります。アナログモードの場合、デジタル出力機能は表17-3に示した優先度でピンを制御します。

表 17-3: PORTGPB 出力の優先度

ピン名 機能の優先度 (1)

GPB0 GPB0( オープンドレイン I/O)

SDA

GPB1 GPB1

VREF2

GPB4 GPB4 (MCP19125 のみ )

ICSPDAT

GPB5 GPB5 (MCP19125 のみ )

GPB6 GPB6 (MCP19125 のみ )

GPB7 GPB7 (MCP19125 のみ )

CCD2

Note 1: 出力機能の優先度の高いものから順に記載しています。

レジスタ 17-5: PORTGPB: PORTGPB レジスタ

R/W-x R/W-x R/W-x R/W-x U-0 U-0 R/W-x R/W-x

GPB7 (1) GPB6 (1) GPB5 (1) GPB4 (1) — — GPB1 GPB0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-4 GPB<7:4>: 汎用 I/O ピンビット

1 = PORT ピン > VIH である0 = PORT ピン < VIL である

bit 3-2 未実装 :「0」として読み出し

bit 1-0 GPB<1:0>: 汎用 I/O ピンビット

1 = PORT ピン > VIH である0 = PORT ピン < VIL である

Note 1: MCP19125 のみです。

Page 113: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.113

MCP19124/5

レジスタ 17-6: TRISGPB: PORTGPB 3 ステートレジスタ

R/W-1 R/W-1 R/W-1 R/W-1 U-0 U-0 R/W-1 R/W-1

TRISB7 (1) TRISB6 (1) TRISB5 (1) TRISB4 (1) — — TRISB1 TRISB0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-4 TRISB<7:4>: PORTGPB 3 ステート制御ビット

1 = PORTGPB ピンを入力として設定する (3 ステート )

0 = PORTGPB ピンを出力として設定する

bit 3-2 未実装 :「0」として読み出し

bit 1-0 TRISB<1:0>: PORTGPB 3 ステート制御ビット

1 = PORTGPB ピンを入力として設定する (3 ステート )

0 = PORTGPB ピンを出力として設定する

Note 1: MCP19125 のみです。

レジスタ 17-7: WPUGPB: 弱プルアップ PORTGPB レジスタ (Note 1)

R/W-1 R/W-1 R/W-1 R/W-1 U-0 U-0 R/W-1 U-0

WPUB7 (2) WPUB6 (2) WPUB5 (2) WPUB4 (2) — — WPUB1 —

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-4 WPUB<7:4>: 弱プルアップ レジスタビット

1 = プルアップを有効にする0 = プルアップを無効にする

bit 3-2 未実装 :「0」として読み出し

bit 1 WPUB1: 弱プルアップ レジスタビット

1 = プルアップを有効にする0 = プルアップを無効にする

bit 0 未実装 :「0」として読み出し

Note 1: 弱プルアップ デバイスは、グローバル設定の RAPU ビットがクリア (= 0) されており、ピンが入力モード(TRISGPB = 1) で、個別の WPUB ビットがセット (= 1) されており、ピンがアナログ入力として設定されていない場合のみ有効になります。

2: MCP19125 のみです。

Page 114: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.114 2017 Microchip Technology Inc.

レジスタ 17-8: ANSELB: アナログ選択 GPB レジスタ

U-0 R/W-1 R/W-1 R/W-1 U-0 U-0 R/W-1 U-0

— ANSB6 (1) ANSB5 (1) ANSB4 (1) — — ANSB1 —

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7 未実装 :「0」として読み出し

bit 6-4 ANSB<6:4>: アナログ選択 GPA レジスタビット

1 = アナログ入力 : ピンをアナログ入力として割り当てる (2)

0 = デジタル I/O: ピンをポートまたは特殊機能に割り当てる

bit 3-2 未実装 :「0」として読み出し

bit 1 ANSB<1>: アナログ選択 GPA レジスタビット

1 = アナログ入力 : ピンをアナログ入力として割り当てる (2)

0 = デジタル I/O: ピンをポートまたは特殊機能に割り当てる

bit 0 未実装 :「0」として読み出し

Note 1: MCP19125 のみです。

2: ピンをアナログ入力に設定すると、デジタル入力回路 ( 弱プルアップと状態変化割り込みがある場合はこれらも含む ) は自動的に無効になります。ピン電圧を外部から制御するには、対応する TRIS ビットを入力モードに設定する必要があります。

表 17-4: PORTGPB 関連レジスタのまとめ

レジスタ名 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0レジスタ内容記載ページ

ANSELB — ANSB6 (1) ANSB5 (1) ANSB4 (1) — — ANSB1 — 114

OPTION_REG RAPU INTEDG T0CS T0SE PSA PS2 PS1 PS0 78

PORTGPB GPB7 (1) GPB6 (1) GPB5 (1) GPB4 (1) — — GPB1 GPB0 112

TRISGPB TRISB7 (1) TRISB6 (1) TRISB5 (1)

TRISB4 (1)

— — TRISB1 TRISB0113

WPUGPB WPUB7 (1)

WPUB6 (1) WPUB5 (1)

WPUB4 (1)

— — WPUB1 — 113

Legend: — = 未実装、「0」として読み出し。網掛け部分は PORTGPB モジュールでは使いません。

Note 1: MCP19125 のみです。

Page 115: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.115

MCP19124/5

18.0 状態変化割り込み

PORTGPA と PORTGPB の各ピンは、個別に状態変化割り込みピンとして設定できます。各ピンの割り込み機能の有効 / 無効は、制御ビット IOCA および IOCB で設定します。レジスタ18-1、18-2を参照してください。状態変化割り込みは、パワーオン リセット時に無効になります。

CONFIG レジスタで MCLR ピンとして設定した場合、GPA5 の状態変化割り込みは無効になります。

状態変化割り込みを有効に設定したピンでは、PORTGPA または PORTGPB の前回の読み出しでラッチされた値と現在の値が比較されます。これらPORTGPA と PORTGPB の全てのピンの前回の読み出し値の不一致出力の論理和によって、INTCON レジスタの状態変化割り込みフラグ (IOCF)ビットをセットします。

18.1 モジュールの有効化

各ポートピンで割り込みを生成するには、INTCONレジスタの IOCEビットをセットする必要があります。IOCE ビットがクリアの場合、ピンにおいてエッジは検出されますが割り込みは生成されません。

18.2 個別のピン設定

特定のピンで状態変化割り込みを検出できるように設定するには、IOCA または IOCB レジスタの対応するIOCAx または IOCBx ビットをセットします。

18.3 割り込みフラグのクリア

状態変化割り込みは、割り込みサービスルーチンで以下のどちらかの方法を使ってユーザがクリアします。

a) PORTGPx を読み出し、IOCF フラグビットをクリアする。これにより、不一致条件は終了します。

または

b) PORTGPx に書き込み、IOCF フラグビットをクリアする。これにより、不一致条件は終了します。

不一致条件が続く限り、IOCF フラグビットはセットされたままです。PORTGPA または PORTGPB を読み出すと不一致条件が終了し、IOCF フラグビットをクリアできるようになります。前回の読み出し値を保持するラッチは、MCLR リセットの影響を受けません。このリセット後も、不一致条件が 1 つでも成立していれば IOCF フラグはセットされたままです。

18.4 スリープ中の動作

IOCE ビットがセットされている場合、状態変化割り込みシーケンスはデバイスをスリープから復帰させます。

Note: PORTGPAまたはPORTGPBに対する操作を実行中にI/Oピンの状態が変化した場合、IOCF 割り込みフラグがセットされない事があります。

Page 116: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.116 2017 Microchip Technology Inc.

18.5 状態変化割り込みレジスタ

レジスタ 18-1: IOCA: PORTGPA 状態変化割り込みレジスタ

R/W-0 R/W-0 R/W-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0

IOCA7 IOCA6 IOCA5 — IOCA3 IOCA2 IOCA1 IOCA0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-6 IOCA<7:6>: PORTGPA 状態変化割り込みレジスタビット

1 = このピンの状態変化割り込みを有効にする0 = このピンの状態変化割り込みを無効にする

bit 5 IOCA5: PORTGPA 状態変化割り込みレジスタビット (1)

1 = このピンの状態変化割り込みを有効にする0 = このピンの状態変化割り込みを無効にする

bit 4 未実装 :「0」として読み出し

bit 3-0 IOCA<3:0>: PORTGPA 状態変化割り込みレジスタビット

1 = このピンの状態変化割り込みを有効にする0 = このピンの状態変化割り込みを無効にする

Note 1: GPA5 を MCLR として設定した場合、GPA5 の状態変化割り込みは無効になります。

レジスタ 18-2: IOCB: PORTGPB 状態変化割り込みレジスタ

R/W-0 R/W-0 R/W-0 R/W-0 U-0 U-0 R/W-0 R/W-0

IOCB7 (1) IOCB6 (1) IOCB5 (1) IOCB4 (1) — — IOCB1 IOCB0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-4 IOCB<7:4>: PORTGPB 状態変化割り込みレジスタビット

1 = このピンの状態変化割り込みを有効にする0 = このピンの状態変化割り込みを無効にする

bit 3-2 未実装 :「0」として読み出し

bit 1-0 IOCB<1:0>: PORTGPB 状態変化割り込みレジスタビット

1 = このピンの状態変化割り込みを有効にする0 = このピンの状態変化割り込みを無効にする

Note 1: MCP19125 のみです。

Page 117: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.117

MCP19124/5

表 18-1: 状態変化割り込み関連レジスタのまとめ

レジスタ名

bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0レジスタ内容記載ページ

ANSELA — — — — ANSA3 ANSA2 ANSA1 ANSA0 110

ANSELB — ANSB6 (1) ANSB5 (1) ANSB4 (1) — — ANSB1 — 114

INTCON GIE PEIE T0IE INTE IOCE T0IF INTF IOCF 93

IOCA IOCA7 IOCA6 IOCA5 — IOCA3 IOCA2 IOCA1 IOCA0 116

IOCB IOCB7 (1) IOCB6 (1) IOCB5 (1) IOCB4 (1) — — IOCB1 IOCB0 116

TRISGPA TRISA7 TRISA6 TRISA5 — TRISA3 TRISA2 TRISA1 TRISA0 109

TRISGPB TRISB7 (1) TRISB6 (1) TRISB5 (1) TRISB4 (1) — — TRISB1 TRISB0 113

Legend: — = 未実装、「0」として読み出し。網掛け部分は状態変化割り込みでは使いません。

Note 1: MCP19125 のみです。

Page 118: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.118 2017 Microchip Technology Inc.

NOTE:

Page 119: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.119

MCP19124/5

19.0 A/D コンバータ (ADC) モジュール

この ADC (A/D コンバータ ) は、アナログ入力信号を10 ビットのバイナリ値に変換します。本デバイスで使うアナログ入力は、多重化して 1 つのサンプルホールド回路に入力します。このサンプルホールド回路の出力を ADC の入力に接続します。ADC は逐次比較方式によって 10 ビットのバイナリ値を生成し、この変換結果を A/D 変換結果レジスタ (ADRESH:ADRESL レジスタペア ) に右詰めで格納します。図 19-1 に、ADC のブロック図を示します。

ADC の参照電圧は内部バンドギャップが供給します。

図 19-1: ADC のブロック図

Note: VINがAVDD + VDROPOUTを上回るとAVDDは安定し、A/D 読み値は正確になります。VINがVDD + VDROPOUTを上回るとVDDは安定します。ADC 参照電圧を VDD に設定すると正確な計測が可能になります。

GPA0/AN0

VREF

IP_ADJ

VBGR*

EA_SC

OVREF

VS

CHS4: CHS0

ADC

ADON

GO/DONE

ADRESH ADRESL

10

10

AGND

A2

RESERVED

IP_OFF_REF

VIN/n

GPA1/AN1

GPA2/AN2

GPA3/AN3

GPB1/AN4

GPB4/AN5

GPB5/AN6

GPB6/AN7

CHS4: CHS0

VDR/n

TEMP_SNS

PEDESTAL

DLL_VCON

SLPCMP_REF

DD

00000

00001

00010

00011

00100

00101

00110

00111

01000

01001

01010

01011

01100

01101

01110

01111

11000

11001

11010

11011

11100

11101

11110

11111

TRI-STATE

10000

10001

10010

10011

EAOR

SPARE

SPARE

SPAREx0xxx

RESERVED

o

oVCFG = 0

VCFG = 1

AV

DDV

MCP19125のみです。

Note 1: ADON = 0 の場合、マルチプレクサの入力は全て切り離されます。

2: アナログ チャンネルの選択の詳細は ADCON0 レジスタを参照してください。

MCP19125 のみです。

MCP19125 のみです。

Page 120: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.120 2017 Microchip Technology Inc.

19.1 ADC の設定

ADC の設定と使用に際しては、以下の機能を考慮する必要があります。

• ポートの設定

• チャンネルの選択

• ADC のクロック源

• 割り込みの制御

• 変換結果のフォーマット

19.1.1 ポートの設定

ADC は、アナログ入力信号をデジタル値に変換するために使います。アナログ信号を変換する場合、対応するTRISビットとANSELビットをセットして I/Oピンをアナログに設定する必要があります。詳細はセクション 17.0「I/O ポート」を参照してください。

19.1.2 チャンネルの選択

MCP19124 では以下の 大 21 チャンネルから、MCP19125 では以下の 大 24 チャンネルから選択できます。

• AN<4:0> ピン

• AN<7:5> ピン (MCP19125 のみ )

• VIN: 入力電圧 (VIN) の 1/15.53

• VREF: 調整設定点の参照電圧

• OVREF: OV コンパレータの参照電圧

• VBGR: バンドギャップの参照電圧

• VS: VOUT に比例した電圧

• EA_SC: スロープ補償の後のエラーアンプ出力

• A2: 2 次側電流検出アンプ出力

• ペデスタル電圧

• 予約済み

• 予約済み

• IP_ADJ:ペデスタル電圧およびオフセット調整の後の IP

• IP_OFF_REF: IP オフセット参照電圧

• VDR: VDR x 0.229 V/V

• TEMP_SNS: 内部温度を表すアナログ電圧( 式 25-1 参照 )

• DLL_VCON: 遅延ロックループ参照電圧

• SLPCMP_REF: スロープ補償参照電圧

サンプルホールド回路にどのチャンネルを接続するかは、ADCON0 レジスタの CHS<4:0> ビットで設定します。

チャンネルを変更した場合、次の変換を開始するまでに遅延が必要です。詳細はセクション 19.2「ADC 動作」を参照してください。

19.1.3 ADC 変換クロック

変換のクロック源はADCON1レジスタのADCS ビットで選択します。クロックは以下の 5 種類から選択できます。

• FOSC/8

• FOSC/16

• FOSC/32

• FOSC/64

• FRC( 内部オシレータを 16 分周して得られるクロック )

1 ビットの変換に必要な時間を TAD と定義します。図 19-2 に示すように、10 ビット全体の変換には 11TAD が必要です。

正しく変換を行うには、TAD の仕様を正しく満たす必要があります。A/D 変換の要件に関する詳細はセクション 4.0「電気的特性」を参照してください。表 19-1に、適切な ADC クロックの選択例を示します。Note: デジタル入力として定義されたピンに

アナログ電圧を印加すると、入力バッファに過大な電流が流れる事があります。 Note: FRC を使う場合を除き、システムクロック

周波数を変更するとADCクロック周波数も変化するため、A/D 変換結果に悪影響を与える可能性があります。

表 19-1: ADC クロック周期 (TAD) とデバイスの動作周波数の関係

ADC クロック周期 (TAD)デバイスの動作周波数 (FOSC)

ADCクロック源

ADCS<2:0> 8 MHz

FOSC/8 001 1.0 µs (1)

FOSC/16 101 2.0 µs

FOSC/32 010 4.0 µs

FOSC/64 110 8.0 µs (2)

FRC x11 2.0 ~ 6.0 µs (3, 4)

Legend: 網掛けの値は推奨レンジ外です。

Note 1: これらの値は 小 TAD 時間の要件を満たしていません。

2: より高速の変換を実行するには、他のクロック源の選択を推奨します。

3: VDD > 3.0 V の場合、クロック源 FRC のTAD 時間は 4 µs (typ.) です。

4: スリープ中に変換を実行する場合のみFRC クロック源を使用してください。

Page 121: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.121

MCP19124/5

図 19-2: A/D 変換の TAD サイクル

19.1.4 割り込み

ADC モジュールは、A/D 変換完了時に割り込みを生成できます。PIR1 レジスタの ADIF ビットが ADC 割り込みフラグビットで、PIE1 レジスタの ADIE ビットがADC 割り込みイネーブルビットです。ADIF ビットはソフトウェアでクリアする必要があります。

この割り込みは、デバイスの通常動作中またはスリープ中のどちらでも生成できます。デバイスがスリープ中に割り込みが発生すると、デバイスが復帰します。スリープから復帰すると、SLEEP命令の次の命令が実行されます。スリープから復帰後にインラインコード実行を再開するには、INTCON レジスタの GIE と PEIEビットをクリアしておく必要があります。INTCON レジスタの GIE および PEIE ビットをセットした場合、コード実行は割り込みサービスルーチンに分岐します。

19.1.5 変換結果のフォーマット

10 ビットの A/D 変換結果は、常に右詰めフォーマットで出力されます。

図 19-3: 10 ビット A/D 変換結果のフォーマット

TAD1 TAD2 TAD3 TAD4 TAD5 TAD6 TAD7 TAD8 TAD11

Set GO/DONE bit

Holding capacitor is disconnected from analog input (typically 100 ns)

TAD9 TAD10TCY - TAD

ADRESH:ADRESL is loaded, GO bit is cleared, ADIF bit is set, holding capacitor is connected to analog input.

Conversion starts

b0b9 b6 b5 b4 b3 b2 b1b8 b7

On the following cycle:

Note 1: ADC 割り込みの有効 / 無効の設定にかかわらず、変換完了時には必ず ADIF ビットがセットされます。

2: FRC オシレータが選択されている場合のみ、ADC はデバイスがスリープ中でも動作します。

(ADFM = 1) MSb LSb

bit 7 bit 0 bit 7 bit 0

Read as ‘0’ 10-bit A/D Result

Page 122: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.122 2017 Microchip Technology Inc.

19.2 ADC 動作

19.2.1 変換の開始

ADC モジュールを有効にするには、ADCON0 レジスタの ADON ビットを「1」にセットする必要があります。ADCON0 レジスタの GO/DONE ビットを「1」にセットすると A/D 変換を開始します。

19.2.2 変換の完了

変換が完了すると、ADC モジュールは以下の動作を実行します。

• GO/DONE ビットをクリアする

• ADIF 割り込みフラグビットをセットする

• ADRESH:ADRESL レジスタに新しい変換結果を書き込む

19.2.3 変換の中止

変換を完了前に中止する場合、GO/DONE ビットをソフトウェアでクリアします。未完了の A/D 変換サンプルがADRESH:ADRESLレジスタに書き込まれる事はありません。ADRESH:ADRESL レジスタペアは直前の変換結果を保持します。また、次のアクイジションを開始できるようになるまでには2 ADCクロックサイクルが必要です。この遅延時間の後、選択したチャンネルで入力アクイジションが自動的に開始します。

19.2.4 スリープ中の ADC の動作

スリープ中、ADC は動作しません。スリープ電流を小にするため、AVDD 4 V 参照電圧が遮断されてい

ます。

19.2.5 A/D 変換の手順

以下に ADC による A/D 変換の手順の例を示します。

1. ポートを設定する:

• ピン出力ドライバを無効にする(TRISGPx レジスタ参照 )。

• ピンをアナログとして設定する(ANSELx レジスタ参照 )。

2. ADC モジュールを設定する:

• A/D 変換クロックを選択する。

• ADC 入力チャンネルを選択する。

• ADC モジュールを ON にする。

3. ADC 割り込みを設定する ( 任意 ):

• ADC 割り込みフラグをクリアする。

• ADC 割り込みを有効にする。

• 周辺モジュール割り込みを有効にする。

• グローバル割り込みを有効にする。(1)

4. 必要なアクイジション時間が経過するまで待つ。(2)

5. GO/DONE ビットをセットして変換を開始する。

6. 以下のどちらかの方法で、A/D変換の完了を待つ:

• GO/DONE ビットをポーリングする。

• ADC割り込みを待つ(割り込みが有効の場合)。

7. A/D 変換の結果を読み出す。

8. ADC割り込みフラグをクリアする (割り込みが有効の場合は必須 )。

Note: ADC を ON にする命令と同じ命令でGO/DONE ビットを設定してはいけません。セクション 19.2.5「A/D 変換の手順」を参照してください。

Note: デバイスリセットが発生すると、全てのレジスタはリセット状態に戻ります。このため、ADC モジュールは OFF になり、保留中の変換は全て中止されます。

Note 1: スリープからの復帰後にインラインコード実行を再開させる場合、グローバル割り込みは無効でもかまいません。

2: セクション 19.4「A/D アクイジションの要件」を参照してください。

Page 123: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.123

MCP19124/5

例 19-1: A/D 変換;This code block configures the ADC;for polling, Frc clock and AN0 input.;;Conversion start & polling for completion ; are included.;BANKSELADCON1;MOVLWB’01110000’;Frc clockMOVWFADCON1;BANKSELTRISGPA;BSF TRISGPA,0;Set GPA0 to inputBANKSELANSELA;BSF ANSELA,0;Set GPA0 to analogBANKSELADCON0;MOVLWB’01100001’;Select channel AN0MOVWFADCON0;Turn ADC OnCALLSampleTime;Acquisiton delayBSF ADCON0,1;Start conversionBTFSCADCON0,1;Is conversion done?GOTO$-1 ;No, test againBANKSELADRESH;MOVFADRESH,W;Read upper 2 bitsMOVWFRESULTHI;store in GPR spaceBANKSELADRESL;MOVFADRESL,W;Read lower 8 bitsMOVWFRESULTLO;Store in GPR space

Page 124: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.124 2017 Microchip Technology Inc.

19.3 ADC レジスタの定義

ADC の動作は以下のレジスタで制御します。

レジスタ 19-1: ADCON0: A/D 制御レジスタ 0

U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

— CHS4 CHS3 CHS2 CHS1 CHS0 GO/DONE ADON

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7 未実装 :「0」として読み出し

bit 6-2 CHS<4:0>: アナログ チャンネル選択ビット

00000 = VIN/n の電圧計測 (VIN/n = VIN/15.5328)00001 = VREF( 電流調整レベルを設定する DAC 参照電圧 )00010 = OVREF( 過電圧コンパレータの参照電圧 )00011 = VBGR( バンドギャップ リファレンス )00100 = VS (VOUT に比例した電圧 )00101 = EA_SC( スロープ補償出力の後のエラーアンプ )00110 = A2 (2 次側電流検出アンプ出力 )00111 = ペデスタル ( ペデスタル電圧 )01000 = 予約済み01001 = 予約済み01010 = IP_ADJ (PWM コンパレータでのペデスタル電圧およびオフセット調整の後の IP)01011 = IP_OFF_REF (IP オフセット参照電圧 )01100 = VDR/n (VDR/n のアナログドライバ電圧計測 = 0.229 V/V x VDR)01101 = TEMP_SNS( 内部温度を表すアナログ電圧 )01110 = DLL_VCON( 遅延ロックループ参照電圧 - デッドタイム用制御電圧 )01111 = SLPCMP_REF( スロープ補償参照電圧 )10000 = EAOR (2 つのエラーアンプ (EA1、EA2) の論理和を取った出力ノード )10001 = 未実装10010 = 未実装10011 = 未実装10100 = 未実装10101 = 未実装10110 = 未実装10111 = 未実装11000 = GPA0/AN0 (ADDR1)11001 = GPA1/AN1 (ADDR0)11010 = GPA2/AN2( 温度センサ入力 )11011 = GPA3/AN3 (BIN)11100 = GPB1/AN411101 = GPB4/AN5 (MCP19125 のみ )11110 = GPB5/AN6 (MCP19125 のみ )11111 = GPB6/AN7 (MCP19125 のみ )

bit 1 GO/DONE: A/D 変換ステータスビット

1 = A/D 変換サイクルを実行中である。このビットをセットすると A/D 変換サイクルが開始する このビットは、A/D 変換が完了するとハードウェアで自動的にクリアされます。0 = A/D 変換サイクルが完了している ( 進行中でない )

bit 0 ADON: ADC イネーブルビット

1 = ADC を有効にする0 = ADC を無効にし、消費電流をゼロにする

Page 125: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.125

MCP19124/5

レジスタ 19-2: ADCON1: A/D 制御レジスタ 1

U-0 R/W-0 R/W-0 R/W-0 U-0 U-0 U-0 R/W-0

— ADCS2 ADCS1 ADCS0 — — — VCFG

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7 未実装 :「0」として読み出し

bit 6-4 ADCS<2:0>: A/D 変換クロック選択ビット

000 = 予約済み001 = FOSC/8010 = FOSC/32x11 = FRC( 内部オシレータを 16 分周して得られるクロック )100 = 予約済み101 = FOSC/16110 = FOSC/64

bit 3-1 未実装 :「0」として読み出し

bit 0 VCFG: ADC 参照電圧コンフィグレーション ビット0 = AVDD1 = VDD

レジスタ 19-3: ADRESH: ADC 結果レジスタ上位

U-0 U-0 U-0 U-0 U-0 U-0 R-x R-x

— — — — — — ADRES9 ADRES8

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-2 未実装 :「0」として読み出し

bit 1-0 ADRES<9:8>: A/D 変換結果上位 2 ビット

Page 126: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.126 2017 Microchip Technology Inc.

レジスタ 19-4: ADRESL: ADC 結果レジスタ下位

R-x R-x R-x R-x R-x R-x R-x R-x

ADRES7 ADRES6 ADRES5 ADRES4 ADRES3 ADRES2 ADRES1 ADRES0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-0 ADRES<7:0>: A/D 変換結果下位 8 ビット

Page 127: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.127

MCP19124/5

19.4 A/D アクイジションの要件

A/D コンバータが仕様上の精度を実現するには、電荷保持コンデンサ (CHOLD) を入力チャンネルの電圧レベルまで完全に充電する必要があります。図 19-4 に、アナログ入力モデルを示します。ソース インピーダンス(RS) と内部サンプリング スイッチのインピーダンス(RSS) は、このコンデンサ (CHOLD) の充電時間に直接影響します。サンプリング スイッチのインピーダンス(RSS) はデバイス電圧 (VDD) によって変化します ( 図19-4 参照 )。アナログソースの推奨 大インピーダンスは 10 kです。

ソース インピーダンスが低下すると、アクイジション時間が短くなる場合があります。アナログ入力チャンネルを選択 (または変更 )した場合、変換開始前にADCアクイジションを実行する必要があります。 小アクイジション時間は、式 19-1 で求めます。この式では、1/2 LSb誤差の適用を前提としています (ADCは1,024ステップ )。1/2 LSb の誤差は、ADC で仕様上の分解能を実現できる 大許容誤差です。

式 19-1: アクイジション時間の例

TACQ Amplifier Settling Time Hold Capacitor Charging Time Temperature Coefficient+ += TAMP TC TCOFF+ += 2 µs TC Temperature - 25°C 0.05 µs/°C + +=

TC CHOLD RIC RSS RS+ + ln(1/2047)–= 10 pF 1 k 7 k 10 k+ + – ln(0.0004885)=

1.37= µs

VAPPLIED 1 e

TC–RC----------

VAPPLIED 1 1

2n 1+ 1–------------------------------–

=

VAPPLIED 1 1

2n 1+ 1–------------------------------–

VCHOLD=

VAPPLIED 1 e

TC–RC----------

VCHOLD=

;[1] VCHOLD charged to within 1/2 lsb

;[2] VCHOLD charge response to VAPPLIED

;combining [1] and [2]

TC の値は下式から近似的に求められる :

TC について解くと :

従って :

Temperature +50°C and external impedance of 10 k 5.0V VDD=仮定条件 :

Note: n = ADC のビット数

TACQ 2 µs 1.37µs 50°C- 25°C 0.05µs/°C + += 4.67 µs=

Note1: 電荷保持コンデンサ (CHOLD) は、変換が完了するたびに放電される訳ではありません。

2: アナログソースの推奨 大インピーダンスは 10 k です。この値はピンのリーク電流仕様を満たすために必要です。

Page 128: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.128 2017 Microchip Technology Inc.

図 19-4: アナログ入力モデル

図 19-5: ADC の伝達関数

CPINVA

RS

Analog

5 pF

VDD

VT 0.6 V

VT 0.6 V

RIC 1 kΩ SS RSS

CHOLD = 10 pF

AGND/VREF-

6 V

Sampling Switch

5 V4 V3 V2 V

5 6 7 8 91011

(kΩ)

VDD

RSS

Note 1: セクション 4.0「電気的特性」を参照してください。

Inputpin

SamplingSwitch

ILEAKAGE(1)

Legend:

CHOLD = サンプル / ホールド コンデンサ容量

CPIN = 入力容量

ILEAKAGE = 各種接合部によるピン部位のリーク電流

RIC = 配線抵抗

RSS = サンプリング スイッチの抵抗

SS = サンプリング スイッチ

VT = しきい値電圧

3FFh

3FEh

AD

C O

utp

ut C

ode

3FDh

3FCh

03h

02h

01h

00h

Full-Scale

3FBh

0.5 LSb

VREF- Zero-ScaleTransition

VREF+

Transition

1.5 LSb

Full-Scale Range

Analog Input Voltage

Page 129: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.129

MCP19124/5

表 19-2: ADC 関連レジスタのまとめ

レジスタ名

bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0レジスタ内容記載ページ

ADCON0 — CHS4 CHS3 CHS2 CHS1 CHS0 GO/DONE ADON 124

ADCON1 — ADCS2 ADCS1 ADCS0 — — — — 125

ADRESH — — — — — — ADRES9 ADRES8 125

ADRESL ADRES7 ADRES6 ADRES5 ADRES4 ADRES3 ADRES2 ADRES1 ADRES0 126

ANSELA — — — — ANSA3 ANSA2 ANSA1 ANSA0 110

ANSELB — ANSB6 ANSB5 ANSB4 — — ANSB1 — 114

INTCON GIE PEIE T0IE INTE IOCE T0IF INTF IOCF 93

PIE2 CDSIE ADIE — OTIE OVIE DRUVIE OVLOIE UVLOIE 95

PIR2 CDSIF ADIF — OTIF OVIF DRUVIF OVLOIF UVLOIF 97

TRISGPA TRISA7 TRISA6 TRISA5 — TRISA3 TRISA2 TRISA1 TRISA0 109

TRISGPB TRISB7 TRISB6 TRISB5 TRISB4 — — TRISB1 TRISB0 113

Legend: — = 未実装、「0」として読み出し網掛け部分は ADC モジュールでは使いません。

Page 130: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.130 2017 Microchip Technology Inc.

NOTE:

Page 131: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.131

MCP19124/5

20.0 フラッシュ プログラムメモリ制御

フラッシュ プログラムメモリは、通常動作中 (VIN の全レンジで ) 読み書きが可能です。このメモリは、レジスタファイル空間に直接割り当てられていません。特殊機能レジスタ (レジスタ 20-1~ 20-5参照)を使って間接アドレス指定します。このメモリの読み書きに使う SFR は、以下の 6 つです。

• PMCON1

• PMCON2

• PMDATL

• PMDATH

• PMADRL

• PMADRH

プログラムメモリ ブロックへアクセスする場合、PMDATL および PMDATH レジスタの 2 バイトワードに読み書き用の 14 ビットデータを格納し、PMADRLおよび PMADRH レジスタの 2 バイトワードにフラッシュのアクセス先の 13 ビットアドレスを格納します。このデバイスには 8K ワードのフラッシュ プログラムメモリがあり、アドレスレンジは0000h~1FFFhです。

プログラムメモリは、1 ワード単位での読み出しと4 ワード単位での書き込みが可能です。4 ワード書き込みでは、書き込み位置の行を自動的に消去してから新しいデータを書き込みます (Erase-before-Write)。

書き込み時間は、内蔵タイマで制御します。書き込み /消去電圧は、定格電圧がデバイスの動作電圧レンジよりも高い内蔵チャージポンプで生成されます。

デバイスのコード保護が有効でも、CPU はフラッシュプログラムメモリを読み書きできます。

フラッシュ プログラムメモリ自己書き込みイネーブル(WRT<1:0>) ビットの設定によっては、デバイスがプログラムメモリの一部のブロックに書き込みできない事がありますが、その場合もプログラムメモリの読み出しは可能です。

フラッシュ プログラムメモリ コード保護 (CP)ビットがセットされている場合、プログラムメモリのコード保護が有効であり、デバイス プログラマ (ICSP) はデータ /プログラムメモリにアクセスできません。

20.1 PMADRH および PMADRL レジスタ

PMADRH および PMADRL レジスタは、 大 8K ワードのプログラムメモリをアドレス指定できます。

プログラムメモリのアドレス値を選択する場合、アドレスの上位バイト (MSB) を PMADRH レジスタに書き込み、下位バイト (LSB) を PMADRL レジスタへ書き込みます。

20.2 PMCON1 および PMCON2 レジスタ

PMCON1 レジスタは、データ プログラムメモリへのアクセスを制御するレジスタです。

RD 制御ビットと WR 制御ビットで、それぞれ読み出しと書き込みを開始します。これらのビットはソフトウェアではセットのみ可能で、クリアできません。読み出しまたは書き込み動作が完了した時点で、ハードウェアでクリアされます。WR ビットをソフトウェアでクリアできないようにする事で、書き込み動作が誤って中断されるのを防いでいます。

WREN ビットをセットすると、書き込み動作が許可されます。WREN ビットは、電源投入時にクリアされます。

CALSEL ビットは、校正ワードの位置に格納された校正ビットをSFRトリムレジスタに転送する必要がある時にユーザがテストメモリ内のアドレスを読み出せるようにします。CALSEL ビットは読み出し専用です。CALSEL = 1 にセットして書き込みを試みても実行されません。

PMCON2 は物理レジスタではありません。PMCON2レジスタは全て「0」として読み出されます。PMCON2レジスタは、フラッシュメモリの書き込みシーケンスでのみ使います。

Page 132: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.132 2017 Microchip Technology Inc.

20.3 フラッシュ プログラムメモリ制御レジスタ

レジスタ 20-1: PMDATL: プログラムメモリ データ下位バイトレジスタ

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

PMDATL<7:0>

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 7-0 PMDATL<7:0>: プログラムメモリの読み書きのデータの下位 8 ビット

レジスタ 20-2: PMADRL: プログラムメモリ アドレス下位バイトレジスタ

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

PMADRL<7:0>

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 7-0 PMADRL<7:0>: プログラムメモリの読み書き先アドレスの下位 8 ビット

レジスタ 20-3: PMDATH: プログラムメモリ データ上位バイトレジスタ

U-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

— — PMDATH<5:0>

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 7-6 未実装 :「0」として読み出し

bit 5-0 PMDATH<5:0>: プログラムメモリのデータの上位 6 ビット

Page 133: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.133

MCP19124/5

レジスタ 20-4: PMADRH: プログラムメモリ アドレス上位バイトレジスタ

U-0 U-0 U-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0

— — — — PMADRH<3:0>

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

bit 7-4 未実装 :「0」として読み出し

bit 3-0 PMADRH<3:0>: プログラムメモリの読み出しアドレスの上位 4 ビット

レジスタ 20-5: PMCON1: プログラムメモリ制御レジスタ 1

U-0 R/W-0 U-0 U-0 U-0 R/W-0 R/S-0 R/S-0

— CALSEL — — — WREN WR RD

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

S = ビットはセットのみ可能

bit 7 未実装 :「0」として読み出し

bit 6 CALSEL: プログラムメモリ校正空間選択ビット

1 = 校正トリムレジスタ領域を読み出す ( 読み出しのみ有効 )0 = ユーザ領域を読み出す

bit 5-3 未実装 :「0」として読み出し

bit 2 WREN: プログラムメモリ書き込みイネーブルビット

1 = 書き込みサイクルを許可する0 = EEPROM への書き込みを禁止する

bit 1 WR: 書き込み制御ビット

1 = プログラムメモリへの書き込みサイクルを開始する書き込みが完了するとこのビットはハードウェアでクリアされます。WR ビットはソフトウェアではセットのみ可能で、クリアできません。

0 = フラッシュメモリへの書き込みサイクルが完了した

bit 0 RD: 読み出し制御ビット

1 = プログラムメモリの読み出しを開始する ( 読み出し動作は 1 サイクルで完了します。読み出しが完了すると RD ビットはハードウェアでクリアされます。RD ビットはソフトウェアではセットのみ可能で、クリアはできません。)

0 = フラッシュメモリの読み出しを開始しない

Page 134: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.134 2017 Microchip Technology Inc.

20.3.1 フラッシュ プログラムメモリの読み出し

プログラムメモリを読み出すには、2 バイトの読み出し先アドレスをPMADRLおよびPMADRHレジスタに書き込んでから制御ビット RD (PMCON1 レジスタのbit 0) をセットする必要があります。データを読み出すために制御ビットをセットした後、プログラムメモリフラッシュ コントローラは 2 つ後の命令サイクルでデータを読み出します。このため、「BSF PMCON1,RD」命令に続く 2 番目の命令は無視されます。データは、その次のサイクルでPMDATLおよびPMDATHレジスタに格納されます。従って、これ以降の命令で 2 バイトとして読み出す事ができます。PMDATL およびPMDATH レジスタに格納された値は、次の読み出し操作を行うか、ユーザが ( 書き込み操作の際に ) これらのレジスタにデータを書き込むまで保持されます。

例 20-1: フラッシュ プログラムの読み出し

図 20-1: フラッシュ プログラムメモリの読み出しサイクル実行 - 通常モード

BANKSELPM_ADR; Change STATUS bits RP1:0 to select bank with PMADRMOVLWMS_PROG_PM_ADDR; MOVWFPMADRH; MS Byte of Program Address to readMOVLWLS_PROG_PM_ADDR; MOVWFPMADRL; LS Byte of Program Address to readBANKSELPMCON1; Bank to containing PMCON1BSF PMCON1, RD; EE Read

NOP ; First instruction after BSF PMCON1,RD executes normally

NOP ; Any instructions here are ignored as program; memory is read in second cycle after BSF PMCON1,RD;

BANKSELPMDATL; Bank to containing PMADRLMOVFPMDATL, W; W = LS Byte of Program PMDATLMOVFPMDATH, W; W = MS Byte of Program PMDATL

Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

BSF PMCON1,RDExecuted here

INSTR (PC + 1)Executed here

NOPExecuted here

PC PC + 1 PMADRH,PMADRL PC + 3 PC + 5Flash ADDR

RD bit

INSTR (PC) PMDATH,PMDATL INSTR (PC + 3)

PC + 3 PC + 4

INSTR (PC + 4)INSTR (PC + 1)

INSTR (PC - 1)Executed here

INSTR (PC + 3)Executed here

INSTR (PC + 4)Executed here

Flash DATA

PMDATHPMDATLRegister

EERHLT

Page 135: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.135

MCP19124/5

20.3.2 フラッシュ プログラムメモリへの書き込み

フラッシュ プログラムメモリのワードは、WRT<1:0>ビット ( セクション 11.1「コンフィグレーションワード」参照 ) で書き込み保護が有効に設定されていない場合のみ書き込みが可能です。

フラッシュ プログラムメモリは 4 ワードのブロック単位で書き込む必要があります。詳細は図 20-2 と図 20-3 を参照してください。1 ブロックは、境界に整列したアドレスPMADRL<1:0> = 00から上に向かって連続した 4 ワードで構成されます。プログラムメモリに対する全てのブロック書き込みは、16 ワードの消去と 4ワード単位の書き込みとして行われます。書き込み動作は常に境界に整列し、境界を越えた書き込みは行えません。

プログラムデータを書き込むには、まずバッファレジスタに WREN ビットを格納する必要があります ( 図20-2 参照 )。そのためには、書き込み先のアドレスをPMADRL と PMADRH に書き込んでからデータをPMDATL と PMDATH に書き込みます。アドレスとデータを設定したら、以下のイベント シーケンスを実行する必要があります。

1. PMCON2 レジスタに 55h、AAh を順に書き込む( フラッシュ プログラミング シーケンス )。

2. PMCON1 レジスタの WR 制御ビットをセットする。

4つのバッファレジスタ全てに正しいデータを書き込んでおく必要があります。4 ワードブロックに書き込むデータが 4 ワードより少ない場合、書き込みを行わないプログラムメモリ位置からデータ読み出しを実行する必要があります。この操作により、書き込みを行わないプログラムメモリ位置からのデータがPMDATLおよびPMDATH レジスタに格納されます。次に、データをバッファレジスタに転送するイベント シーケンスを実行する必要があります。

バッファレジスタからプログラムメモリへデータを転送するには、PMADRL と PMADRH が 4 ワードブロックの 後のアドレスを指し示している必要があります (PMADRL<1:0> = 11)。次に、以下のイベントシーケンスを実行する必要があります。

1. PMCON2 レジスタに 55h、AAh を順に書き込む( フラッシュ プログラミング シーケンス )。

2. PMCON1 レジスタの WR 制御ビットをセットして書き込みを開始する。

ユーザは、プログラム ブロック内の全てのワードの書き込みを同じシーケンスに従って開始し、各プログラムワードを 000、001、010、011 の順番に書き込む 必 要 が あ り ま す。そ し て、 後 の ワ ー ド(PMADRL<1:0> = 11) の書き込みを実行すると、16ワードのブロックが自動的に消去され、4 ワードのバッファレジスタの内容がプログラムメモリに書き込まれます。

「BSF PMCON1,WR」命令の後、プロセッサが消去 /書き込み動作を完了するまでに 2 サイクル必要です。このため、WR ビットをセットした後、2 つの NOP命令を実行する必要があります。データはバッファレジスタに書き込まれているため、ブロックの 初の 3ワードの書き込みは、見かけ上ただちに実行されます。消去を伴うサイクル (すなわち16ワードの消去ブロックの 後のワード ) でのみ、プロセッサは 4 ms (typ.) の間内部動作を停止します。クロックと周辺モジュールは動作を続けるため、これはスリープとは異なります。4 ワードの書き込みサイクル後、プロセッサは PMCON1書き込み命令後の 3 番目の命令から動作を再開します。上記のシーケンスを上位 12 ワードに対して繰り返す必要があります。

バッファレジスタとテストモードの制御信号のブロック図は、図 20-2 を参照してください。

20.3.3 誤書き込み防止

状況によっては、デバイスによるプログラムメモリへの書き込みを禁止する場合があります。プログラムメモリへの誤書き込みを防ぐために、各種のメカニズムが用意されています。まず、電源投入時には WRENビットがクリアされます。また、パワーアップ タイマ( 継続時間は 72 ms) の動作中も、プログラムメモリへの書き込みは行えません。

書き込み開始シーケンスと WREN ビットにより、パワーグリッチまたはソフトウェアの誤動作による誤書き込みを防止します。

20.3.4 コード保護中の動作

デバイスのコード保護が有効でも、CPU はプログラムメモリに対してスクランブルされていないデータの読み書きが可能です。テストモードのアクセスは禁止されます。

20.3.5 書き込み保護中の動作

プログラムメモリが書き込み保護されている場合、CPU はプログラムメモリからの読み出しと実行が行えます。プログラムメモリの書き込み保護されている領域は、PMCON レジスタを使って CPU が書き換える事はできません。書き込み保護は、ICSP モードでは無効です。

Note: 書き込み保護ビットを使うと、ユーザのプログラムがユーザコードで書き換えられるのを防ぐ事ができます。書き込み保護ビットは、ICSP によるプログラミングには影響しません。コード保護ビットでコード保護を有効にすると、ICSP インターフェイスからはプログラムメモリに書き込みできません。

Note: 消去は、行の境界直後の 4 ワード書き込みの場合 ( すなわち、PMADRL<3:0> = xxxx0011でPMCON1<WR> をセットした場合 ) のみ開始します。

Page 136: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.136 2017 Microchip Technology Inc.

図 20-2: 8K フラッシュ プログラムメモリに対するブロック書き込み

図 20-3: フラッシュ プログラムメモリのロングライト サイクル実行

14 14 14 14

Program Memory

Buffer Register

PMADRL<1:0> = 00

Buffer Register

PMADRL<1:0> = 01

Buffer Register

PMADRL<1:0> = 10

Buffer Register

PMADRL<1:0> = 11

PMDATLPMDATH

7 5 0 7 0

6 8

First word of block tobe written

If at new row sixteen wordsof Flash are erased, thenfour buffers are transferredto Flash automatically afterthis word is written.

Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

BSF PMCON1,WRExecuted here

INSTR (PC + 1)Executed here

PC + 1Flash

INSTR PMDATH, PMDATL INSTR (PC + 3)INSTR

NOPEXECUTED HERE

Flash

Flash

PMWHLT

WR bit

Processor halted EE Write Time

PMADRH, PMADRL PC + 3 PC + 4

INSTR (PC + 3)Executed here

ADDR

DATA

MemoryLocation

ignoredread

PC + 2

INSTR (PC + +2)

(INSTR (PC + 2)NOP

EXECUTED HERE

(PC) (PC + 1)

Page 137: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.137

MCP19124/5

21.0 Timer0 モジュール

Timer0 モジュールは 8 ビットのタイマ / カウンタで、以下の特長を備えています。

• 8 ビットのタイマ / カウンタレジスタ (TMR0)

• 8 ビット プリスケーラ

• プログラマブルな内部または外部クロック源

• プログラマブルな外部クロックエッジ選択

• オーバーフロー割り込み

図 21-1 に、Timer0 モジュールのブロック図を示します。

図 21-1: Timer0 のブロック図

21.1 Timer0 の動作

Timer0 モジュールは、8 ビットのタイマまたはカウンタとして使えます。

21.1.1 8 ビットタイマ モード

プリスケーラを使わない場合、Timer0 モジュールは 1命令サイクルごとにインクリメントします。8 ビットタイマ モードを選択するには、OPTION_REG レジスタの T0CS ビットをクリアします。

TMR0 に書き込みが実行されると、書き込み直後の 2命令サイクル間はインクリメントが抑止されます。

21.1.2 8 ビットカウンタ モード

8 ビットカウンタ モードでは、Timer0 モジュールはT0CKI ピンの立ち上がりエッジまたは立ち下がりエッジごとにインクリメントします。どちらのエッジでインクリメントするかは、OPTION_REG レジスタの T0SE ビットによって決定します。

T0CKI ピンを使った 8ビットカウンタ モードを選択するには、OPTION_REG レジスタの T0CS ビットを「1」にセットします。

21.1.3 ソフトウェアでプログラム可能なプリスケーラ

ソフトウェアでプログラム可能なプリスケーラが 1 つ用意されており、Timer0 またはウォッチドッグ タイマ(WDT) に割り当てて使えますが、両方に同時に割り当てる事はできません。プリスケーラは OPTION_REGレジスタの PSA ビットで割り当てます。プリスケーラを Timer0 に割り当てるには、PSA ビットを「0」にクリアする必要があります。

Timer0 モジュールのプリスケーラは、1:2 から 1:256までの 8 つの設定が可能です。プリスケーラ値はOPTION_REGレジスタのPS<2:0>ビットで選択します。Timer0モジュールに 1:1のプリスケーラ値を設定するには、OPTION_REG レジスタの PSA ビットをセットしてプリスケーラを無効にします。

プリスケーラ値の読み書きはできません。プリスケーラを Timer0 モジュールに割り当てると、TMR0 レジスタに対するあらゆる書き込み命令がプリスケーラをクリアします。

T0CKI

TMR0SE

TMR0

PS<2:0>

Data Bus

Set Flag bit TMR0IFon Overflow

TMR0CS

0

10

18

8

8-bitPrescaler

FOSC/4

PSA

Sync2 TCY

Overflow to Timer1

Note: TMR0 への書き込み時に生じる 2 命令サイクル間の遅延は、TMR0 レジスタに書き込む値を調整する事で補償できます。

Page 138: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.138 2017 Microchip Technology Inc.

21.1.4 Timer0 モジュールと WDT モジュール間のプリスケーラの切り換え

プリスケーラはTimer0とWDTのどちらかに割り当てられるため、プリスケーラ値の割り当てを変更する際に意図しないデバイスリセットが発生する可能性があります。Timer0 モジュールから WDT モジュールへプリスケーラの割り当てを変更する際は、例 21-1 に示す命令シーケンスを実行する必要があります。

例 21-1: プリスケーラの変更(Timer0 WDT)

WDTモジュールからTimer0モジュールへプリスケーラ割り当てを変更する際は、以下の命令シーケンスを実行する必要があります ( 例 21-2 参照 )。

例 21-2: プリスケーラの変更(WDT TIMER0)

21.1.5 Timer0 割り込み

TMR0 レジスタが FFh から 00h にオーバーフローすると、Timer0 は割り込みを生成します。Timer0 割り込みの有効 /無効にかかわらず、TMR0レジスタがオーバーフローするたびに INTCON レジスタの T0IF 割り込みフラグビットがセットされます。T0IF ビットはソフトウェアでのみクリアできます。Timer0 割り込みを有効にするには、INTCON レジスタの T0IE ビットをセットします。

21.1.6 外部クロックを用いた Timer0 の使用

Timer0 がカウンタモードの場合、内部位相クロックのQ2 および Q4 サイクルでプリスケーラ出力をサンプリングしてT0CKI入力とTimer0レジスタを同期します。従って、外部クロック源の High/Low 期間は、セクション 4.0「電気的特性」に記載されたタイミング要件を満たす必要があります。

21.1.7 スリープ中の動作

プロセッサがスリープ中、Timer0 は動作しません。プロセッサがスリープ中、TMR0 レジスタの内容は変更されません。

BANKSELTMR0;CLRWDT ;Clear WDTCLRFTMR0;Clear TMR0 and

;prescalerBANKSELOPTION_REG;BSF OPTION_REG,PSA;Select WDTCLRWDT ;

;MOVLWb’11111000’;Mask prescalerANDWFOPTION_REG,W;bitsIORLWb’00000101’;Set WDT prescalerMOVWFOPTION_REG;to 1:32

CLRWDT ;Clear WDT and;prescaler

BANKSELOPTION_REG;MOVLWb’11110000’;Mask TMR0 select andANDWFOPTION_REG,W;prescaler bits IORLWb’00000011’;Set prescale to 1:16 MOVWFOPTION_REG;

Note: スリープ中はTimer0が停止しているため、このタイマの割り込みによってプロセッサをスリープから復帰させる事はできません。

表 21-1: Timer0 関連レジスタのまとめ

レジスタ名 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0レジスタ内容記載ページ

INTCON GIE PEIE T0IE INTE IOCIE T0IF INTF IOCIF 93

OPTION_REG RAPU INTEDG T0CS T0SE PSA PS2 PS1 PS0 78

TMR0 Timer0 モジュール レジスタ 137*

TRISGPA TRISA7 TRISA6 TRISA5 TRISA4 TRISA3 TRISA2 TRISA1 TRISA0 109

Legend: — = 未実装、「0」として読み出し。網掛け部分は Timer0 モジュールでは使いません。

*本文中でレジスタを説明しているページです。

Page 139: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.139

MCP19124/5

22.0 Timer1 モジュール ( ゲート制御対応 )

Timer1 モジュールは 16 ビットのタイマで、以下の特長を備えています。

• 16 ビットのタイマ レジスタペア(TMR1H:TMR1L)

• どちらのレジスタも読み書き可能

• 内部クロック源を選択可能

• 2 ビット プリスケーラ

• オーバーフロー割り込み

図 22-1 に、Timer1 モジュールのブロック図を示します。

図 22-1: Timer1 のブロック図

22.1 Timer1 の動作

Timer1 モジュールは 16 ビットのインクリメントカウンタで、TMR1H:TMR1L レジスタペアを介してアクセスします。TMR1H または TMR1L に書き込むと、カウンタ値を直接更新できます。このタイマは、1 命令サイクルごとにインクリメントします。

Timer1 を有効にするには、T1CON レジスタのTMR1ONビットを設定します。レジスタ22-1にTimer1のイネーブル選択を示します。

22.2 クロック源の選択

Timer1 のクロック源は、T1CON レジスタの TMR1CSビットで選択します。表 22-1 にクロック源の選択を示します。

22.2.1 内部クロック源

TMR1H:TMR1L レジスタペアは、Timer1 プリスケーラで決まる FOSC または FOSC/4 の倍数単位でインクリメントします。

例えば FOSC 内部クロック源を選択した場合、Timer1レジスタの値は1命令クロックサイクルあたり4カウント分インクリメントします。

TMR1H TMR1L

TMR1CS

T1CKPS<1:0>

1

02

Set Flag bitTMR1IF onOverflow

TMR1ON

Note 1: TMR1 レジスタは、立ち上がりエッジでインクリメントします。

FOSC

TMR1 (1)

Prescaler1, 2, 4, 8

表 22-1: クロック源の選択

TMR1CS クロック源

1 8 MHz システムクロック (FOSC)

0 2 MHz 命令クロック (FOSC/4)

Page 140: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.140 2017 Microchip Technology Inc.

22.3 Timer1 プリスケーラ

Timer1 のプリスケーラは、クロック入力の 1/1、1/2、1/4、1/8 倍の 4 種類の設定が可能です。プリスケーラカウンタは、T1CON レジスタの T1CKPS ビットで制御します。プリスケーラ カウンタは直接読み書きできませんが、TMR1H または TMR1L への書き込み時にクリアされます。

22.4 Timer1 割り込み

Timer1 のレジスタペア (TMR1H:TMR1L) は、FFFFhまでインクリメントすると0000hにロールオーバーします。Timer1 がロールオーバーすると、PIR1 レジスタの Timer1 割り込みフラグビットがセットされます。ロールオーバー割り込みを有効にするには、以下のビットをセットする必要があります。

• T1CON レジスタの TMR1ON ビット

• PIE1 レジスタの TMR1IE ビット

• INTCON レジスタの PEIE ビット

• INTCON レジスタの GIE ビット

割り込みサービスルーチンで TMR1IF ビットをクリアすると、割り込みは解除されます。

22.5 スリープ中の Timer1

標準的なミッドレンジ デバイスのTimer1モジュールとは異なり、MCP19124/5 の Timer1 モジュールは内部システムクロックでのみ動作するため、スリープ中は動作できません。このため、Timer1 モジュールを使ってデバイスをスリープから復帰させる事もできません。

22.6 Timer1 制御レジスタ

レジスタ 22-1に示すTimer1制御 (T1CON)レジスタは、Timer1 の制御と Timer1 モジュールの各種機能の選択に使います。

Note: 割り込みを有効にする前に、TMR1H:TMR1L レジスタペアと TMR1IFビットをクリアする必要があります。

レジスタ 22-1: T1CON: Timer1 制御レジスタ

U-0 U-0 R/W-0 R/W-0 U-0 U-0 R/W-0 R/W-0

— — T1CKPS1 T1CKPS0 — — TMR1CS TMR1ON

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-6 未実装 :「0」として読み出し

bit 5-4 T1CKPS<1:0>: Timer1 入力クロック プリスケーラ選択ビット

11 = 1:810 = 1:401 = 1:200 = 1:1

bit 3-2 未実装 :「0」として読み出し

bit 1 TMR1CS: Timer1 クロック源制御ビット

1 = 8 MHz システムクロック (FOSC)0 = 2 MHz 命令クロック (FOSC/4)

bit 0 TMR1ON: Timer1 ON ビット

1 = Timer1 を有効にする0 = Timer1 を停止し Timer1 ゲート フリップフロップをクリアする

Page 141: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.141

MCP19124/5

表 22-2: Timer1 関連レジスタのまとめ

レジスタ名

bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0レジスタ内容記載ページ

INTCON GIE PEIE T0IE INTE IOCE T0IF INTF IOCF 93

PIE1 TXIE RCIE BCLIE SSPIE CC2IE CC1IE TMR2IE TMR1IE 94

PIR1 TXIF RCIF BCLIF SSPIF CC2IF CC1IF TMR2IF TMR1IF 96

TMR1H 16 ビット TMR1 レジスタの上位バイト保持レジスタ 139*

TMR1L 16 ビット TMR1 レジスタの下位バイト保持レジスタ 139*

T1CON — — T1CKPS1 T1CKPS0 — — TMR1CS TMR1ON 140

Legend: — = 未実装、「0」として読み出し網掛け部分は Timer1 モジュールでは使いません。

* 本文中でレジスタを説明しているページです。

Page 142: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.142 2017 Microchip Technology Inc.

NOTE:

Page 143: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.143

MCP19124/5

23.0 Timer2 モジュール

Timer2 モジュールは 8 ビットのタイマで、以下の特長を備えています。

• 8 ビットのタイマレジスタ (TMR2)

• 8 ビットの周期レジスタ (PR2)

• TMR2 と PR2 の一致割り込み

• ソフトウェア プログラマブル プリスケーラ (1:1、1:4、1:8、1:16)

Timer2 のブロック図は図 23-1 を参照してください。

23.1 Timer2 の動作

Timer2 モジュールへのクロック入力には、システムクロック (FOSC) を使います。クロックは Timer2 のプリスケーラに入力されます。このプリスケーラは 1:1、1:4、1:8、1:16 の設定が可能です。このプリスケーラの出力を、TMR2 レジスタのインクリメントに使います。

TMR2 と PR2 の値を常に比較して、一致しているかどうかを判断します。TMR2 の値は 00h から、PR2 の値に一致するまでインクリメントします。これらの値が一致すると、次のインクリメント サイクルで TMR2 は00h にリセットします。

Timer2/PR2 コンパレータの一致出力を使って、PIR1レジスタの TMR2IF 割り込みフラグビットがセットされます。

TMR2 および PR2 レジスタは、両方共読み書きできます。全てのリセットによって、TMR2 レジスタは00hに設定され、PR2レジスタはFFhに設定されます。

Timer2をONにするには、T2CONレジスタのTMR2ONビットを「1」にセットします。Timer2 を OFF にするには、TMR2ON ビットを「0」にクリアします。

Timer2 プリスケーラは T2CON レジスタの T2CKPSビットで制御します。プリスケーラ カウンタは、以下の場合にクリアされます。

• TMR2 への書き込みが発生した

図 23-1: Timer2 のブロック図

Comparator

TMR2Sets Flag

TMR2

Output

ResetPrescaler

PR2

2

FOSC 1:1, 1:4, 1:8, 1:16

EQ

bit TMR2IF

T2CKPS<1:0>

Page 144: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.144 2017 Microchip Technology Inc.

23.2 Timer2 制御レジスタ

レジスタ 23-1: T2CON: Timer2 制御レジスタ

U-0 U-0 U-0 U-0 U-0 R/W-0 R/W-0 R/W-0

— — — — — TMR2ON T2CKPS1 T2CKPS0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-3 未実装 :「0」として読み出し

bit 2 TMR2ON: Timer2 ON ビット

1 = Timer2 を ON にする0 = Timer2 を OFF にする

bit 1-0 T2CKPS<1:0>: Timer2 クロック プリスケーラ選択ビット

00 = 1:101 = 1:410 = 1:811 = 1:16

表 23-1: Timer2 関連レジスタのまとめ

レジスタ名

bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0レジスタ内容記載ページ

INTCON GIE PEIE T0IE INTE IOCE T0IF INTF IOCF 93

PIE1 TXIE RCIE BCLIE SSPIE CC2IE CC1IE TMR2IE TMR1IE 94

PIR1 TXIF RCIF BCLIF SSPIF CC2IF CC1IF TMR2IF TMR1IF 96

PR2 Timer2 モジュール周期レジスタ 143*

T2CON — — — — — TMR2ON T2CKPS1 T2CKPS0 144

TMR2 8 ビット TMR2 タイムベース用の保持レジスタ 143*

Legend: — = 未実装、「0」として読み出し網掛け部分は Timer2 モジュールでは使いません。

* 本文中でレジスタを説明しているページです。

Page 145: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.145

MCP19124/5

24.0 デュアル キャプチャ / コンペア(CCD) モジュール

MCP19124/5 は CCD モジュールを実装しています。このモジュールは、標準の CCP モジュールに基づいた新しいモジュールです。PWM 機能を持たないキャプチャ /コンペアのみのレジスタセットを 2 つ備えています。

24.1 キャプチャモード

キャプチャモードでは、DIMI ピンでイベントが発生すると、TMR1 レジスタの 16 ビットの値がCCxRH:CCxRL レジスタセットにキャプチャされます。イベントとしては、以下のいずれか 1 つを指定します。

• 全ての立ち下がりエッジ

• 全ての立ち上がりエッジ

• 4 回に 1 度の立ち上がりエッジ

• 16 回に 1 度の立ち上がりエッジ

イベントタイプは制御ビット CCxM3:CCxM0( レジスタセット 1 は CCDCON<3:0>、レジスタセット 2 はCCDCON<7:4>) で設定します。キャプチャが実行されると、割り込み要求フラグビット CCxIF( レジスタセット 1 は PIR1<2>、レジスタセット 2 は PIR1<3>) がセットされます。この割り込みフラグはソフトウェアでクリアする必要があります。レジスタセットの値を読み出す前に再度キャプチャが実行されると、古い値が新しい値で上書きされます。

24.1.1 CCx ピンの設定

キャプチャモードでは、対応する TRIS ビットをセットして DIMI ピンを入力に設定する必要があります。

図 24-1: キャプチャモード動作のブロック図

24.1.2 Timer1 モードの選択

CCD モジュールのキャプチャ機能を使うには、Timer1は命令クロックで動作している必要があります。Timer1 が 8 MHz クロックで動作している場合、キャプチャ機能が正常に機能しない場合があります。

24.1.3 ソフトウェア割り込み

キャプチャモードを変更すると、誤ったキャプチャ割り込みが発生する可能性があります。このような動作モード変更後は、誤った割り込みを防ぐためキャプチャ割り込みイネーブルをクリア状態に保持し、CCxIF フラグビットをクリアする必要があります。

24.1.4 CCD プリスケーラ

プリスケーラの設定は 4 種類あり、CCxM3:CCxM0ビットで設定します。CCD レジスタセットが無効の場合、またはキャプチャモードに設定されていない場合、プリスケーラ カウンタはクリアされています。何らかのリセットが発生するとプリスケーラ カウンタはクリアされます。

あるキャプチャ プリスケーラから他のプリスケーラに切り換えると割り込みが発生する場合があります。また、切り換え時にはプリスケーラ カウンタがクリアされないため、変更後の 初のキャプチャが、ゼロ以外からカウントを開始したプリスケーラによって発生する恐れもあります。プリスケーラ値を変更する前に、このレジスタセットを無効にする (CCxM3:0 = 00xx)事を推奨します。

Note: DIMIピンを出力に設定した場合、そのポートへの書き込み動作を実行するとキャプチャ条件になる事があります。

System Clock

(FOSC)

CCDCON<CCxM3:0>

CCxRH CCxRL

TMR1H TMR1L

Capture

Enable

CCD pin

Prescaler÷1, 4, 16

Set Flag bit CCxIF(PIR1 register)

and

Edge Detect

Page 146: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.146 2017 Microchip Technology Inc.

24.2 コンペアモード

コンペアモードでは、CCDRx レジスタの 16 ビットの値を、TMR1 レジスタペアの値と常時比較します。2 つの値が一致すると、CMPx ピンは以下のいずれかの動作を示します。

• High に駆動

• Low に駆動

• トグル

• 不変

ピンの動作は制御ビットCCxM3:CCxM0の値で決まります。同時に、割り込みフラグビット CCP1IF がセットされます。

図 24-2: コンペアモード動作のブロック図

24.2.1 CMPx ピンの設定

コンペアモードでは、対応する TRIS ビットをクリアして CMPx ピンを出力に設定する必要があります。

24.2.2 Timer1 モードの選択

CCD モジュールのコンペア機能を使うには、Timer1は命令クロックで動作している必要があります。Timer1 が 8 MHz クロックで動作している場合、コンペア機能が正常に機能しない場合があります。

24.2.3 ソフトウェア割り込みモード

ソフトウェア割り込み生成モードを選択した場合、CCP1 ピンの動作に変化はありません。CCP1IF ビットをセットすると、CCx 割り込みが ( 有効な場合 ) 生成されます。

24.2.4 特殊イベントトリガ

このモードでは内部ハードウェア トリガが生成されます。このトリガは動作を開始させるために使えます。A/D モジュールが有効な場合、CCD の特殊イベントトリガ出力はTMR1レジスタペアをリセットしないでA/D 変換を開始させます。

Special Event

Trigger

Match

TRIS

Output Enable

CCDCON<CCxM3:0>

Mode Select

CCDRxH CCDRxL

CCD pin

Set CCDxIF

Interrupt Flag

(PIR1)

Q S

R

Output

Logic

4

TMR1H TMR1L

Comparator

Special Event Trigger will:

- NOT set interrupt flag bit TMR1IF in the PIR1 register.

- Set the GO/DONE bit to start the ADC conversion.

Note: CCxM<3:0> ビットをクリアすると、CMPxコンペア出力ラッチは既定値の状態に変更されます。これは GPIO ピンのデータラッチではありません。「一致時セット」と「一致時トグル」の既定値は「0」ですが、「一致時クリア」の既定値は「1」です。

Note: CCDモジュールからの特殊イベントトリガは、割り込みフラグビット TMR1IF (PIR1 レジスタの bit 0) をセットしません。

Page 147: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.147

MCP19124/5

24.3 デュアル キャプチャ / コンペアレジスタ

デュアル キャプチャ / コンペア モジュールは、標準のCCP モジュールに基づいた新規モジュールです。このモジュールは PWM 機能を持っていません。

レジスタ 24-1: CCDCON: デュアル キャプチャ / コンペア制御モジュール

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

CC2M3 CC2M2 CC2M1 CC2M0 CC1M3 CC1M2 CC1M1 CC1M0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-4 CC2M<3:0>: CC レジスタセット 2 モード選択ビット

00xx = キャプチャ / コンペアは OFF( モジュールをリセット )0100 = キャプチャモード、全ての立ち下がりエッジ0101 = キャプチャモード、全ての立ち上がりエッジ0110 = キャプチャモード、4 回目の立ち上がりエッジごと0111 = キャプチャモード、16 回目の立ち上がりエッジごと1000 = コンペアモード、一致時に出力をセットする (CC2IF ビットがセットされる )1001 = コンペアモード、一致時に出力をクリアする (CC2IF ビットがセットされる )1010 = コンペアモード、一致時に出力をトグル (CC2IF ビットがセットされる )1011 = 予約済み11xx = コンペアモード、一致時にソフトウェア割り込みを生成する (CC2IF ビットがセットされる。

CMP2 ピンは影響を受けず I/O として設定される )1111 = コンペアモード、特殊イベントをトリガする (CC2IF ビットがセットされる。CC2 は TMR1 (1)

をリセットせず、A/D モジュールが有効な場合 A/D 変換を開始させる。CMP2 ピンは影響を受けず I/O ポートとして設定される )

bit 3-0 CC1M<3:0>: CC レジスタセット 1 モード選択ビット

00xx = キャプチャ / コンペアは OFF( モジュールをリセット )0100 = キャプチャモード、全ての立ち下がりエッジ0101 = キャプチャモード、全ての立ち上がりエッジ0110 = キャプチャモード、4 回目の立ち上がりエッジごと0111 = キャプチャモード、16 回目の立ち上がりエッジごと1000 = コンペアモード、一致時に出力をセットする (CC1IF ビットがセットされる )1001 = コンペアモード、一致時に出力をクリアする (CC1IF ビットがセットされる )1010 = コンペアモード、一致時に出力をトグル (CC1IF ビットがセットされる )1011 = 予約済み11xx = コンペアモード、一致時にソフトウェア割り込みを生成する (CC1IF ビットがセットされる。

CMP1 ピンは影響を受けず I/O として設定される )1111 = コンペアモード、特殊イベントをトリガする (CC1IF ビットがセットされる。CC1 は TMR1

をリセットし、A/D モジュールが有効な場合 A/D 変換を開始させる。CMP1 ピンは影響を受けず I/O ポートとして設定される )

Note 1: コンペア割り込みフラグがセットされると、通常 PIC が TMR1 をリセットします。このモジュールがTMR1 をリセットする事はありません。

Page 148: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.148 2017 Microchip Technology Inc.

NOTE:

Page 149: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.149

MCP19124/5

25.0 内部温度インジケータ モジュール

MCP19124/5 は、シリコンダイの動作温度を計測するための温度センサを内蔵しています。シリコンダイの動作温度レンジは -40 ~ +125 です。温度検出回路は通常 -20 ~ +125 で動作します。この温度検出回路の出力はシリコンダイの温度に比例した電圧です。この出力はデバイスのA/Dコンバータに内部接続されています。

25.1 回路動作

この内部温度計測回路は常に有効です。

図 25-1: 温度計測の回路図

25.2 温度出力

温度回路の出力は、内蔵 A/D コンバータで計測されます。ADC の入力には、温度回路からの出力用にチャンネル 13 が予約済みです。詳細はセクション 19.0「A/Dコンバータ (ADC) モジュール」を参照してください。

シリコンダイ温度は、ADC の計測値から式 25-1 で求めます。工場で書き込まれた 10 ビット ADC 値はアドレス 2084h に格納されています。この回路の温度係数は 14.0 +/- 0.8 mV/ (-20 ~ +125 ) です。その他の温度の読み値はこの 30 の値から計算できます ( 式25-1 参照 )。式 25-1 は、AVDD に接続された ADC 参照電圧に基づいています。

式 25-1: シリコンダイ温度

ADCMUX

VDD

ADC

CHS bits(ADCON0 register)

n

VOUT

TEMP_DIE(C ADC_READING (counts) ADC_30C_READING (counts– 3.5(counts/· C

----------------------------------------------------------------------------------------------------------------------------------------------------- 30C+=

Page 150: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.150 2017 Microchip Technology Inc.

NOTE:

Page 151: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.151

MCP19124/5

26.0 PWM 制御ロジック

PWM 制御ロジックは、入力低電圧、入力過電圧、ゼロ電流検出等のイベントを識別するために標準コンパレータ モジュールを実装しています。この制御ロジックはハードウェア動作で出力駆動 (PDRV/SDRV)を適切にON/OFF し、ソフトウェアが読み出せるように対応する割り込みフラグをセットします。この制御ロジックは通常のPWM動作も定義します。制御ロジック内の個々のビットの定義は、特殊機能レジスタ (SFR) のセクションを参照してください。

図 26-1: PWM 制御ロジック

SDRVEN PDRVEN

OVLOINTP

OVLOINTNOVLOIF

UVLOINTP

UVLOINTNUVLOIF

UVLOEN

OVLOOVLOEN

DELAY

DELAY

SDRV

PDRV

OVINTP

OVINTNOVIF

+-

D

EN

Q OVOUT

OV

Q1

OVEN

PWMPWMSTR_SEN

PWM

PWMSTR_PEN

+-

DESATP

DESATNMUX

DEFAULT TO DESATP

BG

CDSPOL

CDSINTP

CDSINTNCDSIF

D

EN

Q CDSOUT

Q1

PWM

CDSOE

CDSWDEWDM_RESET

S

VsOV_REF

D

EN

Q

D

EN

Q

Q1

UVLOOUT

Q1

OVLOOUT

CDSMUX

UVLO

S

+-

E/AOUTIp

DRUVIF

OTIF

TMPTBY

+-VDRUVLO

+-OT

VDRUVBY

S

R

Q

ONESHOT

SDRV_ON

ONESHOT

200 ns

33 ns

SDRV_ON

Page 152: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.152 2017 Microchip Technology Inc.

NOTE:

Page 153: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.153

MCP19124/5

27.0 拡張 PWM モジュール

MCP19124/5 に実装されている PWM モジュールは、標準のミッドレンジ マイクロコントローラに搭載されているキャプチャ/ コンペア /PWM (CCP) モジュールの小型版です。本モジュールは PWM モジュールのみを備えています。この PWM モジュールは、標準のミッドレンジ マイクロコントローラのモジュールを少し変更したものです。MCP19124/5 では、PWMモジュールを使ってシステムクロックまたは基本波形を生成します。このシステムクロックは MCP19124/5 のスイッチング周波数を制御すると共に、 大許容デューティ サイクルを設定できます。PWM モジュールは、デューティ サイクルを常時調整して出力電圧を制御する事はありません。出力電圧は、アナログ制御ループと関連回路が制御します。

27.1 標準 PWM モード

CCP は PWM モードでのみ動作します。PWM 信号を使って、MCP19124/5の動作周波数と 大許容デューティサイクルを設定します。図 27-2 に、CCP モジュールからのPWM信号を示すMCP19124/5のブロック図の抜粋を示します。

図 27-1: PWM モジュールからのシステムクロックを示す MCP19124/5 のブロック図 ( 抜粋 )

システムクロックの PWM 信号に関係する動作モードは 2 つあります。スタンドアロン ( 周波数非同期 )モードと周波数同期モードです。

27.1.1 スタンドアロン (周波数非同期 )モード

MCP19124/5 をスタンドアロンで動作させる場合、PWM 信号はシステムクロックとして機能します。設定されたスイッチング周波数と設定された 大デューティサイクル (DCLOCK) で動作します。設定された 大デューティ サイクルを 1 サイクルごとに調整してMCP19124/5のシステム出力を制御する事はありません。出力を制御するデューティ サイクル (DPDRVON) は、MCP19124/5のアナログ制御ループと関連回路が調整します。ただし、DPDRVON の 大許容値は DCLOCK の値で決まります。

式 27-1:

27.1.2 スイッチング周波数同期モード

MCP19124/5 は、スイッチング周波数同期マスタまたはスレーブデバイスとしてプログラムできます。マスタデバイスはセクション 27.1.1「スタンドアロン ( 周波数非同期 ) モード」で説明したように機能します。異なるのはシステムクロックが GPA1 にも供給される点です。

スレーブデバイスはGPA1でマスタ システムクロックを受信します。このマスタ システムクロックとTimer2モジュールの出力の論理和をとります。この論理和の信号により、PWMRLとPWMPHLをそれぞれPWMRHと PWMPHH へラッチします。

図 27-2 に、PWM モードの CCP モジュールの概略ブロック図を示します。

PWMPHL レジスタを使うと、スレーブのシステムクロックに位相シフトを付加できます。

MCP19124/5スレーブデバイスのシステムクロック開始点は、マスタのシステムクロックから一定量ずらす事が望ましいと言えます。このスレーブの位相シフト量は、PWMPHL レジスタに書き込んで指定します。スレーブの位相シフト量は式 27-1 で求めます。

式 27-1:

PWM

S

R

Q

OVOVE

Q

116

PWM signal from CCP

DBUCK 1 DCLOCK–

SLAVEPHASE SHIFT PWMPHL TOSC T2PRESCALE VALUE =

Page 154: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.154 2017 Microchip Technology Inc.

図 27-2: PWM の概略ブロック図

図 27-3 に、PWM出力のタイムベース ( 周期 ) とデューティ サイクル (出力がHighに保持される期間 )を示します。PWM の周波数は、周期の逆数です(1/ 周期 )。

図 27-3: PWM 出力

27.1.3 PWM の周期

PWM 周期は、PR2 レジスタに書き込んで指定します。PWM 周期は下式により求まります。

式 27-2:

TMR2 と PR2 が等しくなると、直後のインクリメントサイクルで以下の 2 つのイベントが発生します。

• TMR2 がクリアされる

• PWM のデューティ サイクルが PWMRL からPWMRH にラッチされる

Note 1: Timer2 のクロック源は FOSC (8 MHz) です。

EN_SS

R

S Q

QOSC SYSTEM

CLOCK

LATCH DATA

LATCH DATA

RESET TIMER

8 8

8 8

Comparator Comparator

Comparator

88

8

8

PWMPHL PWMRL

WDM_ RESET

PWMPHH(SLAVE)

PWMRH(SLAVE)

TMR2(Note 1)

PR2CLKPIN_IN

(1)

Period

Duty Cycle

TMR2 = PR2 + 1TMR2 = PWMRH

TMR2 = PR2 + 1

PWMPERIOD PR2 1+ TOSC T2PRESCALE VALUE =

Page 155: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.155

MCP19124/5

27.1.4 PWM デューティ サイクル (DCLOCK)

PWM デューティ サイクル (DCLOCK) は、PWMRLレジスタに書き込む事によって指定します。 高分解能は8ビットです。PWMデューティ サイクル (DCLOCK)は、下式で求めます。

式 27-3:

PWMRLのビットにはいつでも書き込む事ができますが、PR2 と TMR2 が一致するまでデューティ サイクルの値は PWMRH にはラッチされません。

27.2 スリープ中の動作

デバイスがスリープに移行すると、割り当てられたタイマはインクリメントせず、モジュールの状態は変化しません。値を駆動している CLKPIN ピンは、引き続きその値を駆動します。デバイスがスリープから復帰すると、この状態から動作が再開します。

PWMDUTY CYCLE PWMRL TOSC T2PRESCALE VALUE =

表 27-1: PWM モジュール関連レジスタのまとめ

レジスタ名 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0レジスタ内容記載ページ

MODECON MSC1 MSC0 RFB — MSC2 — — — 52

T2CON — — — — — TMR2ON T2CKPS1 T2CKPS0 144

PR2 Timer2 モジュール周期レジスタ 153*

PWMRL PWM レジスタ下位バイト 153*

PWMPHL 位相シフト下位バイト 153*

Legend: — = 未実装、「0」として読み出し。網掛け部分は PWM モードでは使いません。

* 本文中でレジスタを説明しているページです。

Page 156: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.156 2017 Microchip Technology Inc.

NOTE:

Page 157: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.157

MCP19124/5

28.0 マスタ同期シリアルポート(MSSP) モジュール

28.1 MSSP モジュールの概要

マスタ同期シリアルポート (MSSP) モジュールは、他の周辺モジュールまたはマイクロコントローラ デバイスとの通信に使用するシリアル インターフェイスです。周辺モジュールとはシリアル EEPROM、シフトレジスタ、ディスプレイ ドライバ、A/D コンバータ (ADC)等です。MCP19124/5 の MSSP モジュールは、I2C(Inter-Integrated Circuit) モードでのみ動作します。

I2Cインターフェイスは、以下のモードと機能をサポートします。

• マスタモード

• スレーブモード

• バイト単位の NACK( スレーブモード )

• マルチマスタ ( 制約あり )

• 7/10 ビットアドレス指定

• START/STOP 割り込み

• 割り込みマスク

• クロック ストレッチ

• バスコリジョンの検出

• ジェネラルコール アドレス マッチング

• デュアル アドレスマスク

• アドレス / データ ホールドモード

• SDA ホールド時間の選択

図 28-1 に、マスタモード I2C インターフェイスのブロック図を示します。図 28-2 に、スレーブモードI2C インターフェイスのブロック図を示します。

図 28-1: MSSP のブロック図 (I2C マスタモード )

Read Write

SSPSR

Start bit, Stop bit,

Start bit detect,

SSPBUF

InternalData Bus

Set/Reset: S, P, SSPSTAT, WCOL, SSPxOV

ShiftClock

MSb LSb

SDA

AcknowledgeGenerate (SSPCON2)

Stop bit detectWrite collision detect

Clock arbitrationState counter forend of XMIT/RCV

SCL

SCL in

Bus Collision

SDA in

Re

ceiv

e E

nab

le (

RC

EN

)

Clo

ck C

ntl

Clo

ck a

rbitr

ate

/BC

OL

de

tect

(Hol

d of

f cl

ock

sour

ce)

[SSPxM 3:0]

Baud rate

Reset SEN, PEN (SSPCON2)

generator(SSPADD)

Address Match detect

Set SSPIF, BCLIF

Page 158: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.158 2017 Microchip Technology Inc.

図 28-2: MSSP のブロック図(I2C スレーブモード )

28.2 I2C モードの概要

I2C (Inter-Integrated Circuit) バスはマルチマスタ シリアルデータ通信バスです。デバイスはマスタ / スレーブ環境で通信し、マスタデバイス側から通信を開始します。スレーブデバイスはアドレス指定で制御されます。

I2C バスでは、以下の 2 つの信号接続を使います。

• シリアルクロック (SCL)

• シリアルデータ (SDA)

SCL 接続と SDA 接続はどちらも双方向のオープンドレイン ラインであり、それぞれに電源電圧へのプルアップ抵抗が必要です。ラインをグランドに接続するのは論理 0 で、ラインをフローティングにするのは論理 1 とみなされます。

図 28-3 に、マスタとスレーブとして設定された 2 つのデバイス間の代表的な接続を示します。

I2C バスには、1 つまたは複数のマスタデバイスと、1 つまたは複数のスレーブデバイスを接続できます。

各デバイスは以下の 4 つのモードのいずれかで動作します。

• マスタ送信モード( マスタがスレーブにデータを送信 )

• マスタ受信モード( マスタがスレーブからデータを受信 )

• スレーブ送信モード( スレーブがマスタにデータを送信 )

• スレーブ受信モード( スレーブがマスタからデータを受信 )

通信開始時、マスタデバイスはマスタ送信モードです。マスタデバイスは START ビットを送り、続いて通信相手のスレーブのアドレスバイトを送ります。次に、1 ビットの読み書き (R/W) ビットを送ります。このビットは、マスタがスレーブデバイスにデータを送信するのか、スレーブデバイスからデータを受信するのかを決定します。

マスタが指定したスレーブがバス上に存在する場合、そのスレーブは ACK ビットを返します。その後マスタは送信または受信モードの動作を継続し、スレーブもそれに合わせて受信または送信モードの動作を継続します。

START ビットは、SCL ラインを High に保ったまま、SDA ラインを High から Low に遷移させる事で示されます。アドレスバイトとデータバイトは、 上位ビット(MSb) から順に送信されます。マスタがスレーブからデータを読み出す場合は読み書きビットとして論理1を、スレーブにデータを書き込む場合は論理 0 を送信します。

図 28-3: I2C マスタ / スレーブ接続

ACK ビットはアクティブ Low 信号であり、スレーブデバイスは送信データの受信が完了して後続データの受信準備ができたら SDA ラインを Low に保持してトランスミッタに伝えます。

データビットの遷移は、必ず SCL ラインが Low に保持されている間に行われます。SCL ラインが High に保持されている間の遷移は、START ビットと STOPビットを表すために使います。

マスタがスレーブに書き込む場合、マスタがデータを1バイト送信するとスレーブがACKビットで応答するという動作を繰り返します。この場合、マスタデバイスはマスタ送信モードで、スレーブデバイスはスレーブ受信モードで動作します。

マスタがスレーブから読み出す場合、マスタはスレーブからデータを 1 バイト受信すると ACK ビットで応答するという動作を繰り返します。この場合、マスタデバイスはマスタ受信モードで、スレーブデバイスはスレーブ送信モードで動作します。

Read Write

SSPSR Reg

Match Detect

SSPADD Reg

Start andStop bit Detect

SSPBUF Reg

InternalData Bus

Addr Match

Set, ResetS, P bits

(SSPSTAT Reg)

SCL

SDA

ShiftClock

MSb LSb

SSPMSK1 Reg

Master

SCL

SDA

SCL

SDA

SlaveVDD

VDD

Page 159: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.159

MCP19124/5

データの 終バイトの通信が完了すると、マスタデバイスは STOP ビットを送出して転送を終了します。マスタデバイスが受信モードの場合、 後の ACKビットの代わりに STOP ビットを送信します。STOPビットは、SCL ラインを High に保ったまま、SDAラインをLowからHighに遷移させる事で示されます。

マスタがバスの制御を保持したまま、次の転送を開始する場合があります。そのような場合、マスタデバイスは STOP ビット ( 受信モード中ならば 後の ACKビット ) の代わりに、もう一度 START ビットを送出します。

I2C バスでは、以下の 3 つのメッセージ プロトコルを使います。

• マスタが 1 つのスレーブにデータを書き込むシングル メッセージ

• マスタが1つのスレーブからデータを読み出すシングル メッセージ

• マスタが 1 つまたは複数のスレーブに対して、複数回の読み出しまたは書き込み、あるいは読み出しと書き込みの組み合わせを実行するコンバインドメッセージ

あるデバイスが論理 1を送信 (ラインをフローティングに保持 ) 中に、もう 1 つのデバイスが論理 0 を送信( ラインを Low に保持 ) した場合、前者のデバイスはラインが論理 1 ではない事を検出できます。この検出を SCL ラインに対して適用した場合を、クロック ストレッチと呼びます。クロック ストレッチを使うと、スレーブデバイスからデータフローを制御できます。上記の検出を SDA ラインに対して適用した場合を、調停と呼びます。調停は、複数のマスタデバイスが同時に通信を行わないようにする仕組みです。

28.2.1 クロック ストレッチ

スレーブデバイスがデータ処理を完了していない場合、クロック ストレッチで後続データの転送を遅延させる事ができます。スレーブデバイスがビット送受信後に SCL クロックラインを Low に保持する事で、次の通信準備が整っていない事を知らせる事ができます。このスレーブと通信中のマスタは次のビットを転送するために SCL ラインを High にしようとしますが、クロックラインが解放されていない事を検出します。SCL 接続はオープンドレインであるため、スレーブは通信を再開する準備が整うまでラインを Low に保てます。

このように、レシーバがトランスミッタの動作に追いつけない場合、クロック ストレッチを使う事でレシーバ側から受信データのフローを制御できます。

28.2.2 調停

各マスタデバイスは、バス上の START/STOP ビットを監視する必要があります。デバイスはバスがビジー状態である事を検出した場合、バスがアイドル状態に戻るまで新たなメッセージを開始できません。

しかし、2 つのマスタデバイスがほぼ同時に送信を開始しようとする事は考えられます。この時、調停プロセスが開始します。各トランスミッタは SDA データラインのレベルを確認し、予測しているレベルと比較します。これら 2 つのレベルが一致しない事を検出したトランスミッタは調停に敗れ、SDA ラインへの送信を停止します。

例えば、あるトランスミッタが SDA ラインを論理 1 に保持 ( フローティングにする ) し、もう 1 つのトランスミッタが論理 0 に保持 (Low 駆動 ) すると、その結果、SDA ラインは Low です。すると、前者のトランスミッタは予測するレベルとラインのレベルが異なる事を検出し、他のトランスミッタが通信中であると判断します。

この差異を検出した前者のトランスミッタは調停に敗れ、SDA ラインの駆動を停止します。このトランスミッタがマスタデバイスでもあった場合、SCL ラインの駆動も停止する必要があります。その後、このトランスミッタはラインを監視し、STOP 条件を検出すると再送を試みます。その間、SDA ラインの予測レベルと実際のレベルに差異を検出しなかったもう一方のデバイスは、送信を継続します。こちらのデバイスでは特別な処理は不要です。こちらのデバイスには他のトランスミッタによる通信への干渉はなく、予測通りに送信が実行されているように見えるからです。

1つのマスタが複数のスレーブのアドレスを指定すると、スレーブ送信モードでも調停が実行されますが、それほど一般的ではありません。

2つのマスタデバイスが 2つの異なるスレーブデバイスにメッセージを送信している場合、送信しているスレーブアドレスの値が小さい方のマスタが常にアドレスステージでの調停に勝ちます。2 つのマスタデバイスが同じスレーブアドレスにメッセージを送信し、このアドレスが複数のスレーブを指している場合があります。このような場合はデータステージで調停が実行されます。

調停が発生するケースは非常にまれですが、マルチマスタ環境を適切にサポートするには必須のプロセスです。

Page 160: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.160 2017 Microchip Technology Inc.

28.3 I2C モードの動作

全ての MSSP I2C 通信は、バイト単位で処理され、MSbから順にシフト出力されます。6 つの SFR と 2 つの割り込みフラグが、PIC マイクロコントローラとユーザソフトウェアをモジュールに結び付けます。このモジュールは、2 本のピン (SDA と SCL) を使って他の外部 I2C デバイスと通信します。

28.3.1 バイト形式

I2Cの全ての通信は9ビットセグメントで実行されます。マスタからスレーブ (またはその逆 )へ 1バイト送信し、受信側が肯定応答ビットを返します。SCL ラインの 8番目の立ち下がりエッジの後、送信側デバイスは SDAピンを入力に切り換え、次のクロックパルスで ACK 値を受信します。

クロック信号 SCL は、マスタデバイスから供給します。データは SCL 信号が Low の間に変化でき、クロックの立ち上がりエッジでサンプリングされます。SCL ラインが High の間の SDA ラインの変化は、以下のセクションで説明する特殊なバス条件を意味します。

28.3.2 I2C 用語の定義

I2C では特有の I2C 通信用語を使います。これらは表 28-1 で説明し、それ以後は特に説明せずに使います。この表の情報は、Philips 社の I2C 仕様書より引用したものです。

28.3.3 SDA ピンと SCL ピン

I2C モードで SSPEN ビットをセットすると、SCL ピンと SDA ピンはオープンドレインとなります。これらのピンは、対応する TRIS ビットをセットして入力として設定する必要があります。

28.3.4 SDA ホールド時間

SDA ピンのホールド時間は、SSPCON3 レジスタのSDAHT ビットで選択します。ホールド時間とは SCLの立ち下がりエッジ後に SDA が有効に保持される時間です。SDAHT ビットをセットすると 小ホールド時間として 300 ns が選択され、静電容量の大きいバスに対して有効です。

Note: I2C モードが有効の場合、データ出力は 0です。

表 28-1: I2C バスの用語

用語 説明

トランスミッタ データをバスにシフト出力するデバイス

レシーバ データをバスからシフト入力するデバイス

マスタ 転送を開始し、クロック信号を生成し、転送を終了するデバイス

スレーブ マスタでアドレス指定されるデバイス

マルチマスタ データ転送を開始できるデバイスが複数接続されたバス

調停 バスを制御するマスタが同時に複数存在しないようにする手順 ( メッセージの破壊を防ぐ )

同期 バス上の複数のデバイスのクロックを同期させる手順

アイドル バスを制御するマスタが存在せず、SDA と SCL の両ラインが High の状態

アクティブ 1 つまたは複数のマスタデバイスがバスを制御している状態

アドレス指定されたスレーブ

自身のアドレスに一致するアドレス信号を受け取り、マスタからアクティブにクロック駆動されているスレーブデバイス

一致アドレス スレーブが受信し、SSPADDx に格納された値と一致するアドレスバイト

書き込み要求 R/W ビットがクリアされた一致アドレスをスレーブに送り、スレーブにデータ受信の準備を整えさせる事

読み出し要求 R/W ビットをセットしたアドレスバイトをマスタが送出し、スレーブからのデータ送信を要求する事 ( データとは、次のバイト以降、反復 START または STOP 条件までの全てのバイトを指す )

クロック ストレッチ 通信を一時停止するために、バス上のデバイスが SCL を Low に保持する事

バスコリジョン モジュールが出力中であり SDA ラインが High 状態であると想定しているにもかかわらず、同ラインで Low が検出される事

Page 161: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.161

MCP19124/5

28.3.5 START 条件

I2C の仕様書は、START 条件を「SCL ラインが Highの時に SDA が High から Low へ遷移する事」と定義しています。START 条件は常にマスタによって生成され、バスがアイドル状態からアクティブ状態に遷移した事を意味します。図 28-4 に、START 条件と STOP 条件の波形を示します。

モジュールが SDA ラインを Low にアサートする前にLow をサンプリングした場合、START 条件でバスコリジョンが発生する可能性があります。これは、START時にバスコリジョンは発生しないという I2Cの仕様に準拠していません。

28.3.6 STOP 条件

STOP 条件とは SCL ラインが High の時に SDA ラインが Low から High へ遷移する事です。

28.3.7 反復 START 条件

反復 START 条件が成立するのは、STOP 条件が成立する場合と同じです。マスタは、転送終了後もバスを解放せずに反復 START 条件を発行できます。反復START はスレーブにとって START と同じであり、全てのスレーブロジックをリセットしてアドレスを入力できるよう準備をします。マスタは、同じスレーブまたは別のスレーブのアドレスを指定できます。

10 ビットアドレス指定のスレーブモードの場合、アドレス指定したスレーブからマスタがデータを読み出すために反復 START が必要です。スレーブの全アドレスが指定され、上位 / 下位アドレスバイトが両方とも一致すると、マスタは反復 START を発行した後、R/Wビットがセットされた上位アドレスバイトを送ります。そして、スレーブロジックがクロックをホールドしてデータ出力の準備をします。

10 ビットモードの R/W クリアによる完全一致後は、一致フラグはセットされたまま維持されます。STOP条件に至るまで、R/W がクリアされた上位アドレス、つまり上位アドレス一致は失敗します。

28.3.8 START/STOP 条件の割り込みマスク

SSPCON3 レジスタの SCIE および PCIE ビットを使うと、通常はサポートされないスレーブモードの割り込み生成を有効にできます。スレーブモードではSTART/STOP 条件検出による割り込み機能が既に有効に設定されているため、これらのビットは影響を与えません。

図 28-4: I2C の START および STOP 条件

図 28-5: I2C の反復 START 条件

Note: STOP 条件が有効になるには SCL に少なくとも 1 回は Low 期間が必要です。従って、SCL ラインが High のまま SDA ラインがHigh から Low へ遷移し、再び High へ遷移した場合はSTART条件のみが検出されます。

SDA

SCLP

StopCondition

S

StartCondition

Change ofData Allowed

Change ofData Allowed

RestartCondition

Sr

Change ofData Allowed

Change ofData Allowed

Page 162: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.162 2017 Microchip Technology Inc.

28.3.9 ACK シーケンス

I2Cで転送されるバイトの 9番目のSCLパルスはACK専用です。このパルスで受信側デバイスはSDAラインをLow に駆動してトランスミッタに応答します。この間、トランスミッタは応答をシフト入力するためにラインの制御を解放する必要があります。ACK はアクティブLow 信号であり、SDA ラインを Low に駆動する事で、送信されたデータ受信が完了し、さらに後続のデータを受信する準備が整っている事をトランスミッタに伝えます。

ACKの結果は、SSPCON2レジスタのACKSTATビットに格納されます。

AHEN ビットと DHEN ビットがセットされている場合、トランスミッタへ送り返されるACKの値はユーザがスレーブ ソフトウェアで設定できます。SSPCON2 レジスタの ACKDT ビットをセット / クリアして、応答を決定します。

SSPCON3 レジスタの AHEN ビットと DHEN ビットがクリアされている場合、スレーブ ハードウェアがACK 応答を生成します。

スレーブが ACK を生成しない場合があります。バイト受信時に SSPSTAT レジスタの BF ビットまたはSSPCON1 レジスタの SSPOV ビットがセットされている場合、ACK は送信されません。

バス上の SCL の 8 番目の立ち下がりエッジ後に、このモジュールのアドレスが指定されると、SSPCON3レジスタの ACKTIM ビットがセットされます。ACKTIM ビットはアクティブなバスの ACK のタイミングを示します。ACKTIM ステータスビットがアクティブになるのは、AHEN ビットまたは DHEN ビットがイネーブルの時のみです。

28.4 I2C スレーブモードの動作

MSSP スレーブモードには 4 つの動作モードがあり、SSPCON1 レジスタの SSPM ビットで選択します。これらのモードは、7 ビットと 10 ビットのアドレス指定モードに分けられます。10 ビットアドレス指定モードは、7 ビットの場合と同じ動作ですが、増加分のアドレスビットを処理する時間 ( オーバーヘッド )が余分に必要です。

各アドレス指定モードには、START および STOPビット割り込みを有効にするモードもあり、この場合、START、反復 START、STOP 条件を検出すると SSPIFビットがセットされます。

28.4.1 スレーブモード アドレス

SSPADD レジスタはスレーブモード アドレスを格納します。START/ 反復 START 条件後、 初に受信したバイトとこのレジスタ値が比較されます。バイトが一致すると、その値が SSPBUF レジスタに書き込まれ、割り込みが生成されます。値が一致しない場合、モジュールはアイドル状態に移行し、ソフトウェアへの通知は何もありません。

SSPMSK1 レジスタは、アドレス一致プロセスに影響を与えます。詳細はセクション 28.4.10「SSPMSK1 レジスタ」を参照してください。

28.4.2 第 2 スレーブモード アドレス

SSPADD2 レジスタは 7 ビットの第 2 スレーブモードアドレスを格納します。START/ 反復 START 条件後、初に受信したバイトとこのレジスタ値が比較されます。

バイトが一致すると、その値が SSPBUF レジスタに書き込まれ、割り込みが生成されます。値が一致しない場合、モジュールはアイドル状態に移行し、ソフトウェアへの通知は何もありません。

SSPMSK2 レジスタは、アドレス一致プロセスに影響を与えます。詳細はセクション 28.4.10「SSPMSK1 レジスタ」を参照してください。

28.4.2.1 I2C スレーブの 7 ビットアドレス指定モード

7 ビットアドレス指定モードでは、アドレスの一致を判断する際に受信データバイトの LSb が無視されます。

28.4.2.2 I2C スレーブの 10 ビットアドレス指定モード

10 ビットアドレス指定モードの場合、 初の受信バイトがバイナリ値「1 1 1 1 0 A9 A8 0」と比較されます。A9 と A8 は 10 ビットアドレスの上位 2 ビットで、SSPADDレジスタのbit 2とbit 1に格納されています。

上位バイトの肯定応答 (ACK) 後、ユーザが SSPADDレジスタに下位アドレスを書き込むまで UA ビットがセットされ SCL が Low に保持されます。下位アドレスバイトが入力されると、8 ビット全てが SSPADD レジスタにある下位アドレスの値と比較されます。アドレスが一致しない場合でも、SSPIF と UA がセットされ、SSPADD が更新されて再び上位バイトを受信するまで SCL は Low に保持されます。SSPADD が更新されると、UA ビットはクリアされます。これにより、モジュールは次の通信で上位アドレスバイトを確実に受信する準備を整える事ができます。

全ての 10 ビットアドレス指定通信開始時には、書き込み要求として上位 / 下位アドレスが一致する必要があります。スレーブをアドレス指定したら反復 STARTを発行し、R/W ビットをセットした上位アドレスを送出する事で通信を開始できます。そしてスレーブ ハードウェアが読み出し要求に ACK を返し、データ送信の準備をします。この動作は、スレーブが上位 / 下位アドレスバイト一致を受信した後にのみ有効です。

28.4.3 スレーブ受信

受信したアドレスが一致し、その R/W ビットがクリアされていた場合、SSPSTAT レジスタの R/W ビットはクリアされます。受信したアドレスは SSPBUF レジスタに転送され、肯定応答 (ACK) が返されます。

受信アドレスがオーバーフロー条件を満たしている場合、否定応答 (NACK) が生成されます。オーバーフロー条件とは、SSPSTAT レジスタの BF ビットまたはSSPCON1 レジスタの SSPOV ビットがセットされている事と定義されます。この動作を変更するには、SSPCON3 レジスタの BOEN ビットを使います。詳細はレジスタ 28-4 を参照してください。

Page 163: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.163

MCP19124/5

1 データバイトが転送されるたびに MSSP 割り込みが生成されます。フラグビット (SSPIF) は、ソフトウェアでクリアする必要があります。

SSPCON2 レジスタの SEN ビットをセットすると、各バイトの受信後に SCL は Low に保持されます( クロック ストレッチ )。この場合、SSPCON1 レジスタの CKP ビットをセットしてクロックを解放する必要があります (10 ビットモードの場合は例外あり )。

28.4.3.1 7 ビットアドレス指定の受信

このセクションでは、7 ビットアドレス指定モードのI2C スレーブとして設定された MSSP モジュールの一般的なイベント シーケンス、またハードウェアまたはソフトウェアが下す全ての判断とそれらが受信に与える影響について説明します。図28-5および 28-6に、このシーケンスの波形を示します。

以下に、I2C 通信の代表的なステップを示します。

1. START ビットを検出する。

2. SSPSTATレジスタのSビットがセットされる。START 検出割り込みが有効の場合は SSPIFビットもセットされる。

3. R/Wビットがクリアされた一致アドレスをスレーブが受信する。

4. スレーブが SDA を Low に駆動してマスタにACK を送り、SSPIF ビットをセットする。

5. ソフトウェアが SSPIF ビットをクリアする。

6. ソフトウェアはSSPBUFから受信アドレスを読み出し、BF フラグがクリアされる。

7. SEN = 1の場合、スレーブ ソフトウェアが CKPビットをセットして SCL ラインを解放する。

8. マスタがデータバイトを送信する。

9. スレーブが SDA を Low に駆動してマスタにACK を送信し、SSPIF ビットをセットする。

10. ソフトウェアが SSPIF ビットをクリアする。

11. ソフトウェアはSSPBUFから受信バイトを読み出し、BF がクリアされる。

12. マスタからの全ての受信バイトに対して、ステップ 8 ~ 12 を繰り返す。

13. マスタがSSPSTATレジスタのPビットをセットして STOP 条件を送信し、バスがアイドル状態に移行する。

28.4.3.2 AHEN と DHEN を使う 7 ビット受信

スレーブデバイスの受信でAHENとDHENをセットした場合、受信動作はこれらの設定をしない場合と同じですが、SCLの 8番目の立ち下がりエッジの後に割り込みとクロック ストレッチが追加されます。これらの割り込みによって、ハードウェアではなくスレーブ ソフトウェアが、受信アドレスバイトまたは受信データバイトに対してACKを生成するかどうかを判断できます。

図 28-7 に、アドレスホールドとデータホールドの両方を使う場合のモジュール動作を示します。図 28-8 に、SSPCON2 レジスタの SEN ビットをセットした場合のモジュール動作を示します。I2C 通信でこれらのオプションを使う場合にスレーブ ソフトウェアが実行する必要のある手順を以下に示します。

1. SSPSTATレジスタのSビットがセットされる。START 検出割り込みが有効の場合は SSPIFビットもセットされる。

2. R/Wビットがクリアの状態で一致アドレスが取り込まれる。SSPIFがセットされ、SCLの 8番目の立ち下がりエッジの後にCKPがクリアされる。

3. スレーブが SSPIF ビットをクリアする。

4. スレーブは、SSPCON3 レジスタの ACKTIMビットを確認する事で、SSPIF ビットが ACKの前後どちらであるかを判断できる。

5. スレーブは SSPBUF のアドレス値を読み出し、BF フラグがクリアされる。

6. スレーブは ACKDT をセットして、ACK 値をマスタに送出する。

7. スレーブが CKP ビットをセットしてクロックを解放する。

8. ACKの後にSSPIFがセットされる (NACKの場合はセットされない )。

9. SEN = 1の場合、スレーブ ハードウェアは ACKの後にクロックをストレッチする。

10. スレーブが SSPIF ビットをクリアする。

11. 受信データバイトについてSCLの8番目の立ち下がりエッジ後にSSPIFビットがセットされてCKP ビットがクリアされる。

12. スレーブが SSPCON3 レジスタの ACKTIMビットを読み出して割り込み要因を判定する。

13. スレーブはSSPBUFから受信データを読み出し、BF がクリアされる。

14. 1 データバイトを受信するたびに、ステップ 7 ~14 を繰り返す。

15. スレーブが ACK = 1を送るか、マスタが STOP条件を送ると、通信が終了する (STOP 検出割り込みが無効に設定されている状態でSTOP条件が送信された場合、スレーブが通信終了を認識する唯一の方法は SSPSTAT レジスタの Pビットをポーリングする事です )。

Note: クロック ストレッチが実行されず、BFフラグがクリアされた場合でも、SSPIFビットはSCLの 9番目の立ち下がりエッジ後にセットされます。NACK がマスタへ送られた場合のみ、SSPIF はセットされません。

Page 164: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MC

P19124/5

DS

20005619A

_JP - p.164

2017 M

icrochip Technolo

gy Inc.

図 28-6: I2C スレーブ、7 ビットアドレス、受信 (SEN = 0、AHEN = 0、DHEN = 0)

Receiving Address

ACK

Receiving Data

ACKReceiving Data ACK = 1

A7 A6 A5 A4 A3 A2 A1 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0SDA

SCL

SSPIF

BF

SSPOV

1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8

Cleared by software

SSPBUF is read

Cleared by software

PS

From Slave to Master

SSPIF set on 9th

falling edge ofSCL

First byteof data isavailablein SSPBUF

Bus Master sendsStop condition

SSPOV set becauseSSPBUF is still full.ACK is not sent.

9 9 9

Page 165: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017

Microchip T

echnology Inc.D

S200056

19A_JP

- p.165

MC

P19124/5

図 28-7: I2C スレーブ、7 ビットアドレス、受信 (SEN = 1, AHEN = 0, DHEN = 0)

SEN SEN

A7 A6 A5 A4 A3 A2 A1 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0SDA

SCL 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 P

ACK

CKP

SSPOV

BF

SSPIF

Cleared by softwareCleared by software

SSPBUF is read

S

ACKACKReceive Address Receive Data Receive Data

R/W=0

Bus Master sendsStop condition

SSPIF set on 9th falling edge of SCL

Clock is held low until CKP isset to ‘1’

First byteof data isavailablein SSPBUF

SSPOV set becauseSSPBUF is still full.ACK is not sent.

CKP is written to ‘1’ in software,releasing SCL

CKP is written to ‘1’ in software,releasing SCL

SCL is not heldlow becauseACK = 1

Page 166: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MC

P19124/5

DS

20005619A

_JP - p.166

2017 M

icrochip Technolo

gy Inc.

図 28-8: I2C スレーブ、7 ビットアドレス、受信 (SEN = 0、AHEN = 1、DHEN = 1)

Receiving Address Receiving Data Received Data

P

A7 A6 A5 A4 A3 A2 A1 D7 D6 D5 D4 D3 D2 D1 D0SDA

SCL

BF

CKP

S

P

1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8S

Data is read from SSPBUF

Cleared by software

9

ACK = 1ACK

ACKDT

ACKTIM

SSPIF

ACK

If AHEN = 1,SSPIF is set

SSPIF is set on9th falling edge ofSCL, after ACK

;Address to readfrom SSBUF

Slave softwareclears ACKDT toACK the received byte

When AHEN = 1:CKP is cleared by hardwareand SCL is stretched

ACKTIM set by hardwareon 8th falling edge of SCL

No interruptafter not ACKfrom Slave

Slave softwaresets ACKDT tonot ACK

When DHEN = 1:CKP is cleared byhardware on 8th fallingedge of SCL

CKP set by software,SCL is released

ACKTIM cleared byhardware on 9th

rising edge of SCL

ACKTIM set by hardwareon 8th falling edge of SCL

Master Releases SDAxto slave for ACK sequence

Master sendsStop condition

D7 D6 D5 D4 D3 D2 D1 D0

Page 167: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017

Microchip T

echnology Inc.D

S200056

19A_JP

- p.167

MC

P19124/5

図 28-9: I2C スレーブ、7 ビットアドレス、受信 (SEN = 1、AHEN = 1、DHEN = 1)

Receiving Address Receive Data Receive DataA7 A6 A5 A4 A3 A2 A1 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0

SDA

SCL

SSPIF

BF

ACKDT

CKP

S

P

S1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9

Cleared by software

Slave software clearsACKDT to ACKthe received byte

P

Master sendsStop condition

ACKTIM

R/W = 0

ACK

Master releasesSDA to slave for ACK sequence

ACK

Receivedaddress is loaded intoSSPBUF

Received data isavailableon SSPBUF

SSPBUF can beread any time beforenext byte is loaded

No interrupt afterif not ACKfrom Slave

Slave sendsnot ACK

When AHEN = 1:on the 8th falling edgeof SCL of an addressbyte, CKP is cleared

When DHEN = 1:on the 8th falling edgeof SCL of a receiveddata byte, CKP iscleared

Set by software,release SCL

CKP is not clearedif not ACK

ACKTIM is set by hardwareon 8th falling edge of SCL

ACKTIM is cleared by hardwareon 9th rising edge of SCL

Page 168: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.168 2017 Microchip Technology Inc.

28.4.4 スレーブ送信

入力されるアドレスバイトのR/Wビットがセットされており、アドレスが一致している場合、SSPSTATレジスタの R/W ビットがセットされます。受け取ったアドレスがSSPBUFレジスタに書き込まれると、スレーブは9番目のビットでACKパルスを送ります。

ACKの後、スレーブ ハードウェアがCKPビットをクリアして SCL ピンが Low に保持されます。詳細はセクション 28.4.7「クロック ストレッチ」を参照してください。クロック ストレッチを実行すると、スレーブの送信データ準備が完了するまでマスタは次のクロックパルスをアサートできなくなります。

送信データは SSPBUF レジスタに書き込まれます。データはさらにSSPSRレジスタにも書き込まれます。その後、SSPCON1 レジスタの CKP ビットをセットする事で SCL ピンが解放されます。8 ビットのデータがSCL 入力の立ち下がりエッジでシフト出力されます。これにより、SCL が High の間は SDA 信号が確実に有効になります。

マスタレシーバからのACKパルスが 9番目のSCL入力パルスの立ち上がりエッジでラッチされます。このACK値は、SSPCON2レジスタのACKSTATビットへコピーされます。ACKSTAT がセット (NACK) されると、データ転送は完了です。この場合、NACK がスレーブでラッチされると、スレーブがアイドル状態に移行して次の START ビットが到達するまで待機します。SDAラインが Low (ACK) の場合、次の送信データをSSPBUF レジスタに書き込む必要があります。この場合も、CKP ビットをセットして SCL ピンを解放する必要があります。

1 データバイトが転送されるたびに MSSP 割り込みが生成されます。SSPIF ビットはソフトウェアでクリアする必要があり、バイトのステータスを判断するにはSSPSTAT レジスタを使います。SSPIF ビットは、9番目のクロックパルスの立ち下がりエッジでセットされます。

28.4.4.1 スレーブモードのバスコリジョン

スレーブは読み出し要求を受け取ると SDA ラインにデータをシフト出力し始めます。SSPCON3 レジスタの SBCDE ビットがセットされている場合にバスコリジョンが検出されると、PIR レジスタの BCLIF ビットがセットされます。バスコリジョンが検出されるとスレーブはアイドル状態に移行し、再度アドレス指定されるまで待機します。ユーザ ソフトウェアは BCLIFビットによってスレーブ バスコリジョンを処理できます。

28.4.4.2 7 ビット送信

マスタデバイスは、スレーブデバイスへ読み出し要求を送信し、スレーブからデータを読み出します。ここでは、通常の送信動作でスレーブ ソフトウェアが実行すべきステップを説明します。図 28-10 に、この動作の波形を示します。

1. マスタがSDAとSCLにSTART条件を送信する。

2. SSPSTATレジスタのSビットがセットされる。START 検出割り込みが有効の場合は SSPIFビットもセットされる。

3. R/W ビットがセットされた一致アドレスをスレーブが受け取る。

4. スレーブ ハードウェアがACKを生成してSSPIFビットをセットする。

5. ユーザによって SSPIF ビットがクリアされる。

6. ソフトウェアは SSPBUF から受信アドレスを読み出し、BF がクリアされる。

7. R/W がセットされているため、CKP ビットはACK の後に自動的にクリアされている。

8. スレーブ ソフトウェアが SSPBUF に送信データを書き込む。

9. CKPビットがセットされてSCLが解放されると、マスタはスレーブからデータを読み出す事ができる。

10. マスタからの ACK 応答が ACKSTAT レジスタに書き込まれると SSPIF ビットがセットされる。

11. SSPIF ビットがクリアされる。

12. スレーブ ソフトウェアは、ACKSTAT ビットをチェックしてマスタに後続の送信データがあるかどうか確認する。

13. 1 バイトを送信するたびに、ステップ 9 ~ 13 を繰り返す。

14. マスタが NACK を送信した場合、クロックはホールドされないが、SSPIF ビットはセットされる。

15. マスタが反復 START 条件または STOP 条件を送信する。

16. スレーブのアドレス指定が解除される。

Note 1: マスタが ACK を生成すると、クロックがストレッチされます。

2: ACKSTAT は、SCL の 9 番目の立ち上がりエッジ (立ち下がりエッジではない )で更新される唯一のビットです。

Page 169: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017

Microchip T

echnology Inc.D

S200056

19A_JP

- p.169

MC

P19124/5

図 28-10: I2C スレーブ、7 ビットアドレス、送信 (AHEN = 0)

Receiving Address Automatic Transmitting Data Automatic Transmitting Data

A7 A6 A5 A4 A3 A2 A1 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0

1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9

SDA

SCL

SSPIF

BF

CKP

ACKSTAT

R/W

D/A

S

P

Set by software

Cleared by software

S P

R/W = 1ACK ACK

ACK

Master sendsStop condition

Received addressis read from SSPBUF

When R/W is set,SCL is alwaysheld low after 9th SCLfalling edge

Data to transmit isloaded into SSPBUF

BF is automaticallycleared after 8th

falling edge of SCL

CKP is notheld for notACK

Master’s not ACKis copied toACKSTAT

R/W is copied from thematching address byte

Indicates an addresshas been received

Page 170: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.170 2017 Microchip Technology Inc.

28.4.4.3 7ビット送信 (アドレスホールド有効 )

SSPCON3 レジスタの AHEN ビットをセットすると、受け取った一致アドレスの 8 番目の立ち下がりエッジ後に、さらにクロック ストレッチと割り込み生成を追加できます。一致アドレスの入力が完了すると、CKPがクリアされて SSPIF 割り込みがセットされます。

図 28-11 に、AHEN を有効にした 7 ビットアドレスのスレーブ送信の一般的な波形を示します。

1. バスはアイドル状態にある。

2. マスタが START 条件を送る。SSPSTAT レジスタの S ビットがセットされる。START 検出割り込みが有効の場合は SSPIF がセットされる。

3. マスタが、R/W ビットをセットした一致アドレスを送る。SCL ラインの 8 番目の立ち下がりエッジの後、CKP ビットがクリアされて SSPIF割り込みが生成される。

4. スレーブ ソフトウェアが SSPIF ビットをクリアする。

5. スレーブ ソフトウェアが、SSPCON3 レジスタの ACKTIM ビットと、SSPSTAT レジスタの R/Wと D/A を読み出して、割り込み要因を決定する。

6. スレーブはSSPBUFレジスタのアドレス値を読み出し、BF ビットがクリアされる。

7. スレーブ ソフトウェアは、この情報に基づいてACK または NACK のどちらかを判断し、それに応じて SSPCON2 レジスタの ACKDT ビットをセットする。

8. スレーブが CKP ビットをセットして SCL を解放する。

9. マスタはスレーブが送った ACK 値を受け取る。

10. R/W ビットがセットされていた場合、スレーブハードウェアは ACK の後自動的に CKP ビットをクリアし、SSPIF ビットをセットする。

11. スレーブ ソフトウェアが SSPIF ビットをクリアする。

12. スレーブが、マスタへ送信する値を SSPBUF に書き込んで BF ビットをセットする。

13. スレーブが CKP ビットをセットしてクロックを解放する。

14. マスタはスレーブからデータを受信し、SCL の9 番目のパルスで ACK 値を送る。

15. この ACK 値を、スレーブ ハードウェアがSSPCON2 レジスタの ACKSTAT ビットへコピーする。

16. スレーブからマスタへ 1 バイトを送信するたびに、ステップ 10 ~ 15 を繰り返す。

17. マスタがNACKを送るとスレーブがバスを解放するため、マスタは STOP 条件を送って通信を終了できる。

Note: ACK が終わるまで、SSPBUF にデータを書き込む事はできません。

Note: スレーブが確実に SCL ラインを解放してSTOP 条件を受け取る事ができるように、マスタは 後のバイトで NACK を送る必要があります。

Page 171: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017

Microchip T

echnology Inc.D

S200056

19A_JP

- p.171

MC

P19124/5

図 28-11: I2C スレーブ、7 ビットアドレス、送信 (AHEN = 1)

Receiving Address Automatic Transmitting Data Automatic Transmitting DataA7 A6 A5 A4 A3 A2 A1 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0

1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9

SDA

SCL

SSPIF

BF

ACKDT

ACKSTAT

CKP

R/W

D/A

Cleared by software

SP

ACK ACKACK

ACKTIM

R/W = 1

Received addressis read from SSPBUF

Slave clearsACKDT to ACKaddress

Data to transmit isloaded into SSPBUF

BF is automaticallycleared after 8th

falling edge of SCL

Master’s ACKresponse is copiedto SSPSTAT

CKP not clearedafter not ACK

When AHEN = 1:CKP is cleared by hardwareafter receiving matchingaddress.

When R/W = 1:CKP is alwayscleared after ACK

Set by software,releases SCL

ACKTIM is set on 8th fallingedge of SCL

ACKTIM is set on 9th risingedge of SCL

Master sendsStop condition

Page 172: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.172 2017 Microchip Technology Inc.

28.4.5 スレーブモードの 10 ビットアドレス受信

このセクションでは、10 ビットアドレス指定モードのI2C スレーブとして設定された MSSP モジュールの一般的なイベント シーケンスについて説明します。

図 28-12 に、このシーケンスの波形を示します。

以下に、I2C 通信でスレーブ ソフトウェアが実行すべき一般的なステップを示します。

1. バスはアイドル状態にある。

2. マスタが START 条件を送る。SSPSTAT レジスタの S ビットがセットされる。START 検出割り込みが有効の場合はSSPIFがセットされる。

3. マスタが、R/W ビットがクリアされた一致上位アドレスを送る。SSPSTAT レジスタの UAビットがセットされる。

4. スレーブはACKを送り、SSPIFがセットされる。

5. ソフトウェアが SSPIF ビットをクリアする。

6. ソフトウェアはSSPBUFから受信アドレスを読み出し、BF フラグがクリアされる。

7. スレーブがSSPADDに下位アドレスを書き込み、SCL を解放する。

8. マスタが、一致下位アドレスバイトをスレーブへ送る。UA ビットがセットされる。

9. スレーブはACKを送り、SSPIFがセットされる。

10. スレーブが SSPIF ビットをクリアする。

11. スレーブが受信した一致アドレスをSSPBUFから読み出して、BF ビットをクリアする。

12. スレーブがSSPADDに上位アドレスを書き込む。

13. マスタがスレーブへデータバイトを送信し、9番目のSCLパルスでスレーブのACKを出力し、SSPIF ビットがセットされる。

14. SSPCON2 レジスタの SEN ビットがセットされている場合、ハードウェアで CKP ビットがクリアされてクロックがストレッチされる。

15. スレーブが SSPIF ビットをクリアする。

16. スレーブはSSPBUFから受信バイトを読み出し、BF がクリアされる。

17. SEN ビットがセットされている場合、スレーブは SCL を解放するために CKP をセットする。

18. 1 バイトを受信するたびに、ステップ 13 ~ 17を繰り返す。

19. マスタが STOP 条件を送り、通信を終了する。

28.4.6 10 ビットアドレス指定( アドレス / データホールドあり )

AHEN または DHEN をセットした 10 ビットアドレス指定を使う受信動作は、7 ビットモードの場合と同じです。唯一の相違点は、UA ビットを使って SSPADDレジスタを更新する必要がある事です。CKP ビットがクリアされ、かつ SCL ラインが Low に保持されている場合、全ての機能は 7 ビットモードと同じです。図 28-13 にスレーブ (10 ビットアドレス指定、AHEN= 1) の例を示します。

図 28-14 に、10 ビットアドレス指定モードでのスレーブトランスミッタの一般的な波形を示します。

Note: ACK シーケンスが完了するまで、SSPADDレジスタの更新は許可されません。

Note: 下位アドレスが一致しない場合、SSPIF とUA はセットされたままのため、スレーブソフトウェアはSSPADDを上位アドレスに戻す事ができます。アドレスが一致していないため、BF フラグはセットされません。CKP には影響しません。

Page 173: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017

Microchip T

echnology Inc.D

S200056

19A_JP

- p.173

MC

P19124/5

図 28-12: I2C スレーブ、10 ビットアドレス、受信 (SEN = 1、AHEN = 0、DHEN = 0)

SSPIF

Receive First Address Byte

ACK

Receive Second Address Byte

ACK

Receive Data

ACK

Receive Data

ACK1 1 1 1 0 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0SDA

SCL

UA

CKP

1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 P

Cleared by software

S

BF

Master sendsStop condition

Set by hardwareon 9th falling edge

If address matchesSSPADD, it is loaded intoSSPBUF

When UA = 1:SCL is held low

Software updates SSPADDand releases SCL

Receive address isread from SSPBUF

SCL is held lowwhile CKP = 0

Data is readfrom SSPBUF

When SEN = 1:CKP is cleared after9th falling edge of received byte

Set by software,releasing SCL

Page 174: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MC

P19124/5

DS

20005619A

_JP - p.174

2017 M

icrochip Technolo

gy Inc.

図 28-13: I2C スレーブ、10 ビットアドレス、受信 (SEN = 0、AHEN = 1、DHEN = 0) Receive First Address Byte

UA

Receive Second Address Byte

UA

Receive Data

ACK

Receive Data

1 1 1 1 0 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5SDA

SCL

SSPIF

BF

ACKDT

UA

CKP

ACKTIM

1 2 3 4 5 6 7 8 9

ACKACK

1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2

Cleared by software Cleared by software

R/W = 0

S

Set by hardwareon 9th falling edge

Slave software clearsACKDT to ACKthe received byte

SSPBUF can beread anytimebefore the nextreceived cycle

Received datais read fromSSPBUF

Update of SSPADD,clears UA and releasesSCL

If when AHEN = 1:on the 8th falling edge of SCLof an address byte, CKP iscleared

ACKTIM is set by hardwareon 8th falling edge of SCL

Update to SSPADD isnot allowed until 9th

falling edge of SCL

Set CKP with softwarereleases SCL

Page 175: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017

Microchip T

echnology Inc.D

S200056

19A_JP

- p.175

MC

P19124/5

図 28-14: I2C スレーブ、10 ビットアドレス、送信 (SEN = 0、AHEN = 0、DHEN = 0)

Receiving Address

ACKReceiving Second Address Byte

Sr

Receive First Address ByteACK

Transmitting Data Byte1 1 1 1 0 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 1 1 1 1 0 A9 A8 D7 D6D5D4D3D2 D1D0SDA

SCL

SSPIF

BF

UA

CKP

R/W

D/A

1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9

ACK = 1

P

ACKR/W = 0

S

Set by hardware

ACKSTAT

Set by hardware

Master sendsRestart event

Master sendsnot ACK

Master sendsStop condition

Cleared bysoftware

SSPBUF loadedwith received address

UA indicates SSPADDmust be updated

After SSPADD is updated.UA is cleared and SCL isreleased

Received address isread from SSPBUF

High address is loadedback into SSPADD

R/W is copied from thematching address byte

Data to transmit isloaded into SSPBUF

Set by softwarereleases SCL

Master’s not ACK is copied

Indicates an addresshas been received

When R/W = 1:CKP is cleared on 9th falling edge of SCLx

Page 176: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.176 2017 Microchip Technology Inc.

28.4.7 クロック ストレッチ

クロック ストレッチとは、バス上に接続されたデバイスが SCL ラインを Low に保持する事で通信を停止させる事です。スレーブは、このクロック ストレッチ機能を使って、データ処理またはマスタへの応答準備の時間を作る事ができます。マスタは、この機能とは無関係に動作し常にバスでアクティブ状態ですが、ストレッチ中はデータを送信しません。マスタ ソフトウェアは、スレーブによるクロック ストレッチを認識できないため、この動作は SCL を生成するハードウェアが処理します。

ソフトウェアによるストレッチ制御には、SSPCON1レジスタの CKP ビットを使います。CKP ビットがクリアされると、モジュールは SCL ラインが Low になるまで待機し、その後 Low を保持します。CKP をセットすると、SCL が解放されて通信が再開します。

28.4.7.1 通常のクロック ストレッチ

SSPSTAT レジスタの R/W ビットがセットされ、読み出し要求が実行された場合、ACK パルスの後にスレーブハードウェアがCKPビットをクリアします。これによって、スレーブはマスタへ送信するデータをSSPBUFに読み込む時間を確保できます。SSPCON2 レジスタの SENビットがセットされている場合、スレーブ ハードウェアはACKシーケンスの後に毎回クロック ストレッチを実行します。スレーブの準備が整うと、ソフトウェアでCKPがセットされて通信が再開します。

28.4.7.2 10 ビットアドレス指定モード

10 ビットアドレス指定モードの場合、UA ビットがセットされるとクロックは常にストレッチされます。これは、CKP がクリアされずに SCL がストレッチされる唯一の状況です。SSPADD への書き込みが実行されるとすぐに SCL は解放されます。

28.4.7.3 バイト単位の NACK

SSPCON3レジスタのAHENビットがセットされている場合、CKP は一致アドレスバイトを受信する SCLの 8 番目の立ち下がりエッジの後にハードウェアによってクリアされます。SSPCON3 レジスタの DHENビットがセットされている場合、CKP は受信データに対してSCLの8番目の立ち下がりエッジの後にクリアされます。

SCL の 8 番目の立ち下がりエッジの後でクロックがストレッチされると、スレーブは受信アドレスまたは受信データを見て、受信データに ACK を返すかどうかを判断できます。

28.4.8 クロック同期と CKP ビット

CKP ビットがクリアされると、モジュールは SCLラインが Low になるまで待機し、その後 Low を保持します。しかし、CKP ビットをクリアしても、SCL出力で Low がサンプリングされるまで、SCL 出力のLow はアサートされません。従って、外部 I2C マスタデバイスが既に SCL ラインをアサートしていないと、CKP ビットは SCL ラインをアサートしません。SCL出力は、CKP ビットがセットされて I2C バス上のその他全てのデバイスが SCL を解放するまで Low を保持します。これにより、CKP ビットへの書き込みによって SCL の High 期間が規格下限を下回る事を防止できます ( 図 28-15 参照 )。

図 28-15: クロック同期のタイミング

Note 1: BF ビットは、クロック ストレッチを実行するかどうかに影響しません。これは、以前のバージョンのモジュールと異なります。以前は、SCL の 9 番目の立ち下がりエッジより前に SSPBUF が読み出された場合、クロック ストレッチは実行されず、CKPもクリアされませんでした。

2: 以前のモジュール バージョンでは、SCLの 9 番目の立ち下がりエッジより前にSSPBUFへデータが書き込まれた場合、送信用のクロックはストレッチされませんでした。現バージョンでは、読み出し要求に対して常にCKPビットがクリアされます。

Note: 以前のバージョンのモジュールでは、2 番目のアドレスバイトが一致しない場合、モジュールはクロックをストレッチしませんでした。

SDA

SCL

DX ‚ – 1DX

WR

Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

SSPCON1

CKP

Master deviceasserts clock

Master devicereleases clock

Page 177: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.177

MCP19124/5

28.4.9 ジェネラルコール アドレスのサポート

I2C バスの通常のアドレス指定の場合、マスタデバイスは START 条件の次のバイトで特定スレーブデバイスのアドレスを指定します。例外は、全てのデバイスのアドレスを指定するジェネラルコール アドレスです。このアドレスを使うと、理論上は全デバイスが ACK を返します。

ジェネラルコール アドレスは I2Cプロトコルの予約済みアドレスの 1 つで、「0x00」と定義されています。SSPCON2レジスタのGCENビットがセットされている場合、スレーブ モジュールは SSPADD の値に関係なく、このアドレス受信に対して自動的に ACK を返します。スレーブが、R/W ビットのクリアされた全て0 のアドレス値を受信後に割り込みが生成され、

スレーブ ソフトウェアが SSPBUF を読み出して応答できます。図 28-16 に、ジェネラルコールの受信シーケンスを示します。

10 ビットアドレス指定モードの場合、ジェネラルコール アドレスの受信で UA ビットはセットされません。スレーブは、7 ビットモードと同じように 2 番目のバイトをデータとして受信する準備をします。

SSPCON3レジスタのAHENビットがセットされている場合、通常のアドレス受信と同じように、スレーブハードウェアはSCLの8番目の立ち下がりエッジ後にクロックをストレッチします。その後、スレーブはACKDT ビットの値をセットして、通常の通信同様クロックを解放する必要があります。

図 28-16: スレーブモードのジェネラルコール アドレス シーケンス

28.4.10 SSPMSK1 レジスタ

I2C スレーブモードでは、SSP マスク (SSPMSK1)レジスタを使って、アドレス比較動作中に SSPSRレジ スタ に格 納さ れた 値を マス クで きま す。SSPMSK1 レジスタのゼロ (「0」) ビットがマスクビットとなり、受信アドレスの対応ビットは「ドントケア」として処理されます。

このレジスタは、全てのリセット条件で全ビットが「1」にリセットされるため、ユーザがマスク値を書き込まない限り、通常のSSP動作には影響を与えません。

SSPMSK1 レジスタは、以下の時にアクティブ状態です。

• 7ビットアドレス モード: A<7:1>のアドレス比較時

• 10 ビットアドレス モード : A<7:0> のアドレス比較時のみ。SSP マスクは、1 番目の ( 上位 ) バイトアドレスの受信中は無効

SDA

SCLS

SSPIF

BF (SSPSTAT0)

Cleared by softwareSSPBUF is read

R/W = 0ACKGeneral Call Address

Receiving Data ACK

1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9

D7 D6 D5 D4 D3 D2 D1 D0

GCEN (SSPCON2<7>)‘1’

Address is compared to General Call Addressafter ACK, set interrupt

Page 178: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.178 2017 Microchip Technology Inc.

28.5 I2C マスタモード

マスタモードを有効にするには、SSPCON1 レジスタの SSPM ビットをセット / クリアして、SSPEN ビットをセットします。マスタモードでは SDA ピンと SCKピンを入力として設定する必要があります。ピンをLow に駆動する必要がある場合、MSSP 周辺ハードウェアは出力ドライバのTRIS制御より優先されます。

マスタモードの動作は、START/STOP 条件の検出による割り込み生成でサポートされます。STOP (P)ビットと START (S) ビットは、リセット時またはMSSP モジュールが無効にされた時にクリアされます。I2C バスの制御は、P ビットがセットされている場合またはバスがアイドル状態の場合に取得できます。

ファームウェア制御のマスタモードでは、ユーザコードが START/STOP ビット条件の検出に基づいて、全ての I2C バス動作を実行します。START/STOP 条件の検出は、このモードで唯一能動的に動作する回路です。その他、全ての通信動作は、ユーザ ソフトウェアでSDA/SCL ラインを直接制御して実行されます。

以下のイベントが生じると、SSP 割り込みフラグビット(SSPIF) がセットされます (SSP 割り込み有効時 )。

• START 条件の検出

• STOP 条件の検出

• データ転送バイトの送受信

• ACK の送受信

• 反復 START 条件の生成

28.5.1 I2C マスタモードの動作

マスタデバイスは、全てのシリアルクロック パルスとSTART/STOP 条件を生成します。転送は、STOP 条件または反復 START 条件で終了します。反復 START条件は次のシリアル転送のSTART条件でもあるため、I2C バスは解放されません。

マスタ送信モードでは、SDA からシリアルデータを出力し、SCL からシリアルクロックを出力します。 初の送信バイトは、受信デバイスのスレーブアドレス(7 ビット ) と、読み書き (R/W) ビットを格納します。この場合、R/W ビットは論理「0」です。シリアルデータは、8 ビットずつ送信します。1 バイト送信ごとに ACK ビットを受信します。シリアル転送の開始 /終了は、START/STOP 条件の出力で示します。

マスタ受信モードの場合、 初に送信するバイトは送信デバイスのスレーブアドレス (7 ビット ) と R/W ビットを含みます。この場合、R/W ビットは論理「1」です。従って、 初の送信バイトは 7 ビットのスレーブアドレスの後に受信を示す「1」を格納します。シリアルデータは SDA で受信し、SCL はシリアルクロックを出力します。シリアルデータは、8 ビットずつ受信します。1 バイト受信ごとに ACK ビットを送信します。START 条件と STOP 条件は、転送の開始と終了を示します。

baud レート ジェネレータを使って、SCL のクロック周波数出力を設定します。詳細はセクション 28.6「baud レート ジェネレータ」を参照してください。

28.5.2 クロック調停

送受信、反復 START/STOP 条件中にマスタが SCL ピンを解放 (SCL が High にプルアップ ) すると、クロック調停が実行されます。SCL ピンが解放されても、実際に High がサンプリングされるまで baud レート ジェネレータ (BRG) のカウントは中断します。SCL ピンで High がサンプリングされると、baud レート ジェネレータに SSPADD<7:0> の内容が再書き込みされてカウントを開始します。これにより、外部デバイスによってクロックが Low に保持されていたとしても、SCL の High 期間が 短でも BRG のロールオーバー1回分確保されます ( 図 28-17)。

Note 1: I2Cマスタモードの場合、MSSPモジュールではイベントのキュー ( 待ち行列 ) 処理ができません。例えば START 条件を開始し、それが完了する前に SSPBUF レジスタへ書き込みを実行し、送信動作を開始 す る 事 は で き ま せ ん。こ の 場 合SSPBUF への書き込みは実行されず、書き込みコリジョン検出ビット (WCOL) がセットされます。

2: マスタモードの場合、SEN/PEN ビットがクリアされると START/STOP 検出がマスクされて割り込みが生成されます。これで割り込み生成が完了です。

Page 179: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.179

MCP19124/5

図 28-17: クロック調停を伴う baud レート ジェネレータのタイミング

28.5.3 WCOL ステータスフラグ

START、反復 START、STOP、受信、送信のいずれかのシーケンスが進行中にユーザがSSPBUFに書き込もうとしても、WCOL がセットされてバッファの内容は変更されません ( 書き込みは実行されない )。このように、モジュールがアイドル状態でない時に SSPBUF に対する何らかの操作をしようとするとWCOLビットがセットされます。

28.5.4 I2C マスタモードの START 条件のタイミング

START 条件を開始するには、ユーザが SSPCON2レジスタの START イネーブルビット (SEN) をセットします。SDA ピンと SCL ピンで High がサンプリングされると、baud レート ジェネレータに SSPADD<7:0>の内容が再書き込みされてカウントを開始します。baudレート ジェネレータがタイムアウト (TBRG)した時に SCL と SDA の両方で High がサンプリングされ

ると、SDA ピンが Low に駆動されます。SCL ピンがHigh の時に SDA が Low に駆動されると START 条件となり、SSPSTAT1 レジスタの S ビットがセットされます。続いて、baudレート ジェネレータにSSPADD<7:0>の内容が再書き込みされ、カウントが再開します。baudレート ジェネレータがタイムアウト (TBRG)すると、SSPCON2 レジスタの SEN ビットがハードウェアで自動的にクリアされ、baud レート ジェネレータが一時停止状態になります。これによって SDA ラインが Low に保持され START 条件が完了します。

図 28-18: 初の START ビットのタイミング

SDA

SCL

DX ‚ – 1DX

03h 02h 01h 00h (hold off) 03h 02h

SCL allowed to transition highSCL deasserted but slave holdsSCL low (clock arbitration)

BGR decrements onQ2 and Q4 cycles

BRGValue

BRGReload

SCL is sampled high, reload takesplace and BRG starts its count

Note: イベントのキューイングはできないため、START 条件が完了するまで SSPCON2レジスタの下位 5 ビットへの書き込みは無効です。

Note 1: START 条件の開始時に SDA ピンと SCLピンで既に Low がサンプリングされている場合、または START 条件実行中にSDAラインがLowに駆動される前にSCLラインでLowがサンプリングされた場合、バスコリジョンが生じてバスコリジョン割り込みフラグ (BCLIF) がセットされ、START条件が中止されて I2Cモジュールはアイドル状態にリセットされます。

2: Philips 社の I2C 仕様書では、START 時にバスコリジョンは発生しないと記載されています。

SDA

SCLS

TBRG

1st bit 2nd bit

TBRG

SDA = 1, SCL = 1

Write to SSPBUF occurs hereTBRG

TBRG

Write to SEN bit occurs here Set S bit (SSPSTAT3)At completion of Start bit,hardware clears SEN bitand sets SSPIF bit

Page 180: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.180 2017 Microchip Technology Inc.

28.5.5 I2C マスタモードの反復 START 条件のタイミング

SSPCON2 レジスタの RSEN ビットが High で、マスタステートマシンがアクティブでないと、反復 START条件が発生します。RSEN ビットがセットされると、SCLピンが Lowにアサートされます。SCLピンで Lowがサンプリングされると、baud レート ジェネレータに値が書き込まれてカウントが始まります。baudレート ジェネレータの 1 ロールオーバー カウント(TBRG) の間、SDA ピンは解放されます (High に遷移 )。baud レート ジェネレータ タイムアウト時、SDA でHigh がサンプリングされると、SCL ピンがネゲートされます (High に遷移 )。SCL ピンで High がサンプリングされると、baud レート ジェネレータに値が再書き込みされてカウントを開始します。SDA と SCL では、1 TBRGの間、High がサンプリングされる必要があります。この動作の次には、SCL が High の間に、1 TBRG の期間、SDA ピンがアサートされます (SDA = 0)。SCLは Low にアサートされます。続いて、SSPCON2 レジスタの RSEN ビットが自動的にクリアされる事で、baudレート ジェネレータには値が再度書き込まれず、SDA ピンが Low に保持されます。SDA ピンと SCLピンで START 条件が検出されるとすぐに、SSPSTAT

レジスタの S ビットがセットされます。baud レートジェネレータがタイムアウトするまでSSPIFビットはセットされません。

図 28-19: 反復 START 条件の波形

Note 1: その他のいかなるイベントが進行している間に RSEN がセットされても、実行されません。

2: 以下の場合、反復 START 条件中にバスコリジョンが発生します。

• SCL が Low から High に遷移した時に SDA が Low としてサンプリングされた。

• SDA が Low に駆動される前に SCLが Low に遷移した ( この場合、別のマスタがデータ「1」を送信しようとしている可能性があります )。

SDA

SCL

Repeated Start

Write to SSPBUF occurs here

1st bit

S bit set by hardware

TBRG

TBRG

SDA = 1, SDA = 1, SCL (no change) SCL = 1

TBRG TBRG TBRG

Sr

Write to SSPCON2occurs here At completion of Start bit,

hardware clears RSEN bitand sets SSPIF

Page 181: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.181

MCP19124/5

28.5.6 I2C マスタモード送信

データバイト、7 ビットアドレス、10 ビットアドレス

の第 2 バイトは、SSPBUF レジスタに値を書き込むだ

けで送信されます。書き込み動作によってバッファフル(BF) フラグビットがセットされ、baud レート ジェネ

レータのカウントと共に次の送信が開始します。アドレス / データの各ビットは、SCL の立ち下がりエッジ

がアサートされた後に SDA ピン上にシフト出力され

ます。SCL は、1 回の BRG ロールオーバー (TBRG) の

間 Low に保持されます。データは、SCL が High に解

放される前に有効になる必要があります。SCL ピンは

High に解放された後、TBRG の間、その状態を保持し

ます。SDA ピン上のデータは、この期間および SCL の

次の立ち下がりエッジ後のホールド時間まで安定している必要があります。8 番目のビットのシフト出力後

(8 番目のクロックの立ち下がりエッジ後 )、BF フラグ

がクリアされマスタは SDA を解放します。アドレス

が一致した場合、またはデータを正常に受信した場合、アドレス指定されたスレーブデバイスは9番目のビット

と同時に ACK ビットを送信します。9 番目のクロック

の立ち上がりエッジでACKのステータスがACKSTATビットに書き込まれます。マスタが ACK を受信する

と、ACK ステータスビット (ACKSTAT) はクリアされ

ます。受信しない場合、セットされたままです。9 番目

のクロックの後、SSPIF ビットがセットされ、マスタ

クロック (baud レート ジェネレータ ) は次のデータ

バイトが SSPBUF に書き込まれるまで一時停止し、

SCL は Low、SDA はそのままの状態を保持します

( 図 28-20)。

SSPBUF への書き込み後、7 ビットのアドレスと R/Wビットが全て出力されるまで、SCL の立ち下がりエッジ

でアドレスのビットが 1 つずつシフト出力されます。

8 番目のクロックの立ち下がりエッジで、マスタが

SDA ピンを解放するとスレーブが肯定応答 (ACK) し

ます。9 番目のクロックの立ち下がりエッジでマスタ

は SDA ピンをサンプリングし、スレーブがアドレス

を認識できたかどうかを確認します。ACK ビットの

ステータスは、SSPCON2 レジスタの ACKSTAT ス

テータスビットに書き込まれます。アドレス送信の 9番目のクロック立ち下がりエッジ後、SSPIF がセット

され BF フラグがクリアされ、次に SSPBUF への書き

込みが実行されるまで baud レート ジェネレータは

OFF となります (SCL は Low に保持され、SDA はフ

ローティング )。

28.5.6.1 BF ステータスフラグ

送信モードの場合、SSPSTAT レジスタの BF ビットは、CPU が SSPBUF に書き込むとセットされ、8 ビットが全てシフト出力された時点でクリアされます。

28.5.6.2 WCOL ステータスフラグ

送信中 (SSPSRがデータバイトをシフト出力している途中 ) に、ユーザが SSPBUF への書き込みが発生すると、WCOL がセットされバッファの内容は変更されません ( 書き込みは実行されない )。

次の送信の前にWCOLをソフトウェアでクリアする必要があります。

28.5.6.3 ACKSTAT ステータスフラグ

送信モードでは、スレーブが ACK = 0 を送信するとSSPCON2レジスタのACKSTATビットはクリアされ、スレーブが肯定応答しない (ACK = 1) とセットされます。スレーブは、自分自身のアドレスを認識するか( ジェネラルコールを含む )、正常にデータ受信を完了すると ACK を送信します。

28.5.6.4 代表的な送信シーケンス

1. ユーザが、SSPCON2 レジスタの SEN ビットをセットして START 条件を生成する。

2. START 条件の完了時に SSPIF ビットがハードウェアによりセットされる。

3. ソフトウェアで SSPIF ビットがクリアされる。

4. MSSP モジュールは、新しい動作を開始する前に必要なSTART時間が経過するまで待機する。

5. ユーザが、送信先スレーブアドレスを SSPBUFに書き込む。

6. アドレスの 8 つのビットが全て SDA ピンにシフトアウトされる。SSPBUF への書き込みが完了すると、送信が開始する。

7. MSSP モジュールは、スレーブデバイスからACKビットを受信して、その値をSSPCON2レジスタの ACKSTAT ビットに書き込む。

8. MSSP モジュールは、9 番目のクロックサイクルの 後にSSPIFビットをセットして割り込みを生成する。

9. ユーザが、SSPBUF に 8 ビットのデータを書き込む。

10. 8 ビット全てが送信されるまで、データが SDAピンにシフト出力される。

11. MSSP モジュールは、スレーブデバイスからACK ビットを受信して、その値を SSPCON2レジスタの ACKSTAT ビットに書き込む。

12. 全ての送信データバイトに対して、ステップ 8 ~11 を繰り返す。

13. ユーザが、SSPCON2 レジスタの PEN またはRSEN ビットをセットして STOP または反復START 条件を生成する。STOP/ 反復 START 条件が完了すると、割り込みが生成される。

Page 182: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MC

P19124/5

DS

20005619A

_JP - p.182

2017 M

icrochip Technolo

gy Inc.

図 28-20: I2C マスタモードの波形 ( 送信、7 ビット /10 ビットアドレス )

SDA

SCL

SSPIF

BF (SSPSTAT0)

SEN

A7 A6 A5 A4 A3 A2 A1 ACK = 0 D7 D6 D5 D4 D3 D2 D1 D0

ACKR/W = 0Transmit Address to Slave

1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 P

SSPBUF is written by software

After Start condition, SEN cleared by hardware

S

SEN = 0

Write SSPCON2<0> SEN = 1Start condition begins

Cleared by software

SSPBUF written

PEN

R/W

Cleared by software

From slave, clear ACKSTAT bitSSPCON2<6>

Transmitting Data or Second Halfof 10-bit Address

ACKSTAT inSSPCON2 = 1

SSPBUF written with 7-bit address and R/Wstart transmit

SCL held lowwhile CPUresponds to SSPIF

Cleared by software service routinefrom SSP interrupt

Page 183: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.183

MCP19124/5

28.5.7 I2C マスタモード受信

マスタモード受信を有効にするには、SSPCON2 レジスタの受信イネーブル (RCEN) ビットをプログラムします。

baud レート ジェネレータがカウントを開始し、ロールオーバーごとに SCL ピンが遷移 (High → Low/Low →High) してデータが SSPSR へシフト入力されます。8 番目のクロックの立ち下がりエッジの後、受信イネーブルフラグが自動的にクリアされます。これによってSSPSR の内容が SSPBUF に書き込まれ、BF フラグビットと SSPIF フラグビットがセットされる事で、baud レート ジェネレータがカウントを停止して SCLが Low に保持されます。これによって MSSP はアイドル状態に移行し、次のコマンドを待ちます。CPU がバッファを読み出すと、BF フラグビットは自動的にクリアされます。ユーザは、受信の 後に SSPCON2レジスタの肯定応答 (ACK) シーケンス イネーブル(ACKEN) ビットをセットする事によって、肯定応答ビットを送信できます。

28.5.7.1 BF ステータスフラグ

受信動作の場合、SSPSR から SSPBUF へアドレスバイトまたはデータバイトが書き込まれると、BFビットがセットされます。このビットは SSPBUF レジスタを読み出すとクリアされます。

28.5.7.2 SSPOV ステータスフラグ

受信動作の場合、以前の受信で BF フラグが既にセットされている時にSSPSRに8ビットが受信されると、SSPOV ビットがセットされます。

28.5.7.3 WCOL ステータスフラグ

受信中 (SSPSRにデータバイトをシフト入力している途中 ) に、ユーザが SSPBUF へ書き込もうとしても、WCOL がセットされ、バッファの内容は変更されません( 書き込みは実行されない )。

28.5.7.4 代表的な受信シーケンス

1. ユーザが、SSPCON2 レジスタの SEN ビットをセットして START 条件を生成する。

2. START 条件の完了時に SSPIF ビットがハードウェアによりセットされる。

3. ソフトウェアで SSPIF ビットがクリアされる。

4. ユーザが送信先 7 ビット スレーブアドレスをSSPBUFに書き込み、R/Wビットをセットする。

5. 8 ビット全てが送信されるまで、アドレスが SDAピンにシフト出力される。SSPBUF への書き込みが完了すると、送信が開始する。

6. MSSPモジュールは、スレーブデバイスからACKビットを受信して、その値を SSPCON2 レジスタの ACKSTAT ビットに書き込む。

7. MSSP モジュールは、9 番目のクロックサイクルの 後にSSPIFビットをセットして割り込みを生成する。

8. ユーザがSSPCON2レジスタのRCENビットをセットし、マスタがスレーブからバイトデータを受信する。

9. SCL の 8 番目の立ち下がりエッジ後、SSPIF とBF がセットされる。

10. マスタが SSPIF ビットをクリアし、SSPUF から受信バイトを読み出して BF ビットをクリアする。

11. マスタが、SSPCON2 レジスタの ACKDT ビットを使って、スレーブへ送信する ACK 値を設定し、ACKEN ビットをセットして ACK を送信する。

12. マスタからスレーブへ ACK 信号が送信され、SSPIF ビットがセットされる。

13. ユーザが SSPIF ビットをクリアする。

14. スレーブから 1 バイトを受信するたびに、ステップ 8 ~ 13 を繰り返す。

15. マスタが NACK を送信するか、STOP 条件を送信すると通信が終了する。

Note: RCEN ビットをセットする前に MSSPモジュールをアイドル状態にする必要があります。アイドル状態にない場合、RCEN ビットは無視されます。

Page 184: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MC

P19124/5

DS

20005619A

_JP - p.184

2017 M

icrochip Technolo

gy Inc.

図 28-21: I2C マスタモードの波形 ( 受信、7 ビットアドレス )

P98765

D0D1D2D3D4D5D6D7

S

A7 A6 A5 A4 A3 A2 A1SDA

SCL 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4

ACKReceiving Data from SlaveReceiving Data from Slave

D0D1D2D3D4D5D6D7ACKR/W

SSPIF

BF

ACK is not sent

Write to SSPCON2<0> (SEN = 1),

ACK from Slave

Data shifted in on falling edge of CLK

Cleared by software

SEN = 0

SSPOV

(SSPSTAT0)

ACK

Cleared by softwareCleared by software

ACKEN

begin Start condition

Cleared by software

RCEN

Write to SSPBUFoccurs here, start XMIT

Master configured as a receiverby programming SSPCON2<3> (RCEN = 1)

RCEN clearedautomatically

Write to SSPCON2<4> to start Acknowledgesequence SDA = ACKDT (SSPCON2<5>) = 0

ACK from MasterSDA = ACKDT = 0

RCEN = 1, startnext receive

Set ACKEN, start Acknowledge sequenceSDA = ACKDT = 1

RCEN clearedautomatically PEN bit = 1 written here

Bus masterterminatestransfer

SDA = 0, SCLx = 1while CPUresponds to SSPxIR

Set SSPIF interruptat end of receive Set SSPIF interrupt

at end of Acknowledgesequence

Set SSPIFat end of receive

Cleared bysoftware

Set SSPIF interruptat end ofAcknowledgesequence

Set P bit(SSPSTAT4)and SSPIF

Last bit is shifted into SSPSR andcontents are unloaded into SSPBUF

SSPOV is set becauseSSPBUF is still full

Master configured as a receiverby programming SSPCON2<3> (RCEN = 1)

RCEN clearedautomatically

ACK from MasterSDA = ACKDT = 0

RCEN clearedautomatically

Page 185: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.185

MCP19124/5

28.5.8 ACK シーケンスのタイミング

肯定応答 (ACK) シーケンスを有効にするには、SSPCON2 レジスタの肯定応答シーケンス イネーブル(ACKEN) ビットをセットします。このビットがセットされると SCL ピンが Low に駆動され、ACK データ(ACKDT) ビットの内容が SDA ピンに出力されます。ACK を生成する必要がある場合、ACKDT ビットをクリアします。ACKを生成しない場合、ACKシーケンスが開始する前に ACKDT ビットをセットする必要があります。次に、baud レート ジェネレータが 1 ロールオーバー期間 (TBRG) カウントし、SCL ピンがネゲートされます (High に遷移 )。SCL ピンで High がサンプリングされた場合 ( クロック調停 )、baud レート ジェネレータは TBRG の期間カウントします。その後 SCL ピンが Low に駆動されます。続いて ACKEN ビットが自動的にクリアされ、baud レート ジェネレータが OFF になり、MSSP モジュールはアイドル状態に移行します( 図 28-22)。

28.5.8.1 WCOL ステータスフラグ

ACK シーケンスの進行中にユーザが SSPBUF に書き込もうとしても、WCOL がセットされ、バッファの内容は変更されません ( 書き込みは実行されない )。

28.5.9 STOP 条件のタイミング

SSPCON2 レジスタの STOP シーケンス イネーブルビット (PEN) をセットすると、送受信終了時に SDAピン上に STOP ビットがアサートされます。送受信終了時、9番目のクロックの立ち下がりエッジの後にSCLラインが Low に保持されます。PEN ビットがセットされると、マスタは SDA ラインを Low にアサートします。SDA ラインで Low がサンプリングされると、baud レート ジェネレータに値が再書き込みされ「0」までカウントダウンします。baud レート ジェネレータがタイムアウトすると、SCL ピンが High に駆動され、1 TBRG (BRG のロールオーバー カウント ) 後に SDAピンがネゲートされます。SCL が High の間に SDA ピンで High がサンプリングされると、SSPSTAT レジスタの P ビットがセットされます。1 TBRG 経過後、PENビットはクリアされ、SSPIF ビットがセットされます( 図 28-23)。

28.5.9.1 WCOL ステータスフラグ

STOPシーケンス実行中にユーザがSSPBUFに書き込むと、WCOL がセットされ、バッファの内容は変化しません ( 書き込みは実行されない )。

図 28-22: ACK シーケンスの波形

図 28-23: 受信または送信モードの STOP 条件

SDA

SCL

ACKEN automatically cleared

TBRG TBRG

8

D0

9

SSPIF

ACK

Acknowledge sequence starts here,write to SSPCON2

ACKEN = 1, ACKDT = 0

SSPIF set at the endof receive Cleared by

software

Cleared bysoftware

SSPIF set at the endof Acknowledge sequenceNote: TBRG = 1 baud レート ジェネレータ周期

SCL

SDA

SCL brought high after TBRG

TBRG TBRG

TBRG

ACK

PTBRG

Write to SSPCON2,set PEN

Falling edge of 9th clock

SCL = 1 for TBRG, followed by SDA = 1 for TBRGafter SDA sampled high.P bit (SSPSTAT4) is set.

PEN bit (SSPCON2<2>) is cleared byhardware and the SSPIF bit is set

Note: TBRG = 1 baud レート ジェネレータ周期

Page 186: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.186 2017 Microchip Technology Inc.

28.5.10 スリープ動作

スリープ中も、I2C スレーブ モジュールはアドレスまたはデータを受信可能であり、アドレスが一致した場合またはバイト転送が完了した場合、プロセッサをスリープから復帰できます (MSSP 割り込み有効時 )。

28.5.11 リセットの影響

リセットは MSSP モジュールを無効にし、現在の転送は中止されます。

28.5.12 マルチマスタ モード

マルチマスタ モードでは、START/STOP 条件の検出によって生成される割り込みを基に、バスが空いている期間を判断します。STOP (P) ビットと START (S)ビットは、リセット時または MSSPx モジュールが無効にされた時にクリアされます。I2C バスの制御は、SSPSTAT レジスタの P ビットがセットされた時、または S ビットと P ビットの両方がクリアされておりバスがアイドル状態の時に取得できます。バスがビジーの場合、SSP 割り込みを有効にすると、STOP条件が発生した時に割り込みが生成されます。

マルチマスタ動作では、バス調停動作を実行できるように SDA ラインを監視して、信号レベルが期待される出力レベルにあるかどうかを確認する必要があります。確認はハードウェアが実行し、その結果は BCLIFビットに格納されます。

以下のステートではバス調停に敗れる可能性があります。

• アドレス転送

• データ転送

• START 条件

• 反復 START 条件

• ACK 条件

28.5.13 マルチマスタ通信、バスコリジョン、バス調停

マルチマスタ モードのサポートは、バス調停によって実現します。マスタがアドレス / データビットを SDAピンに出力する際、マスタが SDA を High にプルアップして SDA に「1」を出力している間に別のマスタが

「0」をアサートすると、調停が実行されます。SCLピンが High にプルアップしている間、データは安定している必要があります。SDA ピンに表れるデータが「1」と予測される時に SDA ピンで「0」がサンプリングされると、バスコリジョンが発生した事になります。マスタはバスコリジョン割り込みフラグ (BCLIF) をセットし、I2C ポートをアイドル状態にリセットします( 図 28-24)。

送信動作中にバスコリジョンが発生した場合、送信動作が停止され、BF フラグがクリアされ、SDA ラインとSCL ラインがネゲートされ、SSPBUF への書き込みが可能になります。ユーザがバスコリジョン割り込みサービスルーチンを使う場合、I2C バスが空いていれば、START 条件をアサートする事で通信を再開できます。

START、反復 START、STOP、ACK 条件中にバスコリジョンが発生した場合、これらの条件は中断され、SDAラインと SCL ラインがネゲートされ、SSPCON2 レジスタの対応する制御ビットがクリアされます。ユーザがバスコリジョン割り込みサービスルーチンを使う場合、I2C バスが空いていれば、START 条件をアサートする事で通信を再開できます。

マスタはSDAピンとSCLピンの監視を続けます。STOP条件が発生すると、SSPIF ビットがセットされます。

SSPBUF に書き込むと、バスコリジョン発生時にトランスミッタがどこまで送信を完了していたかにかかわらず、データの先頭ビットから送信が始まります。

マルチマスタ モードでは、START/STOP 条件の検出によって生成される割り込みを基に、バスが空いている期間を判断します。I2C バスの制御は、SSPSTATレジスタの P ビットがセットされた場合、または SビットとPビットの両方がクリアされてバスがアイドル状態である場合に取得できます。

図 28-24: 送信時と ACK 送信時のバスコリジョン タイミング

SDA

SCL

BCLIF

Data changeswhile SCL = 0

SDA line pulled lowby another source

SDA releasedby master

Sample SDA.While SCL is high,data does not match what is drivenby the master.Bus collision has occurred.

Set Bus CollisionInterrupt (BCLIF)

Page 187: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.187

MCP19124/5

28.5.13.1 START 条件中のバスコリジョン

START 条件中は、以下の場合にバスコリジョンが発生します。

a) START条件の開始時にSDAまたはSCLでLowがサンプリングされた ( 図 28-25)。

b) SDA が Low にアサートされる前に SCL で Lowがサンプリングされた ( 図 28-26)。

START 条件中、SDA ピンと SCL ピンは両方とも監視されています。

SDA ピンまたは SCL ピンが既に Low だった場合、以下の全てが実行されます。

• START 条件を中止する。

• BCLIF フラグをセットする。

• MSSPモジュールをアイドル状態にリセットする( 図 28-25)。

START 条件は、SDA ピンと SCL ピンのネゲートから始まります。SDA ピンで High がサンプリングされると、baud レート ジェネレータに値が書き込まれカウントダウンが始まります。SDA が High の時に SCL ピンがLow としてサンプリングされた場合、START 条件中に別のマスタがデータ「1」を駆動しようとしている事を意味するため、バスコリジョンが発生します。

上記の BRG カウント中に SDA ピンで Low がサンプリングされると、BRG はリセットされ、SDA ラインはBRGのタイムアウトを待たずにアサートされます( 図 28-27)。しかし、SDA ピンで「1」がサンプリングされた場合、SDA ピンは BRG カウントの完了時にLow にアサートされます。次に baud レート ジェネレータが再書き込みされてゼロまでカウントダウンします。この間に SCL ピンで「0」がサンプリングされると、バスコリジョンは発生しません。BRG のカウント終了時、SCL ピンが Low にアサートされます。

図 28-25: START 条件中のバスコリジョン (SDA のみ )

Note: START 条件実行中にバスコリジョンが問題にならないのは、2 つのバスマスタが全く同じタイミングで START 条件をアサートする事はあり得ないためです。従って、必ずどちらか一方のマスタが他方よりも先に SDA をアサートします。この条件でバスコリジョンは発生しません。2 つのマスタが START 条件後の 初のアドレスで必ずバス調停できるためです。アドレスが同じ場合、さらにその後のデータ部分、反復 START 条件、STOP 条件で調停が必要です。

SDA

SCL

SEN

BCLIF

S

SSPIF

SDA goes low before the SEN bit is set.Set BCLIF,S bit and SSPIF set becauseSDA = 0, SCL = 1.

Set SEN, enable Start conditionif SDA = 1, SCL = 1

SEN cleared automatically because of buscollision.SSP module reset into Idle state.

SDA sampled low before Start condition.Set BCLIF.S bit and SSPIF set because SDA = 0, SCL = 1.

SSPIF and BCLIFare cleared by software

SSPIF and BCLIFare cleared by software

Page 188: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.188 2017 Microchip Technology Inc.

図 28-26: START 条件中のバスコリジョン (SCL = 0)

図 28-27: START 条件中の SDA 調停による BRG リセット

SDA

SCL

SEN

TBRG TBRG

SDA = 0, SCL = 1

BCLIF

S

SSPIF

‘0’

Set SEN, enable Startsequence if SDA = 1, SCL = 1

SCL = 0 before SDA = 0,

bus collision occurs.Set BCLIF.

SCL = 0 before BRG time out,bus collision occurs.Set BCLIF.

Interrupt clearedby software

‘0’

‘0’

‘0’

SDA

SCL

SEN

Set SLess than TBRG TBRG

SDA = 0, SCL = 1

BCLIF

S

SSPIF

s

Set SSPIF

‘0’

SDA pulled low by other master. Reset BRG and assert SDAx.

SCLx pulled low after BRGtime out

Set SEN, enable Startsequence if SDA = 1, SCL = 1

SDAx = 0, SCL = 1,set SSPIF

Interrupts clearedby software

Page 189: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.189

MCP19124/5

28.5.13.2 反復 START 条件中のバスコリジョン

反復 START 条件中は、以下の場合にバスコリジョンが発生します。

a) SCL が Low から High に遷移する時に SDA でLow がサンプリングされる。

b) SDA で Low がアサートされる前に SCL が Lowに遷移した ( 他のマスタがデータ「1」を送信しようとしている事を示す )。

ユーザが SDA ピンを解放し、ピンが High にフローティングできるようになると、BRG に SSPADD の内容が書き込まれてゼロまでカウントダウンします。続いて SCL ピンがネゲートされ、High がサンプリングされると、SDA ピンがサンプリングされます。

SDA が Low であれば、バスコリジョンが発生しています ( つまり、別のマスタがデータ「0」を送信しようとしている、図 28-28)。SDA で High がサンプリングされた場合、BRG が再度書き込まれカウントを開始します。BRG がタイムアウトする前に SDA が High からLow に遷移した場合、バスコリジョンは発生しません。2 つのマスタが全く同じタイミングで SDA をアサートする事はあり得ないからです。

BRG がタイムアウトする前に SCL が High から Lowに遷移し、SDA がまだアサートされていない場合はバスコリジョンが発生します。この場合、反復 START条件実行中に、他のマスタがデータ「1」を送信しようとしています ( 図 28-29 参照 )。

BRG タイムアウト時に SCL と SDA の両方が High のままの場合、SDA ピンが Low に駆動され、BRG の再書き込み後にカウントを開始します。カウントが終了すると、SCL ピンはその状態に関係なく Low に駆動され、反復 START 条件が終了します。

図 28-28: 反復 START 条件中のバスコリジョン ( ケース 1)

図 28-29: 反復 START 条件中のバスコリジョン ( ケース 2)

SDA

SCL

RSEN

BCLIF

S

SSPIF

Cleared by software

‘0’

‘0’

Sample SDA when SCL goes high.If SDA = 0, set BCLIF and release SDA and SCL.

SDA

SCL

BCLIF

RSEN

S

SSPIF

TBRG TBRG

‘0’

SCL goes low before SDA,set BCLIF. Release SDA and SCL.

Interrupt clearedby software

‘0’

Page 190: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.190 2017 Microchip Technology Inc.

28.5.13.3 STOP 条件中のバスコリジョン

STOP 条件中は、以下の場合にバスコリジョンが発生します。

a) SDA ピンがネゲートされてフローティング Highが可能になった後、BRG のタイムアウト後にSDA で Low がサンプリングされた。

b) SCL ピンがネゲートされた後、SDA が High に遷移する前にSCLでLowがサンプリングされた。

STOP 条件は、SDA の Low アサートから開始します。SDA で Low がサンプリングされると、SCL ピンをフローティング状態にできます。SCL ピンで High が

サンプリングされると ( クロック調停 )、baud レートジェネレータに SSPADD の値が書き込まれ 0 へのカウントダウンが始まります。BRG のタイムアウト後、SDA がサンプリングされます。SDA で Low がサンプリングされた場合、バスコリジョンが発生しています。これは、別のマスタがデータ「0」を駆動しようとしているためです ( 図 28-30)。SDA が High にフローティングできるようになる前に SCL ピンで Low がサンプリングされると、バスコリジョンが発生します。これは、別のマスタがデータ「0」を駆動しようとしているもう 1 つのケースです ( 図 28-31)。

図 28-30: STOP 条件中のバスコリジョン ( ケース 1)

図 28-31: STOP 条件中のバスコリジョン ( ケース 2)

SDA

SCL

BCLIF

PEN

P

SSPIF

TBRG TBRG TBRG

SDA asserted low

‘0’

‘0’

SDA sampledlow after TBRG,set BCLIF

SDA

SCL

BCLIF

PEN

P

SSPIF

TBRG TBRG TBRG

Assert SDA

‘0’

‘0’

SCL goes low before SDA goes high,set BCLIF

Page 191: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.191

MCP19124/5

表 28-2: I2C 動作関連レジスタのまとめ

レジスタ名

bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 リセット値の記載ページ

INTCON GIE PEIE T0IE INTE IOCE T0IF INTF IOCF 93

PIE1 TXIE RCIE BCLIE SSPIE CC2IE CC1IE TMR2IE TMR1IE 94

PIR1 TXIF RCIF BCLIF SSPIF CC2IF CC1IF TMR2IF TMR1IF 96

TRISGPA TRISA7 TRISA6 TRISA5 — TRISA3 TRISA2 TRISA1 TRISA0 109

TRISGPB TRISB7 TRISB6 TRISB5 TRISB4 — — TRISB1 TRISB0 113

SSPADD ADD7 ADD6 ADD5 ADD4 ADD3 ADD2 ADD1 ADD0 198

SSPBUF 同期シリアルポート受信 / 送信バッファレジスタ 139*

SSPCON1 WCOL SSPOV SSPEN CKP SSPM3 SSPM2 SSPM1 SSPM0 194

SSPCON2 GCEN ACKSTAT ACKDT ACKEN RCEN PEN RSEN SEN 196

SSPCON3 ACKTIM PCIE SCIE BOEN SDAHT SBCDE AHEN DHEN 197

SSPMSK1 MSK7 MSK6 MSK5 MSK4 MSK3 MSK2 MSK1 MSK0 198

SSPSTAT SMP CKE D/A P S R/W UA BF 193

SSPMSK2 MSK27 MSK26 MSK25 MSK24 MSK23 MSK22 MSK21 MSK20 199

SSPADD2 ADD27 ADD26 ADD25 ADD24 ADD23 ADD22 ADD21 ADD20 199

Legend: — = 未実装、「0」として読み出し、網掛け部分は I2C モードの MSSP モジュールでは使いません。

* 本文中でレジスタを説明しているページです。

Page 192: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.192 2017 Microchip Technology Inc.

28.6 baud レート ジェネレータ

MSSP モジュールには、I2C マスタモードでクロックの生成に使う baud レート ジェネレータがあります。baud レート ジェネレータ (BRG) の再書き込み値は、SSPADD レジスタの値です。SSPBUF へ書き込もうとしても、baud レート ジェネレータが自動的にカウントダウンを開始します。

動作が完了すると内部クロックは自動的にカウントを停止し、クロックピンはそのままの状態を保持します。

内部信号「Reload( 図 28-32 参照 )」によって、SSPADDの値が BRG カウンタに書き込まれます。この動作はモジュールのクロックラインの各周期で 2 回発生します。再書き込み信号がアサートされるタイミングは、MSSP の動作モードで決まります。

表 28-3 に、命令サイクルに基づくクロックレートとSSPADD に再書き込みされる BRG の値を示します。

式 28-1:

図 28-32: baud レート ジェネレータのブロック図

FCLOCKFOSC

SSPADD 1+ 4 ----------------------------------------------=

Note: I2C モードの baud レート ジェネレータとして使う場合、0x00、0x01、0x02 はSSPADD の値として無効です。これは、実装上の制限です。

表 28-3: MSSP クロックレートと BRG の値

FOSC FCY BRG 値FCLOCK

(BRG ロールオーバー 2 回 )

8 MHz 2 MHz 04h 400 kHz (1)

8 MHz 2 MHz 0Bh 166 kHz

8 MHz 2 MHz 13h 100 kHz

Note 1: この I2C インターフェイスは、400 kHz I2C 仕様 (100 kHz よりも高速のバスに適用される仕様 ) に厳密には準拠していません。しかし、アプリケーションがより高速のクロックを必要としている場合、十分な注意を払う事で使える可能性があります。

SSPM<3:0>

BRG Down CounterSSPCLK FOSC/2

SSPADD<7:0>

SSPM<3:0>

SCL

Reload

ControlReload

Page 193: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.193

MCP19124/5

レジスタ 28-1: SSPSTAT: SSP ステータス レジスタ

R/W-0 R/W-0 R-0 R-0 R-0 R-0 R-0 R-0

SMP CKE D/A P S R/W UA BF

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7 SMP: データ入力サンプリング ビット

1 = スルーレート制御の標準速度モード (100 kHz と 1 MHz) を無効にする0 = スルーレート制御の高速モード (400 kHz) を有効にする

bit 6 CKE: クロックエッジ選択ビット

1 = SMBus 仕様に準拠したしきい値の入力ロジックを有効にする0 = SMBus 仕様の入力を無効にする

bit 5 D/A: データ / アドレスビット

1 = 後に送受信したバイトがデータである事を示す0 = 後に送受信したバイトがアドレスである事を示す

bit 4 P: STOP ビット

(SPEN がクリアされ MSSP モジュールが無効になると、このビットはクリアされます。)1 = 後に STOP ビットが検出された ( このビットは、リセット時に「0」となる )0 = 後に STOP ビットは検出されていない

bit 3 S: START ビット

(SSPEN がクリアされ MSSP モジュールが無効になると、このビットはクリアされます。)1 = 後に START ビットが検出された ( このビットは、リセット時に「0」となる )0 = 後に START ビットは検出されていない

bit 2 R/W: 読み書き情報ビット

このビットは、直前のアドレス一致時の R/W ビットの状態を保持します。このビットは、アドレス一致が発生してから START ビット、STOP ビット、NACK ビットのいずれ

かを受信するまでの期間でのみ有効です。I2C スレーブモード :1 = 読み出し0 = 書き込みI2C マスタモード :1 = 送信中0 = 送信中ではない

このビットと SEN、RSEN、PEN、RCEN、ACKEN のいずれかを OR 演算すると、MSSP がアイドルであるかどうか分かります。

bit 1 UA: アドレス更新ビット (10 ビット I2C モードのみ )

1 = ユーザが SSPADD レジスタ内のアドレスを更新する必要がある事を示す0 = アドレスの更新は不要である

bit 0 BF: バッファフル ステータスビット

受信時 :1 = 受信は完了し、SSPBUFF はフルである0 = 受信は未完了で、SSPBUF はエンプティである送信時 :1 = データ送信中 (ACK および STOP ビットを含まない ) で、SSPBUF はフルである0 = データ送信が完了 (ACK および STOP ビットを含まない ) し、SSPBUF はエンプティである

Page 194: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.194 2017 Microchip Technology Inc.

レジスタ 28-2: SSPCON1: SSP 制御レジスタ 1

R/C/HS-0 R/C/HS-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

WCOL SSPOV SSPEN CKP SSPM<3:0>

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア HS = ビットはハードウェアでセット

C = ビットはユーザがクリア

bit 7 WCOL: 書き込みコリジョン検出ビット

マスタモード :1 = I2C の送信開始条件が無効である時に SSPBUF レジスタへの書き込みが試行された0 = コリジョンは発生していないスレーブモード :1 = 前のワードの送信中にSSPBUFレジスタへの書き込みが実行された(ソフトウェアでクリアする

必要がある )0 = コリジョンは発生していない

bit 6 SSPOV: 受信オーバーフロー インジケータ ビット (1)

1 = SSPBUF レジスタが前のバイトを保持中に次のバイトを受信した。送信モードの場合、SSPOVビットは「ドントケア」( ソフトウェアでクリアする必要がある )

0 = オーバーフローは発生していない

bit 5 SSPEN: 同期シリアルポート イネーブルビット

両モード共、これらのピンが有効の場合、入力または出力として適切に設定する必要があります。1 = シリアルポートを有効にして、SDAピンとSCLピンをシリアルポート ピン(2)のソースとして設定

する0 = シリアルポートを無効にし、上記のピンを I/O ポートピンとして設定する

bit 4 CKP: クロック極性選択ビット

I2C スレーブモード :SCL 解放制御1 = クロックを有効にする0 = クロックを Lowに保持する (クロック ストレッチ )。(データのセットアップ時間確保のために

使われる )I2C マスタモード :このモードでは使わない

Note 1: マスタモードの場合、新たな送受信は SSPBUF レジスタへの書き込みによって開始するため、オーバーフロー ビットはセットされません。

2: 有効にする場合、SDA ピンと SCL ピンを入力として設定する必要があります。

3: I2C モードの場合、SSPADD の値 0、1、2 はサポートされていません。

Page 195: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.195

MCP19124/5

bit 3-0 SSPM<3:0>: 同期シリアルポート モード選択ビット

0000 = 予約済み0001 = 予約済み0010 = 予約済み 0011 = 予約済み 0100 = 予約済み0101 = 予約済み0110 = I2C スレーブモード、7 ビットアドレス 0111 = I2C スレーブモード、10 ビットアドレス 1000 = I2C マスタモード、クロック = FOSC/(4 x (SSPADD + 1))(3)

1001 = 予約済み1010 = 予約済み1011 = I2C ファームウェア制御マスタモード ( スレーブアイドル ) 1100 = 予約済み 1101 = 予約済み 1110 = I2Cスレーブモード、7ビットアドレス、STARTビットとSTOPビットの割り込みを有効にする 1111 = I2Cスレーブモード、10ビットアドレス、STARTビットとSTOPビットの割り込みを有効にする

レジスタ 28-2: SSPCON1: SSP 制御レジスタ 1 ( 続き )

Note 1: マスタモードの場合、新たな送受信は SSPBUF レジスタへの書き込みによって開始するため、オーバーフロー ビットはセットされません。

2: 有効にする場合、SDA ピンと SCL ピンを入力として設定する必要があります。

3: I2C モードの場合、SSPADD の値 0、1、2 はサポートされていません。

Page 196: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.196 2017 Microchip Technology Inc.

レジスタ 28-3: SSPCON2: SSP 制御レジスタ 2

R/W-0/0 R-0/0 R/W-0/0 R/S/HS-0/0 R/S/HS-0/0 R/S/HS-0/0 R/S/HS-0/0 R/W/HS-0/0

GCEN ACKSTAT ACKDT ACKEN (1) RCEN (1) PEN (1) RSEN (1) SEN (1)

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n/n = POR時とBOR時の値 /その他の全てのリセット時の値

「1」 = ビットはセット 「0」 = ビットはクリア H = ビットはハードウェアでセット

S = ビットはユーザがセット

bit 7 GCEN: ジェネラルコール イネーブルビット (I2C スレーブモードのみ )

1 = SSPSR でジェネラルコール アドレス (0x00 または 00h) を受信した時の割り込みを有効にする0 = ジェネラルコール アドレスを無効にする

bit 6 ACKSTAT: 肯定応答 (ACK) ステータスビット (I2C モードのみ )

1 = ACK を受信していない0 = ACK を受信した

bit 5 ACKDT: 肯定応答 (ACK) データビット (I2C モードのみ )

受信モード :受信の 後にユーザが ACK シーケンスを開始する時に送信される値です。1 = NACK( 否定応答 )0 = ACK

bit 4 ACKEN: 肯定応答 (ACK) シーケンス イネーブルビット (I2C マスタモードのみ )

マスタ受信モード :1 = SDAピンとSCLピンでACKシーケンスを開始し、ACKDTデータビットを送信する(このビットは

ハードウェアで自動的にクリアされます。)0 = ACK シーケンスをアイドル状態にする

bit 3 RCEN: 受信イネーブルビット (I2C マスタモードのみ )

1 = I2C の受信モードを有効にする0 = 受信をアイドル状態にする

bit 2 PEN: STOP 条件イネーブルビット (I2C マスタモードのみ )

SCK 解放制御 :1 = SDAピンとSCLピンでSTOP条件を開始する(このビットはハードウェアで自動的にクリアされ

ます。)0 = STOP 条件を開始しない

bit 1 RSEN: 反復 START 条件イネーブルビット (I2C マスタモードのみ )

1 = SDAピンとSCLピンで反復START条件を開始する(このビットはハードウェアで自動的にクリアされます。)

0 = 反復 START 条件を開始しない

bit 0 SEN: START 条件イネーブルビット (I2C マスタモードのみ )

マスタモード :1 = SDAピンとSCLピンでSTART条件を開始する(このビットはハードウェアで自動的にクリアされ

ます。)0 = START 条件を開始しないスレーブモード :1 = スレーブ送信とスレーブ受信の両方でクロック ストレッチを有効にする ( ストレッチ イネーブル )0 = クロック ストレッチを無効にする

Note 1: I2C モジュールがアイドル状態でない場合、このビットはセットされず ( スプール処理なし )、SSPBUFには書き込まれません (SSPBUF への書き込みは無効 )。

Page 197: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.197

MCP19124/5

レジスタ 28-4: SSPCON3: SSP 制御レジスタ 3

R-0/0 R/W-0/0 R/W-0/0 R/W-0/0 R/W-0/0 R/W-0/0 R/W-0/0 R/W-0/0

ACKTIM PCIE SCIE BOEN SDAHT SBCDE AHEN DHEN

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n/n = POR時とBOR時の値/その他の全てのリセット時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7 ACKTIM: 肯定応答 (ACK) 時間ステータスビット (I2C モードのみ ) (1)

1 = I2CバスはACKシーケンスを実行中である事を示す。SCLクロックの8番目の立ち下がりエッジでセットされる

0 = ACK シーケンスではない。SCL クロックの 9 番目の立ち上がりエッジでクリアされる

bit 6 PCIE: STOP 条件割り込みイネーブルビット (I2C モードのみ )

1 = STOP 条件検出時の割り込みを有効にする0 = STOP 条件検出時の割り込みを無効にする (2)

bit 5 SCIE: START 条件割り込みイネーブルビット (I2C モードのみ )

1 = START または反復 START 条件検出時の割り込みを有効にする0 = STOP 条件検出時の割り込みを無効にする (2)

bit 4 BOEN: バッファ上書きイネーブルビット

I C マスタモード :このビットは無視されます。

I C スレーブモード :1 = SSPBUFは更新され、受信したアドレス /データバイトに対してACK信号が生成される。BFビット

が 0の場合のみ、SSPOV ビットの状態は無視される0 = SSPOV がクリアされている時のみ SSPBUF が更新される

bit 3 SDAHT: SDA ホールド時間選択ビット

1 = SDA のホールド時間を SCL の立ち下がりエッジから 小 300 ns にする0 = SDA のホールド時間を SCL の立ち下がりエッジから 小 100 ns にする

bit 2 SBCDE: スレーブモードのバスコリジョン検出イネーブルビット (I2C スレーブモードのみ )

SCL の立ち上がりエッジで、モジュール出力が High の場合に SDA で Low がサンプリングされると、PIR1 レジスタの BCLIF ビットがセットされてバスはアイドル状態になります。1 = スレーブ バスコリジョン割り込みを有効にする0 = スレーブ バスコリジョン割り込みを無効にする

bit 1 AHEN: アドレスホールド イネーブルビット (I2C スレーブモードのみ )

1 = 一致受信アドレスバイトのSCLの8番目の立ち下がりエッジ後、SSPCON1レジスタのCKPビットがクリアされ、SCL が Low に保持される

0 = アドレスホールド機能を無効にする

bit 0 DHEN: データホールド イネーブルビット (I2C スレーブモードのみ )

1 = 受信データバイトについてSCLの8番目の立ち下がりエッジ後、スレーブ ハードウェアによってSSPCON1 レジスタの CKP ビットがクリアされ、SCL が Low に保持される

0 = データホールド機能を無効にする

Note 1: ACKTIM ステータスビットがアクティブになるのは、AHEN ビットまたは DHEN ビットがセットされている場合のみです。

2: このビットは、START/STOP 条件検出を明示的に有効にしているスレーブモードには影響しません。

2

Page 198: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.198 2017 Microchip Technology Inc.

レジスタ 28-5: SSPMSK1: SSP マスクレジスタ 1

R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1

MSK<7:1> MSK0

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-1 MSK<7:1>: マスクビット

1 = 受信アドレスの bit n を SSPADD<n> と比較して I2C アドレス一致を検出する0 = 受信アドレスの bit n を I2C アドレス一致の検出に使わない

bit 0 MSK0: I2C スレーブモード、10 ビットアドレス時のマスクビット

I2C スレーブモード、10 ビットアドレス (SSPM<3:0> = 0111または 1111) の場合 :1 = 受信アドレスの bit 0 を SSPADD<0> と比較して I2C アドレス一致を検出する0 = 受信アドレスのbit 0をI2Cアドレス一致の検出に使わない(I2Cスレーブモード、7ビットアドレス

では、このビットは無視されます。)

レジスタ 28-6: SSPADD: MSSP アドレス /baud レートレジスタ 1

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

ADD<7:0>

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

マスタモード :

bit 7-0 ADD<7:0>: baud レートクロック分周ビットSCL ピンクロック周期 = ((ADD<7:0> + 1) x 4)/FOSC

10 ビット スレーブモード - 上位アドレスバイト :

bit 7-3 未使用 : 上位アドレスバイトでは使わない。このレジスタのビット状態は「ドントケア」である。マスタが送信するビットパターンは I2C 仕様で定められており、「11110」とする必要がある。これらのビットに対してもハードウェアによる比較は実行されるが、このレジスタの値は比較結果に影響を与えない。

bit 2-1 ADD<2:1>: 10 ビットアドレスの上位 2 ビット

bit 0 未使用 : このモードでは使わない。ビット状態は「ドントケア」である。

10 ビット スレーブモード - 下位アドレスバイト :

bit 7-0 ADD<7:0>: 10 ビットアドレスの下位 8 ビット

7 ビット スレーブモード :

bit 7-1 ADD<7:1>: 7 ビットのアドレス

bit 0 未使用 : このモードでは使わない。ビット状態は「ドントケア」である。

Page 199: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.199

MCP19124/5

レジスタ 28-7: SSPMSK2: SSP マスクレジスタ 2

R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1

MSK2<7:0> MSK2<0>

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

bit 7-1 MSK2<7:1>: マスクビット

1 = 受信アドレスの bit n を SSPADD2<n> と比較して I2C アドレス一致を検出する0 = 受信アドレスの bit n を I2C アドレス一致の検出に使わない

bit 0 MSK2<0>: I2C スレーブモード、10 ビットアドレス時のマスクビット

I2C スレーブモード、10 ビットアドレス (SSPM<3:0> = 0111または 1111) の場合 :

1 = 受信アドレスの bit 0 を SSPADD2<0> と比較して I2C アドレス一致を検出する0 = 受信アドレスのbit 0をI2Cアドレス一致の検出に使わない(I2Cスレーブモード、7ビットアドレス

では、このビットは無視されます。)

レジスタ 28-8: SSPADD2: MSSP アドレス /baud レートレジスタ 2

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

ADD2<7:0>

bit 7 bit 0

Legend:

R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット、「0」として読み出し

u = ビットは不変 x = ビットは未知 -n = POR 時の値

「1」 = ビットはセット 「0」 = ビットはクリア

マスタモード :

bit 7-0 ADD2<7:0>: baud レートクロック分周ビットSCL ピンクロック周期 = ((ADD<7:0> + 1) x 4)/FOSC

10 ビット スレーブモード - 上位アドレスバイト :

bit 7-3 未使用 : 上位アドレスバイトでは使わない。このレジスタのビット状態は「ドントケア」である。マスタが送信するビットパターンは I2C 仕様で定められており、「11110」とする必要がある。これらのビットに対してもハードウェアによる比較は実行されるが、このレジスタの値は比較結果に影響を与えない。

bit 2-1 ADD2<2:1>: 10 ビットアドレスの上位 2 ビット

bit 0 未使用 : このモードでは使わない。ビット状態は「ドントケア」である。

10 ビット スレーブモード - 下位アドレスバイト :

bit 7-0 ADD2<7:0>: 10 ビットアドレスの下位 8 ビット

7 ビット スレーブモード :

bit 7-1 ADD2<7:1>: 7 ビットのアドレス

bit 0 未使用 : このモードでは使わない。ビット状態は「ドントケア」である。

Page 200: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.200 2017 Microchip Technology Inc.

NOTE:

Page 201: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.201

MCP19124/5

29.0 命令セットのまとめ

MCP19124/5 の命令セットは非常に直交性が高く、以下の 3 つのカテゴリから構成されます。

• バイト指向命令

• ビット指向命令

• リテラルおよび制御命令

各命令は 14 ビットワードで表され、命令の種類を指定する 1 つのオペコードと、命令の動作をより詳細に指定する 1 つまたは複数のオペランドから成ります。図 29-1 に各カテゴリの命令の形式を示し、表 29-1 に各種オペコードのフィールドをまとめます。

表 29-2 に、MPASMTM アセンブラが認識する命令の一覧を示します。

バイト指向命令の場合、「f」はファイルレジスタの指定文字、「d」は結果格納先の指定文字を表します。ファイルレジスタの指定文字は、命令で使うファイルレジスタを指定します。

結果格納先の指定文字は、演算の結果を書き込む場所を指定します。「d」が「0」の場合、結果は W レジスタに書き込まれます。「d」が「1」の場合、結果は命令で指定したファイルレジスタに書き込まれます。

ビット指向命令の「b」はビットフィールドの指定文字であり、その演算によって影響を受けるビットを指定します。「f」は、そのビットが含まれるファイルのアドレスを表します。

リテラルおよび制御命令の「k」は 8 ビットまたは 11ビットの定数つまりリテラル値を表します。

1 命令サイクルはオシレータの 4 周期分です。例えば、オシレータ周波数が 4 MHz の場合、公称命令実行時間は1 µsです。命令は全て 1命令サイクルで実行されます。例外は、条件テストが真の場合、または命令の実行結果によりプログラム カウンタが変わる場合です。この場合、実行には 2 命令サイクルを要し、2 サイクル目は NOPとして実行されます。

命令の例では、「0xhh」の形式で 16 進数を表しています。この「h」は 16 進数の 1 桁を表します。

29.1 Read-Modify-Write 動作

命令の一部としてファイルレジスタを指定するような命令は、必ず Read-Modify-Write (RMW) 動作を実行します。レジスタを読み出し、データを変更し、そして命令または格納先指定文字「d」のどちらかに従って結果を書き込みます。レジスタに対する書き込み命令であっても、そのレジスタに対する読み出し動作が実行されます。

例えば、CLRF PORTA命令は、PORTGPA を読み出し、データビットを全てクリアし、その結果を PORTGPAに書き戻します。この例を実行すると、IOCIF フラグをセットする条件が発生してもクリアされてしまいます。

図 29-1: 命令の一般的な形式

表 29-1: オペコード フィールドの説明

フィールド 説明

f レジスタ ファイルアドレス (0x00 ~0x7F)

W ワーキング レジスタ (アキュムレータ )

b 8 ビット ファイルレジスタのビットアドレス

k リテラル フィールド、定数データ、ラベル

x ドントケア ロケーション (= 0または1)、 アセンブラはx = 0でコードを生成します(Microchip 社の全ソフトウェア ツールとの互換性を確保するためにこの形式を推奨します )。

d 格納先の選択。d = 0: 結果を W に格納します。d = 1: 結果をファイルレジスタ fに格納します。 既定値は d = 1です。

PC プログラム カウンタ

TO タイムアウト ビット

C キャリービット

DC デジットキャリー ビット

Z ゼロビット

PD パワーダウン ビット

Byte-oriented file register operations13 8 7 6 0

d = 0 for destination W

OPCODE d f (FILE #)

d = 1 for destination ff = 7-bit file register address

Bit-oriented file register operations13 10 9 7 6

OPCODE b (BIT #) f (FILE #)

b = 3-bit bit addressf = 7-bit file register address

Literal and control operations

13 8 7 OPCODE k (literal)

k = 8-bit immediate value

13 11 10 0

OPCODE k (literal)

k = 11-bit immediate value

General

CALL and GOTO instructions only

Page 202: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.202 2017 Microchip Technology Inc.

表 29-2: MCP19124/5 の命令セット

ニーモニック、オペランド

説明サイクル

14 ビットオペコード 影響を受ける

ステータス

NoteMSb LSb

バイト指向ファイルレジスタ命令

ADDWFANDWFCLRFCLRWCOMFDECFDECFSZINCFINCFSZIORWFMOVFMOVWFNOPRLFRRFSUBWFSWAPFXORWF

f, df, df–

f, df, df, df, df, df, df, df–

f, df, df, df, df, d

Add W and fAND W with fClear fClear WComplement fDecrement fDecrement f, Skip if 0Increment fIncrement f, Skip if 0Inclusive OR W with fMove fMove W to fNo OperationRotate Left f through CarryRotate Right f through CarrySubtract W from fSwap nibbles in fExclusive OR W with f

111111

1(2)1

1(2)111111111

000000000000000000000000000000000000

011101010001000110010011101110101111010010000000000011011100001011100110

dfffdffflfff0xxxdfffdfffdfffdfffdfffdfffdffflfff0xx0dfffdfffdfffdfffdfff

ffffffffffffxxxxffffffffffffffffffffffffffffffff0000ffffffffffffffffffff

C, DC, ZZZZZZ

Z

ZZ

CC

C, DC, Z

Z

1, 21, 22

1, 21, 2

1, 2, 31, 2

1, 2, 31, 21, 2

1, 21, 21, 21, 21, 2

ビット指向ファイルレジスタ命令

BCFBSFBTFSCBTFSS

f, bf, bf, bf, b

Bit Clear fBit Set fBit Test f, Skip if ClearBit Test f, Skip if Set

11

1 (2)1 (2)

01010101

00bb01bb10bb11bb

bfffbfffbfffbfff

ffffffffffffffff

1, 21, 233

リテラルおよび制御命令

ADDLWANDLWCALLCLR-WDTGOTOIORLWMOVLWRETFIERETLWRETURNSLEEPSUBLWXORLW

kkk–kkk–k––kk

Add literal and WAND literal with WCall SubroutineClear Watchdog TimerGo to addressInclusive OR literal with WMove literal to WReturn from interruptReturn with literal in WReturn from SubroutineGo into Standby modeSubtract W from literalExclusive OR literal with W

1121211222111

11111000101111001100001111

111x10010kkk00001kkk100000xx000001xx00000000110x1010

kkkkkkkkkkkk0110kkkkkkkkkkkk0000kkkk00000110kkkkkkkk

kkkkkkkkkkkk0100kkkkkkkkkkkk1001kkkk10000011kkkkkkkk

C, DC, ZZ

TO, PD

Z

TO, PDC, DC, Z

Z

Note 1: I/O レジスタの値を同じ I/O レジスタによって変更する場合 ( 例 : MOVF PORTA, 1)、これらのピンの入力レベルが使われます。例えば、入力ピンのデータラッチが「1」で、そのピンが外部デバイスによってLow に駆動されている場合、データは「0」として上書きされます。

2: この命令を TMR0 レジスタに対して実行した場合 ( かつ、「d」の指定が可能で d = 1 の場合 )、Timer0モジュールにプリスケーラが割り当てられているとプリスケーラもクリアされます。

3: プログラム カウンタ (PC) が変更された場合、あるいは条件付きテストの結果が真の場合、命令実行には2 サイクルが必要です。2 サイクル目は、NOPとして実行されます。

Page 203: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.203

MCP19124/5

29.2 命令の説明

ADDLW Add literal and W

構文 : [ label ] ADDLW k

オペランド : 0 k 255

動作 : (W) + k (W)

影響を受けるステータス :

C, DC, Z

説明 : W レジスタの内容を 8 ビットのリテラル「k」に加算し、結果をW レジスタに書き込みます。

ADDWF Add W and f

構文 : [ label ] ADDWF f,d

オペランド : 0 f 127d

動作 : (W) + (f) (destination)

影響を受けるステータス :

C, DC, Z

説明 : W レジスタとレジスタ「f」の内容を加算します。「d」が「0」の場合、結果はWレジスタに書き込まれます。「d」が「1」の場合、結果はレジスタ「f」に書き戻されます。

ANDLW AND literal with W

構文 : [ label ] ANDLW k

オペランド : 0 k 255

動作 : (W) .AND.(k) (W)

影響を受けるステータス :

Z

説明 : W レジスタの内容と 8 ビットのリテラル「k」を AND 演算します。結果はWレジスタに書き込まれます。

ANDWF AND W with f

構文 : [ label ] ANDWF f,d

オペランド : 0 f 127d

動作 : (W) .AND.(f) (destination)

影響を受けるステータス :

Z

説明 : W レジスタとレジスタ「f」を AND演算します。「d」が「0」の場合、結果は W レジスタに書き込まれます。「d」が「1」の場合、結果はレジスタ「f」に書き戻されます。

BCF Bit Clear f

構文 : [ label ] BCF f,b

オペランド : 0 f 1270 b 7

動作 : 0 (f<b>)

影響を受けるステータス :

なし

説明 : レジスタ「 f」のビット「b」をクリアします。

BSF Bit Set f

構文 : [ label ] BSF f,b

オペランド : 0 f 1270 b 7

動作 : 1 (f<b>)

影響を受けるステータス :

なし

説明 : レジスタ「f」のビット「b」をセットします。

BTFSC Bit Test f, Skip if Clear

構文 : [ label ] BTFSC f,b

オペランド : 0 f 1270 b 7

動作 : skip if (f<b>) = 0影響を受けるステータス :

なし

説明 : レジスタ「f」のビット「b」が「1」の場合、次の命令を実行します。レジスタ「f」のビット「b」が「0」の場合、次の命令を破棄し、代わりに NOP を実行して、2 サイクルの命令にします。

Page 204: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.204 2017 Microchip Technology Inc.

BTFSS Bit Test f, Skip if Set

構文 : [ label ] BTFSS f,b

オペランド : 0 f 1270 b < 7

動作 : skip if (f<b>) = 1影響を受けるステータス :

なし

説明 : レジスタ「f」のビット「b」が「0」の場合、次の命令を実行します。ビット「b」が「1」の場合、次の命令を破棄し、代わりに NOP を実行して、2 サイクルの命令にします。

CALL Call Subroutine

構文 : [ label ] CALL k

オペランド : 0 k 2047

動作 : (PC)+ 1 TOS,k PC<10:0>,(PCLATH<4:3>) PC<12:11>

影響を受けるステータス :

なし

説明 : サブルーチンを呼び出します。初に、リターンアドレス (PC + 1)

をスタックにプッシュします。11ビットの即値アドレスを、PCビット <10:0> に書き込みます。PC の上位ビットは、PCLATH から書き込まれます。CALLは、2 サイクルの命令です。

CLRF Clear f

構文 : [ label ] CLRF f

オペランド : 0 f 127

動作 : 00h (f)1 Z

影響を受けるステータス :

Z

説明 : レジスタ「f」の内容をクリアして、Z ビットをセットします。

CLRW Clear W

構文 : [ label ] CLRW

オペランド : なし

動作 : 00h (W)1 Z

影響を受けるステータス :

Z

説明 : W レジスタをクリアします。ゼロビット (Z) をセットします。

CLRWDT Clear Watchdog Timer

構文 : [ label ] CLRWDT

オペランド : なし

動作 : 00h WDT0 WDT prescaler, TO PD

影響を受けるステータス :

TO, PD

説明 : ウォッチドッグ タイマをリセットします。WDT のプリスケーラもリセットします。 STATUS レジスタのビット TO とPD をセットします。

COMF Complement f

構文 : [ label ] COMF f,d

オペランド : 0 f 127d [0,1]

動作 : (f) (destination)

影響を受けるステータス :

Z

説明 : レジスタ「f」の内容の補数をとります。「d」が「0」の場合は結果が W レジスタに書き込まれ、「d」が「1」の場合は結果がレジスタ「f」に書き戻されます。

DECF Decrement f

構文 : [ label ] DECF f,d

オペランド : 0 f 127d [0,1]

動作 : (f) - 1 (destination)

影響を受けるステータス :

Z

説明 : レジスタ「f」の内容をデクリメントします。「d」が「0」の場合、結果は W レジスタに書き込まれます。「d」が「1」の場合、結果はレジスタ「f」に書き戻されます。

Page 205: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.205

MCP19124/5

DECFSZ Decrement f, Skip if 0

構文 : [ label ] DECFSZ f,d

オペランド : 0 f 127d [0,1]

動作 : (f) - 1 (destination)、 結果 = 0の場合スキップ

影響を受けるステータス :

なし

説明 : レジスタ「f」の内容をデクリメントします。「d」が「0」の場合、結果は W レジスタに書き込まれます。「d」が「1」の場合、結果はレジスタ「f」に書き戻されます。 結果が「1」の場合、次の命令が実行されます。結果が「0」の場合は代わりに NOPを実行して、2 サイクルの命令にします。

GOTO Unconditional Branch

構文 : [ label ] GOTO k

オペランド : 0 k 2047

動作 : k PC<10:0>PCLATH<4:3> PC<12:11>

影響を受けるステータス :

なし

説明 : GOTOは無条件分岐です。11 ビットの即値を、PC ビット <10:0> に書き込みます。PCの上位ビットは、PCLATH<4:3>から書き込まれます。GOTOは 2 サイクルの命令です。

INCF Increment f

構文 : [ label ] INCF f,d

オペランド : 0 f 127d [0,1]

動作 : (f) + 1 (destination)

影響を受けるステータス :

Z

説明 : レジスタ「f」の内容をインクリメントします。「d」が「0」の場合、結果は W レジスタに書き込まれます。「d」が「1」の場合、結果はレジスタ「f」に書き戻されます。

INCFSZ Increment f, Skip if 0

構文 : [ label ] INCFSZ f,d

オペランド : 0 f 127d [0,1]

動作 : (f) + 1 (destination)、 結果 = 0の場合スキップ

影響を受けるステータス :

なし

説明 : レジスタ「f」の内容をインクリメントします。「d」が「0」の場合、結果は W レジスタに書き込まれます。「d」が「1」の場合、結果はレジスタ「f」に書き戻されます。結果が「1」の場合、次の命令が実行されます。結果が「0」の場合は代わりに NOPを実行して、2 サイクルの命令にします。

IORLW Inclusive OR literal with W

構文 : [ label ] IORLW k

オペランド : 0 k 255

動作 : (W) .OR. k (W)

影響を受けるステータス :

Z

説明 : W レジスタの内容と 8 ビットのリテラル「k」を OR 演算します。結果は W レジスタに書き込まれます。

IORWF Inclusive OR W with f

構文 : [ label ] IORWF f,d

オペランド : 0 f 127d [0,1]

動作 : (W) .OR.(f) (destination)

影響を受けるステータス :

Z

説明 : W レジスタとレジスタ「f」を OR演算します。「d」が「0」の場合、結果はWレジスタに書き込まれます。「d」が「1」の場合、結果はレジスタ「f」に書き戻されます。

Page 206: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.206 2017 Microchip Technology Inc.

MOVF Move f

構文 : [ label ] MOVF f,d

オペランド : 0 f 127d [0,1]

動作 : (f) (destination)

影響を受けるステータス :

Z

説明 : レジスタ「f」の内容を、「d」で示された格納先に移動します。「d」= 「0」の場合、格納先は W レジスタです。「d」 = 「1」の場合、格納先はファイルレジスタ「f」自身です。STATUS フラグ Z は影響を受けるため、ファイルレジスタのテストには「d」 = 「1」を使います。

ワード数 : 1

サイクル数 : 1

例 : MOVF FSR, 0命令実行後

W = FSR レジスタ

の値Z = 1

MOVLW Move literal to W

構文 : [ label ] MOVLW k

オペランド : 0 k 255

動作 : k (W)

影響を受けるステータス :

なし

説明 : 8 ビットのリテラル「k」を W レジスタに書き込みます。「ドントケア」は「0」としてアセンブルされます。

ワード数 : 1

サイクル数 : 1

例 : MOVLW 0x5A命令実行後

W = 0x5A

MOVWF Move W to f

構文 : [ label ] MOVWF f

オペランド : 0 f 127

動作 : (W) (f)

影響を受けるステータス :

なし

説明 : W レジスタから、レジスタ「f」にデータを移動します。

ワード数 : 1

サイクル数 : 1

例 : MOVWF OPTION命令実行前

OPTION = 0xFFW = 0x4F

命令実行後OPTION = 0x4FW = 0x4F

NOP No Operation

構文 : [ label ] NOP

オペランド : なし

動作 : なし

影響を受けるステータス :

なし

説明 : 何も実行しません。

ワード数 : 1

サイクル数 : 1

例 : NOP

Page 207: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.207

MCP19124/5

RETFIE Return from Interrupt

構文 : [ label ] RETFIE

オペランド : なし

動作 : TOS PC,1 GIE

影響を受けるステータス :

なし

説明 : 割り込み処理から復帰します。ス タ ッ ク が ポ ッ プ さ れ、Top-of-Stack (TOS) が PC に書き込まれます。グローバル割り込みイネーブルビット GIE(INTCON<7>) をセットして、割り込みを有効にします。これは 2 サイクルの命令です。

ワード数 : 1

サイクル数 : 2

例 : RETFIE割り込み後

PC = TOSGIE = 1

RETLW Return with literal in W

構文 : [ label ] RETLW k

オペランド : 0 k 255

動作 : k (W); TOS PC

影響を受けるステータス :

なし

説明 : 8ビットのリテラル「k」をWレジスタに書き込みます。Top-of-Stack(リターンアドレス )をプログラムカウンタに書き込みます。これは2 サイクルの命令です。

ワード数 : 1

サイクル数 : 2

例 :

TABLE

DONE

CALL TABLE;W contains ;table offset ;value

GOTO DONE••ADDWF PC ;W = offsetRETLW k1 ;Begin tableRETLW k2 ;•••RETLW kn ;End of table

命令実行前W = 0x07

命令実行後W = k8 の値

RETURN Return from Subroutine

構文 : [ label ] RETURN

オペランド : なし

動作 : TOS PC

影響を受けるステータス :

なし

説明 : サブルーチンから戻ります。スタックがポップされ、Top-of-Stack (TOS)がプログラム カウンタに書き込まれます。これは 2 サイクルの命令です。

Page 208: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.208 2017 Microchip Technology Inc.

RLF Rotate Left f through Carry

構文 : [ label ] RLF f,d

オペランド : 0 f 127d [0,1]

動作 : 以下参照

影響を受けるステータス :

C

説明 : レジスタ「f」の内容を、キャリーフラグを通して左回りに1ビット移動させます。「d」が「0」の場合、結果は W レジスタに書き込まれます。「d」が「1」の場合、結果はレジスタ「f」に書き戻されます。

ワード数 : 1

サイクル数 : 1

例 : RLF REG1,0命令実行前

REG1 = 1110 0110C = 0

命令実行後REG1 = 1110 0110W = 1100 1100C = 1

RRF Rotate Right f through Carry

構文 : [ label ] RRF f,d

オペランド : 0 f 127d [0,1]

動作 : 以下参照

影響を受けるステータス :

C

説明 : レジスタ「f」の内容を、キャリーフラグを通して右回りに 1 ビット移動させます。「d」が「0」の場合、結果はWレジスタに書き込まれます。

「d」が「1」の場合、結果はレジスタ「f」に書き戻されます。

Register fC

Register fC

SLEEP Enter Sleep mode

構文 : [ label ] SLEEP

オペランド : なし

動作 : 00h WDT,0 WDT prescaler,1 TO,0 PD

影響を受けるステータス :

TO, PD

説明 : パワーダウン STATUS ビット(PD) をクリアします。タイムアウト STATUS ビット (TO) をセットします。ウォッチドッグタイマとそのプリスケーラをクリアします。オシレータを停止してプロセッサをスリープにします。

SUBLW Subtract W from literal

構文 : [ label ] SUBLW k

オペランド : 0 k 255

動作 : k - (W) W)

影響を受けるステータス :

C, DC, Z

説明 : 8ビットのリテラル「k」からWレジスタを減算します (2 の補数法 )。結果はWレジスタに書き込まれます。

SUBWF Subtract W from f

構文 : [ label ] SUBWF f,d

オペランド : 0 f 127d [0,1]

動作 : (f) - (W) destination)

影響を受けるステータス :

C, DC, Z

説明 : レジスタ「f」から、W レジスタを減算します (2 の補数法 )。「d」が「0」の場合、結果は W レジスタに書き込まれます。「d」が「1」の場合、結果はレジスタ「f」に書き戻されます。

結果 条件

C = 0 W k

C = 1 W k

DC = 0 W<3:0> k<3:0>

DC = 1 W<3:0> k<3:0>

C = 0 W f

C = 1 W f

DC = 0 W<3:0> f<3:0>

DC = 1 W<3:0> f<3:0>

Page 209: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.209

MCP19124/5

SWAPF Swap Nibbles in f

構文 : [ label ] SWAPF f,d

オペランド : 0 f 127d [0,1]

動作 : (f<3:0>) (destination<7:4>),(f<7:4>) (destination<3:0>)

影響を受けるステータス :

なし

説明 : レジスタ「f」の上位ニブルと下位ニブルを入れ換えます。「d」が「0」の場合、結果は W レジスタに書き込まれます。「d」が「1」の場合、結果はレジスタ「f」に書き込まれます。

XORLW Exclusive OR literal with W

構文 : [ label ] XORLW k

オペランド : 0 k 255

動作 : (W) .XOR. k W)

影響を受けるステータス :

Z

説明 : W レジスタの内容と 8 ビットのリテラル「k」を XOR 演算します。結果は W レジスタに書き込まれます。

XORWF Exclusive OR W with f

構文 : [ label ] XORWF f,d

オペランド : 0 f 127d [0,1]

動作 : (W) .XOR.(f) destination)

影響を受けるステータス :

Z

説明 : W レジスタの内容とレジスタ「f」を XOR 演算します。「d」が「0」の場合、結果は W レジスタに書き込まれます。「d」が「1」の場合、結果はレジスタ「f」に書き戻されます。

Page 210: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.210 2017 Microchip Technology Inc.

NOTE:

Page 211: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.211

MCP19124/5

30.0 インサーキット シリアル プログラミング ™(ICSP™)

ICSP を使うと、未書き込みのデバイスを使って回路基板を生産できます。組み立てプロセス後に書き込む事で、 新ファームウェアまたはカスタム ファームウェアを使ってデバイスをプログラムできます。ICSPプログラミングには、以下の 5 本のピンが必要です。

• ICSPCLK

• ICSPDAT

• MCLR

• VDD

• AGND

プログラム / ベリファイモードを使って、プログラムメモリ、ユーザ ID、コンフィグレーション ワードをシリアル通信を介してプログラムします。ICSPDATピンはシリアルデータ転送用の双方向 I/O であり、ICSPCLK ピンはクロック入力です。デバイスをプログラム / ベリファイモードにするには、ICSPDAT ピンとICSPCLK ピンを Low にしたまま、MCLR ピンを VIL から VIHH に上げます。

30.1 一般的なプログラミング インターフェイス

ターゲット デバイスへの接続は、通常は ICSP ヘッダを介して行います。開発ツールによく使われるコネクタは、6P6C (6 ピン、6 コネクタ ) 構成の RJ-11 です。図 30-1を参照してください。

図 30-1: ICD RJ-11 型コネクタ インターフェイス

また、PICkit™ プログラマによく使われるコネクタとして、0.1 インチ間隔の標準 6 ピンヘッダがあります。図 30-2 を参照してください。

図 30-2: PICkit™ 型コネクタ インターフェイス

1

2

3

4

5

6

MCLR AGND

ICSPCLKVDD

ICSPDATNC

ピンの説明 *

1 = MCLR

2 = ターゲットの VDD

3 = VSS( グランド )

4 = ICSPDAT

5 = ICSPCLK

6 = 未接続

TargetPC BoardBottom Side

6ピンヘッダ (0.1インチ間隔 )は 0.025インチ角型ピンに適合します。

123456

ピンの説明 *

1 = MCLR

2 = ターゲットの VDD

3 = AGND

4 = ICSPDAT

5 = ICSPCLK

6 = 未接続

Pin 1 Indicator

* 6 ピンヘッダ (0.1 インチ間隔 ) は0.025 インチ角型ピンに適合します。

Page 212: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.212 2017 Microchip Technology Inc.

インターフェイスに関するその他の推奨事項は、プリント基板の設計前に、ご使用のデバイス プログラマのマニュアルを参照してください。

絶縁デバイスを使って、プログラミング ピンと他の回路を絶縁する事を推奨します。絶縁方法はアプリケーション固有であり、抵抗、ダイオード等のデバイスや、ジャンパを使う事もあります。詳細は図 30-3 を参照してください。

図 30-3: ICSP™ プログラミングの代表的な接続

VDD

VPP

AGND

ExternalDevice to be

Data

Clock

VDD

MCLR

AGND

ICSPDAT

ICSPCLK

* **

To Normal Connections

* Isolation devices (as required).

Programming Signals programmed

VDD

Note: 逆供給の VDD で給電する場合、VDD を VIN に接続する必要があります。

Page 213: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.213

MCP19124/5

31.0 開発サポート

PIC® マイクロコントローラ (MCU) と dsPIC® デジタルシグナル コントローラ (DSC) は、以下に示す各種ソフトウェア / ハードウェア開発ツールによってサポートされています。

• 統合開発環境 (Integrated Development Environment)

- MPLAB® X IDE ソフトウェア

• コンパイラ / アセンブラ / リンカ

- MPLAB XC コンパイラ

- MPASMTM アセンブラ

- MPLINKTM オブジェクト リンカ /MPLIBTM オブジェクト ライブラリアン

- 各種デバイスファミリ用 MPLAB アセンブラ /リンカ / ライブラリアン

• シミュレータ

- MPLAB X SIM ソフトウェア シミュレータ

• エミュレータ

- MPLAB REAL ICE™ インサーキット エミュレータ

• インサーキット デバッガ / プログラマ

- MPLAB ICD 3

- PICkit™ 3

• デバイス プログラマ

- MPLAB PM3 デバイス プログラマ

• 低コストのデモボード、開発ボード、評価キット、スタータキット

• サードパーティ製開発ツール

31.1 MPLAB X 統合開発環境ソフトウェア

MPLAB X IDE は、Microchip 社およびサードパーティのソフトウェア / ハードウェア開発ツールに対する共通のグラフィカル ユーザ インターフェイスで、Windows®、Linux、Mac OS® Xで動作します。NetBeansIDE をベースにした MPLAB X IDE は、無償のソフトウェア コンポーネントとプラグインを豊富に揃えた全く新しい IDE で、高性能アプリケーションの開発とデバッグを実行できます。ツール間の移行も、ソフトウェア シミュレータからハードウェア デバッグ /プログラミング ツールへのアップグレードも、このシームレスなユーザ インターフェイスで簡単に行う事ができます。

プロジェクト管理、視覚的なコールグラフ、設定可能なウォッチ ウィンドウ、多機能なエディタ ( コード補完、コンテクスト メニュー等 )を完備したMPLAB X IDEは、柔軟性に富み新規のユーザでも簡単に使えます。複数のプロジェクトを複数のツールで開きながら同時にデバッグを行う機能も備える等、MPLAB X IDE はベテランユーザのニーズにも対応します。

多機能エディタ :

• 構文の色分け表示

• 入力中に候補とヒントを表示するスマートコード補完

• ユーザ定義のルールに基づくコードの自動フォーマット処理

• リアルタイムの構文解析

カスタマイズ可能で使いやすいインターフェイス :

• 完全にカスタマイズ可能なツールバー、ツールバーのボタン、ウィンドウ、ウィンドウ配置等のインターフェイス

• コールグラフ ウィンドウ

プロジェクト ベースのワークスペース :

• 複数プロジェクト

• 複数ツール

• 複数設定

• 同時デバッグ セッション

ファイル履歴とバグトラッキング :

• ローカルファイル履歴機能

• Bugzilla( バグ追跡システム ) をサポート

Page 214: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.214 2017 Microchip Technology Inc.

31.2 MPLAB XC コンパイラ

MPLAB XC コンパイラは、Microchip 社の 8/16/32ビット MCU および DSC デバイス全てに対応する完全な ANSI C コンパイラです。これらのコンパイラは強力な統合機能と優れたコード 適化機能を備え、容易に使えます。MPLAB XC コンパイラは Windows、Linux、Mac OS X で動作します。

また、MPLAB X IDE 用に 適化されたデバッグ情報を出力できるため、ソースレベルのデバッグも容易です。

この MPLAB XC コンパイラの Free エディションは、全てのデバイスとコマンドをサポートし、使用期間とメモリ量に制約はありません。また、ほとんどのアプリケーションに十分なコード 適化機能も備えています。

MPLAB XC コンパイラは、アセンブラ、リンカ、ユーティリティを含みます。このアセンブラが生成した再配置可能なオブジェクト ファイルをアーカイブまたは他の再配置可能なオブジェクト ファイルとリンクして、実行ファイルを生成します。MPLAB XC コンパイラはこのアセンブラを使ってオブジェクト ファイルを生成します。このアセンブラには、主に以下の特長があります。

• デバイスの全命令セットのサポート

• 固定 / 浮動小数点データのサポート

• コマンドライン インターフェイス

• 豊富なディレクティブ セット

• 柔軟なマクロ言語

• MPLAB X IDE との互換性

31.3 MPASM アセンブラ

MPASM アセンブラは、PIC10/12/16/18 MCU に対応したフル機能の汎用マクロアセンブラです。

MPASM アセンブラは、MPLINK オブジェクト リンカ用の再配置可能なオブジェクト ファイル、Intel® 標準HEX ファイル、メモリ使用状況とシンボル参照を詳述する MAP ファイル、ソース行と生成後のマシンコードを含む絶対 LST ファイル、デバッグ用の COFF ファイルを生成します。

MPASM アセンブラには、以下の特長があります。

• MPLAB X IDE プロジェクトへの統合

• ユーザ定義マクロによるアセンブリコードの 適化

• 多用途ソースファイルに対応する条件付きアセンブリ

• アセンブリ プロセスを完全に制御できるディレクティブ

31.4 MPLINK オブジェクト リンカ /MPLIB オブジェクト ライブラリアン

MPLINK オブジェクト リンカは、MPASM アセンブラで生成された再配置可能なオブジェクトを結合します。このオブジェクト リンカは、リンカスクリプトのディレクティブを使って、プリコンパイル済みのライブラリ内の再配置可能オブジェクトをリンクできます。

MPLIB オブジェクト ライブラリアンは、プリコンパイル済みコードのライブラリ ファイルの作成と変更を管理します。ライブラリのルーチンをソースファイルから呼び出すと、そのルーチンが含まれているモジュールのみがアプリケーションとリンクされます。これにより、大きなライブラリを各種アプリケーションで効率的に使えます。

オブジェクト リンカ / ライブラリには、以下の特長があります。

• 多数の小さなファイルをリンクするのではなく、1 つのライブラリを効率的にリンクする

• 関連するモジュールをグループ化する事により、コードの保守性が向上する

• モジュールのリスト作成、置換、削除、抽出が容易なライブラリを柔軟に作成する

31.5 各種デバイスファミリ用 MPLABアセンブラ / リンカ / ライブラリアン

MPLAB アセンブラは、PIC24、PIC32、dsPIC DSC 用のシンボリック アセンブリ言語から、再配置可能なマシンコードを作成します。MPLAB XC コンパイラはこのアセンブラを使ってオブジェクト ファイルを生成します。このアセンブラが生成した再配置可能なオブジェクト ファイルをアーカイブまたは他の再配置可能なオブジェクト ファイルとリンクして、実行ファイルを生成します。このアセンブラには、主に以下の特長があります。

• デバイスの全命令セットのサポート

• 固定 / 浮動小数点データのサポート

• コマンドライン インターフェイス

• 豊富なディレクティブ セット

• 柔軟なマクロ言語

• MPLAB X IDE との互換性

Page 215: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.215

MCP19124/5

31.6 MPLAB X SIM ソフトウェア シミュレータ

MPLAB X SIM ソフトウェア シミュレータには、PICMCU と dsPIC DSC を命令レベルでシミュレートする機能があり、PC 環境でコードを開発できます。任意の命令に対してデータ領域を検証または変更でき、総合的なスティミュラス コントローラから外部信号を印加できます。レジスタをファイルに記録して、より詳細な実行時解析が可能です。また、トレースバッファとロジック アナライザ ディスプレイを使って、プログラムの実行、I/O アクティビティ、ほとんどの周辺モジュールと内部レジスタの記録と確認ができるため、シミュレータとしての完成度がより向上しています。

MPLAB X SIM ソフトウェア シミュレータは、MPLABXC コンパイラ、MPASM/MPLAB アセンブラを使ったシンボリック デバッグを完全サポートしています。このソフトウェア シミュレータは、ハードウェアラボ環境外での柔軟なコード開発とデバッグを可能にする経済的で優れたソフトウェア開発ツールです。

31.7 MPLAB REAL ICE インサーキット エミュレータ システム

MPLAB REAL ICE インサーキット エミュレータ システムは、Microchip 社製フラッシュ DSC/MCU デバイス用の次世代型高速エミュレータです。このエミュレータでは、MPLAB X IDE の強力で使いやすいグラフィカルユーザ インターフェイスを利用して、8/16/32 ビットMCU および DSC の全てをデバッグ / プログラムできます。

このエミュレータをハイスピード USB 2.0 インターフェイスで設計エンジニアの PC に接続し、ターゲットデバイスとはインサーキット デバッガシステムと互換の RJ-11 コネクタか、高速で耐ノイズ性に優れる新の LVDS インターフェイス (CAT5) で接続します。

このエミュレータの更新用ファームウェアは、MPLABX IDE からダウンロードできます。MPLAB REAL ICEは、競合エミュレータと比べると大きく優れています。例えばフルスピードでのエミュレーション、実行時変数監視、パターン解析、複雑なブレークポイント、論理プローブ、耐久性の高いプローブ インターフェイス、長いケーブル ( 長 3 m) を使える点が挙げられます。

31.8 MPLAB ICD 3 インサーキット デバッガシステム

MPLAB ICD 3 インサーキット デバッガシステムは、Microchip社製フラッシュDSCおよびMCUに対応した、非常に対費用効果の高い高速ハードウェア デバッガ /プログラマです。このデバッガを使うと、MPLAB IDEの使いやすくパワフルなグラフィカル ユーザ インターフェイスで PIC MCU と dsPIC DSC のデバッグとプログラミングを実行できます。

MPLAB ICD 3 インサーキット デバッガのプローブは、設計エンジニアの PC との接続にハイスピード USB2.0 インターフェイスを使い、ターゲット デバイスとの接続には MPLAB ICD 2/MPLAB REAL ICE システムと互換のコネクタ (RJ-11) を使います。MPLAB ICD 3は全ての MPLAB ICD 2 ヘッダをサポートしています。

31.9 PICkit 3 インサーキット デバッガ /プログラマ

MPLAB PICkit 3 を使用すると、MPLAB IDE の優れたユーザ インターフェイスを使用して、非常に安価にPICおよびdsPICフラッシュ マイクロコントローラのデバッグとプログラミングが行えます。MPLAB PICkit3と設計エンジニアのPCの接続にはフルスピードUSBインターフェイスを使います。ターゲット デバイスとの接続には、MPLAB ICD 3/MPLAB REAL ICE と互換のMicrochip 社のデバッグコネクタ (RJ-11) を使います。このコネクタは 2 本のデバイス I/O ピンとリセットラインを使って、インサーキット デバッグとインサーキット シリアル プログラミング ™(ICSP™) を実現します。

31.10 MPLAB PM3 デバイス プログラマ

MPLAB PM3 デバイス プログラマは CE 準拠のユニバーサル デバイス プログラマで、VDDMIN と VDDMAXでのプログラマブル電圧検証によって 大限の信頼性を確保します。このデバイス プログラマは、メニューとエラーメッセージを表示する大型 LCD (128 x 64) と、各種パッケージタイプに対応するための脱着可能なモジュール式ソケット アセンブリを備えています。ICSP ケーブル アセンブリは標準で付属しています。スタンドアロン モードでは、MPLAB PM3 デバイスプログラマを PC に接続せずに、PIC MCU の読み出し、検証、プログラムが可能です。このモードでコード保護も設定できます。MPLAB PM3 とホスト PC との接続には、RS-232 または USB ケーブルを使います。さらに、大容量メモリデバイスの高速プログラミングを可能にする高速通信と 適化されたアルゴリズムを備え、ファイル保存とデータ アプリケーションのための MMC カードを内蔵しています。

Page 216: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.216 2017 Microchip Technology Inc.

31.11 デモボード、開発ボード、評価キット、スタータキット

各種 PIC MCU と dsPIC DSC には多彩なデモボード、開発ボード、評価用ボードを用意しており、完全に機能するシステム上でアプリケーションを迅速に開発できます。ほとんどのボードは、カスタム回路を追加するためのプロトタイプ領域を備えています。また、付属のアプリケーション ファームウェアとソースコードを使って動作を評価できます。これらを編集して使う事もできます。

これらのボードは LED、温度センサ、スイッチ、スピーカ、RS-232 インターフェイス、LCD、ポテンショメータ、増設 EEPROM メモリ等の各種機能をサポートします。

デモボードと開発ボードは、カスタム回路の試作と各種マイクロコントローラ アプリケーションの学習教材として使う事ができます。

PICDEM™とdsPICDEM™デモ /開発ボードシリーズの回路の他に、Microchip 社ではアナログフィルタ設計、KEELOQ® セキュリティ IC、CAN、IrDA®、PowerSmartバッテリ管理、SEEVAL® 評価システム、ΔΣ型 ADC、流量検出等、各種アプリケーションに対応する評価キットとデモソフトウェアを取り揃えています。

また、特定のデバイスを体験するために必要なもの全てを収めたスタータキットも提供しています。スタータキットは通常、1 つのアプリケーションとデバッグ機能の全てを 1 つのボードに搭載した形で提供します。

デモボード、開発ボード、評価キットの一覧は、Microchip 社のウェブサイト (www.microchip.com) でご覧ください。

31.12 サードパーティの開発ツール

Microchip 社は、サードパーティ製のツールも数多く提供しています。これらのツールを使うと、他では得られない便利な機能が得られます。

• デバイス プログラマ / ギャング プログラマ : SoftLog 社、CCS 社等の製品

• ソフトウェア ツール : Gimpel 社、Trace Systems社等の製品

• プロトコル アナライザ : Saleae 社、Total Phase社等の製品

• デモボード : MikroElektronika 社、Digilent® 社、Olimex 社等の製品

• 組み込みEthernetソリューション: EZ Web Lynx社、WIZnet 社、IPLogika® 社等の製品

Page 217: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.217

MCP19124/5

32.0 パッケージ情報

32.1 パッケージのマーキング情報

例24 ピン QFN (4x4x0.9 mm) (MCP19124 のみ )

19124E/MJ^^1620256

3e

凡例 : XX...X お客様固有情報Y 年コード ( 西暦の下 1 桁 )YY 年コード ( 西暦の下 2 桁 )WW 週コード (1 月 1 日の週を「01」とする )NNN 英数字のトレーサビリティ コード 無光沢スズ (Sn) めっきの使用を示す鉛フリー JEDEC® マーク* 本パッケージは鉛フリーです。鉛フリー JEDEC マーク ( ) は

外箱に表記しています。

Note: Microchip 社の製品番号が 1 行に収まりきらない場合は複数行を使います。この場合お客様固有情報に使える文字数が制限されます。

3e

3e

例28 ピン QFN (5x5x0.9 mm) (MCP19125 のみ )

XXXXXXXXXXXYYWWNNN

19125E/MQ^^3e

XXXXXXXXXXXXXX

Page 218: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.218 2017 Microchip Technology Inc.

24 ピンプラスチック クワッドフラット、リードレス パッケージ (MJ) - 4x4x0.9 mm ボディ [QFN]

Note:

1. ピン 1 のビジュアル インデックスの場所にはばらつきがありますが、必ず斜線部分内にあります。

2. パッケージはダイサーで個片化されています。

3. 寸法と公差は ASME Y14.5M に準拠しています。

BSC: 基本寸法、理論的に正確な値、公差なしで表示

REF: 参考寸法、通常は公差を含まない、情報としてのみ提示される値

Microchip Technology Drawing No. C04-143A

Note: 新のパッケージ図面については、以下のウェブページにある「Microchip Packaging Specification (Microchip 社パッケージ仕様 )」を参照してください。http://www.microchip.com/packaging

単位 ミリメートル

寸法 MIN NOM MAX

ピン数 N 24

ピッチ e 0.50 BSC

全高 A 0.80 0.85 0.90

スタンドオフ A1 0.00 0.02 0.05

コンタクト厚 A3 0.20 REF

全幅 E 4.00 BSC

露出パッド幅 E2 2.40 2.50 2.60

全長 D 4.00 BSC

露出パッド長 D2 2.40 2.50 2.60

コンタクト幅 b 0.20 0.25 0.30

コンタクト長 L 0.30 0.40 0.50

コンタクト - 露出パッド間距離 K 0.20 - -

Page 219: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.219

MCP19124/5

24 ピンプラスチック クワッドフラット、リードレス パッケージ (MJ) - 4x4x0.9 mm ボディ [QFN]

Note:

1. 寸法と公差は ASME Y14.5M に準拠しています。

BSC: 基本寸法、理論的に正確な値、公差なしで表示

Microchip Technology Drawing No. C04-2143B

Note: 新のパッケージ図面については、以下のウェブページにある「Microchip Packaging Specification (Microchip 社パッケージ仕様 )」を参照してください。http://www.microchip.com/packaging

単位 ミリメートル

寸法 MIN NOM MAX

コンタクトピッチ E 0.50 BSC

オプションのセンターパッド幅 W2 2.60

オプションのセンターパッド長 T2 2.60

コンタクトパッド間隔 C1 3.90

コンタクトパッド間隔 C2 3.90

コンタクトパッド幅 X1 0.30

コンタクトパッド長 Y1 0.85

Page 220: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.220 2017 Microchip Technology Inc.

28 ピンプラスチック クワッドフラット、リードレス パッケージ (MQ) - 5x5x0.9 mm ボディ [QFN]

Microchip Technology Drawing No. C04-140C Sheet 1 of 2

Note: 新のパッケージ図面については、以下のウェブページにある「Microchip Packaging Specification (Microchip 社パッケージ仕様 )」を参照してください。http://www.microchip.com/packaging

BA

0.10 C

0.10 C

0.10 C A B

0.05 C

(DATUM B)

(DATUM A)

NOTE 1

2X

TOP VIEW

SIDE VIEW

BOTTOM VIEW

NOTE 1

1

2

N

0.10 C A B

0.10 C A B

0.10 C

0.08 C

2X

28X

D

E

1

2

N

e

28X L

28X K

E2

D2

28X b

A3

AC

SEATINGPLANE

A1

Page 221: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.221

MCP19124/5

28 ピンプラスチック クワッドフラット、リードレス パッケージ (MQ) - 5x5x0.9 mm ボディ [QFN]

Note:

1. ピン 1 のビジュアル インデックスの場所にはばらつきがありますが、必ず斜線部分内にあります。

2. パッケージはダイサーで個片化されています。

3. 寸法と公差は ASME Y14.5M に準拠しています。

BSC: 基本寸法、理論的に正確な値、公差なしで表示

REF: 参考寸法、通常は公差を含まない、情報としてのみ提示される値

Microchip Technology Drawing No. C04-140C Sheet 2 of 2

Note: 新のパッケージ図面については、以下のウェブページにある「Microchip Packaging Specification (Microchip 社パッケージ仕様 )」を参照してください。http://www.microchip.com/packaging

単位 ミリメートル

寸法 MIN NOM MAX

ピン数 N 28

ピッチ e 0.50 BSC

全高 A 0.80 0.90 1.00

スタンドオフ A1 0.00 0.02 0.05

コンタクト厚 A3 0.20 REF

全幅 E 5.00 BSC

露出パッド幅 E2 3.15 3.25 3.35

全長 D 5.00 BSC

露出パッド長 D2 3.15 3.25 3.35

コンタクト幅 b 0.18 0.25 0.30

コンタクト長 L 0.35 0.40 0.45

コンタクト - 露出パッド間距離 K 0.20 - -

Page 222: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.222 2017 Microchip Technology Inc.

28 ピンプラスチック クワッドフラット、リードレス パッケージ (MQ) - 5x5 mm ボディ [QFN] のランドパターンコンタクト長 0.55 mm

Note:

1. 寸法と公差は ASME Y14.5M に準拠しています。

BSC: 基本寸法、理論的に正確な値、公差なしで表示

Microchip Technology Drawing No. C04-2140A

Note: 新のパッケージ図面については、以下のウェブページにある「Microchip Packaging Specification (Microchip 社パッケージ仕様 )」を参照してください。http://www.microchip.com/packaging

単位 ミリメートル

寸法 MIN NOM MAX

コンタクトピッチ E 0.50 BSC

オプションのセンターパッド幅 W2 3.35

オプションのセンターパッド長 T2 3.35

コンタクトパッド間隔 C1 4.90

コンタクトパッド間隔 C2 4.90

コンタクトパッド幅 (X28) X1 0.30

コンタクトパッド長 (X28) Y1 0.85

Page 223: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.223

MCP19124/5

補遺 A: 改訂履歴

リビジョン A (2016 年 9 月 )

• 本書の初版です。

Page 224: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.224 2017 Microchip Technology Inc.

NOTE:

Page 225: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.225

MCP19124/5

Microchip 社のウェブサイト

Microchip 社はウェブサイト (www.microchip.com) でオンライン サポートを提供しています。このウェブサイトを通じて、お客様はファイルと情報を簡単に入手できます。インターネット ブラウザから以下の内容がご覧になれます。

• 製品サポート – データシートとエラッタ、アプリケーション ノートとサンプル プログラム、設計リソース、ユーザガイドとハードウェア サポート文書、 新のソフトウェアと過去のソフトウェア

• 一般的技術サポート – よく寄せられる質問 (FAQ)、技術サポートのご依頼、オンライン ディスカッション グループ、Microchip 社のコンサルタントプログラム メンバーの一覧

• ご注文とお問い合わせ - 製品セレクタと注文ガイド、新プレスリリース、セミナー / イベントの一覧、

お問い合わせ先 ( 営業所 / 販売代理店 ) の一覧

お客様向け変更通知サービス

Microchip 社のお客様向け変更通知サービスは、お客様に Microchip 社製品の 新情報をお届けするサービスです。ご興味のある製品ファミリまたは開発ツールに関する変更、更新、リビジョン、エラッタ情報をいち早くメールにてお知らせします。

Microchip社のウェブサイト(www.microchip.com)にアクセスし、[Customer Change Notification] からご登録ください。

お客様サポート

Microchip 社製品をお使いのお客様は、以下のチャンネルからサポートをご利用頂けます。

• 販売代理店

• 各地の営業所

• 技術サポート

サポートは販売代理店までお問い合わせください。もしくは弊社までご連絡ください。本書の 後のページに各国の営業所の一覧を記載しています。

技術サポートは以下のウェブページからもご利用になれます。http://www.microchip.com/support

Page 226: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP-page 226 2017 Microchip Technology Inc.

NOTE:

Page 227: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.227

MCP19124/5

索引

数字

1 次側入力電流のオフセット調整 44

AA/D

仕様 3, 5, 37A/D コンバータ。「ADC」参照

A/D 変換。「ADC」参照

ABECON レジスタ 51ACKSTAT

ステータスフラグ 181AC 特性 32ADC 119

10 ビット変換結果のフォーマット 121アクイジション時間の計算 127アクイジションの要件 127関連レジスタ 129スリープ中の動作 122設定 120ソース インピーダンス (RS) 127タイミング図 38チャンネルの選択 120動作 122内部サンプリング スイッチのインピーダンス (RSS) 127ブロック図 119変換クロック 120変換手順 122ポートの設定 120要件 37レジスタの定義 124割り込み 121割り込み設定 122

ADCON0 レジスタ 57, 124ADCON1 レジスタ 125ADRESH レジスタ 125ADRESL レジスタ 126ANSELA レジスタ 110ANSELB レジスタ 114

BBF 183

ステータスフラグ 181BF ステータスフラグ 183

CCCDCON レジスタ 147C コンパイラ

MPLAB XC 214

DDC および AC 特性 53DC 特性と AC 特性

図表 53DEADCON レジスタ 47DESATCON レジスタ 43

FFSR

レジスタ 79

II/O

ポート 107I2C モード (MSSP)

I2C クロックレートと BRG の値 192STOP 条件のタイミング 185概要 158関連レジスタ 191肯定応答 (ACK) シーケンス 162肯定応答 (ACK) シーケンスのタイミング 185スリープ動作 186スレーブモード

10 ビットアドレス受信 172クロック ストレッチ 176クロック同期 176ジェネラルコール アドレスのサポート 177送信 168バスコリジョン 168

動作 160バスコリジョン

START 条件中 187STOP 条件中 190反復 START 条件中 189

マスタモード

START 条件のタイミング 179クロック調停 178受信 183送信 181動作 178反復 START 条件のタイミング 180

マルチマスタ モード 186マルチマスタ通信、バスコリジョン、バス調停 186読み書きビット情報 (R/W ビット ) 162リセットの影響 186

ICLEBCON レジスタ 45ICOACON レジスタ 44INDF

レジスタ 79INTCON レジスタ 93IOCA レジスタ 116IOCB レジスタ 116

MMCLR 84

内部 84Microchip 社のウェブサイト 225MODECON レジスタ 52MOSFET ドライバ 16, 17

ゲートドライバ イネーブル 49低電圧ロックアウト選択 50デッドタイム 50プログラマブル デッドタイム 47

MPLAB ICD 3 インサーキット デバッガシステム 215MPLAB PM3 デバイス プログラマ 215MPLAB REAL ICE インサーキット エミュレータ システム

215MPLAB X SIM ソフトウェア シミュレータ 215MPLAB アセンブラ、リンカ、ライブラリアン 214MPLAB 統合開発環境ソフトウェア 213MPLINK オブジェクト リンカ /MPLIB オブジェクト ライブラ

リアン 214MSSP 157

baud レート ジェネレータ 192I2C スレーブモードの動作 162I2C バスの用語 160I2C マスタモード 178I2C モード 158概要 157

Page 228: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.228 2017 Microchip Technology Inc.

クロック ストレッチ 159調停 159ブロック図 (I2C スレーブモード ) 158ブロック図 (I2C マスタモード ) 157

OOPTION_REG レジスタ 78OSCTUNE レジスタ 105

出力 19OVCON レジスタ 41OVREFCON レジスタ 42

PPCL 79

書き換え 79PCLATH 79PCON レジスタ 86, 89PE1 レジスタ 49PICkit 3インサーキット デバッガ /PICkit 3インサーキット プ

ログラマ 215PIE1 レジスタ 94PIE2 レジスタ 95PIR1 レジスタ 96PIR2 レジスタ 97PMADRH レジスタ 133PMADRL レジスタ 132PMCON1 レジスタ 133PMDATH レジスタ 132PMDATL レジスタ 132PORTGPA 115

ANSELA レジスタ 108関連レジスタ 111機能と出力の優先度 108弱プルアップ 107出力の優先度 108状態変化割り込み 107レジスタ 109

PORTGPB 115ANSELB レジスタ 111関連レジスタ 114機能と出力の優先度 112弱プルアップ 111出力の優先度 112状態変化割り込み 111レジスタ 112

PWM 36概略ブロック図 154拡張モジュール 153関連レジスタ 155固定周波数 20周期 154出力 154スイッチング周波数同期モード 153スタンドアロン モード 153ステアリング 50スリープ中の動作 155制御ロジック 151タイミング図 36デューティ サイクル 155標準モード 153要件 36

RRead-Modify-Write 動作 201

SSLPCRCON レジスタ 46SSPADD2 レジスタ 199SSPADD レジスタ 198SSPCON1 レジスタ 194SSPCON2 レジスタ 196SSPCON3 レジスタ 197SSPMSK1 レジスタ 177SSPMSK2 レジスタ 199SSPMSK レジスタ 198SSPOV 183SSPOV ステータスフラグ 183SSPSTAT レジスタ 193STATUS レジスタ 71

TT1CON レジスタ 140T2CON レジスタ 144Timer0 137

8 ビットカウンタ モード 1378 ビットタイマ モード 137T0CKI 138TMR0 レジスタ 137外部クロック 138

タイミング 35要件 36

関連レジスタ 138ソフトウェアでプログラム可能なプリスケーラ 137動作 137

スリープ中 138プリスケーラの切り換え 138ブロック図 137モジュール 137

特長 137割り込み 138

Timer1 139TMR1H レジスタ 139TMR1L レジスタ 139外部クロック タイミング 35関連レジスタ 141クロック源の選択 139制御レジスタ 140動作 139

スリープ中 140プリスケーラ 140ブロック図 139モジュール 139

特長 139割り込み 140

Timer2関連レジスタ 144制御レジスタ 144動作 143ブロック図 143モジュール 143

特長 143TRISGPA

レジスタ 107, 109TRISGPB

レジスタ 111, 113

VVINCON レジスタ 39VINOVLO レジスタ 40VINUVLO レジスタ 40

Page 229: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.229

MCP19124/5

VREF2CON レジスタ 49VREF2 参照電圧 49VREFCON レジスタ 48

WWCOL

ステータスフラグ 179, 181, 183, 185WDT 103

ウォッチドッグ タイマに関連するコンフィグレーショ

ン ワード 104関連レジスタ 104周期 103動作 103プリスケーラの切り換え 138プログラミング時の注意事項 103ブロック図 103リセット 86

WPUGPA レジスタ 110WPUGPB レジスタ 113WWW, On-Line Support 7WWW アドレス 225

あアセンブラ

MPASM アセンブラ 214アナログ周辺モジュール制御 49

2 次側電流検出プルアップ 50PWM ステアリング 50

アナログブロック イネーブル制御 50エラーアンプの無効化 51

インサーキット シリアル プログラミング (ICSP) 211一般的なプログラミング インターフェイス 211

インターネット アドレス 225

うウォッチドッグ タイマ「WDT」参照

エラッタ 7

応用回路図

MCP19124 の Ćuk 同期正出力 11MCP19124 の昇圧擬似共振 11

お客様サポート 225お客様向け変更通知サービス 225オシレータ 105

関連レジスタ 106校正 105周波数調整 105内部 105ベース周波数変更時遅延 106

オペコード フィールドの説明 201温度インジケータ モジュール 149

温度出力 149回路動作 149

か開発サポート 213外部クロック

タイミング 32タイミング要件 32

過電圧ロックアウト

入力 39

間接アドレス指定 79, 80

擬似共振動作のためのゼロ電流検出 43起動 20起動シーケンス 86キャプチャ / コンペア (CCD) モジュール

キャプチャモード 145CCP1IF 145CCx ピンの設定 145Timer1 モードの選択 145ソフトウェア割り込み 145プリスケーラ 145

コンペアモードCCP1IF 146CMPx ピンの設定 146Timer1 モードの選択 146ソフトウェア割り込み 146特殊イベントトリガ 146

レジスタ 147キャプチャモード

ブロック図 145

クロック切り換え 106

計算型 GOTO 79計算型関数呼び出し 79

コンフィグレーション ワード 81ウォッチドッグ タイマ関連レジスタ 104クロック源関連レジスタ 106

コンペアモード

ブロック図 146

さサンプルコード

A/D 変換 123PORTGPA の初期化 107Timer0 へのプリスケーラ割り当て 138WDT へのプリスケーラ割り当て 138間接アドレス指定 80ステータス レジスタと W レジスタの RAM への保存 99

システム ベンチテスト 57出力

過電圧 41保護 41

駆動回路 19タイプ 13

出力調整参照電圧の設定 48状態変化割り込み 115

関連レジスタ 117個別のピン設定 115スリープ中の動作 115モジュールの有効化 115レジスタ 116割り込みフラグのクリア 115

スタック 79スリープ 101

復帰 101

Page 230: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.230 2017 Microchip Technology Inc.

割り込みによる復帰 101スロープ補償 46

せ絶対 大定格 22ゼロ電流検出 19

ソフトウェア シミュレータ (MPLAB X SIM) 215

た代表性能曲線 53タイマ

Timer1 (T1CON) 139Timer2 (T2CON) 143

タイミング チャート

INT ピン割り込み 92割り込みによる復帰 102

タイミング パラメータの記号 31タイミング図

A/D 変換 38ACK シーケンス 185baud レート ジェネレータ ( クロック調停あり ) 179I/O 33I2C マスタモード (7 ビット /10 ビット送信 ) 182I2C マスタモード (7 ビット受信 ) 184PWM 36START 条件中の SDA 調停による BRG リセット 188START 条件中のバスコリジョン (SCL = 0) 188START 条件中のバスコリジョン (SDA のみ ) 187STOP 条件中のバスコリジョン ( ケース 1) 190STOP 条件中のバスコリジョン ( ケース 2) 190起動タイマ 34クロック同期 176

初の START ビット 179受信または送信モードの STOP 条件 185送信時と ACK 送信時のバスコリジョン 186タイムアウト シーケンス

例 1 86例 2 87例 3 87

パワーアップ タイマ 34反復 START 条件 180反復 START 条件中のバスコリジョン ( ケース 1) 189反復 START 条件中のバスコリジョン ( ケース 2) 189

ち直接アドレス指定 80

データメモリ

コアレジスタ 71STATUS レジスタ 71

構成 70特殊機能レジスタ 72汎用レジスタ 70マップ 73

低電圧ロックアウト 39MOSFET ドライバの選択 50入力 39

デジタル電気的特性 31デバイス コンフィグレーション 39, 81

コード保護 82コンフィグレーション ワード 81

デバイス概要 9デバイスコンフィグレーション

ID ロケーション 82書き込み保護 82

デバイスの校正 59電気的特性 22電流検出 19

特殊イベントトリガ

キャプチャ / コンペア モジュール 146特長 1

Timer0 モジュール 137Timer1 モジュール 139マイクロコントローラ 1

ドライバ制御回路 20

内部サンプリング スイッチのインピーダンス (RSS) 127

入力 22過電圧ロックアウト 39タイプ 13低電圧ロックアウト 39

パッケージ 217マーキング 217

パワーアップ タイマ (PWRT) 86パワーオン リセット (POR) 84パワーダウン モード ( スリープ ) 101

関連レジスタ 102汎用レジスタ「GPR」参照

ピーク電流モード 19ピンの説明

表 13まとめ 3, 5

ピン配置図

24 ピン QFN (MCP19124) 228 ピン QFN (MCP19125) 4

ファームウェア命令 201ファイルセレクト レジスタ「FSR」参照

ブラウンアウト リセット (BOR) 85フラッシュ プログラムメモリ

書き込み 135制御 131

誤書き込み防止 135書き込み保護中の動作 135コード保護中の動作 135レジスタ 132

読み出し 134プログラミング、デバイス命令 201プログラムメモリ

構成 69保護 82マップとスタック (MCP191124/5) 69

ブロック図ADC 119ADC の伝達関数 128baud レート ジェネレータ 192MCLR の推奨回路 84MCP19124/5 のフライバック同期擬似共振 10PWM 154

Page 231: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.231

MCP19124/5

Timer0 137Timer1 139Timer2 143アナログ入力モデル 128キャプチャモード動作 145コンペアモード動作 146内蔵リセット回路 83マイクロコントローラ コア 12割り込みロジック 92

ベンチテスト

システム 57

まマスタ同期シリアルポート。MSSP 参照

命令セット 201ADDLW 203ADDWF 203ANDLW 203ANDWF 203BCF 203BSF 203BTFSC 203BTFSS 204CALL 204CLRF 204CLRW 204CLRWDT 204COMF 204DECF 204DECFSZ 205GOTO 205INCF 205INCFSZ 205IORLW 205IORWF 205MOVF 206MOVLW 206MOVWF 206NOP 206RETFIE 207RETLW 207RETURN 207RLF 207RRF 208SLEEP 208SUBLW 208SUBWF 208SWAPF 208XORLW 208XORWF 209まとめ表 202

命令の形式 201メモリ構成 69メモリの構成

データ 70プログラム 69

モードおよび RFB MUX 制御 52

よ要件

A/D アクイジション 127A/D 変換 37I/O、タイミング 33PWM 36Timer0 外部クロック 36外部クロック、タイミング 32リセット、ウォッチドッグ タイマ、オシレータ起動タ

イマ、パワーアップ タイマ 35

リーディング エッジ ブランキング 45リセット 83

ウォッチドッグ タイマ 86関連レジスタ 89原因の特定 87パワーオン 84ブラウンアウト 85

リニア レギュレータ 19

れレジスタ

ABECON( アナログブロック イネーブル制御 ) 51ADCON0 (A/D 制御 0) 124ADCON0(ADC 制御 ) 57ADCON1 (A/D 制御 1) 125ADRESH (A/D 変換結果上位 ) 125ADRESL (A/D 変換結果下位 ) 126ANSELA( アナログ選択 GPA) 110ANSELB( アナログ選択 GPB) 114CALWD1( 校正ワード 1) 59CALWD10( 校正ワード 10) 66CALWD11( 校正ワード 11) 67, 68CALWD2( 校正ワード 2) 60CALWD3( 校正ワード 3) 61CALWD4( 校正ワード 4) 61CALWD5( 校正ワード 5) 62CALWD6( 校正ワード 6) 62CALWD7( 校正ワード 7) 63CALWD8( 校正ワード 8) 64CALWD9( 校正ワード 9) 65CONFIG( コンフィグレーション ワード ) 81DEADCON( ドライバのデッドタイム制御 ) 47FSR( ファイルセレクト レジスタ ) 79INDF 79INTCON( 割り込み制御 ) 93IOCA (PORTGPA 状態変化割り込み ) 116IOCB (PORTGPB 状態変化割り込み ) 116OPTION_REG( オプション ) 78OSCTUNE( オシレータ調整 ) 105PCON( 電源制御 ) 86, 89PE1( アナログ周辺モジュール イネーブル 1 制御 ) 49PIE1( 周辺モジュール割り込みイネーブル 1) 94PIE2( 周辺モジュール割り込みイネーブル 2) 95PIR1( 周辺モジュール割り込みフラグ 1) 96PIR2( 周辺モジュール割り込みフラグ 2) 97PMADRH( プログラムメモリ アドレス上位 ) 133PMADRL( プログラムメモリ アドレス下位 ) 131, 132PMCON1( プログラムメモリ制御 1) 133PMCON2( プログラムメモリ制御 2) 131PMDATH( プログラムメモリ データ上位 ) 132PMDATL( プログラムメモリ データ下位 ) 132PORTGPA 109PORTGPB 112SSPADD (MSSP アドレスと baud レート 1) 198SSPADD2 (MSSP アドレス 2) 199SSPCON1 (SSP 制御 1) 194

Page 232: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.232 2017 Microchip Technology Inc.

SSPCON2 (SSP 制御 2) 196SSPCON3 (SSP 制御 3) 197SSPMSK (SSP マスク ) 198SSPMSK1 (SSP マスク 1) 177SSPMSK2 (SSP マスク 2) 199SSPSTAT (SSP ステータス ) 193STATUS 71T1CON (Timer1 制御 ) 140T2CON (Timer2 制御 ) 144TRISGPA (PORTGPA 3 ステート ) 107, 109TRISGPB (PORTGPB 3 ステート ) 111, 113VINOVLO( 入力過電圧ロックアウト ) 40VINUVLO( 入力低電圧ロックアウト ) 40WPUGPA (PORTGPA 弱プルアップ ) 110WPUGPB (PORTGPB 弱プルアップ ) 113特殊機能 70特殊レジスタのまとめ

バンク 0 74バンク 1 75バンク 2 76バンク 3 77

汎用レジスタ 70

わ割り込み

ADC 122GPA2/INT 91Timer0 138Timer1 140関連レジスタ 98クロック源関連コンフィグレーション ワード 106コンテクスト保存 98制御レジスタ 93

Page 233: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p.233

MCP19124/5

製品識別システム

ご注文または製品の価格 / 納期に関しては、弊社または販売代理店までお問い合わせください。

製品番号 X /XX

パッケージ温度レンジデバイス

デバイス : MCP19124: マイコン内蔵 PWM アナログ電源高速コントローラ

MCP19125: マイコン内蔵 PWM アナログ電源高速コントローラ

テープ & リール : 空欄 = 標準梱包 ( チューブ )T = テープ&リール

温度レンジ : E = -40 ~ +125 ( 拡張温度レンジ )

パッケージ : MJ = 24 ピンプラスチック クワッドフラット、リードレス パッケージ - 4x4x0.9 mm ボディ [QFN]

MQ = 28 ピンプラスチック クワッドフラット、リードレス パッケージ - 5x5x0.9 mm ボディ [QFN]

例 :

a) MCP19124-E/MJ: 拡張温度仕様

24 ピン QFN 4x4 パッケージ

b) MCP19124T-E/MJ: テープ & リール拡張温度仕様

24 ピン QFN 4x4 パッケージ

c) MCP19125-E/MQ: 拡張温度レンジ

28 ピン QFN 5x5 パッケージ

d) MCP19125T-E/MQ:テープ & リール

拡張温度レンジ

28 ピン QFN 5x5 パッケージ

Note 1: テープ&リールの識別情報は、カタログの

製品番号説明に記載しています。これは製品

の注文時に使う識別情報であり、デバイス

のパッケージには印刷していません。テープ

&リールが選択できるパッケージの在庫 /供給状況は、弊社までお問い合わせください。

[X](1)

テープ & リールオプション

-

Page 234: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

MCP19124/5

DS20005619A_JP - p.234 2017 Microchip Technology Inc.

NOTE:

Page 235: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

2017 Microchip Technology Inc. DS20005619A_JP - p. 235

本書に記載されているデバイス アプリケーション等に関する

情報は、ユーザの便宜のためにのみ提供されているものであ

り、更新によって無効とされる事があります。お客様のアプ

リケーションが仕様を満たす事を保証する責任は、お客様に

あります。Microchip 社は、明示的、暗黙的、書面、口頭、法

定のいずれであるかを問わず、本書に記載されている情報に

関して、状態、品質、性能、商品性、特定目的への適合性を

はじめとする、いかなる類の表明も保証も行いません。

Microchip 社は、本書の情報およびその使用に起因する一切の

責任を否認します。生命維持装置あるいは生命安全用途に

Microchip 社の製品を使用する事は全て購入者のリスクとし、

また購入者はこれによって発生したあらゆる損害、クレーム、

訴訟、費用に関して、Microchip 社は擁護され、免責され、損

害を受けない事に同意するものとします。特に記載のない限

り、暗黙的あるいは明示的を問わず、Microchip 社が知的財産

権を保有しているライセンスは一切譲渡されません。

商標

Microchip 社の名称とロゴ、Microchip ロゴ、AnyRate、AVR、AVR logo、AVR Freaks、BeaconThings、BitCloud、CryptoMemory、CryptoRF、dsPIC、FlashFlex、flexPWR、Heldo、JukeBlox、KEELOQ、KEELOQlogo、Kleer、LANCheck、LINK MD、maXStylus、maXTouch、MediaLB、megaAVR、MOST、MOST logo、MPLAB、OptoLyzer、PIC、picoPower、PICSTART、PIC32 logo、Prochip Designer、QTouch、RightTouch、SAM-BA、SpyNIC、SST、SST Logo、SuperFlash、tinyAVR、UNI/O、および XMEGA は米国およびその他の国における Microchip Technology Incorporated の登録商標です。

ClockWorks、Embedded Control Solutions Company、EtherSynch、Hyper Speed Control、HyperLight Load、IntelliMOS、mTouch、Precision Edge、および Quiet-Wire は米国における MicrochipTechnology Incorporated の登録商標です。

Adjacent Key Suppression、AKS、Analog-for-the-Digital Age、Any Capacitor、AnyIn、AnyOut、BodyCom、chipKIT、chipKITlogo、CodeGuard、CryptoAuthentication、CryptoCompanion、CryptoController、dsPICDEM、dsPICDEM.net、DynamicAverage Matching、DAM、ECAN、EtherGREEN、In-CircuitSerial Programming、ICSP、Inter-Chip Connectivity、JitterBlocker、KleerNet、KleerNet logo、Mindi、MiWi、motorBench、MPASM、MPF、MPLAB Certified logo、MPLIB、MPLINK、MultiTRAK、NetDetach、Omniscient Code Generation、PICDEM、PICDEM.net、PICkit、PICtail、PureSilicon、QMatrix、RightTouch logo、REALICE、Ripple Blocker、SAM-ICE、Serial Quad I/O、SMART-I.S.、SQI, SuperSwitcher、SuperSwitcher II、Total Endurance、TSHARC、USBCheck、VariSense、ViewSpan、WiperLock、Wireless DNA、およびZENAは米国およびその他のMicrochipTechnology Incorporated の商標です。

SQTP は米国における Microchip Technology Incorporated のサービスマークです。

Silicon Storage Technology は他の国における MicrochipTechnology Inc. の登録商標です。

GestIC は Microchip Technology Inc. の子会社である MicrochipTechnology Germany II GmbH & Co. & KG 社の他の国における登録商標です。

その他本書に記載されている商標は各社に帰属します。

© 2017, Microchip Technology Incorporated, All Rights Reserved.

ISBN: 978-1-5224-1599-2

Microchip 社製デバイスのコード保護機能に関して以下の点にご注意ください。

• Microchip 社製品は、該当する Microchip 社データシートに記載の仕様を満たしています。

• Microchip 社では、通常の条件ならびに仕様に従って使用した場合、Microchip 社製品のセキュリティ レベルは、現在市場に

流通している同種製品の中でも も高度であると考えています。

• しかし、コード保護機能を解除するための不正かつ違法な方法が存在する事もまた事実です。弊社の理解では、こうした手法

は Microchip 社データシートにある動作仕様書以外の方法で Microchip 社製品を使用する事になります。このような行為は知

的所有権の侵害に該当する可能性が非常に高いと言えます。

• Microchip 社は、コードの保全性に懸念を抱いているお客様と連携し、対応策に取り組んでいきます。

• Microchip 社を含む全ての半導体メーカーで、自社のコードのセキュリティを完全に保証できる企業はありません。コード保

護機能とは、Microchip 社が製品を「解読不能」として保証するものではありません。

コード保護機能は常に進歩しています。Microchip 社では、常に製品のコード保護機能の改善に取り組んでいます。Microchip 社の

コード保護機能の侵害は、デジタル ミレニアム著作権法に違反します。そのような行為によってソフトウェアまたはその他の著作

物に不正なアクセスを受けた場合、デジタル ミレニアム著作権法の定めるところにより損害賠償訴訟を起こす権利があります。

Microchip 社では、Chandler および Tempe ( アリゾナ州 )、Gresham ( オレゴン州 ) の本部、設計部およびウェハー製造工場そしてカリフォルニア州とインドのデザインセンターが ISO/TS-16949:2009 認証を取得しています。Microchip 社の品質システム プロセスおよび手順は、PIC® MCU および dsPIC® DSC、KEELOQ® コード ホッピング デバイス、シリアル EEPROM、マイクロペリフェラル、不揮発性メモリ、アナログ製品に採用されています。さらに、開発システムの設計と製造に関する Microchip 社の品質システムは ISO 9001:2000 認証を取得しています。

Page 236: Digitally-Enhanced Power Analog Synchronous Low …ww1.microchip.com/downloads/jp/DeviceDoc/20005619A_JP.pdfVCOMP 24 N — — — — — — EA2 電圧エラーアンプ出力 ICOMP

DS20005619A_JP - p.236 2017 Microchip Technology Inc.

北米本社2355 West Chandler Blvd.Chandler, AZ 85224-6199Tel: 480-792-7200 Fax: 480-792-7277

技術サポート : http://www.microchip.com/supportURL: www.microchip.com

アトランタDuluth, GA Tel: 678-957-9614 Fax: 678-957-1455

オースティン、TXTel: 512-257-3370

ボストンWestborough, MATel: 774-760-0087 Fax: 774-760-0088

シカゴItasca, ILTel: 630-285-0071 Fax: 630-285-0075

ダラスAddison, TXTel: 972-818-7423 Fax: 972-818-2924

デトロイトNovi, MI Tel: 248-848-4000

ヒューストン、TXTel: 281-894-5983

インディアナポリスNoblesville, INTel: 317-773-8323Fax: 317-773-5453Tel: 317-536-2380

ロサンゼルスMission Viejo, CATel: 949-462-9523 Fax: 949-462-9608Tel: 951-273-7800

ローリー、 NC

Tel: 919-844-7510

ニューヨーク、NY Tel: 631-435-6000

サンノゼ、CATel: 408-735-9110Tel: 408-436-4270

カナダ - トロント

Tel: 905-695-1980Fax: 905-695-2078

アジア / 太平洋アジア太平洋支社Suites 3707-14, 37th FloorTower 6, The GatewayHarbour City, Kowloon

香港Tel: 852-2943-5100Fax: 852-2401-3431

オーストラリア - シドニー

Tel: 61-2-9868-6733Fax: 61-2-9868-6755

中国 - 北京

Tel: 86-10-8569-7000Fax: 86-10-8528-2104

中国 - 成都

Tel: 86-28-8665-5511Fax: 86-28-8665-7889

中国 - 重慶

Tel: 86-23-8980-9588Fax: 86-23-8980-9500

中国 - 東莞

Tel: 86-769-8702-9880

中国 - 広州

Tel: 86-20-8755-8029

中国 - 杭州

Tel: 86-571-8792-8115Fax: 86-571-8792-8116

中国 - 香港 SARTel: 852-2943-5100 Fax: 852-2401-3431

中国 - 南京

Tel: 86-25-8473-2460Fax: 86-25-8473-2470

中国 - 青島

Tel: 86-532-8502-7355Fax: 86-532-8502-7205

中国 - 上海

Tel: 86-21-3326-8000Fax: 86-21-3326-8021

中国 - 瀋陽

Tel: 86-24-2334-2829Fax: 86-24-2334-2393

中国 - 深圳Tel: 86-755-8864-2200 Fax: 86-755-8203-1760

中国 - 武漢

Tel: 86-27-5980-5300Fax: 86-27-5980-5118

中国 - 西安

Tel: 86-29-8833-7252Fax: 86-29-8833-7256

アジア / 太平洋中国 - 厦門

Tel: 86-592-2388138 Fax: 86-592-2388130

中国 - 珠海

Tel: 86-756-3210040 Fax: 86-756-3210049

インド - バンガロール

Tel: 91-80-3090-4444 Fax: 91-80-3090-4123

インド - ニューデリー

Tel: 91-11-4160-8631Fax: 91-11-4160-8632

インド - プネ

Tel: 91-20-3019-1500

日本 - 大阪

Tel: 81-6-6152-7160Fax: 81-6-6152-9310

日本 - 東京

Tel: 81-3-6880-3770 Fax: 81-3-6880-3771

韓国 - 大邱

Tel: 82-53-744-4301Fax: 82-53-744-4302

韓国 - ソウル

Tel: 82-2-554-7200

Fax: 82-2-558-5932 または

82-2-558-5934

マレーシア - クアラルンプール

Tel: 60-3-6201-9857Fax: 60-3-6201-9859

マレーシア - ペナン

Tel: 60-4-227-8870Fax: 60-4-227-4068

フィリピン - マニラ

Tel: 63-2-634-9065Fax: 63-2-634-9069

シンガポールTel: 65-6334-8870Fax: 65-6334-8850

台湾 - 新竹

Tel: 886-3-5778-366Fax: 886-3-5770-955

台湾 - 高雄

Tel: 886-7-213-7830

台湾 - 台北

Tel: 886-2-2508-8600 Fax: 886-2-2508-0102

タイ - バンコク

Tel: 66-2-694-1351Fax: 66-2-694-1350

ヨーロッパオーストリア - ヴェルス

Tel: 43-7242-2244-39Fax: 43-7242-2244-393

デンマーク - コペンハーゲン

Tel: 45-4450-2828 Fax: 45-4485-2829

フィンランド - エスポー

Tel: 358-9-4520-820

フランス - パリ

Tel: 33-1-69-53-63-20 Fax: 33-1-69-30-90-79

フランス - サン=クルー

Tel: 33-1-30-60-70-00

ドイツ - ガルヒング

Tel: 49-8931-9700

ドイツ - ハーン

Tel: 49-2129-3766400

ド イ ツ - ハイルブロン

Tel: 49-7131-67-3636

ドイツ - カールスルーエ

Tel: 49-721-625370

ドイツ - ミュンヘン

Tel: 49-89-627-144-0 Fax: 49-89-627-144-44

ド イ ツ - ローゼンハイム

Tel: 49-8031-354-560

イスラエル - ラーナナ

Tel: 972-9-744-7705

イタリア - ミラノ Tel: 39-0331-742611 Fax: 39-0331-466781

イタリア - ヴェニス

Tel: 39-049-7625286

オランダ - ドリューネン

Tel: 31-416-690399 Fax: 31-416-690340

ノルウェー - トロンハイム

Tel: 47-7289-7561

ポーランド - ワルシャワ

Tel: 48-22-3325737

ルーマニア - ブカレスト

Tel: 40-21-407-87-50

スペイン - マドリッド

Tel: 34-91-708-08-90Fax: 34-91-708-08-91

スウェーデン - ヨーテボリ

Tel: 46-31-704-60-40

スウェーデン - ストックホルム

Tel: 46-8-5090-4654

イギリス - ウォーキンガム

Tel: 44-118-921-5800Fax: 44-118-921-5820

各国の営業所とサービス

11/07/16