7 LED chaser slightly modified

Discussion in 'The Projects Forum' started by Tony Spence, Dec 20, 2013.

  1. Tony Spence

    Thread Starter Member

    Dec 20, 2013
    50
    0
    I have built a 7 LED chaser circuit running on 18V. I changed one LED for a copper coil to run an electromagnet but it didnt have enough power, then i added a darlington pair I had from the early 90's never used before the same output and it worked for a bit i added a switch so it could be turned on and off but after a few days it had stopped working.

    So i changed the output back to an LED and still didnt work then i changed the two old school transistors for more recent ones four different ones of the same type and model, the lights work but when the coil is put back i get nothing from the coil but the rest of the lights still light up in their order.

    Is there a way to boost the current like a replacement transistor for the darlington pair ( both BC108C's )without increasing the voltage to the circuit?
     
  2. tubeguy

    Well-Known Member

    Nov 3, 2012
    1,157
    197
    What current is needed for the coil?
    Or, what is the resistance of the coil?
    Did you use a snubber diode across the coil?

    What chip is used to drive the LED's?
     
  3. jayanath

    New Member

    Dec 11, 2010
    17
    0
    I have following code. but all leds are fading and getting on together. no running action. how can i make chaser action with fading effect. i mean comet tail. pls help me?



    #include <pic.h>
    #define FADE_RATE 12
    #define INITIAL_WIDTH 128
    void fade()
    {
    unsigned char rate = FADE_RATE;
    unsigned char pulse_width = INITIAL_WIDTH;
    unsigned char count;
    while(pulse_width){
    PORTB= 0b11111111;
    for(count=0; count<pulse_width; count++){
    asm("NOP");
    }
    PORTB=0b00000000;
    for(; count; count++){
    asm("NOP");
    }
    if(!rate--){
    pulse_width--;
    rate = FADE_RATE;
    }
    }
    }
    int main(void) {
    char b;
    TRISB = 0b00000000;
    while(1){
    for(b=0x02; b; b<<=1){
    PORTB = b;
    fade(b>>1);
    }
    for(b=0x40; b; b>>=1){
    PORTB = b;
    fade(b<<1);
    }
    }
    }
     
Loading...