M
movie_freak
Guest
Hej,
Jeg
har prøvet noget lignende dette:
Code:Code:
void WATCH_DOG_INIT (void)
(
watch_dog_F = 1;
/ / Start timeout equence
WDTCR | = (1 <<WDCE) | (1 <<WDE);
/ / Sæt nye prescaler (time-out)
WDTCR = (1 <<WDE) | (1 <<WDP2) | (1 <<WDP1) | (1 <<WDP0) | (0 <<WDCE)
void RSET_WATCH_DOG (void)
(
wdt_reset (); / / reset vagthund
watch_dog_counter = 10;
)ISR () / / 1ms isr
(
if (watch_dog_F == 1)
(
watch_dog_mili -;
if (watch_dog_mili == 0)
(
watch_dog_mili = 1,500;
if (watch_dog_counter> 0)
(
watch_dog_counter -;
wdt_reset ();
)))
)int vigtigste (void)
(
WATCH_DOG_INIT ();mens (1)
(/ * Nogle arbejde her * /RSET_WATCH_DOG ();
)
)
Jeg
har prøvet noget lignende dette:
Code:Code:
void WATCH_DOG_INIT (void)
(
watch_dog_F = 1;
/ / Start timeout equence
WDTCR | = (1 <<WDCE) | (1 <<WDE);
/ / Sæt nye prescaler (time-out)
WDTCR = (1 <<WDE) | (1 <<WDP2) | (1 <<WDP1) | (1 <<WDP0) | (0 <<WDCE)
(
wdt_reset (); / / reset vagthund
watch_dog_counter = 10;
)ISR () / / 1ms isr
(
if (watch_dog_F == 1)
(
watch_dog_mili -;
if (watch_dog_mili == 0)
(
watch_dog_mili = 1,500;
if (watch_dog_counter> 0)
(
watch_dog_counter -;
wdt_reset ();
)))
)int vigtigste (void)
(
WATCH_DOG_INIT ();mens (1)
(/ * Nogle arbejde her * /RSET_WATCH_DOG ();
)
)