Esempio n. 1
0
void HalRgbLed::triggerEvent(void) {
  if (RgbLed.ledEventHandler != 0) {
    if (Scout.eventVerboseOutput) {
      sp("Running: ledEventHandler(");
      sp(redValue);
      sp(",");
      sp(greenValue);
      sp(",");
      sp(blueValue);
      speol(")");
    }
    RgbLed.ledEventHandler(redValue, greenValue, blueValue);
  }
}
Esempio n. 2
0
void HalRgbLed::triggerEvent(void) {
  if (Led.ledEventHandler != 0) {
    if (Scout.eventVerboseOutput) {
      Serial.print(F("Running: ledEventHandler("));
      Serial.print(redValue);
      Serial.print(F(","));
      Serial.print(greenValue);
      Serial.print(F(","));
      Serial.print(blueValue);
      Serial.println(F(")"));
    }
    Led.ledEventHandler(redValue, greenValue, blueValue);
  }
}
Esempio n. 3
0
void HalRgbLed::setColor(short red, short green, short blue) {
  if (!isEnabled()) {
    return;
  }
  bool hasChanged = false;
  if (red != getRedValue() || green != getGreenValue() || blue != getBlueValue()) {
    hasChanged = true;
  }

  setRedValue(red);
  setGreenValue(green);
  setBlueValue(blue);

  if (hasChanged) {
    RgbLed.triggerEvent();
  }
}
Esempio n. 4
0
static void halRgbLedBlinkTimerHandler(SYS_Timer_t *timer) {
  if (timer->mode == SYS_TIMER_PERIODIC_MODE) {
    if (RgbLed.getRedValue() || RgbLed.getGreenValue() || RgbLed.getBlueValue()) {
      RgbLed.setColor(0, 0, 0);
    } else {
      RgbLed.setLEDToBlinkValue();
    }

  } else {
    RgbLed.turnOff();
  }
}