int count = 0; int pos = 0; int dir = 1; void setup() { pinMode(0, OUTPUT); pinMode(1, OUTPUT); pinMode(2, OUTPUT); pinMode(3, OUTPUT); pinMode(4, OUTPUT); pinMode(5, OUTPUT); pinMode(6, OUTPUT); pinMode(7, OUTPUT); pinMode(13, OUTPUT); } void loop() { for (int x = 0; x < 8; x++) { digitalWrite(x, LOW); } for (int x = 0; x < 8; x++) { for (int y = 0; y < 8; y++) { if (abs(y - pos) < x) { digitalWrite(y, HIGH); } } delayMicroseconds(50); } count++; if (count % 80 == 0) { pos += dir; if (pos > 15) { pos = -8; } } }