This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

momentory blinking of LED in the start

I was writing code in c language for 8051 micro controller. In my application, a switch ( when pressed)connects P3^0 (which is initialized as an input port by writing a 1 to it in the start of the code) to ground. Then my code continuously checks for the switch status and whenever pressed it will make P2^0 high for 1 second time. To P2^0, an LED is connected. in the start of the code i have made P2^0 =0 to avoid the LED blinking before the switch is pressed. I have checked my code and found working fine except for a minor problem. Whenever power is made ON (or controller is reset), the P2^0 becomes high for a moment AND LED also blinks for a moment. This is something i don't want to happen in my application.I am not getting any idea to tackle this problem. kindly help me..

thanking you
satish kumar
mumbai, india.

Parents
  • thank you vikram for responding.
    yes my intention is that only.my code is as follows.

    #include <reg51.h>
    sbit in_bit = P3^0;
    sbit out_bit = P2^0;
    void delay_1s();
    void main (void)
    { out_bit =0; in_bit = 1; TMOD = 0x01; while (1) { while (in_bit==1); out_bit = 1; delay_1s(); out_bit = 0; while (in_bit==0); }
    } void delay_1s ()
    { unsigned char count; for (count = 14; count > 0; --count) { TL0 = 0x00; TH0 = 0x00; TR0 = 1; while (TF0 ==0); TR0 = 0; TF0 = 0; } return;
    }

    thanks n regards

    satish kumar pillai.

Reply
  • thank you vikram for responding.
    yes my intention is that only.my code is as follows.

    #include <reg51.h>
    sbit in_bit = P3^0;
    sbit out_bit = P2^0;
    void delay_1s();
    void main (void)
    { out_bit =0; in_bit = 1; TMOD = 0x01; while (1) { while (in_bit==1); out_bit = 1; delay_1s(); out_bit = 0; while (in_bit==0); }
    } void delay_1s ()
    { unsigned char count; for (count = 14; count > 0; --count) { TL0 = 0x00; TH0 = 0x00; TR0 = 1; while (TF0 ==0); TR0 = 0; TF0 = 0; } return;
    }

    thanks n regards

    satish kumar pillai.

Children