door censor using 8051

Posted on at


code

#include <at89x51.h>
sbit lights= P3^1;
sbit  full= P3^0;
/*=============================================================================
=============================================================================*/
unsigned char ex0_isr_counter = 0;
unsigned char enter=0;
unsigned char leave=0;

void display()
{
    unsigned char a,b,c;
    a=ex0_isr_counter%10;
    b=ex0_isr_counter/10;
    b=b<<4;
    c=b|a;
    P2=c;
}
void ex0_isr (void) interrupt 0
{
    leave=1;
    if (enter==1)
    {
        ex0_isr_counter++;
        leave=0;

    }
    enter=0;
}

void ex1_isr (void) interrupt 2    
{
    enter=1;
    if (leave==1)
    {
        ex0_isr_counter--;
        enter=0;
        
    }
    leave=0;
}

 
void main (void)
{
    P2 = 0x00;
    IT0 = 1;    
    IT1 = 1;    
    EX0 = 1;    
    EX1 = 1;     
    EA  = 1;                    
    while (1)
    {
        if (ex0_isr_counter==0)
            lights=0;
        else
            lights=1;
        if (ex0_isr_counter>19)
            full=1;
        else
            full=0;
            
        
        display();
    }    
}

proteous screenshot



About the author

Saif-Filmannex

I am doing Bs Electronics Engineering from International Islamic University

Subscribe 0
160