Deep Sleepの使い方


【Deep Sleepの使い方】

Deep Sleepの場合の条件は下記のようになります。
  ・RAMの内容は不定、ただし2ワードのDSGPRだけは保たれる
  ・ウェイクアップはリセットベクタから再開となる

この条件で動作させるには、下記のフローのようにします。

常にリセットから開始するループとし、スタート時にデバイスリセットか
Deep Sleepからのウェイクアップを判定します。

Deep Sleepの場合には、2ワードだけレジスタにデータを保存できますから、
そこに繰り返しの際に残しておきたいデータを保存しておき、再開時に
それを復旧させます。
その復旧したデータに基づいてアプリケーション機能を実行します。
アプリケーションの終了で、再度保存するデータをGSDPRに保存してから
Deep Sleepモードに入って、次のウェイクアップまで待ちます。