//Program LCD 20x4 I2C
//Nisa Alvina 7A Labsky
#include <LiquidCrystal_I2C.h>
#include <Servo.h>
LiquidCrystal_I2C lcd(0x27, 20, 4);
Servo entrance;
Servo out;
int sensor_in;
int sensor_out;
int buzzer = 6;
int number = 0;
int left = 10;
void setup() {
lcd.init();
lcd.backlight();
lcd.clear();
pinMode(A0, INPUT);
pinMode(A1, INPUT);
pinMode(buzzer, OUTPUT);
entrance.attach(5);
out.attach(3);
lcd.setCursor(5, 0);
lcd.print("WELCOME TO");
lcd.setCursor(6, 1);
lcd.print("LABSKY'S");
lcd.setCursor(4, 2);
lcd.print("PARKING LOT!");
delay(2000);
lcd.clear();
entrance.write(90);
}
void loop() {
sensor_in = digitalRead(A0);
sensor_out = digitalRead(A1);
if (sensor_in == 1) {
if (number < 10) {
entrance.write(90);
delay(1000);
entrance.write(0);
number++;
left --;
}
else if (sensor_in == 0) {
entrance.write(0);
}
}
else if (sensor_in == 0) {
entrance.write(0);
}
if (sensor_out == 1) {
if (left < 10){
out.write(90);
delay(1000);
out.write(0);
number--;
left++;
}
}
lcd.setCursor(0, 0);
lcd.print("Number of Cars: ");
lcd.setCursor(0, 1);
lcd.print(number);
lcd.print(" ");
lcd.setCursor(0, 2);
lcd.print("Spaces Left:");
lcd.setCursor(0, 3);
lcd.print(left);
lcd.print(" ");
}
//lcd.clear();
// delay(250);
// lcd.setCursor(3,1);
// lcd.print("ROBOTIK Labsky");
// delay(250);