Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/AlexGyver/Arduino_Ambilight.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'Библиотеки/FastLED-master/dmx.h')
-rw-r--r--Библиотеки/FastLED-master/dmx.h65
1 files changed, 65 insertions, 0 deletions
diff --git a/Библиотеки/FastLED-master/dmx.h b/Библиотеки/FastLED-master/dmx.h
new file mode 100644
index 0000000..245c7cf
--- /dev/null
+++ b/Библиотеки/FastLED-master/dmx.h
@@ -0,0 +1,65 @@
+#ifndef __INC_DMX_H
+#define __INC_DMX_H
+
+#include "FastLED.h"
+
+#ifdef DmxSimple_h
+#include<DmxSimple.h>
+#define HAS_DMX_SIMPLE
+
+///@ingroup chipsets
+///@{
+FASTLED_NAMESPACE_BEGIN
+
+// note - dmx simple must be included before FastSPI for this code to be enabled
+template <uint8_t DATA_PIN, EOrder RGB_ORDER = RGB> class DMXSimpleController : public CPixelLEDController<RGB_ORDER> {
+public:
+ // initialize the LED controller
+ virtual void init() { DmxSimple.usePin(DATA_PIN); }
+
+protected:
+ virtual void showPixels(PixelController<RGB_ORDER> & pixels) {
+ int iChannel = 1;
+ while(pixels.has(1)) {
+ DmxSimple.write(iChannel++, pixels.loadAndScale0());
+ DmxSimple.write(iChannel++, pixels.loadAndScale1());
+ DmxSimple.write(iChannel++, pixels.loadAndScale2());
+ pixels.advanceData();
+ pixels.stepDithering();
+ }
+ }
+};
+
+FASTLED_NAMESPACE_END
+
+#endif
+
+#ifdef DmxSerial_h
+#include<DMXSerial.h>
+
+FASTLED_NAMESPACE_BEGIN
+
+template <EOrder RGB_ORDER = RGB> class DMXSerialController : public CPixelLEDController<RGB_ORDER> {
+public:
+ // initialize the LED controller
+ virtual void init() { DMXSerial.init(DMXController); }
+
+ virtual void showPixels(PixelController<RGB_ORDER> & pixels) {
+ int iChannel = 1;
+ while(pixels.has(1)) {
+ DMXSerial.write(iChannel++, pixels.loadAndScale0());
+ DMXSerial.write(iChannel++, pixels.loadAndScale1());
+ DMXSerial.write(iChannel++, pixels.loadAndScale2());
+ pixels.advanceData();
+ pixels.stepDithering();
+ }
+ }
+};
+
+FASTLED_NAMESPACE_END
+///@}
+
+#define HAS_DMX_SERIAL
+#endif
+
+#endif