#include <LiquidCrystal.h>
LiquidCrystal lcd(13, 12, 11, 10, 9,7);
//This homework2 is about converting binary numbers to Decin using LEDs
int Led_0 = 0;
int Led_1 = 1;
int Led_2 = 2;
int Led_4 = 4;
int Led_8 = 8;
int OnTime =800;
int OfTime =200;
int LcdWaitTime =2000;
void setup() {
// put your setup code here, to run once:
lcd.begin(16, 2);
pinMode(Led_0, OUTPUT);
pinMode(Led_1, OUTPUT);
pinMode(Led_2, OUTPUT);
pinMode(Led_4, OUTPUT);
pinMode(Led_8, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
lcd.print("Hello to Decimal!");
delay(LcdWaitTime);
lcd.clear();
lcd.display();
// Number 0
digitalWrite(Led_0, HIGH);
lcd.print("0 ");
delay(OnTime);
digitalWrite(Led_0, LOW);
delay(OfTime);
// Number 1
digitalWrite(Led_1, HIGH);
lcd.print("1 ");
delay(OnTime);
digitalWrite(Led_1, LOW);
delay(OfTime);
// Number 2
digitalWrite(Led_2, HIGH);
lcd.print("2 ");
delay(OnTime);
digitalWrite(Led_2, LOW);
delay(OfTime);
// Number 3
digitalWrite(Led_1, HIGH);
digitalWrite(Led_2, HIGH);
lcd.print("3 ");
delay(OnTime);
digitalWrite(Led_1, LOW);
digitalWrite(Led_2, LOW);
delay(OfTime);
// Number 4
digitalWrite(Led_4, HIGH);
lcd.print("4 ");
delay(OnTime);
digitalWrite(Led_4, LOW);
delay(OfTime);
// Number 5
digitalWrite(Led_1, HIGH);
digitalWrite(Led_4, HIGH);
lcd.print("5 ");
delay(OnTime);
digitalWrite(Led_1, LOW);
digitalWrite(Led_4, LOW);
delay(OfTime);
// Number 6
digitalWrite(Led_2, HIGH);
digitalWrite(Led_4, HIGH);
lcd.print("6 ");
delay(OnTime);
digitalWrite(Led_2, LOW);
digitalWrite(Led_4, LOW);
delay(OfTime);
// Number 7
digitalWrite(Led_1, HIGH);
digitalWrite(Led_2, HIGH);
digitalWrite(Led_4, HIGH);
lcd.print("7 ");
delay(OnTime);
digitalWrite(Led_1, LOW);
digitalWrite(Led_2, LOW);
digitalWrite(Led_4, LOW);
delay(OfTime);
// Number 8
digitalWrite(Led_8, HIGH);
lcd.print("8 ");
delay(OnTime);
digitalWrite(Led_8, LOW);
delay(OfTime);
// Number 9
digitalWrite(Led_1, HIGH);
digitalWrite(Led_8, HIGH);
lcd.print("9 ");
delay(OnTime);
digitalWrite(Led_1, LOW);
digitalWrite(Led_8, LOW);
delay(OfTime);
// Number 10
digitalWrite(Led_2, HIGH);
digitalWrite(Led_8, HIGH);
lcd.print("10 ");
delay(OnTime);
digitalWrite(Led_2, LOW);
digitalWrite(Led_8, LOW);
delay(OfTime);
// Number 11
digitalWrite(Led_1, HIGH);
digitalWrite(Led_2, HIGH);
digitalWrite(Led_8, HIGH);
lcd.print("11 ");
delay(OnTime);
digitalWrite(Led_1, LOW);
digitalWrite(Led_2, LOW);
digitalWrite(Led_8, LOW);
delay(OfTime);
// Number 12
digitalWrite(Led_4, HIGH);
digitalWrite(Led_8, HIGH);
lcd.print("12 ");
delay(OnTime);
digitalWrite(Led_4, LOW);
digitalWrite(Led_8, LOW);
delay(OfTime);
// Number 13
digitalWrite(Led_1, HIGH);
digitalWrite(Led_4, HIGH);
digitalWrite(Led_8, HIGH);
lcd.print("13 ");
delay(OnTime);
digitalWrite(Led_1, LOW);
digitalWrite(Led_4, LOW);
digitalWrite(Led_8, LOW);
delay(OfTime);
// Number 14
digitalWrite(Led_2, HIGH);
digitalWrite(Led_4, HIGH);
digitalWrite(Led_8, HIGH);
lcd.print("14 ");
delay(OnTime);
digitalWrite(Led_2, LOW);
digitalWrite(Led_4, LOW);
digitalWrite(Led_8, LOW);
delay(OfTime);
// Number 15
digitalWrite(Led_1, HIGH);
digitalWrite(Led_2, HIGH);
digitalWrite(Led_4, HIGH);
digitalWrite(Led_8, HIGH);
lcd.print("15 ");
delay(OnTime);
digitalWrite(Led_1, LOW);
digitalWrite(Led_2, LOW);
digitalWrite(Led_4, LOW);
digitalWrite(Led_8, LOW);
lcd.clear();
lcd.display();
delay(LcdWaitTime);
}