#include <LiquidCrystal.h>
LiquidCrystal lcd(12,11,5,4,3,2);
int visitor=0; //variable for counting visitor number
unsigned long timer_1,timer_2; //variables for recording time for ir_1 and ir_2
void setup() {
lcd.begin(20,4);
pinMode(A0,INPUT);
pinMode(A1,INPUT);
}
void loop(){
lcd.setCursor(0,4);
lcd.print("visitor=");
lcd.setCursor(8, 4);
lcd.print(visitor);
if(digitalRead(A0)==1 && digitalRead(A1)==0)
{
timer_1= millis();
}
if(digitalRead(A0)==0 && digitalRead(A1)==1)
{
timer_2= millis();
}
if(timer_1>timer_2)
{
lcd.setCursor(8,4);
visitor=visitor+1;
lcd.print(visitor);
delay(2000);
timer_1=0;
timer_2=0;
}
else if(timer_1<timer_2)
{
lcd.setCursor(8,4);
visitor=visitor-1;
if (visitor<=0)
{
visitor=0;
}
lcd.print(visitor);
delay(2000);
timer_1=0;
timer_2=0;
}
}
Two IR sensors are placed in A0 and A1.
While the value of visitor is decreasing from 10 to 9 the LCD is showing 90 because the '0' of previous 10 is here. How can I remove it?