726 {
728 #ifdef PORTA_FIRST_PIN
729 case WS2811_PORTA:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTA_FIRST_PIN,
NS(320),
NS(320),
NS(640), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
730 case WS2811_400_PORTA:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTA_FIRST_PIN,
NS(800),
NS(800),
NS(900), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
731 case WS2813_PORTA:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTA_FIRST_PIN,
NS(320),
NS(320),
NS(640), RGB_ORDER, 0,
false, 300>(), data, nLedsOrOffset, nLedsIfOffset);
732 case TM1803_PORTA:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTA_FIRST_PIN,
NS(700),
NS(1100),
NS(700), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
733 case UCS1903_PORTA:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTA_FIRST_PIN,
NS(500),
NS(1500),
NS(500), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
734 #endif
735 #ifdef PORTB_FIRST_PIN
736 case WS2811_PORTB:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTB_FIRST_PIN,
NS(320),
NS(320),
NS(640), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
737 case WS2811_400_PORTB:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTB_FIRST_PIN,
NS(800),
NS(800),
NS(900), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
738 case WS2813_PORTB:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTB_FIRST_PIN,
NS(320),
NS(320),
NS(640), RGB_ORDER, 0,
false, 300>(), data, nLedsOrOffset, nLedsIfOffset);
739 case TM1803_PORTB:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTB_FIRST_PIN,
NS(700),
NS(1100),
NS(700), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
740 case UCS1903_PORTB:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTB_FIRST_PIN,
NS(500),
NS(1500),
NS(500), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
741 #endif
742 #ifdef PORTC_FIRST_PIN
743 case WS2811_PORTC:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTC_FIRST_PIN,
NS(320),
NS(320),
NS(640), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
744 case WS2811_400_PORTC:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTC_FIRST_PIN,
NS(800),
NS(800),
NS(900), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
745 case WS2813_PORTC:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTC_FIRST_PIN,
NS(320),
NS(320),
NS(640), RGB_ORDER, 0,
false, 300>(), data, nLedsOrOffset, nLedsIfOffset);
746 case TM1803_PORTC:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTC_FIRST_PIN,
NS(700),
NS(1100),
NS(700), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
747 case UCS1903_PORTC:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTC_FIRST_PIN,
NS(500),
NS(1500),
NS(500), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
748 #endif
749 #ifdef PORTD_FIRST_PIN
750 case WS2811_PORTD:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTD_FIRST_PIN,
NS(320),
NS(320),
NS(640), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
751 case WS2811_400_PORTD:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTD_FIRST_PIN,
NS(800),
NS(800),
NS(900), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
752 case WS2813_PORTD:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTD_FIRST_PIN,
NS(320),
NS(320),
NS(640), RGB_ORDER, 0,
false, 300>(), data, nLedsOrOffset, nLedsIfOffset);
753 case TM1803_PORTD:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTD_FIRST_PIN,
NS(700),
NS(1100),
NS(700), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
754 case UCS1903_PORTD:
return addLeds(
new InlineBlockClocklessController<NUM_LANES, PORTD_FIRST_PIN,
NS(500),
NS(1500),
NS(500), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
755 #endif
756 #ifdef HAS_PORTDC
757 case WS2811_PORTDC:
return addLeds(
new SixteenWayInlineBlockClocklessController<NUM_LANES,
NS(320),
NS(320),
NS(640), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
758 case WS2811_400_PORTDC:
return addLeds(
new SixteenWayInlineBlockClocklessController<NUM_LANES,
NS(800),
NS(800),
NS(900), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
759 case WS2813_PORTDC:
return addLeds(
new SixteenWayInlineBlockClocklessController<NUM_LANES,
NS(320),
NS(320),
NS(640), RGB_ORDER, 0,
false, 300>(), data, nLedsOrOffset, nLedsIfOffset);
760 case TM1803_PORTDC:
return addLeds(
new SixteenWayInlineBlockClocklessController<NUM_LANES,
NS(700),
NS(1100),
NS(700), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
761 case UCS1903_PORTDC:
return addLeds(
new SixteenWayInlineBlockClocklessController<NUM_LANES,
NS(500),
NS(1500),
NS(500), RGB_ORDER>(), data, nLedsOrOffset, nLedsIfOffset);
762 #endif
763 }
764 }
static CLEDController & addLeds(CLEDController *pLed, struct CRGB *data, int nLedsOrOffset, int nLedsIfOffset=0)
Add a CLEDController instance to the world.
#define NS(_NS)
Convert from nanoseconds to number of clock cycles.