//#include <DMXSerial.h>
#include <Adafruit_NeoPixel.h>
long cMillis=0;
long pMillisAdd = 0;
long intervalAdd = 1000; //Intervall Addressabfrage
long pMillisDMX = 0;
long intervalDMX = 25; //Intervall DMX Abfrage
int address = 1;
int mode=1;
int p=0;
Adafruit_NeoPixel leds = Adafruit_NeoPixel(40, 2, NEO_GRB + NEO_KHZ800);
void setup() {
Serial.begin(9600);
pinMode(LED_BUILTIN, OUTPUT);
pinMode(3,INPUT_PULLUP);
pinMode(4,INPUT_PULLUP);
pinMode(5,INPUT_PULLUP);
pinMode(6,INPUT_PULLUP);
pinMode(7,INPUT_PULLUP);
pinMode(8,INPUT_PULLUP);
pinMode(9,INPUT_PULLUP);
pinMode(10,INPUT_PULLUP);
pinMode(11,INPUT_PULLUP);
pinMode(12,INPUT_PULLUP);
pinMode(A0,INPUT_PULLUP);
pinMode(A1,INPUT_PULLUP);
pinMode(A2,INPUT_PULLUP);
pinMode(A3,INPUT_PULLUP);
}
void loop() {
cMillis=millis();
if (cMillis - pMillisAdd >= intervalAdd){
//digitalWrite(LED_BUILTIN, HIGH);
//Serial.println(cMillis - pMillisAdd);
pMillisAdd = cMillis;
address = (!digitalRead(3) * 1) + (!digitalRead(4) * 2) + (!digitalRead(5) * 4) + (!digitalRead(6) * 8) + (!digitalRead(7) * 16) + (!digitalRead(8) * 32) + (!digitalRead(9) * 64) + (!digitalRead(10) * 128) + (!digitalRead(11) * 256);
if(address == 0) {
address = 1;
} else if(address > 512){
address = 512;
}
if (!digitalRead(A0)==HIGH){
mode=1;
} else if (!digitalRead(A1)==HIGH){
mode=2;
} else if (!digitalRead(A2)==HIGH){
mode=3;
} else if (!digitalRead(A3)==HIGH){
mode=4;
} else {
mode=1;
}
//digitalWrite(LED_BUILTIN, LOW);
}
if (cMillis - pMillisDMX >= intervalDMX){//DMX Abfrage
//Serial.println(cMillis - pMillisDMX);
pMillisDMX = cMillis;
if(mode=1){
}
}
}FPS: 0
Power: 0.00W
Power: 0.00W