CODING:
// Program to make a bidirectional visitor counter using IR sensor #include
void init() // to initialize the output pins and Timer0{up=down=1;dig_ctrl_4 = 0;dig_ctrl_3 = 0;dig_ctrl_2 = 0;dig_ctrl_1 = 0;TMOD=0x01;TL0=0xf6;TH0=0xFf;IE=0x82;TR0=1;}void delay() //To provide a small time delay{TMOD=0x01;TL0=0x36;TH0=0xF6;
TR0=1;while(TF0==0);TR0=0;TF0=0;}void display() interrupt 1 // Function to display thedigits on seven segment. For more details refer sevensegment multiplexing.{TL0=0x36;TH0=0xf6;P2=0xFF;dig_ctrl_1 = dig_ctrl_3 = dig_ctrl_2 = dig_ctrl_4 = 0;dig_disp++;dig_disp=dig_disp%4;switch(dig_disp){case 0:
P2= digi_val[dig_1];dig_ctrl_1 = 1;break;case 1:P2= digi_val[dig_2];dig_ctrl_2 = 1;break;case 2:P2= digi_val[dig_3];dig_ctrl_3 = 1;break;case 3:P2= digi_val[dig_4];dig_ctrl_4 = 1;break;}