MPLAB C18 を搭載した PIC18F87J11 があります。デバイスを強制的にスリープ状態にすることで、デバイスによるバッテリーの消費を制限しようとしています。スリープモードに入ると、timer0 が目覚めるまでそれ以上カウントアップを停止することに気付きました。また、MRF89XAトランシーバーを使用しているため、デバイスをウェイクアップする唯一の方法は、別のノードからメッセージを受信したときです。
デバイスをスリープ状態にするには、コンパイラ ヘッダー ファイルで定義されているこの関数を呼び出すだけです。
Sleep();
Q1: ノードからメッセージを受信する以外に、デバイスをウェイクアップするにはどうすればよいですか? データシートでは、割り込みによる終了またはリセットによる終了と書かれていますが、タイマーがない場合はどうすればよいでしょうか?
DataSheetを読むと、時間を監視するには Timer1 を使用する必要があると記載されていますが、それは本当ですか?
私が本当に望んでいるのは、バッテリーの使用量を可能な限り減らし、タイマーをスリープモードで動作させ続けることだけです.
ありがとう!