> インタバルタイマで、LEDをちかちかさせようと考えているのですが
> 動作しない理由がいま1つわかりません。
①
> int timer;
usigned int 型でないと、下の if 文の判定が真にならない。
( int型の数値範囲は -32768 〜 +32767 )
> if ( timer == 32768 ) {
> *P5b = 0xff;
> }
②
WDT割り込みルーチンで、
> int dummy;
> dummy = *wdta;
> dummy &= 0x7f;
> *wdta = dummy;
TCSRレジスタへの書き込みは、0xA500とdummyのORをとった値を、
ワードライトしなければならないと思いますが。
③先に指摘されているように、CPU側の割り込みを許可していない。
④その他として、
if ( timer > 65536 ) { timer = 0; }
timer を usigned int型にしても、この式は真にならないし、不要。
鈴木(正)
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.552 / Virus Database: 344 - Release Date: 2003/12/15