My Version of The LED_WS2812 Library
Dependencies: WS2812 PixelArray
Fork of LED_WS2812 by
LEDs_Car.cpp
- Committer:
- sepp_nepp
- Date:
- 2019-06-21
- Revision:
- 8:392cfdbded1e
File content as of revision 8:392cfdbded1e:
// ***************************************************************** // Handle all the LEDs with some general function wrappers functions // ***************************************************************** #include "LEDs_Car.h" // Added a lookup function from a color number to a color, used by Creabot int LEDs_Car::ColNr2Color( char ColNr) { switch (ColNr) { case 0: return BLACK; case 1: return WHITE; case 2: return RED; case 3: return GREEN; case 4: return BLUE; case 5: return PURPLE; default: return BLACK; } } void LEDs_Car::LEDsOff( void ) { StopRotation(); StopBlink() ; for (int lNr=0; lNr<NumLEDs; lNr++) { SetColor(BLACK,lNr); } } void LEDs_Car::LEDsRainbow( void ) { for (int Nr=0; Nr<NumLEDs; Nr++) { SetColor(ColNr2Color(Nr + 1),Nr); } } void LEDs_Car::LEDNrCol(LED_Nr aNr, int parameter) { SetColor( ColNr2Color( aNr ), aNr); } void LEDs_Car::LEDsRainbowMove( double speed ) { LEDsRainbow( ); StartRotation(0.3); } void LEDs_Car::LEDClignote(LED_Nr aNr, int OnOff) { if (OnOff == 1) { SetColor( ORANGE, aNr); StartBlink(0.5) ;} else { LEDsOff(); } } // ***************************************************************** // Handle all the LEDs specifically with the LED Position definitions // ***************************************************************** void LEDs_Car::LEDFront(int ColNr) { SetColor( ColNr2Color( ColNr ), ledAvD); SetColor( ColNr2Color( ColNr ), ledAvG); } void LEDs_Car::LEDRear(int ColNr) { SetColor( ColNr2Color( ColNr ), ledArD); SetColor( ColNr2Color( ColNr ), ledArG); } void LEDs_Car::LEDCligR(int speed) { if ( (speed>0) && (speed<4) ) { SetColor(ORANGE, ledAvD) ; SetColor(ORANGE, ledArD) ; StartBlink(float(speed)/4) ;} else { LEDsOff(); } } void LEDs_Car::LEDCligL(int speed) { if ( (speed>0) && (speed<4) ) { SetColor(ORANGE, ledAvG) ; SetColor(ORANGE, ledArG) ; StartBlink(float(speed)/4) ;} else { LEDsOff(); } } void LEDs_Car::LEDAnim(int speed) { if ( (speed>0) && (speed<4) ) { LEDsRainbowMove(float(speed)/4); } else { LEDsOff(); } }