
Sleep modeと Interruptに対する質問です.
教授こんにちは?
私は江原道太白で農業をしている 40代中盤の農業師です.
人が住んでみると時には本人の身に余る能力が必要な時があるようです. 私が今すぐグホン状況に置かれていて教授に失礼を冒して質問申し上げるから大事な教えることをお願い致します.
私が ATmega128Lを利用して温度及び湿度をチェックして保存してから何日単位で PCに連結して送る装備を作って見ようと思っています. 装備が装着される所の環境が電力線を利用した全力の供給が難しい状況だからバッテリーを利用しようと思うのに上記見出しの Sleepモードで困難を経験しています.
質問を要約すればこのようです.
*External Interrupt 0を利用して Sleepモードに入って行って External Interrupt 4によって Wake upになるようにしようとするのに(事実は INT0でトグルになるようにしたが(Sleep<-->Wake up), よくできなくてプログラムの流れを確認して見ようとこのようにして見たのです.)
一応 INT0によって Sleepモードに進入はよくできます.(確認はマルチテストの電流計を利用しました.)進入後 INT4によって Wake upにならなくて確認して見たところ再帰呼び出しに抜けるようです.
分かりたいことは Sleepモードに進入後 INT4によって Wake upになる過程と以後プログラム流れに対して分かりたいです. 私が今まで見て来たところでは INT0によって Sleepモードに進入後 INT4街発生すれば INT4サービスルチンを行う前 INT0 サービスルチンの Sleepモード以後 stepを進行するようです. それで再帰呼び出しという表現を上でしたことなのにこれが当たるのか分かりたくて, 当たったら解決策があるかも分かりたいです.
解決方法が Assembly プログラムにできればこの部分だけ Assemblyにコーディングして残りは Cでコーディング後アセンブル及びコンパイル後それぞれのオブジェクトファイルで Linkingができたのも分かりたいです.
下はこの問題と係わったソートコードです.
ありがとうございます.
...一体正体が何だ...