wht.remainder = neww - (wht.value + wht.increment * fade_steps);
/* Start the fade timer */
+ tmr_stop(TMR_INCOLOR);
tmr_startPeriodic(TMR_FADE, 1); /* 32.768 msec */
}
leds_set(red, grn, blu, wht);
rgb_on();
start_fade();
+ btn_pben();
}
void turnOff()
void pb_task()
{
- if (btn_pb() == BTN_PB_UP) {
- speed = (speed + 1) & ~4;
- tmr_stop(TMR_INCOLOR);
- start_fade();
+ /* Is this task running nearly continuously? */
+ if (on) {
+ if (btn_pb() == BTN_PB_UP) {
+ speed = (speed + 1) & 3;
+ start_fade();
+ }
+ btn_pben();
}
- btn_pben();
}
void rs_task()
{
dbgpin_high();
srand((adc_random() << 8) + adc_random());
- pb_task();
rs_task();
}