/*#include<LiquidCrystal.h>
int rs=11,en=10,d4=7,d5=6,d6=5,d7=4;
LiquidCrystal lcd(rs,en,d4,d5,d6,d7);
int S_1=9;
int S_2=8;
int Count=0;
void setup()
{
lcd.begin(16,2);
pinMode(9,INPUT);
pinMode(8,INPUT);
lcd.setCursor(0, 0);
lcd.print("People Count: ");
pinMode(13, OUTPUT);
digitalWrite(13, HIGH);
}
void loop() {
int incButton = digitalRead(9);
int outcButton = digitalRead(8);
int in_count=digitalRead(Count);
int out_count=digitalRead(Count);
lcd.clear();
if (incButton == HIGH || outcButton==HIGH) {
in_count++;
out_count--;
}
lcd.setCursor(1, 0);
lcd.print("in_count:");
lcd.print(in_count);
lcd.setCursor(0, 1);
lcd.print("out_count:");
lcd.print(out_count);
delay(1000);
}
*/
#include <LiquidCrystal.h>
int rs = 11, en = 10, d4 = 7, d5 = 6, d6 = 5, d7 = 4;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
int S_1 = 9; // Button to increment count
int S_2 = 8; // Button to decrement count
int Count = 0; // People count
int OutCount = 0; // Out Count
void setup() {
lcd.begin(16, 2);
pinMode(S_1, INPUT);
pinMode(S_2, INPUT);
lcd.setCursor(0, 0);
lcd.print("In: ");
lcd.setCursor(8, 0);
lcd.print("Out: ");
pinMode(13, OUTPUT);
digitalWrite(13, HIGH);
}
void loop() {
int incButton = digitalRead(S_1);
int outcButton = digitalRead(S_2);
// Button press detection with debounce (simple)
if (incButton == HIGH) {
Count++;
delay(200); // Simple debounce delay
}
if (outcButton == HIGH) {
if(Count > 0){
Count--;
OutCount++;
}
delay(200); // Simple debounce delay
}
lcd.setCursor(4, 0);
lcd.print(Count);
lcd.print(" "); // Add a space to clear extra characters
lcd.setCursor(13, 0);
lcd.print(OutCount);
lcd.print(" "); // Add a space to clear extra characters
lcd.setCursor(0, 1);
lcd.print("Total: ");
lcd.print(Count);
lcd.print(" "); // Add a space to clear extra characters
delay(200); // Reduced delay to prevent flickering
}