// -------- GLOBAL VARIABLES -------- int pin2 = 0; // D0 int pin3 = 1; // D1 int pin4 = 2; // D2 int pin5 = 3; // D3 int timedelay = 1000; // -------- SETUP -------- void setup() { pinMode(pin2, OUTPUT); pinMode(pin3, OUTPUT); pinMode(pin4, OUTPUT); pinMode(pin5, OUTPUT); } // -------- LOOP -------- void loop() { for (int count = 0; count < 16; count++) { // bitRead extracts the value (0 or 1) of a specific bit in the 'count' variable digitalWrite(pin2, bitRead(count, 0)); // LSB digitalWrite(pin3, bitRead(count, 1)); digitalWrite(pin4, bitRead(count, 2)); digitalWrite(pin5, bitRead(count, 3)); // MSB delay(timedelay); } }