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

デバイス コンフィグレーション

ドキュメント内 PIC16(L)F1703/7 Data Sheet (ページ 48-54)

デバイスコンフィグレーションは、コンフィグレー ション ワード、コード保護、デバイス

ID

から構成さ れます。

4.1 コンフィグレーション ワード

デバイスには、オシレータやメモリ保護の各種設定を 選択できる複数のコンフィグレーション ワードビット があります。これらは、コンフィグレーションワード

1 (8007h)とコンフィグレーション ワード2 (8008h)と

して実装されています。

Note:

コンフィグレーション ワードの

DEBUG

ビットは、デバッガやプログラマ等のデ バイス開発ツールによって自動的に管理 されます。デバイスの通常動作中は、こ のビットを「

1

」に保つ必要があります。

PIC16(L)F1703/7

4.2 レジスタ定義 : コンフィグレーション ワード

レジスタ 4-1:

CONFIG1: コンフィグレーション ワード 1

R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 U-1

FCMEN IESO CLKOUTEN BOREN<1: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

CP

(1)

MCLRE PWRTE WDTE<1:0> - FOSC<1:0>

bit 7 bit 0

凡例

:

R =

読み出し可能ビット

P =

書き込み可能ビット

U =

未実装ビット、「

1

」として読み出し

0

=

ビットはクリア 「

1

=

ビットはセット

-n =

ブランクまたはバルク消去後の値

bit 13 FCMEN:

フェイルセーフクロックモニタイネーブルビット

1 = フェイルセーフ クロックモニタと内部 /

外部切り換えの両方を有効にする

0 = フェイルセーフ クロックモニタを無効にする

bit 12 IESO:

内部

/

外部切り換えビット

1 = 内部 /

外部切り換えモードを有効にする

0 = 内部 /

外部切り換えモードを無効にする

bit 11 CLKOUTEN:

クロック出力イネーブルビット

Fosc

コンフィグレーション ビットが

LP、XT、HS

モードに設定されている場合

:

このビットを無視し

CLKOUT

機能を無効にする。CLKOUTピンはオシレータとして機能する その他の全ての

Fosc

モードの場合

:

1 = CLKOUT

機能を無効にする。CLKOUTピンは

I/O

として機能する

0 = CLKOUT

ピンの

CLKOUT

機能を有効にする

bit 10-9 BOREN<1:0>:

ブラウンアウト リセット イネーブルビット

11 = BOR

を有効にする

10 = BOR

を動作時に有効、スリープ中に無効にする

01 = BOR

BORCON

レジスタの

SBOREN

ビットで制御する

00 = BOR

を無効にする

bit 8

未実装

:「 1

」として読み出し

bit 7 CP: コード保護ビット

(1)

1 = プログラムメモリのコード保護を無効にする 0 = プログラムメモリのコード保護を有効にする bit 6 MCLRE: MCLR/V

PPピン機能選択ビット

LVP

ビット

= 1

の場合

:

このビットは無視される

LVP

ビット

= 0

の場合

:

1 = MCLR/V

PPピンは

MCLR

として機能する。弱プルアップを有効にする

0 = MCLR/V

PP ピンはデジタル入力として機能する。MCLR を内部で無効にし、弱プルアップは

WPUE3

ビットで制御する

bit 5 PWRTE:

パワーアップ タイマ イネーブルビット

1 = PWRT

を無効にする

0 = PWRT

を有効にする

bit 4-3 WDTE<1:0>: ウォッチドッグ タイマ イネーブルビット 11 = WDT

を有効にする

10 = WDT

を動作時に有効、スリープ中に無効にする

01 = WDT

WDTCON

レジスタの

SWDTEN

ビットで制御する

PIC16(L)F1703/7

bit 1-0 FOSC<1:0>:

オシレータ選択ビット

11 = ECH:

外部クロック、高消費電力モード

(4

20 MHz): CLKIN

ピンにデバイスクロックを供給 する

10 = ECM:

外部クロック、中消費電力モード

(0.5

4 MHz):CLKIN

ピンにデバイスクロックを供給 する

01 = ECL:

外部クロック、低消費電力モード

(0

0.5 MHz):CLKIN

ピンにデバイスクロックを供給 する

00 = LP

オシレータ

:OSC1

OSC2

ピン間に低消費電力水晶振動子を接続する

Note 1:

消去中にコード保護を

OFF

にすると、フラッシュ プログラムメモリ全体が消去されます。バルク消去

プログラムメモリコマンドを実行すると、プログラムフラッシュメモリ全体とコンフィグレーション メモリが消去されます。

レジスタ 4-1:

CONFIG1: コンフィグレーション ワード 1 (

続き

)

PIC16(L)F1703/7

レジスタ 4-2:

CONFIG2: コンフィグレーション ワード 2

R/P-1 R/P-1 R/P-1 R/P-1 R/P-1 R/P-1

LVP(1) DEBUG(2) LPBOR BORV(3) STVREN PLLEN

bit 13 bit 8

R/P-1

U-1 U-1 U-1 U-1 R/P-1 R/P-1 R/P-1

ZCDDIS

- - - - PPS1WAY WRT<1:0>

bit 7 bit 0

凡例:

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

「0」 = ビットはクリア 「1」 = ビットはセット -n = ブランクまたはバルク消去後の値

bit 13 LVP: 低電圧プログラミング イネーブルビット(1)

1 = 低電圧プログラミングを有効にする

0 = プログラミング時にMCLRに高電圧を印加する必要がある

bit 12 DEBUG: インサーキット デバッガモード ビット(2)

1 = インサーキット デバッガを無効にする。ICSPCLKICSPDATは汎用I/Oピンとして機能する

0 = インサーキット デバッガを有効にする。ICSPCLKICSPDATはデバッガ専用である

bit 11 LPBOR: 低消費電力BORイネーブルビット

1 = 低消費電力ブラウンアウト リセットを無効にする

0 = 低消費電力ブラウンアウト リセットを有効にする

bit 10 BORV: ブラウンアウト リセット電圧選択ビット(3)

1 = ブラウンアウト リセット電圧(VBOR)のトリップポイントを低に設定する

0 = ブラウンアウト リセット電圧(VBOR)のトリップポイントを高に設定する

bit 9 STVREN:スタック オーバーフロー/アンダーフロー リセット イネーブルビット

1 = スタックのオーバーフローまたはアンダーフローによってリセットを発生させる

0 = スタックのオーバーフローまたはアンダーフローによってリセットを発生させない

bit 8 PLLEN: PLLイネーブルビット

1 = 4xPLLを有効にする 0 = 4xPLLを無効にする

bit 7 ZCDDIS: ZCDディセーブル ビット

1 = ZCDを無効にする ZCDを有効にするには、ZCDCONZCDSENビットをセットする

0 = ZCDを常時有効にする

bit 6-3 未実装:「1」として読み出し

bit 2 PPS1WAY: PPSLOCKビット単方向セット イネーブルビット

1 = PPSLOCKビットは、ロック解除シーケンスを実行後に一度のみセットできる。一度PPSLOCKがセットさ れると、その後PPSは変更できない

0 = ロック解除シーケンスを実行すれば何度でもPPSLOCKビットをセット/クリアできる

bit 1-0 WRT<1:0>: フラッシュメモリ自己書き込み保護ビット

4 kWのフラッシュメモリ

11 =書き込み保護をOFFにする

10 = 000h1FFhを書き込み保護状態にし、200hFFFhPMCON制御によって変更可能にする

01 = 000h7FFhを書き込み保護し、800hFFFhPMCON制御によって変更可能にする

00 = 000hFFFhを書き込み保護状態にし、PMCON制御によるアドレス変更を不可にする

Note 1: LVPを使ってプログラミング モードに入る場合、LVPビットは「0」にプログラムできません。

2: コンフィグレーション ワードのDEBUGビットは、デバッガやプログラマ等のデバイス開発ツールによって自動的に 管理されます。デバイスの通常動作中は、このビットを「1」に保つ必要があります。

3: 具体的なトリップポイント電圧についてはVBORパラメータを参照してください。

PIC16(L)F1703/7

4.3 コード保護

コード保護を使うと、不正なアクセスからデバイスを 保護できます。プログラムメモリ保護は独立して制御 されます。プログラムメモリへの内部アクセスは、コー ド保護のいかなる設定の影響も受けません。

4.3.1

プログラムメモリ保護

コンフィグレーションワードの

CP

ビットによって、

プログラムメモリ空間全体が外部の読み書きから保護 されます。

CP = 0

の場合、プログラムメモリに対する 外部の読み書きが禁止され、読み出し動作には全て

0

」が返されます。保護ビットの設定に関わらず、

CPU

は常にプログラムメモリを読み出す事ができます。プロ グラムメモリへの書き込みの可否は、書き込み保護設 定で決まります。詳細は、セクション 4.4「書き込み 保護」を参照してください。

4.4 書き込み保護

書き込み保護を使うと、意図しない自己書き込みから デバイスを保護できます。ブートローダ ソフトウェア 等のアプリケーションを保護する一方、プログラムメ モリの他の部分に対する変更を許可できます。

コンフィグレーション ワードの

WRT<1:0>

ビットに よって、保護するプログラムメモリ ブロックのサイズ を定義します。

4.5 ユーザ ID

ユーザがチェックサムまたはその他のコード識別番号を 格納できる

ID

位置として、

4

つのメモリ位置

(8000h

8003h)

が指定されています。これらの位置には、通常

動作時に読み書きが可能です。これらのメモリ位置へ のアクセスに関する詳細は、セクション10.4「ユーザ ID、デバイス ID、コンフィグレーションワードへの アクセス」を参照してください。チェックサム計算の 詳 細 は、『

PIC16(L)F170X Memory Programming

Specification』(DS41683)

を参照してください。

PIC16(L)F1703/7

4.6 デバイス ID とリビジョン ID

14

ビットデバイス

ID

ワードは

8006h

にあり、

14

ビット リビジョン

ID

8005h

にあります。これらの位置は 読み出し専用で、消去または書き込みはできません。

これらのメモリ位置へのアクセスに関する詳細は、セク

ション10.4「ユーザID、デバイスID、コンフィグレー

ションワードへのアクセス」を参照してください。

デバイス

ID

とリビジョン

ID

の読み出しには、デバイス プログラマやデバッガ等の開発ツールを使います。

4.7 レジスタ定義 : デバイスとリビジョン

レジスタ 4-3:

DevID: デバイス ID

レジスタ

R R R R R R

DEV<13:8>

bit 13 bit 8

R R R R R R R R

DEV<7:0>

bit 7 bit 0

凡例:

R = 読み出し可能ビット

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

bit 13-0 DEV<13:0>: デバイスIDビット

レジスタ

4-4: RevID:

リビジョン

ID

レジスタ

R R R R R R

REV<13:8>

bit 13 bit 8

R R R R R R R R

REV<7:0>

bit 7 bit 0

凡例:

R = 読み出し可能ビット

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

bit 13-0 REV<13:0>: リビジョンIDビット

デバイス DEVID<13:0> の値

PIC16F1703 11 0000 0100 0011 (3043h)

PIC16LF1703 11 0000 0100 0101 (3045h)

PIC16F1707 11 0000 0100 0010 (3042h)

PIC16LF1707 11 0000 0100 0100 (3044h)

PIC16(L)F1703/7

ドキュメント内 PIC16(L)F1703/7 Data Sheet (ページ 48-54)