Ja, sieht viel aufgeräumter aus!
Wo du gerade so fein am optimieren bist....
const byte ledtakt[] PROGMEM = {60,25,40,75,33,90,57,24,100,68,73,80,37,75,254,97,105};
unsigned long ledtime[sizeof(ledtakt)];
inline void toggle(const uint8_t pin) // nicht alle AVR koennen PinToggle
{
uint8_t bit = digitalPinToBitMask(pin);
uint8_t port = digitalPinToPort(pin);
*portInputRegister(port) = bit;
}
void setup()
{
DDRD = 0b01111111;
DDRA = 0b00000011;
DDRB = 0b11111111;
}
void loop()
{
for( byte LED = 0; LED < 17; LED++ )
{
if( millis() - ledtime[LED] >= (pgm_read_byte(&ledtakt[LED]) * 100))
{
ledtime[LED] = millis();
toggle(LED);
//digitalWrite( LED, !digitalRead(LED) );
}
}
}