[H8-ML(2960)] h8のWDTについてのsos
From: "kim sungsik" <sskim@xxxxxxxxxxxxxxxxxxxxx>
Date: 2003年03月20日(木)15時57分20秒
Blankこんにちはh8/3048を6ヶ月前から使い始めた金と申します。
watch dog timerをinterval timerとして使ってますが。
initwdt()が実行され割り込みが掛かったときに割り込み関数は50msで周期的に実行
されますが。
もとのメーン関数は最初から続けて繰り返されendwdt()まで行かないんです。
下にcコードの関連部分を乗せますが誰かご存知でしたら教えてもらえませんか。
割り込み処理時間はほんのわずかです。

void int_wovi(void) /* interval timer interrupt */
{
  /* 割り込み後の処理 */
  / * TCNTに61を書き込むとほぼ50msecの割り込みを発生する */
  WDT.WRITE.TCSR = 0x5A3d;    /* TCNT =61 */
  WDT.READ.TCSR.BIT.OVF;      /* OVFダミーリード */
  / * OVFを読み、OVFをリセットすることにより、割り込みフラグを解除する */
  WDT.WRITE.TCSR = 0xA53f;  /* OVF リセット */
/* ここから 割り込み処理関数*/
...........

}

void initwdt(void){
  WDT.WRITE.TCSR = 0xA53f;    /* タイマ起動 */
}
void endwdt(void){
  WDT.WRITE.TCSR = 0xA51f;    /* タイマ停止 */
}
main()
{
....
intwdt();
...
endwdt()
...
}

^_^  ^_^  ^_^  ^_^  ^_^  ^_^  ^_^  ^_^  ^_^

Kim SungSik, Master Course
Dept. of Electrical Eng. The Univ. of Tokyo
sskim@xxxxxxxxxxxxxxxxxxxxx, http://dfs.iis.u-tokyo.ac.jp
tel:81-3-5452-6258(Lab), 81-90-6163-7524(cell phone)

スレッド概略
[表示中](起点)
 ├[2961(1)]
 └[2965(2)]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]