【概要】
リセットが発生した条件をチェックしたり、フラグをクリアするマクロ命令です。
リセットで再スタートした直後に以下のマクロ命令を使うことで、リセットが
発生した要因を区別することが可能です。
同時に複数要因の検出はできませんので、チェックする順番により決定する。
【リセット制御要関数およびマクロ命令一覧】
主なリセット状態フラグ制御用のマクロ命令には下記のようなものが含まれます。
関数、マクロ名 機能内容 mGetPORFlag
mGetBORFlag
mGetMCLRFlag
mGetCMRFlag
mGetWDTOFlag
mGetSWRFlagリセットが指定した要因で発生したかをチェックし、真なら0以外、偽なら0を返す
POR:電源オン、BOR:電源オフ、MCLR:外部リセット、SWR:ソフトウェアリセット
CMR:コンフィギュレーション不一致、WDTO:ウォッチドッグタイマタイムアウト
《使用例》
unisgned int reset_state;
reset_state = mGetSWRFlag();mGetSleepFlag
mGetIdleFlag
mGetVregFlagCPUがスリープか、アイドルモードか、レギュレータ使用状態かをチェックし
真であれば0以外を、偽であれば0を返すmClearPORFlag
mClearBORFlag
mClearMCLRFlag
mClearCMRFlag
mClearWDTRFlag
mClearSWRFlag指定したリセット要因条件フラグをクリアする mClearSleepFlag
mClearIdleFlag
mClearVregFlag
mSetVregFlag指定した状態フラグをクリア、またはセットする
【使用例】
目次に戻る