#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
const int ledPin1 = 6;
const int ledPin2 = 7;
const int ledPin3 = 8;
void setup() {
pinMode(ledPin1, OUTPUT);
pinMode(ledPin2, OUTPUT);
pinMode(ledPin3, OUTPUT);
lcd.begin(16, 2);
lcd.print("Binary Display");
}
void loop() {
for (int i = 0; i < 8; i++) {
displayBinaryOnLeds(i);
displayBinaryOnLCD(i);
delay(1000);
}
}
void displayBinaryOnLeds(int num) {
digitalWrite(ledPin1, num & B100 ? HIGH : LOW);
digitalWrite(ledPin2, num & B010 ? HIGH : LOW);
digitalWrite(ledPin3, num & B001 ? HIGH : LOW);
}
void displayBinaryOnLCD(int num) {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Binary: ");
lcd.print(num & B100 ? 1 : 0);
lcd.print(num & B010 ? 1 : 0);
lcd.print(num & B001 ? 1 : 0);
delay(2000);
}