Exemple #1
0
int LinxChipkit::WS2812Refresh()
{
	#ifdef _BOARD_WF32_ | _BOARD_MEGA_
		while(!m_ws2812.updateLEDs(m_WS2812Buffer));

		return L_OK;
	#else
		return L_FUNCTION_NOT_SUPPORTED;
	#endif
}
Exemple #2
0
void loop() {
  strip.setRGB(3, 10, 0, 0);
  strip.sync();
  delay(1000);
  strip.setRGB(3, 0, 10, 0);
  strip.sync();
  delay(1000);
  strip.setRGB(3, 0, 0, 10);
  strip.sync();
  delay(1000);
}
Exemple #3
0
int LinxChipkit::WS2812WriteOnePixel(unsigned short pixelIndex, unsigned char red, unsigned char green, unsigned char blue, unsigned char refresh)
{
	#ifdef _BOARD_WF32_ | _BOARD_MEGA_
		m_WS2812Buffer[pixelIndex].red = red;
		m_WS2812Buffer[pixelIndex].green = green;
		m_WS2812Buffer[pixelIndex].blue = blue;
		
		if(refresh != 0)
		{
			while(!m_ws2812.updateLEDs(m_WS2812Buffer));
		}
		
		return L_OK;
	#else
		return L_FUNCTION_NOT_SUPPORTED;
	#endif
}
Exemple #4
0
int LinxChipkit::WS2812WriteNPixels(unsigned short startPixel, unsigned short numPixels, unsigned char* data, unsigned char refresh)
{
	#ifdef _BOARD_WF32_ | _BOARD_MEGA_
		if(startPixel+numPixels <= m_numPixels)
		{
			memcpy(&m_WS2812Buffer[startPixel], data, sizeof(WS2812::GRB)*numPixels);
		}
		else
		{
			memcpy(&m_WS2812Buffer[startPixel], data, sizeof(WS2812::GRB)*m_numPixels-startPixel);
		}
		
		if(refresh != 0)
		{
			while(!m_ws2812.updateLEDs(m_WS2812Buffer));
		}
		
		return L_OK;
	#else
		return L_FUNCTION_NOT_SUPPORTED;
	#endif
}
Exemple #5
0
int LinxChipkit::WS2812Open(unsigned short numLeds, unsigned char dataChan)
{
	#ifdef _BOARD_WF32_ | _BOARD_MEGA_
		m_numPixels = numLeds;
		m_WS2812Buffer = (WS2812::GRB*)malloc(numLeds * sizeof(WS2812::GRB));
		m_rgbPatternBuffer = (uint8_t*)malloc(CBWS2812PATBUF(numLeds));

		
		
		//Check If Memory Was Allocated Successfully
		if(m_WS2812Buffer == 0 || m_rgbPatternBuffer == 0)
		{
			return 0x81;
		}
		else
		{
			m_ws2812.begin(numLeds, m_rgbPatternBuffer, CBWS2812PATBUF(numLeds), false);
		}
		
		return L_OK;
	#else
		return L_FUNCTION_NOT_SUPPORTED;
	#endif
}
Exemple #6
0
void setup() {
  	strip.begin(2, 12);
}