STM32のリセットフラグ

ウォッチドッグによってリセットしたことは下記のコードでチェックできる。

// ウォッチドッグによってリセットしたか?
if(READ_BIT(RCC->CSR, RCC_CSR_IWDGRSTF))
{
    // フラグのクリア
    CLEAR_BIT(RCC->CSR, RCC_CSR_IWDGRSTF);
}

同様に下記のようなフラグがある。

RCC_CSR_BORRSTF ブラウンアウトリセットフラグ
RCC_CSR_PINRSTF ピンリセットフラグ
RCC_CSR_PORRSTF パワーオン/パワーダウンリセットフラグ
RCC_CSR_SFTRSTF ソフトウェアリセットフラグ
RCC_CSR_IWDGRSTF 独立型ウォッチドッグリセットフラグ
RCC_CSR_WWDGRSTF ウィンドウ型ウォッチドッグリセットフラグ
RCC_CSR_LPWRRSTF 低電力リセットフラグ