The 7-Color Blinking LED

Discussion in 'The Projects Forum' started by campeck, Sep 19, 2009.

  1. campeck

    Thread Starter Active Member

    Sep 5, 2009
    194
    3
    I got this LED from Radio shack and when you apply power it goes through a "power up" cycle of a bunch of color flashing and then goes to sleep mode. When the switch lead is grounded it changes to red, then grounded again off, then again green, then off, plus other colors, always with an off mode in between. Finally it has a fade into/out of all colors before a final sleep mode. Also the switch doesn't do anything during power up.

    So to control this LED with no physical switching I figure I can use something like This.
    [​IMG]
    And What I need is square wave that stays Low for 12 sec (enough to get through the power up cycle) and then has a 50ms High, then 50ms Low, then 50ms High. This is made more difficult since the LED is in sleep mode after power up.
    But! If the switch lead is grounded while power up is going on, then It will go straight to Red.
    So I need From power up:
    12sL 50msH 50msL 50msH 12sL 50msH 50msL 50msH 12sL

    The highs will be lows and lows high with a NPN transistor.

    I figure I can keep the power up cycle low by having a power-on reset circuit on the 555. But to do 12 sec all these capacitors are getting big....

    Does anyone see anything obviously wrong? I'm in the process of calculating the C's and R's and putting it on the breadboard.

    Any better ways of building this?
    Thanks!
    (my next thread will be about fading a RGB led to produce all the colors with minimal components.)
     
  2. Wendy

    Moderator

    Mar 24, 2008
    20,766
    2,536
    I've fought that issue. There are no easy solutions IMO.

    You can use 3 separate PWMs to control RGB diode completely though, 3 555's and related parts, but no fading.
     
  3. campeck

    Thread Starter Active Member

    Sep 5, 2009
    194
    3
    Well I have noticed that by keeping 555#1 Low during power up Won't cause the switch lead to be grounded.
    If I switch to PNP types then I Think It will work though. Since the transistor will be on and conducting to ground while 555#1 is Low and the pulses will unground it but in the end the led still skips the off state and goes to the next color, And stays there for 12 sec.
     
  4. Wendy

    Moderator

    Mar 24, 2008
    20,766
    2,536
    A better way may be something like a 4017/4022 CMOS IC. They sequence through 1 of 10 or 1 of 8 pins, then repeat.

    Have you read this?

    LEDs, 555s, Flashers, and Light Chasers


    Check out Chapter 8, Light Chasers and Chapter 10, Making Patterns, to see what I'm talking about.
     
  5. SgtWookie

    Expert

    Jul 17, 2007
    22,182
    1,728
    Have a look at the attached 4017 multiple event timer idea.

    It could be adapted to your project. You don't need to use both 500k and 50k for each segment.

    The 4093 is a Schmitt-trigger quad NAND gate. You might substitute some other 4000-series CMOS devices, but it must have a Schmitt-trigger input and an inverting output.
     
  6. campeck

    Thread Starter Active Member

    Sep 5, 2009
    194
    3
    So each time those sections come on they are put in parallel with the C1 and the 4093 and cause it to take longer or shorter to charge C1 and then trip the 4093?

    cool...
     
  7. Wendy

    Moderator

    Mar 24, 2008
    20,766
    2,536
    I think Wookie was talking about using the 4093 as an oscillator, same as the 555. Both are hysteretic oscillators, theory of operation is the same.

    Were you planning on different durations for each monostable? If not then using a 4017 makes a lot more sense, and would be simplier schematic and parts wise.
     
  8. campeck

    Thread Starter Active Member

    Sep 5, 2009
    194
    3
    can any counter Ic be made to work?
    I have some 7, 14, and decade counters on the way.
     
  9. campeck

    Thread Starter Active Member

    Sep 5, 2009
    194
    3
    I'm having trouble consistently triggering the 555's.
    what are the values for CC and Rt?
     
  10. SgtWookie

    Expert

    Jul 17, 2007
    22,182
    1,728
    The 4017 is a Johnson counter. Only one output at a time is high.

    When an output goes high (for example, Q1), there is a current path through a pot (R3) connected to the output, through a forward-biased diode (D3) and finally R2 to charge C1. The other diodes (D2, D4-D7) are reversed biased, which prevents those low outputs from sinking current.

    Once C1 is charged up to 2/3 Vcc, the Schmitt-trigger 4093 inputs see that as a logic "1", and the output goes low. C1 is then discharged via D1 and R1 until 1/3 Vcc is reached. The Schmitt-trigger 4093 inputs see that as a logic "0", and the output goes high, clocking the 4017 to the next output.

    This idea doesn't transfer well to other types of counters (binary, BCD, etc.) because they will have more than one output high at a time. You COULD use a binary or BCD counter to drive a mux/demux IC, but then you'll wind up with a higher parts count, more wiring, and more things to go wrong.
     
  11. campeck

    Thread Starter Active Member

    Sep 5, 2009
    194
    3
    cool
    Thanks for the explanation.
    Well I have the circuit built and the 555's cascade well.
    I have LED indicators on each 555 output that indicate a LOW state.

    Well I built an OR gate out of diodes and a pull down resistor at the switch lead of the LED but when the first monostable 555 triggers it doesn't continue cascading. It stops the cycle but does change the 7color LED from RED to OFF.

    The inputs of the or gate come right from the 555 outputs.
     
  12. campeck

    Thread Starter Active Member

    Sep 5, 2009
    194
    3
    this Is what I have. Cc is 500pf and Rt is 10k
    pulldown on the switch lead is 1k. but I tried other values.

    Basically the astable triggers the monostable and that triggers the led. but the cascade ends there. Help! thanks guys!
     
  13. campeck

    Thread Starter Active Member

    Sep 5, 2009
    194
    3
    I'm also having inconsistent triggering with the setup and i thinks it's cause of Cc and Rt
     
  14. SgtWookie

    Expert

    Jul 17, 2007
    22,182
    1,728
    You don't have nearly enough capacitance across Vcc/GND. Add a 220uF cap, or somewhere in that ballpark. Larger is OK, not less. If all you have on hand is 100uF caps, you could use three of them in parallel - you want the total capacitance to be over 220uF. The .1uF caps are good, they can stay. They will take care of "high frequency" transients.

    Switches are terribly slow and noisy. Their contacts "bounce" for a seeming eternity (electronically, anyways). Having a good bit of capacitance across your timer ICs will help a good deal. 555 timers have the additional quirk of momentarily creating nearly a dead short across Vcc/GND when they change states. This can cause all kinds of strange problems if you don't have capacitors to take care of these "glitches".
     
  15. campeck

    Thread Starter Active Member

    Sep 5, 2009
    194
    3
    I need an OR gate function.
    I'm guessing I need a high input impedance cause maybe that's whats stopping the cascade of 555's. either that or different coupling capacitors? I don't know.

    I tried using diode gates, transistor gates, and a gate using two comparators.
    nothing works.

    I have two inputs, both are normally low, then input A goes high for 50ms, then both low again for 50ms, then B goes high for 50ms.

    The output needs to be true when any input is true. But like I said, everything I try stops the 555's making the timing from triggering each other.

    the switch lead of the led is internally pulled up.
     
  16. SgtWookie

    Expert

    Jul 17, 2007
    22,182
    1,728
    You might consider keeping several 4093 quad Schmitt-trigger NAND gates around. Very handy CMOS devices. You can build any other logic gate out of NANDs.

    You can also build any other logic gate out of NORs, but the standard CMOS NOR gate (4001) is not a Schmitt-trigger.
     
Loading...