}
implementation
{
- bool inOverflow;
-
command error_t Init.init() {
SET_BIT(ASSR, AS0); // set Timer/Counter0 to asynchronous mode
return SUCCESS;
default async event void Compare.fired() { }
AVR_ATOMIC_HANDLER(SIG_OUTPUT_COMPARE0) {
stabiliseTimer0();
- __nesc_enable_interrupt();
signal Compare.fired();
}
default async event void Timer.overflow() { }
AVR_ATOMIC_HANDLER(SIG_OVERFLOW0) {
stabiliseTimer0();
- inOverflow = TRUE;
signal Timer.overflow();
- inOverflow = FALSE;
}
}