26
© 2007-2013 Microchip Technology Inc. DS39712D_JP - p.7-1 リセット 7 セクション 7. リセット ハイライト 本章では次のトピックを説明します。 7.1 はじめに.....................................................................................................................7-2 7.2 リセット時のクロック源の選択.................................................................................7-6 7.3 パワーオン リセット (POR).......................................................................................7-6 7.4 MCLR リセット..........................................................................................................7-8 7.5 ソフトウェア RESET 命令 (SWR) .............................................................................7-8 7.6 ウォッチドッグ タイマリセット (WDTR)..................................................................7-8 7.7 ブラウンアウト リセット (BOR) ...............................................................................7-9 7.8 コンフィグレーション不一致リセット....................................................................7-11 7.9 トラップ衝突リセット (TCR) ..................................................................................7-11 7.10 不正オペコードリセット (IOPUWR) .......................................................................7-11 7.11 未初期化 W レジスタリセット.................................................................................7-11 7.12 Vbat モード (1) .........................................................................................................7-11 7.13 レジスタとステータスビットの値 ...........................................................................7-13 7.14 デバイスリセットからコード実行開始までの遅延時間...........................................7-15 7.15 特殊機能レジスタ (SFR) のリセット状態................................................................7-19 7.16 電気的仕様 ...............................................................................................................7-20 7.17 設計のヒント ...........................................................................................................7-21 7.18 関連アプリケーション ノート .................................................................................7-22 7.19 改訂履歴...................................................................................................................7-23 注意 : この日本語版文書は参考資料としてご利用ください。最新情報は必ずオリジ ナルの英語版をご参照願います。

セクション 7. リセット - Microchip Technologyww1.microchip.com/downloads/jp/DeviceDoc/39712D_JP.pdfPIC24F ファミリ リファレンス マニュアル

  • Upload
    others

  • View
    11

  • Download
    0

Embed Size (px)

Citation preview

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

    セクション 7. リセット

    リセット

    7

    ハイライト

    本章では次のトピックを説明します。

    7.1 はじめに.....................................................................................................................7-2 7.2 リセット時のクロック源の選択.................................................................................7-6 7.3 パワーオン リセット (POR).......................................................................................7-6 7.4 MCLR リセット..........................................................................................................7-8 7.5 ソフトウェア RESET 命令 (SWR).............................................................................7-8 7.6 ウォッチドッグ タイマリセット (WDTR)..................................................................7-8 7.7 ブラウンアウト リセット (BOR) ...............................................................................7-9 7.8 コンフィグレーション不一致リセット ....................................................................7-11 7.9 トラップ衝突リセット (TCR) ..................................................................................7-11 7.10 不正オペコードリセット (IOPUWR) .......................................................................7-11 7.11 未初期化 W レジスタリセット.................................................................................7-11 7.12 Vbat モード (1).........................................................................................................7-11 7.13 レジスタとステータスビットの値 ...........................................................................7-13 7.14 デバイスリセットからコード実行開始までの遅延時間...........................................7-15 7.15 特殊機能レジスタ (SFR) のリセット状態................................................................7-19 7.16 電気的仕様 ...............................................................................................................7-20 7.17 設計のヒント ...........................................................................................................7-21 7.18 関連アプリケーション ノート .................................................................................7-22 7.19 改訂履歴...................................................................................................................7-23

    © 2007-2013 Microchip Technology Inc. DS39712D_JP - p.7-1

  • PIC24F ファミリ リファレンス マニュアル

    7.1 はじめにリセット モジュールは全てのリセット要因を集約し、デバイスのマスタリセット信号(SYSRST) を制御します。下記のデバイスリセット要因が存在します。

    • POR: パワーオン リセット • MCLR: ピンリセット • SWR: RESET命令• WDTR: ウォッチドッグ タイマリセット• BOR: ブラウンアウト リセット• TRAPR: トラップ衝突リセット• IOPUWR: 不正オペコード / 未初期化 W レジスタリセット

    図 7-1 に、リセット モジュールの概略ブロック図を示します。全てのリセット要因は、発生時に SYSRST 信号をアクティブにします。この際、CPU と周辺モジュールに関する多くのレジスタは、既知の「リセット状態」に設定されます。ほとんどのレジスタはリセットに影響されません。すなわち、パワーオン リセット (POR) 時の状態は未知であり、それ以外のリセットでは状態は変化しません。

    全てのタイプのデバイスリセットは、発生時に RCON レジスタの対応するステータスビットをセットし、発生したリセットのタイプを示します ( レジスタ 7-1 参照 )。POR は、BOR と PORビット (RCON) をセットし、それ以外の全てのビットをクリアします。ユーザはコード実行中にいつでも任意のビットをセット / クリアできます。RCON レジスタの各ビットは、ステータスビットとしてのみ機能します。ソフトウェアで特定のリセット ステータスビットをセットしても、デバイスリセットは発生しません。

    RCON レジスタは、ウォッチドッグ タイマ (WDT) とデバイスの省電力状態に関するビットも格納しています。これらビットの機能はセクション 7.13.2「RCON ステータスビットの使用」を参照してください。

    図 7-1: リセットシステムのブロック図

    Note: レジスタのリセット状態の詳細は、ファミリ リファレンス マニュアルの各周辺モジュールまたは CPU のセクションを参照してください。

    MCLR

    VDD

    VDD RiseDetect

    POR

    Sleep or Idle

    Brown-outReset

    RESETInstruction

    WDTModule

    Glitch Filter

    BOR

    Trap Conflict

    Illegal Opcode

    Uninitialized W Register

    SYSRST

    Voltage Regulator Enable

    Only in Devices withOn-Chip Regulator

    DS39712D_JP - p.7-2 © 2007-2013 Microchip Technology Inc.

  • セクション 7. リセットリセット

    7

    レジスタ 7-1: RCON: リセット制御レジスタ (1)

    R/W-0 R/W-0 U-0 R/W-0 U-0 R/C-0 U-0 R/W-0TRAPR IOPUWR — LVREN(2) - DPSLP(2) CM PMSLP(2,3)

    bit 15 bit 8

    R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-1 R/W-1EXTR SWR SWDTEN(4) WDTO SLEEP IDLE BOR POR

    bit 7 bit 0

    凡例 : C = クリア可能ビットR = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット。「0」として読み出し-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

    bit 15 TRAPR: トラップリセット フラグビット1 = トラップ衝突リセットが発生した0 = トラップ衝突リセットは発生していない

    bit 14 IOPUWR: 不正オペコードまたは未初期化 W アクセスリセット フラグビット1 = 不正オペコード検出、不正アドレスモード、アドレスポインタとして未初期化 W レジスタを

    使う事によりリセットが発生した0 = 不正オペコードまたは未初期化 W レジスタによるリセットは発生していない

    bit 13 未実装 :「0」として読み出しbit 12 LVREN: 低電圧レギュレータ イネーブル (2)

    1 = スリープ中の安定化電源電圧は低電圧レギュレータだけから供給する0 = スリープ中の安定化電源電圧はメイン電圧レギュレータから供給する

    bit 11 未実装 :「0」として読み出しbit 10 DPSLP: スリープ中のプログラムメモリ電源ビット (2)

    1 = ディープスリープが発生した0 = ディープスリープは発生していない

    bit 9 CM: コンフィグレーション不一致フラグビット1 = コンフィグレーション不一致リセットが発生した0 = コンフィグレーション不一致リセットは発生していない

    bit 8 PMSLP: スリープ中のプログラムメモリ電源制御ビット (2,3)

    1 = スリープ中もプログラムメモリのバイアス電圧を給電しつづける0 = スリープ中はプログラムメモリのバイアス電圧の給電を停止する。電圧レギュレータはスタンバイ

    に移行する

    bit 7 EXTR: 外部リセット (MCLR) ピンビット1 = マスタクリア ( ピン ) リセットが発生した0 = マスタクリア ( ピン ) リセットは発生していない

    bit 6 SWR: ソフトウェア リセット ( 命令 ) フラグビット1 = RESET命令が実行された0 = RESET命令は実行されていない

    Note 1: 全てのリセット ステータスビットはソフトウェアでセット / クリアできます。これらのビットをソフトウェアでセットしても、デバイスリセットは起こりません。

    2: 一部の PIC24F にのみ実装されています。それ以外のデバイスでは未実装であり「0」として読み出されます。

    3: 初期の PIC24F の一部では、このビットを VREGS と呼び、ビット機能の説明が異なります。名称または説明に関わらず、省電力機能は全てのデバイスで同一です。

    4: FWDTEN コンフィグレーション ビットが「1」( 未プログラム状態 ) の場合、SWDTEN ビットの設定に関係なく WDT は常に有効です。FWDTEN を実装しているデバイスの場合、FWDTEN が「01」の場合のみ SWDTEN が有効になります。詳細は各デバイスファミリのデータシートを参照してください。

    © 2007-2013 Microchip Technology Inc. DS39712D_JP - p.7-3

  • PIC24F ファミリ リファレンス マニュアル

    bit 5 SWDTEN: ソフトウェア WDT イネーブル / ディセーブル ビット (4)

    1 = WDT を有効にする0 = WDT を無効にする

    bit 4 WDTO: ウォッチドッグ タイマ タイムアウト フラグビット1 = WDT タイムアウトが発生した0 = WDT タイムアウトは発生していない

    bit 3 SLEEP: スリープからの復帰フラグビット1 = ( 前回リセット後 ) デバイスがスリープに移行した事がある0 = ( 前回リセット後 ) デバイスはスリープに移行していない

    bit 2 IDLE: アイドルからの復帰フラグビット1 = ( 前回リセット後 ) デバイスがアイドルに移行した事がある0 = ( 前回リセット後 ) デバイスはアイドルに移行していない

    bit 1 BOR: ブラウンアウト リセット フラグビット1 = ブラウンアウト リセットが発生した (BOR ビットはパワーオン リセット後にもセットされます )0 = ブラウンアウト リセットは発生していない

    bit 0 POR: パワーオン リセット フラグビット1 = パワーオン リセットが発生した0 = パワーオン リセットは発生していない

    レジスタ 7-1: RCON: リセット制御レジスタ (1) ( 続き )

    Note 1: 全てのリセット ステータスビットはソフトウェアでセット / クリアできます。これらのビットをソフトウェアでセットしても、デバイスリセットは起こりません。

    2: 一部の PIC24F にのみ実装されています。それ以外のデバイスでは未実装であり「0」として読み出されます。

    3: 初期の PIC24F の一部では、このビットを VREGS と呼び、ビット機能の説明が異なります。名称または説明に関わらず、省電力機能は全てのデバイスで同一です。

    4: FWDTEN コンフィグレーション ビットが「1」( 未プログラム状態 ) の場合、SWDTEN ビットの設定に関係なく WDT は常に有効です。FWDTEN を実装しているデバイスの場合、FWDTEN が「01」の場合のみ SWDTEN が有効になります。詳細は各デバイスファミリのデータシートを参照してください。

    DS39712D_JP - p.7-4 © 2007-2013 Microchip Technology Inc.

  • セクション 7. リセットリセット

    7

    レジスタ 7-2: RCON2: リセットとシステム制御レジスタ (1)

    U-0 U-0 U-0 U-0 U-0 U-0 U-0 U-0- - - - - - - -

    bit 15 bit 8

    U-0 U-0 U-0 r-0 R/CO-1 R/CO-1 R/CO-1 R/CO-0- - - r VDDBOR(2) VDDPOR(2,3) VBPOR(2,4) VBAT(2)

    bit 7 bit 0

    凡例 : CO = 1 回のみクリア可能ビット

    r = 予約済みビット

    R = 読み出し可能ビット W = 書き込み可能ビット U = 未実装ビット。「0」として読み出し-n = POR 時の値 「1」 = ビットはセット 「0」 = ビットはクリア x = ビットは未知

    bit 15-5 未実装 : 「0」として読み出しbit 4 予約済み : 「0」に維持してください。bit 3 VDDBOR: VDD ブラウンアウト リセット フラグビット (2)

    1 = VDD ブラウンアウト リセットが発生した ( ハードウェアによりセット )0 = VDD ブラウンアウト リセットは発生していない

    bit 2 VDDPOR: VDD パワーオン リセット フラグビット (2,3)1 = VDD パワーオン リセットが発生した ( ハードウェアによりセット )0 = VDD パワーオン リセットは発生していない

    bit 1 VBPOR: VBPOR フラグビット (2,4)1 = VBAT PORが発生した (VBATピンにバッテリが接続されていない、またはバッテリ電圧がDSGPRx

    レジスタのしきい値を下回った )0 = VBAT POR は発生していない

    bit 0 VBAT: VBAT フラグビット (2)1 = VBAT モードから復帰して POR が実行された ( バッテリは VBAT ピンに接続 )0 = VBAT からの POR による終了は発生していない

    Note 1: 一部のデバイスは、このレジスタを実装していません。詳細は各デバイスファミリのデータシートを参照してください。

    2: このビットはハードウェアによってのみセットされます。このビットはソフトウェアによってのみクリアできます。

    3: VDD POR を示します。RCON レジスタの POR ビット (RCON) は VDDCORE POR を示します。4: このビットは、VBAT に電源が供給されている場合でも、デバイスが最初に起動された時にはセットされ

    ます。

    © 2007-2013 Microchip Technology Inc. DS39712D_JP - p.7-5

  • PIC24F ファミリ リファレンス マニュアル

    7.2 リセット時のクロック源の選択クロック切り換えが有効 (OSWEN) な場合、デバイスリセット時のシステムクロック源の選択は表 7-1 に従います。クロック切り換えが無効な場合、システムクロック源は常にオシレータコンフィグレーション ビットの設定に従って選択されます。詳細は、『PIC24F ファミリ リファレンス マニュアル』セクション 6「オシレータ」を参照してください。

    表 7-1: 各種リセット時のオシレータの選択 ( クロック切り換え有効時 )

    7.3 パワーオン リセット (POR)POR は、チップの正常動作を確保するために、コア電源の電圧レベルを監視します。POR は2 つのしきい値電圧を使います。1 つはデバイスしきい値電圧 VPOR です。電源電圧がこのしきい値電圧に達すると、POR モジュールが動作可能となります。もう 1 つは POR 回路しきい値電圧です。電源電圧がこのしきい値電圧に達するとパワーオン イベントが発生し、POR モジュールは休止して電流消費を最小限に抑えます。

    パワーオン イベントは、VDD が POR 回路しきい値電圧に達した時に内部 POR パルスを生成します。POR パルスを生成するには、デバイスの電源電圧特性が規定された開始電圧と立ち上がり速度の要件を満たしている必要があります。VDD が再度 VPOR よりも低下しない限り、新たに POR を開始する事はできません。VPOR と VDD 立ち上がり速度の仕様詳細は、各デバイス データシート内の「電気的特性」を参照してください。

    POR パルスは POR タイマをリセットし、デバイスをリセット状態にします。POR はオシレータ コンフィグレーション ビットの設定に従ってデバイスクロック源を選択します。POR パルスを生成後、POR 回路は短い遅延時間 TPOR ( 公称値 5 s) を適用してデバイスの内部バイアス回路を安定させます。

    TPOR の経過後は、必ず TSTARTUP の遅延が追加されます。TSTARTUP はあらゆる電源 OFF 後、デバイスが動作を再開するたびに適用されます。内蔵レギュレータを備えたデバイスの場合、内蔵電圧レギュレータの有効 / 無効によってパラメータ TSTARTUP が決まります。内蔵電圧レギュレータが有効の場合、レギュレータが適切な電圧レベルを発生できるようになるまでにTVREG と呼ばれる遅延があります。この間、コードは実行されません。

    レギュレータが無効の場合、パワーアップ タイマ (PWRT) が自動的に有効となります。PWRTはデバイス起動時に公称値 64 ms の遅延時間を追加します。PWRT は、内蔵電圧レギュレータが無効でコアが外部電源によって給電されている場合、電源立ち上げシーケンスの期間を延長するために使います。従って、TSTARTUP 遅延は、TVREG( 内蔵電圧レギュレータを使うデバイス )またはパワーアップ タイマ遅延 TPWRT( レギュレータを使わないデバイス ) のどちらかです。パワーオン イベントが発生すると、BOR と POR ステータスビット (RCON) がセットされます。デバイスによっては、コンフィグレーション ビットで PWRT を無効にできます。TSTARTUPの経過後には、クロック源が安定するまでのシステムクロック起動時間が追加されます。TOST、TFRC、TLPRC のどれかで、クロック源で決まります。

    リセットタイプ クロック源の選択に使うビット

    POR オシレータ コンフィグレーション ビットFNOSCBOR

    MCLR

    COSC 制御ビット OSCCON

    WDTRSWRTRAPRIOPUWR

    Note: 一部のデバイスのデータシートでは、TVREG の代わりに TPM( プログラムメモリが使えるまでの遅延 ) という用語を使っています。どちらの用語も同じ意味と見なしてかまいません。

    DS39712D_JP - p.7-6 © 2007-2013 Microchip Technology Inc.

  • セクション 7. リセットリセット

    7

    コード実行までには、さらに TRST として指定する短い遅延が加わります。TRST は、プログラムメモリ内のフラッシュ コンフィグレーション ワード (FCW) からコンフィグレーション レジスタに値を転送するために必要な遅延で、全てのデバイスリセット後に発生します。SYSRSTが解除されデバイスのリセット保持は終了しますが、図 7-2 に示すように TRST の期間はデバイスクロックの動作が抑止されます。全ての遅延時間が経過した後にシステムクロックが解放され、コード実行が始まります。

    遅延パラメータの値はセクション 7.16「電気的仕様」を参照してください。

    図 7-2: VDD 立ち上がり時の POR モジュールのタイミング シーケンス

    TPOR

    VDD VPOR

    POR Circuit Threshold Voltage

    SYSRST

    TSTARTUP(1)

    Internal Power-on Reset Pulse Occurs and Begins POR Delay Time, TPOR

    POR Circuit is Initialized at VPOR

    Time

    System Clock is StartedAfter TSTARTUP Delay Expires

    TRST

    System Clock is Releasedand Code Execution

    Begins

    POR

    PWRT

    System Clock

    Note 1: 内蔵レギュレータが有効の場合は TVREG、無効の場合は TPWRT です。2: タイマと時間間隔は初期の起動オシレータ コンフィグレーションによって決まります。外部オシレー

    タモードの場合は TOSC、FRC オシレータの場合は TFRC、内部 31 kHz RC オシレータの場合は TLPRCです。

    (Note 2)

    Oscillator Delay(2)

    System Reset is ReleasedAfter Clock is Stable

    Note: デバイスがリセット状態を終了して通常の動作を開始する際に、デバイスの動作パラメータ ( 電圧、周波数、温度等 ) が動作レンジ内に入っていないと、デバイスが正常に機能しない可能性があります。ユーザは、動作開始時に全ての動作パラメータが仕様範囲内に入るように、電源投入から SYSRST が非アクティブになるまで十分な遅延時間を確保する必要があります。

    © 2007-2013 Microchip Technology Inc. DS39712D_JP - p.7-7

  • PIC24F ファミリ リファレンス マニュアル

    7.3.1 POR 回路の使用POR 回路は MCLR ピンを直接 VDD に接続するだけで使えます。このため、通常 POR 遅延の生成に必要な外付け RC 部品が不要です。VDD の最小立ち上がり時間は仕様を満たす必要があります。詳細は各デバイス データシート内の「電気的特性」を参照してください。

    回路によっては、MCLR ピンと VDD の間に抵抗を挿入する必要があります。この抵抗によって、MCLR ピンをノイズの多い電源レールからデカップリングできます。

    図 7-3 に、立ち上がりの遅い電源向けの外付け POR 回路の例を示します。このような外付けPOR 回路が必要なのは、デバイス VDD が有効な動作レンジまで立ち上がる前にデバイスがリセット状態を終了してしまう可能性がある場合です。 ダイオード (D) は、VDD のパワーダウン時にコンデンサの放電を促進します。

    図 7-3: 外付け POR 回路 (VDD の立ち上がりが遅い場合 )

    7.4 MCLR リセットMCLRピンをLowに駆動すると、デバイスはいつでも非同期でSYSRSTをアサートします。ただし、MCLR への入力パルス幅が最小値 SY10( セクション 7.16「電気的仕様」参照 ) よりも長い場合に限ります。MCLR ピンが解放されると、SYSRST も解除されます。リセットベクタのフェッチは、SYSRST の解除から TRST の遅延が経過した時点で開始します。プロセッサは、MCLRリセット発生以前に使っていたクロック源を使い続けます。MCLRリセットの発生を示すEXTR ステータスビット (RCON) がセットされます。

    7.5 ソフトウェア RESET命令 (SWR)RESET 命令を実行すると、デバイスは SYSRST をアサートします。このリセットはクロックを再初期化しません。RESET命令実行前に動作していたクロック源は動作を続けます。次の命令サイクルで SYSRST は解除されますが、リセットベクタのフェッチが始まるのは TRST 遅延の経過後です。

    7.6 ウォッチドッグ タイマリセット (WDTR)ウォッチドッグ タイマのタイムアウトが発生すると、デバイスは非同期で SYSRST をアサートします。クロック源は変更されません。スリープまたはアイドル中の WDT タイムアウトはプロセッサを復帰させますが、リセットはしません。詳細は、『PIC24F ファミリ リファレンス マニュアル』のセクション 9「ウォッチドッグ タイマ (WDT)」を参照してください。

    Note 1: R における電圧降下が MCLR ピンの VIH 仕様に違反しないように、R の値は十分に小さくする必要があります。

    2: R1 は、静電放電 (ESD) や電気的オーバーストレス (EOS) による MCLR/Vppピンのブレークダウン発生時に、外付けコンデンサから MCLR へ流れ込む電流を制限します。

    R1(2)MCLR

    PIC24F

    R(1)D

    C

    VDD VDD

    DS39712D_JP - p.7-8 © 2007-2013 Microchip Technology Inc.

  • セクション 7. リセットリセット

    7

    7.7 ブラウンアウト リセット (BOR)内蔵レギュレータが有効の場合、PIC24F ファミリではシンプルなブラウンアウト リセット機能を使えます。BOR はレギュレータが有効な場合にのみ適用されます。レギュレータに供給される電圧がトラッキング レベルを維持できない値になると、レギュレータ リセット回路がブラウンアウト リセット (BOR) を生成します。ブラウンアウト リセットが発生すると、BOR フラグビット (RCON) がセットされます。

    詳細は、セクション 7.16「電気的仕様」を参照してください。

    7.7.1 電圧レギュレータのトラッキング モードと低電圧検出内蔵レギュレータは有効にするとデジタルコア ロジックに定電圧を供給します (1,2)。

    レギュレータに供給される電圧が大きく低下した場合、「ブラウンアウト」条件を回避するために、レギュレータはトラッキング モードに移行します。トラッキング モードでは、レギュレータ出力は 100 mV (typical) の電圧降下で VDD に追従します。トラッキング モードでは、デバイスは最高速で動作できません。トラッキング モードへの移行判断のため、内蔵レギュレータは単純な低電圧検出 (LVD) 回路を備えています。VDD が最高速動作電圧を下回ると、この回路が低電圧検出割り込みフラグ LVDIF (IFS4) をセットします。このフラグを使って割り込みを生成し、回路を低消費電力動作モードに移行させるか、適切なシャットダウン処理を開始できます。低電圧検出はレギュレータ有効時のみ利用できます。

    7.7.2 BOR の検出BOR を有効化した場合、BOR ビット (RCON) は全ての BOR または POR イベントによって「1」にリセットされます。このため、BOR ビットのみを読み出して BOR イベントが発生したかどうかを判断する事は困難です。POR と BOR の状態を同時に確認すれば、より確実に判断できます。この方法は、POR イベント直後にソフトウェアで POR ビットを「0」にリセットする事が前提です。この場合、BOR ビットが「1」で POR ビットが「0」であれば、BORイベントが発生したと判断できます。

    7.7.3 ディープスリープ BOR (DSBOR)( 一部のデバイスのみ )ディープスリープ機能を備えたデバイスの場合、専用のディープスリープ BOR (DSBOR) 回路がディープスリープ中の BOR/POR 保護を提供します。DSBOR はそれ自体がリセットをトリガする事はできません。DSBOR は通常の POR 回路を再度動作可能な状態に設定し、ディープスリープ動作中に VDD が POR しきい値を下回った場合、確実にデバイスがリセットされるようにします。

    DSBOR は 2.0 V ( 公称値 ) のトリップポイントで動作します。なるべく電流を消費しない事を重視して設計しているため、この電圧値にはばらつきがあります。

    DSBOR イベント (BOR と POR) は、それぞれ DSCON と DSWAKE レジスタによって監視します。詳細は、セクション 39 「ディープスリープ付き省電力機能」を参照してください。DSBOR 回路は、DSBOREN コンフィグレーション ビットによって有効 / 無効にできます。既定値では回路は有効です。

    Note 1: デバイスによっては、レギュレータは常時有効です。詳細は各デバイスのデータシートを参照してください。

    2: レギュレータ電圧は、デバイスのデータシートを参照してください。

    Note: 他の省電力モードにおける他の BOR イベントと同様に、デバイスがディープスリープを終了した場合に POR と BOR の両方がセットされます。

    © 2007-2013 Microchip Technology Inc. DS39712D_JP - p.7-9

  • PIC24F ファミリ リファレンス マニュアル

    図 7-4: ブラウンアウト条件

    VDDCORE

    SYSRST

    VBOR

    VDDCORE

    SYSRST

    VBOR

    VDDCORE

    SYSRST

    VBOR

    VDDCORE Dips Again Before TPWRT + TRST Expires

    TVREG + TRST

    TVREG + TRST

    TVREG + TRST

    DS39712D_JP - p.7-10 © 2007-2013 Microchip Technology Inc.

  • セクション 7. リセットリセット

    7

    7.8 コンフィグレーション不一致リセット保存されているコンフィグレーション値の整合性を保つために、全てのデバイス コンフィグレーション ビットがレジスタビットの反転した値として実装されています。レジスタ値が「1」と書き込まれると、対応するバックグラウンドレジスタに反転値「0」が格納されます。値が逆の時も同様です。スリープを含め、毎回これらのビットペアが比較されます。この比較によって、コンフィグレーション ビットの値が反転していない事が検出されると、コンフィグレーション不一致イベントが生成され、デバイスリセットが発生します。

    コンフィグレーション不一致の結果デバイスリセットが発生すると、CM ステータスビット(RCON) がセットされます。

    7.9 トラップ衝突リセット (TCR)トラップ衝突リセット (TCR) は、ハードトラップとソフトトラップが同時に発生した時に発生します。この時、TRAPR ステータスビット (RCON) がセットされます。トラップに関する詳細は、『PIC24F ファミリ リファレンス マニュアル』セクション 8「割り込み」を参照してください。

    7.10 不正オペコードリセット (IOPUWR)デバイスがプログラムメモリからフェッチした不正オペコード値を実行しようとすると、デバイスリセットが発生します。不正オペコード値によってデバイスリセットが発生すると、IOPUWR ステータスビット (RCON) がセットされます。

    不正オペコード リセット機能により、プログラムメモリ中の定数データ格納に使っているセクションをデバイスが実行する事を防げます。不正オペコード リセットを利用するには、データ値の格納にプログラムメモリの各セクションの下位 16 ビットのみを使います。上位 8 ビットには、不正オペコード値である 3Fh をプログラムします。

    7.11 未初期化 W レジスタリセットW レジスタアレイ (W15 を除く ) は全リセットでクリアされ、書き込みが実行されるまで未初期化と見なされます。未初期化レジスタをアドレスポインタとして使おうとするとデバイスがリセットされ、IOPUWR ステータスビット (RCON) がセットされます。

    7.12 VBAT モード (1)

    VBAT ピンにバッテリ等の外部電源を接続すると、デバイスは VBAT モードに移行できます。マイクロコントローラの主電源 (VDD) に障害が発生すると、自動的に VBAT モードへ移行します。VBAT モードには、全動作モード ( 通常動作、アイドル、スリープ、ディープスリープ ) から移行できます。また、VBAT が VDD から給電され、VDDCORE 電源が失われたものの VDD ピン電圧は維持されている場合にも VBAT モードに移行します。このモードを利用すると、VDD が回復するまでの間、特に重要ないくつかのシステムを超低消費電力で維持する事ができます。VBATモードに移行するには、デバイスの BOR 監視を少なくとも 1 つはアクティブにしておく必要があります。

    VDD が回復すると、デバイスは自動的に VBAT モードから復帰します。復帰時に POR を実行し、それが完了するとデバイスはリセットベクタからコード実行を始めます。ディープスリープ セマフォを除き、全ての SFR は POR 時の値にリセットされます。RTCC が VBAT モード中に動作するように設定していなければ、VBAT モード終了時にリセットされます。復帰のタイミングは通常の POR と同じです。

    © 2007-2013 Microchip Technology Inc. DS39712D_JP - p.7-11

  • PIC24F ファミリ リファレンス マニュアル

    7.12.1 VBAT(1)

    VBAT からの復帰と POR を区別するには、VBAT ビット (RCON2) を確認します。POR 時にこのビットがセットされていれば、デバイスが VBAT モードから復帰した事を示します。次回も VBAT からの復帰を判定できるように、VBAT ビットをクリアしておく必要があります。

    7.12.2 VBPOR(1)

    VBPOR ビット (RCON2) は VBAT POR が発生したかどうかを示します。これは、バッテリが取り外された場合、または VBAT が DSGPRx レジスタに必要な動作レベルを下回った場合に発生します。このビットは電源投入時にセットされるため、VBPOR イベントをキャプチャするにはクリアしておく必要があります。次回の POR イベントをキャプチャするため、VBAT PORの後にも VBPOR ビットをクリアする必要があります。

    7.12.3 VDDPOR(1)

    VDDPOR ビット (RCON2) は、VDD ピンの電圧が POR しきい値を下回るとセットされます。これは POR ビット (RCON) が示すイベントとは異なります。POR ビットは VDDCORE がPOR しきい値を下回った場合にセットされます。( パワーオン リセットの詳細は、セクション7.3「パワーオン リセット (POR)」を参照してください。)

    7.12.4 VDDBOR(1)

    このビットは BOR イベントの発生を示します。詳細はセクション 7.7「ブラウンアウト リセット (BOR)」を参照してください。

    Note 1: 一部のデバイスはこれらのビットを実装していません。各デバイスファミリのデータシートを参照してください。

    DS39712D_JP - p.7-12 © 2007-2013 Microchip Technology Inc.

  • セクション 7. リセットリセット

    7

    7.13 レジスタとステータスビットの値RCON と RCON2 レジスタのステータスビットのセット / クリアは、表 7-2 に示すように各種のリセット状況に応じて異なります。

    表 7-2: RCON レジスタのステータスビットの意味と初期化状態

    状態プログラム カウンタ TR

    APR

    IOPU

    WR

    DPS

    LP

    EXTR

    SWR

    WD

    TO(1

    )

    SLEE

    P(2)

    IDLE

    (2)

    CM

    BO

    R

    POR

    VBAT

    (6)

    VBPO

    R(6

    )

    VDD

    POR

    (6)

    VDD

    BO

    R(6

    )

    パワーオン リセット 000000h 0 0 0 0 0 0 0 0 0 1 1 u 1(7) 1 1RESET命令 000000h u u u u 1 u u u u u u u u u uブラウンアウト リセット 000000h 0 0 u u 0 0 0 0 0 1 u u u u 1通常動作中の MCLR 000000h u u u 1 u u u u u u u u u u uアイドル中の MCLR 000000h u u u 1 u 0(1) u 1(2) u u u u u u uスリープ中の MCLR 000000h u u u 1 u 0(1) 1(2) u u u u u u u uディープスリープ中の MCLR(3) 000000h 0 0 1 1 0 0 0 0 0 1 1 u u 1 1通常動作中の WDT タイムアウト リセット

    000000h u u u u u 1 u u u u u u u u u

    アイドル中の WDT タイムアウト リセット

    PC + 2 u u u u u 1 u 1(2) u u u u u u u

    スリープ中の WDT タイムアウト復帰

    PC + 2 u u u u u 1 1(2) u u u u u u u u

    トラップイベント リセット 000000h 1 u u u u u u u u u u u u u u不正オペコード / 未初期化 WREG 000000h u 1 u u u u u u u u u u u u uコンフィグレーション ワード不一致リセット

    000000h u u u u u u u u 1 u u u u u u

    割り込みによるアイドルの終了 (4) PC + 2(5) u u u u u u u 1(2) u u u u u u u割り込みによるスリープの終了 (4) PC + 2(5) u u u u u 0(2) 1(2) u u u u u u u uアイドル (PWRSAV 1を実行 ) PC + 2 u u u u u u u 1 u u u u u u uスリープ (PWRSAV 0を実行 ) PC + 2 u u u u u u 1 u u u u u u u uディープスリープ (DSEN をセットして PWRSAV 0を実行 )(3)

    000000h 0 0 1 0 0 0 0 0 0 1 1 u u 1 1

    VBAT 継続印加時のバッテリ バックアップからの復帰

    000000h 0 0 0 0 0 0 0 0 0 1 1 1 0 0 1

    VBAT 電源不連続印加時の VBATモードからの復帰

    000000h 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1

    VDD パワーオン リセット 000000h 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1凡例 : u = 不変Note 1: PWRSAV命令も WDTO ビットをクリアします。

    2: SLEEP と IDLE ビットの状態は、直近に実行された PWRSAV命令で決まります。3: 一部の PIC24F にのみ当てはまります。4: 割り込み有効時、割り込み優先度を変更しないでください。優先度の変更が必要な場合、対応する割り込み

    イネーブルビットをクリアして新たな優先度を選択し、割り込みを有効にします。

    5: 割り込み優先度が CPU 割り込み優先度以下である場合、プログラム カウンタ (PC) には PC + 2 を格納します。割り込み優先度が CPU 割り込み優先度より高い場合、プログラム カウンタ (PC) にはハードウェア ベクタ アドレスを格納します。

    6: デバイスによっては、このビットを実装していません。詳細は各デバイスファミリのデータシートを参照してください。

    7: このビットは最初の POR でセットされ、その後は VBAT POR イベントによってセットされます。

    © 2007-2013 Microchip Technology Inc. DS39712D_JP - p.7-13

  • PIC24F ファミリ リファレンス マニュアル

    7.13.1 VBAT/ ディープスリープ ステータスビットの解読表 7-3 に示す通り、デバイスのパワーオン リセット (POR) に関しては、VBAT、VBPOR、DPSLP等の複数のユニークなリセット設定があります。

    7.13.2 RCON ステータスビットの使用デバイスリセット後に RCON レジスタを読み出す事により、リセットの原因を特定できます。表 7-4 に、リセット フラグビットのまとめを示します。

    表 7-4: リセット フラグビット動作

    表 7-3: VBAT とリセット フラグビット

    フラグビット ビットをセットする要因 ビットをクリアする要因

    VDDBOR (RCON2) POR、BOR -VDDPOR (RCON2) VDD ピンの POR -VBPOR (RCON2) VBAT モードにおけるバッテリ障害 -VBAT (RCON) VBAT による POR -

    Note: RCON レジスタのステータスビットは、読み出し後にクリアする必要があります。そうしないと、次のデバイスリセット後に RCON レジスタの値を読みだしてもいつセットされたのか分からず、無意味です。

    フラグビット (1) ビットをセットする要因 ビットをクリアする要因

    TRAPR (RCON) トラップ衝突イベント PORIOPUWR (RCON) 不正オペコード / 未初期化

    W レジスタアクセスPOR

    DPSLP (RCON)(2) ディープスリープ シーケンス(DSEN のセット後、

    PWRSAV #SLEEP命令を実行 )

    POR

    EXTR (RCON) MCLR リセット PORSWR (RCON) RESET命令 PORWDTO (RCON) WDT タイムアウト PWRSAV命令、PORSLEEP (RCON)(1) PWRSAV #SLEEP命令 POR、CLRWDT命令IDLE (RCON)(1) PWRSAV #IDLE命令 POR、CLRWDT命令BOR (RCON) POR、BOR -POR (RCON) VDDCORE の POR -

    Note 1: 全てのリセット フラグビットはユーザ ソフトウェアでセット / クリアできます。リセットフラグをソフトウェアでセットしても、対応するリセット動作をトリガできる訳ではありません。

    2: 一部の PIC24F でのみ利用可能なビットです。

    DS39712D_JP - p.7-14 © 2007-2013 Microchip Technology Inc.

  • セクション 7. リセットリセット

    7

    7.14 デバイスリセットからコード実行開始までの遅延時間リセットイベントの終了からデバイスがコード実行を開始するまでの遅延時間は、2 つの主要因 ( リセットのタイプとリセット時に使うシステムクロック源 ) によって決まります。各種タイプのデバイスリセットにおけるコード実行開始までの遅延時間を表 7-5 に示します。各遅延時間の特性値はセクション 7.16「電気的仕様」に記載しています。POR の場合、POR 遅延時間 (TPOR) と TSTARTUP 遅延時間の経過後に、システムリセット信号SYSRST が解除されます。BOR の場合、TSTARTUP 遅延時間の経過後、SYSRST が解除されます。その他の全てのリセットでは、リセット条件終了直後に、システムリセット信号 SYSRST が解除されます。全リセットで、SYSRST の解除後に TRST の遅延が開始します。システムクロックは TRST 終了時に起動します。コード実行はクロック源が安定してから開始します。

    デバイスが実際にコード実行を開始するまでの遅延時間は、オシレータ起動タイマ遅延 (TOST)と PLL ロック時間 (TLOCK) を含むシステム オシレータ遅延で決まります。PLL ロック時間はOST に加算されます (OST 後に開始 )。

    表 7-5: 各種デバイスリセットのリセット遅延時間

    リセットタイプ クロック源 SYSRST 遅延 システムクロック遅延

    Notes

    POR(6) EC TPOR + TRST + TSTARTUP - 1, 2, 3FRC, FRCDIV TPOR + TRST + TSTARTUP TFRC 1, 2, 3, 4, 7LPRC TPOR + TRST + TSTARTUP TLPRC 1, 2, 3, 4ECPLL TPOR + TRST + TSTARTUP TLOCK 1, 2, 3, 5FRCPLL TPOR + TRST + TSTARTUP TFRC + TLOCK 1, 2, 3, 4, 5XT, HS, SOSC TPOR + TRST + TSTARTUP TOST 1, 2, 3, 6XTPLL, HSPLL TPOR + TRST + TSTARTUP TOST + TLOCK 1, 2, 3, 5, 6

    BOR EC TRST + TSTARTUP - 2, 3FRC, FRCDIV TRST + TSTARTUP TFRC 2, 3, 4, 7LPRC TRST + TSTARTUP TLPRC 2, 3, 4ECPLL TRST + TSTARTUP TLOCK 2, 3, 5FRCPLL TRST + TSTARTUP TFRC + TLOCK 2, 3, 4, 5XT, HS, SOSC TRST + TSTARTUP TOST + TLOCK 2, 3, 6XTPLL, HSPLL TRST + TSTARTUP TFRC + TLOCK 2, 3, 4, 5

    その他全て 全てのクロック TRST - 2Note 1: TPOR = パワーオン リセット遅延

    2: TRST = 内部状態リセット時間3: レギュレータが有効の場合は TSTARTUP = TVREG、無効の場合は TPWRT( 公称 64 ms)4: TFRC 、TLPRC = RC オシレータの起動時間5: TLOCK = PLL ロック時間6: TOST = オシレータ起動タイマ (OST)。システムにオシレータ クロックを供給する前に、10 ビットカウンタ

    が 1024 オシレータ サイクルの間待機します。7: 2 段階起動が有効な場合、選択されているプライマリ オシレータに関係なく、デバイスは FRC を使って

    起動します。この場合 FRC 起動時間を適用します。

    Note: 動作周波数の公称値とタイミングの仕様は、セクション 7.16「電気的仕様」を参照してください。特定のデバイスの仕様は、該当するデータシートの「電気的仕様」を参照してください。

    © 2007-2013 Microchip Technology Inc. DS39712D_JP - p.7-15

  • PIC24F ファミリ リファレンス マニュアル

    7.14.1 起動の遅いオシレータの PORオシレータ起動回路と、これに対応する遅延タイマは、起動時のデバイスリセット遅延とは無関係です。一部の水晶振動子回路 ( 特に低周波数水晶振動子 ) では、比較的長い起動時間が必要です。このため SYSRST 信号の解除後に、下記の状態が 1 つまたは複数発生する可能性があります。

    • オシレータ回路が発振を始めていない• オシレータ起動タイマが終了していない ( 水晶振動子使用時 )• PLL ロックが完了していない (PLL 使用時 )

    デバイスは、クロックがシステムに供給されるまでコード実行を開始しません。従って、リセット遅延時間を検討する場合、オシレータと PLL の起動遅延を考慮に入れる必要があります。

    7.14.2 デバイス起動時のシーケンス例図 7-5 ~図 7-8 に、各種動作条件におけるデバイスリセットに対応する遅延シーケンスを図示します。各遅延の特性値はセクション 7.16「電気的仕様」に記載しています。図 7-5 に、水晶振動子をシステムクロックとして使う場合のリセット遅延処理タイミングを示します。内部 POR パルスは、電圧が VPOR しきい値に達した時に発生します。TPOR、TSTARTUP、TRST 遅延は、内部 POR パルス発生後に適用されます。

    図 7-5: デバイスリセット遅延、水晶振動子 (XT/HS/SOSC) クロック源

    POR Circuit Threshold Voltage

    SYSRST(1)

    Internal Power-on Reset Pulse

    TPOR(2)

    VDD

    Oscillator Released to System

    POR

    System Reset Released

    Note 1: 図中の各遅延時間の長さは実際の時間の長短に対応しません。2: TPOR = パワーオン リセット遅延3: 内蔵レギュレータが有効の場合は TSTARTUP = TVREG、無効の場合は TPWRT4: TRST = 内部状態リセット時間5: TOST = オシレータ起動タイマ (OST)。システムにオシレータ クロックを供給する前に、10 ビット

    カウンタが 1024 オシレータ サイクルをカウントします。

    OSC Delay(1)

    TSTARTUP(3)

    TRST(4)

    TOST(5)

    DS39712D_JP - p.7-16 © 2007-2013 Microchip Technology Inc.

  • セクション 7. リセットリセット

    7

    図 7-6 に示すリセット タイミングは、PLL が有効であるという点を除いて図 7-5 に示したものと同様であり、オシレータの安定化時間が長くなっています。

    FSCM が有効の場合、TFSCM の経過後にシステムクロックの監視を始めます。図 7-6 では、FSCM 有効となる前にオシレータと PLL の遅延が経過しています。しかし、FSCM が有効になった時にこれらの遅延が経過していない可能性があります。この時点で有効なクロック源を使えない場合、デバイスは自動的に FRC オシレータに切り換え、クロック障害トラップが生成されます。TSR を使えば水晶振動子に切り換えられます。

    図 7-6: デバイスリセット遅延、PLL を併用する水晶振動子 (XT/HS/SOSC) クロック源

    POR Circuit Threshold Voltage

    Internal Power-on Reset Pulse

    TPOR(2)

    VDD

    Oscillator Released

    POR

    System Reset Released

    Note 1: 図中の各遅延時間の長さは実際の時間の長短に対応しません。2: TPOR = パワーオン リセット遅延3: 内蔵レギュレータが有効の場合は TSTARTUP = TVREG、無効の場合は TPWRT4: TRST = 内部状態リセット時間5: TOST = オシレータ起動タイマ (OST)。システムにオシレータ クロックを供給する前に、10 ビット

    カウンタが 1024 オシレータ サイクルをカウントします。6: PLL が無効の場合、TLOCK は追加されません。

    OSC Delay(1)

    TSTARTUP(3)

    TRST(4)

    SYSRST(1)

    TLOCK(6)to System

    TOST(5)

    © 2007-2013 Microchip Technology Inc. DS39712D_JP - p.7-17

  • PIC24F ファミリ リファレンス マニュアル

    図 7-7 に、EC クロック源をシステムクロックとして使う場合のリセット遅延処理タイミングを示します。この例は、オシレータ起動タイマ遅延 TOST が適用されないという点を除き、図7-6 に示したものと同じです。

    図 7-7: デバイスリセット遅延、EC/ECPLL クロック

    POR Circuit Threshold Voltage

    Internal Power-on Reset Pulse

    TPOR(2)

    VDD

    Oscillator Released to System

    POR

    System Reset Released

    Note 1: 図中の各遅延時間の長さは実際の時間の長短に対応しません。2: TPOR = パワーオン リセット遅延3: 内蔵レギュレータが有効の場合は TSTARTUP = TVREG、無効の場合は TPWRT4: TRST = 内部状態リセット時間5: ECPLL モードを示しています。PLL が無効の場合、TLOCK は追加されません。TRST の経過直後

    にシステムクロックが解放されます。

    OSC Delay(1)

    TSTARTUP(3)

    TRST(4)SYSRST(1)

    TLOCK(5)

    DS39712D_JP - p.7-18 © 2007-2013 Microchip Technology Inc.

  • セクション 7. リセットリセット

    7

    図 7-8 に示すリセット処理タイミングは、FRC または LPRC システムクロック源を選択した場合の例です。このシーケンスは、2 段階起動を有効にして外部クロック源を使う場合にも適用されます。

    図 7-8: デバイスリセット遅延、FRC/LPRC クロック

    7.15 特殊機能レジスタ (SFR) のリセット状態PIC24F の CPU と周辺モジュールに関する特殊機能レジスタ (SFR) の大部分は、デバイスリセット時に特定の値にリセットされます。SFR は周辺モジュールまたは CPU 機能に応じて分類されており、それらのリセット値は本ファミリ リファレンス マニュアルの関連セクションに記載されています。

    後述の 2 つのレジスタを除き、SFR のリセット値はリセットタイプと無関係です。リセット制御レジスタ (RCON) のリセット値はデバイスリセットのタイプによって決まります。オシレータ制御レジスタ (OSCCON) のリセット値は、リセットのタイプと FOSC デバイス コンフィグレーション レジスタのオシレータ コンフィグレーション ビットの設定によって決まります ( 表 7-1参照 )。

    POR Circuit Threshold Voltage

    Internal Power-on Reset Pulse

    TPOR(2)

    VDD

    Oscillator Released to System

    POR

    System Reset Released

    Note 1: 図中の各遅延時間の長さは実際の時間の長短に対応しません。2: TPOR = パワーオン リセット遅延3: 内蔵レギュレータが有効の場合は TSTARTUP = TVREG、無効の場合は TPWRT4: TRST = 内部状態リセット時間5: FRC オシレータの場合は TFRC、内部 31 kHz RC オシレータの場合は TLPRC です。

    OSC Delay(1,5)

    TSTARTUP(3)

    TRST(4)SYSRST(1)

    (Note 5)

    © 2007-2013 Microchip Technology Inc. DS39712D_JP - p.7-19

  • PIC24F ファミリ リファレンス マニュアル

    7.16 電気的仕様

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

    表 7-6: リセット、ウォッチドッグ タイマ、オシレータ起動タイマ、パワーアップ タイマ、ブラウンアウト リセットのタイミング要件

    AC 特性 標準動作条件 : 2.0 ~ 3.6 V( 特に明記しない場合 )動作温度 -40 ℃ TA +85 ℃ ( 産業用温度レンジ )

    パラメータNo. 記号 特性 Min Typ

    (1) Max 単位 条件

    SY10 TmcL MCLR パルス幅 (LOW) 2 - - sSY11 TPWRT パワーアップ タイマ時間 - 64 - ms SY12 TPOR パワーオン リセット遅延 1 5 10 s

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

    - - 100 ns

    SY20 TWDT ウォッチドッグ タイマ タイムアウト時間

    0.85 1.0 1.15 ms 1:32 プリスケーラ3.4 4.0 4.6 ms 1:128 プリスケーラ

    SY25 TBOR ブラウンアウト リセット パルス幅 1 - - s VDD VBOR、電圧レギュレータ無効

    Note 1: 「Typ」欄のデータは、特に明記しない限り 3.3 V、25 ℃の場合の値です。

    VDD

    MCLR

    InternalPOR

    PWRT

    SYSRST

    SystemClock

    WatchdogTimer Reset

    SY10

    SY20SY13

    I/O PinsSY13

    SY11

    SY12

    DS39712D_JP - p.7-20 © 2007-2013 Microchip Technology Inc.

  • セクション 7. リセットリセット

    7

    7.17 設計のヒント

    質問 1: RCON レジスタはどのように使うのですか。回答 : リセット後の初期化コードでは、RCON と RCON2 レジスタを読み出してリセット要因を確認する必要があります。アプリケーションによっては、この情報に基づいてリセット発生の原因となった問題を是正できます。RCON レジスタの全てのリセット ステータスビットは、読み出し後にクリアする必要があります。これにより、次回のデバイスリセット時に RCON 値から正しい情報を得る事ができます。

    質問 2: W レジスタを 16 ビットアドレスで初期化しましたが、このレジスタをアドレスとして使おうとするとデバイスリセットが発生しているようです。原因は何ですか。

    回答 : 全てのデータアドレス値は 16 ビットであるため、1 ワード読み込みを実行した場合、未初期化 W レジスタロジックはレジスタが正しく初期化されたものと認識します。W レジスタへの 2 バイト移動は、たとえ連続して実行しても正常に動作しません。そのため、その W レジスタを動作中にアドレスポインタとして使うとデバイスリセットが発生します。

    © 2007-2013 Microchip Technology Inc. DS39712D_JP - p.7-21

  • PIC24F ファミリ リファレンス マニュアル

    7.18 関連アプリケーション ノート本書に関連するアプリケーション ノートの一覧を以下に記載します。一部のアプリケーションノートは PIC24F デバイスファミリ向けではありません。ただし、概念は共通しており、変更が必要であったり制限事項が存在するものの利用が可能です。PIC24F「K」デバイスのリセットに関連する最新のアプリケーション ノートは以下の通りです。

    タイトル アプリケーション ノート番号電源投入に関するトラブル シューティング AN607電源投入に関する注意点 AN522

    Note: PIC24F デバイスファミリ関連のその他のアプリケーション ノートやサンプルコードは弊社ウェブサイト (www.microchip.com) をご覧ください。

    DS39712D_JP - p.7-22 © 2007-2013 Microchip Technology Inc.

    http://www.microchip.comhttp://www.microchip.comhttp://www.microchip.comhttp://www.microchip.com

  • セクション 7. リセットリセット

    7

    7.19 改訂履歴

    リビジョン A (2006 年 9 月 )初版発行

    リビジョン B (2008 年 10 月、未リリース )設定可能な BOR のセクションを追加しました。ディープスリープ機能とデバイスリセットに関する内容を追加しました。

    リビジョン C (2010 年 3 月 )設定可能な BOR に関する内容を削除しました。この内容を『PIC24F ファミリ リファレンスマニュアル』(DS39728)のセクション40 「プログラマブルBOR等のリセット」に追加しました。フェイルセーフ クロックモニタとデバイスリセットにおけるその役割に対する言及を全て削除しました。

    POR 起動シーケンスの説明を修正して、セクション 7.3「パワーオン リセット (POR)」を更新しました。

    図 7-2、7-5、7-6、7-7、7-8 を新しい起動シーケンス図に置換しました。表 7-2 と 7-4 を新しいバージョンに更新しました。その他、章全体で細かい誤植を訂正しました。

    リビジョン D (2011 年 4 月 )レジスタ 7-2 RCON2( リセットとシステム制御レジスタ 2) を追加しました。

    セクション 7.7.1「電圧レギュレータのトラッキング モードと低電圧検出」を追加しました。セクション 7.12「VBAT モード」、セクション 7.12.1「VBAT」、セクション 7.12.2「VBPOR」、セクション 7.12.3「VDDPOR」、セクション 7.12.4「VDDBOR」を追加しました。セクション 7.13.1「VBAT/ ディープスリープ ステータスビットの解読」を追加しました。表 7-2 を VBAT、VBPOR、VDDPOR、VDDBOR ステータスビットを含む新しいバージョンに置換しました。

    表 7-3 VBAT とリセット フラグビットの動作を追加しました。

    その他、章全体で細かい誤植を訂正しました。

    © 2007-2013 Microchip Technology Inc. DS39712D_JP - p.7-23

  • PIC24F ファミリ リファレンス マニュアル

    NOTES:

    DS39712D_JP - p.7-24 © 2007-2013 Microchip Technology Inc.

  • マイクロチップ社製デバイスのコード保護機能に関して以下の点にご注意ください。

    • マイクロチップ社製品は、該当するマイクロチップ社データシートに記載の仕様を満たしています。

    • マイクロチップ社では、通常の条件ならびに仕様に従って使用した場合、マイクロチップ社製品のセキュリティ レベルは、現在市場に流通している同種製品の中でも最も高度であると考えています。

    • しかし、コード保護機能を解除するための不正かつ違法な方法が存在する事もまた事実です。弊社の理解では、こうした手法はマイクロチップ社データシートにある動作仕様書以外の方法でマイクロチップ社製品を使用する事になります。このような

    行為は知的所有権の侵害に該当する可能性が非常に高いと言えます。

    • マイクロチップ社は、コードの保全性に懸念を抱いているお客様と連携し、対応策に取り組んでいきます。

    • マイクロチップ社を含む全ての半導体メーカーで、自社のコードのセキュリティを完全に保証できる企業はありません。コード保護機能とは、マイクロチップ社が製品を「解読不能」として保証するものではありません。

    コード保護機能は常に進歩しています。マイクロチップ社では、常に製品のコード保護機能の改善に取り組んでいます。マイクロ

    チップ社のコード保護機能の侵害は、デジタル ミレニアム著作権法に違反します。そのような行為によってソフトウェアまたはその他の著作物に不正なアクセスを受けた場合、デジタル ミレニアム著作権法の定めるところにより損害賠償訴訟を起こす権利があります。

    本書に記載されているデバイス アプリケーション等に関する情報は、ユーザの便宜のためにのみ提供されているものであ

    り、更新によって無効とされる事があります。お客様のアプ

    リケーションが仕様を満たす事を保証する責任は、お客様に

    あります。マイクロチップ社は、明示的、暗黙的、書面、口

    頭、法定のいずれであるかを問わず、本書に記載されている

    情報に関して、状態、品質、性能、商品性、特定目的への適

    合性をはじめとする、いかなる類の表明も保証も行いません。

    マイクロチップ社は、本書の情報およびその使用に起因する

    一切の責任を否認します。生命維持装置あるいは生命安全用

    途にマイクロチップ社の製品を使用する事は全て購入者のリ

    スクとし、また購入者はこれによって発生したあらゆる損害、

    クレーム、訴訟、費用に関して、マイクロチップ社は擁護さ

    れ、免責され、損害を受けない事に同意するものとします。暗

    黙的あるいは明示的を問わず、マイクロチップ社が知的財産

    権を保有しているライセンスは一切譲渡されません。

    2007-2013 Microchip Technology Inc.

    商標

    マイクロチップ社の名称とロゴ、Microchip ロゴ、dsPIC、FlashFlex、KEELOQ、KEELOQ ロゴ、MPLAB、PIC、PICmicro、PICSTART、PIC32 ロゴ、rfPIC、SST、SST ロゴ、SuperFlash および UNI/O は、米国およびその他の国におけるマイクロチップ・テクノロジー社の登録商標です。

    FilterLab、Hampshire、HI-TECH C、Linear Active Thermistor、MTP、SEEVAL、Embedded Control Solutions Company は、米国におけるマイクロチップ・テクノロジー社の登録商標

    です。

    Silicon Storage Technology は、他の国におけるマイクロチップ・テクノロジー社の登録商標です。

    Analog-for-the-Digital Age、Application Maestro、BodyCom、chipKIT、chipKIT ロゴ、CodeGuard、dsPICDEM、dsPICDEM.net、dsPICworks、dsSPEAK、ECAN、ECONOMONITOR、FanSense、HI-TIDE、In-Circuit Serial Programming、ICSP、Mindi、MiWi、MPASM、MPF、MPLAB Certified ロゴ、MPLIB、MPLINK、mTouch、Omniscient Code Generation、PICC、PICC-18、PICDEM、PICDEM.net、PICkit、PICtail、REAL ICE、rfLAB、Select Mode、SQI、Serial Quad I/O、Total Endurance、TSHARC、UniWinDriver、WiperLock、ZENA および Z-Scale は、米国およびその他の国におけるマイクロチップ・テクノロジー社

    の商標です。

    SQTP は、米国におけるマイクロチップ・テクノロジー社のサービスマークです。

    GestIC および ULPP は、マイクロチップ・テクノロジー社の子会社である Microchip Technology Germany II GmbH & Co. & KG 社の他の国における登録商標です。

    その他、本書に記載されている商標は各社に帰属します。

    © 2007-2013, Microchip Technology Incorporated, All Rights Reserved.

    ISBN: 978-1-62077-187-7

    DS39712D_JP - p.7-25

    マイクロチップ社では、Chandler および Tempe ( アリゾナ州 )、Gresham ( オレゴン州 ) の本部、設計部およびウェハー製造工場そしてカリフォルニア州とインドのデザインセンターが ISO/TS-16949:2009 認証を取得しています。マイクロチップ社の品質システム プロセスおよび手順は、PIC® MCU および dsPIC® DSC、KEELOQ® コード ホッピング デバイス、シリアル EEPROM、マイクロペリフェラル、不揮発性メモリ、アナログ製品に採用されています。さらに、開発システムの設計と製造に関するマイクロチップ社の品質システムはISO 9001:2000 認証を取得しています。

  • DS39712D_JP - p.7-26 2007-2013 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ボストンWestborough, MATel: 774-760-0087 Fax: 774-760-0088シカゴItasca, ILTel: 630-285-0071 Fax: 630-285-0075クリーブランドIndependence, OHTel: 216-447-0464Fax: 216-447-0643ダラスAddison, TXTel: 972-818-7423 Fax: 972-818-2924デトロイトFarmington Hills, MITel: 248-538-2250Fax: 248-538-2260インディアナポリスNoblesville, INTel: 317-773-8323Fax: 317-773-5453ロサンゼルスMission Viejo, CATel: 949-462-9523 Fax: 949-462-9608サンタクララSanta Clara, CATel: 408-961-6444Fax: 408-961-6445トロントMississauga, Ontario,CanadaTel: 905-673-0699 Fax: 905-673-6509

    アジア / 太平洋アジア太平洋支社Suites 3707-14, 37th FloorTower 6, The GatewayHarbour City, KowloonHong KongTel: 852-2401-1200Fax: 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-571-2819-3187Fax: 86-571-2819-3189中国 - 香港 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-5407-5533Fax: 86-21-5407-5066中国 - 瀋陽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-7200Fax: 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-7828Fax: 886-7-330-9305台湾 - 台北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: 33-1-69-53-63-20 Fax: 33-1-69-30-90-79ドイツ - ミュンヘンTel: 49-89-627-144-0 Fax: 49-89-627-144-44イタリア - ミラノ Tel: 39-0331-742611 Fax: 39-0331-466781オランダ - ドリューネンTel: 31-416-690399 Fax: 31-416-690340スペイン - マドリッドTel: 34-91-708-08-90Fax: 34-91-708-08-91イギリス - ウォーキンガムTel: 44-118-921-5869Fax: 44-118-921-5820

    各国の営業所とサービス

    08/20/13

    http://www.microchip.com/http://www.microchip.com

    セクション7. リセットハイライト7.1 はじめに図7-1: リセットシステムのブロック図レジスタ7-1: RCON: リセット制御レジスタ(1)レジスタ7-2: RCON2: リセットとシステム制御レジスタ(1)

    7.2 リセット時のクロック源の選択表7-1: 各種リセット時のオシレータの選択(クロック切り換え有効時)

    7.3 パワーオン リセット(POR)図7-2: Vdd立ち上がり時のPORモジュールのタイミング シーケンス7.3.1 POR回路の使用図7-3: 外付けPOR回路(Vddの立ち上がりが遅い場合)

    7.4 MCLRリセット7.5 ソフトウェアRESET命令(SWR)7.6 ウォッチドッグ タイマリセット(WDTR)7.7 ブラウンアウト リセット(BOR)7.7.1 電圧レギュレータのトラッキング モードと低電圧検出7.7.2 BORの検出7.7.3 ディープスリープBOR (DSBOR)(一部のデバイスのみ)図7-4: ブラウンアウト条件

    7.8 コンフィグレーション不一致リセット7.9 トラップ衝突リセット(TCR)7.10 不正オペコードリセット(IOPUWR)7.11 未初期化Wレジスタリセット7.12 Vbatモード(1)7.12.1 Vbat(1)7.12.2 Vbpor(1)7.12.3 Vddpor(1)7.12.4 Vddbor(1)

    7.13 レジスタとステータスビットの値表7-2: RCONレジスタのステータスビットの意味と初期化状態7.13.1 Vbat/ディープスリープ ステータスビットの解読表7-3: Vbatとリセット フラグビット

    7.13.2 RCONステータスビットの使用表7-4: リセット フラグビット動作

    7.14 デバイスリセットからコード実行開始までの遅延時間表7-5: 各種デバイスリセットのリセット遅延時間7.14.1 起動の遅いオシレータのPOR7.14.2 デバイス起動時のシーケンス例図7-5: デバイスリセット遅延、水晶振動子(XT/HS/SOSC)クロック源図7-6: デバイスリセット遅延、PLLを併用する水晶振動子(XT/HS/SOSC)クロック源図7-7: デバイスリセット遅延、EC/ECPLLクロック図7-8: デバイスリセット遅延、FRC/LPRCクロック

    7.15 特殊機能レジスタ(SFR)のリセット状態7.16 電気的仕様図7-9: リセット、ウォッチドッグ タイマ、オシレータ起動タイマ、パワーアップ タイマのタイミング特性表7-6: リセット、ウォッチドッグ タイマ、オシレータ起動タイマ、パワーアップ タイマ、ブラウンアウト リセットのタイミング要件

    7.17 設計のヒント7.18 関連アプリケーション ノート7.19 改訂履歴リビジョンA (2006年9月)リビジョンB (2008年10月、未リリース)リビジョンC (2010年3月)リビジョンD (2011年4月)

    商標各国の営業所とサービス