# timer3.cpp

This sketch uses split times to perform operations at different times within a single lap. It blinks the red and green leds once per second, for different and partially overlapping intervals.

In addition to the lap time handler, each timer can also have up to three 'split time handlers'. Split times are identified by their index number -- either 1, 2, or 3. Each split time can happen on any tick within the lap, and a different (or the same, or no) handler can be called for each split.

    // Hardware Timer sketch 3: Using split timers

    void onRed() {    ledOn(BODY_RGB_RED_PIN); }
    void onGreen() {  ledOn(BODY_RGB_GREEN_PIN); }
    void offRed() {   ledOff(BODY_RGB_RED_PIN); }
    void offGreen() { ledOff(BODY_RGB_GREEN_PIN); }

    void setup() {
      Timer1.begin();               // 1KHz tick, 1Hz lap
      Timer1.setSplitHandler(3,100,onRed);   // Split 3: At 100ms, turn on red
      Timer1.setSplitHandler(1,600,offRed);  // Split 1: At 600ms, turn off red
      Timer1.setSplitHandler(2,400,onGreen); // Split 2: At 400ms, turn on green
      Timer1.setLapHandler(offGreen);        // At the lap, turn off green
      Timer1.start();               // And start the timer
    }

    void loop() { }