LED Lights

Page 2 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.
May 11, 2008
22,557
1,471
126
That's quite a rude remark considering what I said is correct.

As far as being a paper engineer, I'm not only working with variation across diodes, but thousands of FETs on output drivers where everything is statistical across several process corners and still must maintain strict specifications.

Also, I've designed several embedded systems using white LEDs running at 3.25V without a resistor. Some have been running 24/7 for several years with no failures. My comment was in response to an incorrect statement. Just because it isn't normally done without a resistor doesn't mean it is always done that way.

As an example:
My last product had no flexibility in terms of power supply voltage. I had 5V DC and that was it. There were two critical concerns: heat and power. The device had 10 LEDs with a Vf/If of 3.5V/20mA. I chose to operate them at 3.25V which would put the current draw at 16mA. The minimum required brightness was 2000mcd, which these LEDs could produce at 14.2mA. I DC/DC converted 5V to 3.25V and supervised it with a microcontroller and 1.2V reference. The previous design simply used the supply 5V and a resistor to lower the operating voltage to 3.5V, which worked but consumed a lot more power. Here is some paper engineering for you:

On the 5V supply and using a resistor, the current draw was 20mA. The total power consumption was 10 LEDs * 5V * 20mA = 1W.

My design used a 95% efficient regulator and lowered the operating point to 3.25V which reduced the current draw to 16mA. The total power consumption was (10 LEDs * 3.25V * 16mA) / 95% = 547mW. A 5% positive variation between LEDs would not exceed the current or power ratings and a 5% negative variation would still meet the minimum required brightness.

Just as an academic point, I'll normalize the results. If the original design had limited the current to 16mA, the total power consumption would have been 10 LEDs * 5V * 16mA = 800mW. The resistors waste a non-trivial amount of power in either case. The application for this device is very sensitive to power requirements. Saving almost 500mW at the expense of slightly more area and cost was well worth it to the customer. In this case, as I tried to make clear in my original statement, a resistor was not necessary and actually a disadvantage.

Being difficult with components while you could have went for current source directly... Eliminating any possibility of failure and still increasing efficiency. For example, you can use that dc dc converter, add a small sense resistor and an opamp (with a little amount of extra passive components)to control the feedback loop of your dc dc powersupply. This will then let the supply operate as a current source. ^_^
You think you are the only one with electronics experience ?
Once again, the ego is present i notice.
 
Last edited:

MrDudeMan

Lifer
Jan 15, 2001
15,069
94
91
Being difficult with components while you could have went for current source directly... Eliminating any possibility of failure and still increasing efficiency.
You think you are the only one with electronic experience ?
Once again, the ego is present i notice.

Honestly, you really have no idea what you are talking about. There are plenty of people who post in this forum with a lot more experience and knowledge than me. Send me a PM if you want to continue this.

Nice edit by the way. What you suggested is completely unnecessary. Extra space and expense when the implemented solution already works and meets all specifications.

Not true. Generally, a very high frequency results in the dimmer light, that is because the bulb doesn't respond as fast enough. if the pulse is lower then the lights response time, and high enough to fool the human eye, the light will be the same intensity as if there was no pulse.

Hopefully we agree that DC current produces maximum brightness and zero current produces minimum brightness, so everything in between starting from DC and going to zero produces less brightness. This is an average current problem as a pn junction charges and discharges like a capacitor and the brightness is based on the current. Frequency is important here, but even more important, to some extent, is duty cycle.
 
Last edited:

Modelworks

Lifer
Feb 22, 2007
16,240
7
76
You chose the wrong LED + battery combo. There are LED better suited.

If you want to use radio shack this is a better LED to use
http://www.radioshack.com/product/in...rName=Category

It uses 20ma instead of 25ma and the light output is 28,000mcd or 4 times that over the led allowing you to cut the current usage even more and get the same brightness.
10ma should be more than enough to equal the same output the other used at 25ma.

So what I would do is put 2 x CR2032 batteries in series for a total 6VDC and then connect a 330 ohm resistor to the positive side and the LED to the other side. That will give you the correct current for about 10ma.

If you want to power 2 LED of the same type then wire them in parallel and use a 180 ohm resistor instead of the 330 ohm. With 2 x Cr2032 batteries you should get about 100 hours out of it.

What I would do though is use a 9v battery , easier to work with and will be cheaper since you already have led. With your original LED all you would need is :

9v connector:
http://www.radioshack.com/product/in...ductId=2062219

100 ohm resistor:
http://www.radioshack.com/product/in...ductId=2062339

Connect the LED in series with the resistor between the battery and the led.
On a 9v battery that should last about 54 hours.
 
Last edited:
May 11, 2008
22,557
1,471
126
Honestly, you really have no idea what you are talking about. There are plenty of people who post in this forum with a lot more experience and knowledge than me. Send me a PM if you want to continue this.

I have no desire to do so. What i know, i share with everyone(except for company secrets), and is debatable with and by everyone. If you can prove me wrong please do so. I am always eager to learn. If you just want to vent your opinion please do so. If you want to claim that what i mentioned is wrong then you must be willing to back it up or present a real life perspective where all your variables add up.

Here is why i responded in a vigorous way.
You claim i made a blanket statement. I based what i said on the properties of leds. And while you may very well have used a batch of leds from 1 supplier from a single factory, the next batch might very well be different.
Now i admit, when you have to only build your design only once, it can and most of the time will work. When i am designing circuits, i naturally have to assume that batch of components may differ and as such i have to keep those variables in mind while designing. I do not want people coming back to me in the future with hundreds of circuit boards with errors in the design. And the best way to do so is within reasonable limits design properly. I do not make blanket statements. As you can see, i fully understand your point of view. But you have to understand that unless you are giving away to other people all over the world who want to design led lamps, leds from that same batch... Your circuit might not always work as well for others. With a current source you eliminate any possible situation. ^_^

This is for example the same case with software. When the software requires input from different sources, a parser is needed to make sure that no wrong input can be given and as such erroneous results can be produced or overflows can happen because of to much input data (buffer overflow).

It is merely making sure that the most common wrong situations are prevented.
 
Last edited:

MrDudeMan

Lifer
Jan 15, 2001
15,069
94
91
I have no desire to do so. What i know, i share with everyone(except for company secrets), and is debatable with and by everyone. If you can prove me wrong please do so. I am always eager to learn. If you just want to vent your opinion please do so. If you want to claim that what i mentioned is wrong then you must be willing to back it up or present a real life perspective where all your variables add up.

Here is why i responded in a vigorous way.
You claim i made a blanket statement. I based what i said on the properties of leds. And while you may very well have used a batch of leds from 1 supplier from a single factory, the next batch might very well be different.
Now i admit, when you have to only build your design only once, it can and most of the time will work. When i am designing circuits, i naturally have to assume that batch of components may differ and as such i have to keep those variables in mind while designing. I do not want people coming back to me in the future with hundreds of circuit boards with errors in the design. And the best way to do so is within reasonable limits design properly. I do not make blanket statements. As you can see, i fully understand your point of view. But you have to understand that unless you are giving away to other people all over the world who want to design led lamps, leds from that same batch... Your circuit might not always work as well for others. With a current source you eliminate any possible situation. ^_^

This is for example the same case with software. When the software requires input from different sources, a parser is needed to make sure that no wrong input can be given and as such erroneous results can be produced or overflows can happen because of to much input data (buffer overflow).

It is merely making sure that the most common wrong situations are prevented.

If you are in control of the circuit and the components that are used in it, then you absolutely can design it however you want. I don't care who makes what LEDs and what kind of variation is possible between batches as I only bought a certain type from a certain manufacturer that are guaranteed to be within stated tolerances. I used software to control it instead of specialized, dedicated hardware. The point is you don't always need a resistor and I have given you much more information than should be necessary to explain it. This concept applies to far more areas of circuit design than simply powering an LED.
 
May 11, 2008
22,557
1,471
126
If you are in control of the circuit and the components that are used in it, then you absolutely can design it however you want. I don't care who makes what LEDs and what kind of variation is possible between batches as I only bought a certain type from a certain manufacturer that are guaranteed to be within stated tolerances. I used software to control it instead of specialized, dedicated hardware. The point is you don't always need a resistor and I have given you much more information than should be necessary to explain it. This concept applies to far more areas of circuit design than simply powering an LED.




Here is another example : Do not thrust datasheets blindly. The people who make datasheets are human too and can make mistakes too. At work i am testing some small batch of prints. On these prints is an I.C. from a certain manufacturer. This ic itself is an led controller. Now one of the inputs of this ic has a certain tolerance. According to the manufacturer this is very small. After the first production last year, i noticed the design was not working properly. After research i found out, that the specified input had a rather large tolerance per ic which increased with the voltage on that input as well. When a specialist designer from the company came over, he first assumed when seeing me that i did something wrong or the designer of the circuit did something wrong. Later that day after measuring, he had to admit the error and that the datasheet would be adjusted. To be honest, i have never checked it. We at work proposed an idea of an calibration method in software to account for the tolerance of the ic's to the designer. And it works fantastic. When i was young, i did not like to work together with other people because i constantly had to explain my reasons. Now i am in a group of people with the same line of thinking and explaining is fun now. When i start, after half a sentence i can stop because they see what i mean. And it is the same when they explain something to me. I am blessed to work where i work now. :). I have marvelous designers in hardware, software and mechanics around me. And i learn every day something new.
 
Last edited:

Modelworks

Lifer
Feb 22, 2007
16,240
7
76
Question: How hard would it be to add a fast "blinker" to the LED?

I ask this because one teacher pointed out that a common energy saving trick for lights that humans are intended to see is to "blink" the light.

It is used in everything from cell phones to pda and laptops. You use a driver that pulses each LED for 1/1000th of a second then move on to the next one until the cycle repeats. So you get the output of 4 LED but only are powering 1 at a time.
LM3414 is one such chip, 98% efficient.
http://www.national.com/mpf/LM/LM3414.html#Overview


If you put a 120Hz pulse on the light wouldn't that significantly reduce the power requirement while still looking just as bright?

Yes it would. A lot of LED digital displays do this in things like displaying words or a lot of numbers because it is more power efficient and it allows the microprocessor to only have to use a few pins. The controller IC use a scan technique where they display one letter on the first led then move to the next and continue doing that hundreds of times a second. Only 1 actual LED is lit at any one time but it happens so fast it looks like a complete display.

Maxim has some of these
http://www.maxim-ic.com/datasheet/index.mvp/id/3195 and they are a lot of fun to use.
 

MrDudeMan

Lifer
Jan 15, 2001
15,069
94
91
It is used in everything from cell phones to pda and laptops. You use a driver that pulses each LED for 1/1000th of a second then move on to the next one until the cycle repeats. So you get the output of 4 LED but only are powering 1 at a time.
LM3414 is one such chip, 98% efficient.
http://www.national.com/mpf/LM/LM3414.html#Overview


If you put a 120Hz pulse on the light wouldn't that significantly reduce the power requirement while still looking just as bright?

Yes it would. A lot of LED digital displays do this in things like displaying words or a lot of numbers because it is more power efficient and it allows the microprocessor to only have to use a few pins. The controller IC use a scan technique where they display one letter on the first led then move to the next and continue doing that hundreds of times a second. Only 1 actual LED is lit at any one time but it happens so fast it looks like a complete display.

Maxim has some of these
http://www.maxim-ic.com/datasheet/index.mvp/id/3195 and they are a lot of fun to use.

The caveat is reducing the brightness due to decreased duty cycle. It may not flicker, but with a big enough string of LEDs they will become too dim for practical use. I had this exact problem on my senior project in college. I tried to multiplex 80 LEDs like this and forgot to take into account the reduction in duty cycle by a factor of 80. You could barely see it inside and they looked completely off outside. :thumbsdown:
 

Modelworks

Lifer
Feb 22, 2007
16,240
7
76
The caveat is reducing the brightness due to decreased duty cycle. It may not flicker, but with a big enough string of LEDs they will become too dim for practical use. I had this exact problem on my senior project in college. I tried to multiplex 80 LEDs like this and forgot to take into account the reduction in duty cycle by a factor of 80. You could barely see it inside and they looked completely off outside. :thumbsdown:

To get around that you increase the scan rate or you can increase the current output. If needed you can even go over the current rating for the LED. LED can output quite a bit more light than what they are rated if pulsed.

http://www.maxim-ic.com/app-notes/index.mvp/id/2791


A fun project that uses PWM of LED.
http://www.glip.fr/
 
Last edited:

MrDudeMan

Lifer
Jan 15, 2001
15,069
94
91
To get around that you increase the scan rate or you can increase the current output. If needed you can even go over the current rating for the LED. LED can output quite a bit more light than what they are rated if pulsed.

http://www.maxim-ic.com/app-notes/index.mvp/id/2791

That's true, but there is definitely an upper limit even with the suggested workarounds. I increased the voltage and frequency by a very large amount and it was still too dim. I don't have the calculations anymore but with 2.1V red LEDs and a 9V source, I could only have something like 58 in the loop before the brightness decreased to an unusable level.
 

Modelworks

Lifer
Feb 22, 2007
16,240
7
76
That's true, but there is definitely an upper limit even with the suggested workarounds. I increased the voltage and frequency by a very large amount and it was still too dim. I don't have the calculations anymore but with 2.1V red LEDs and a 9V source, I could only have something like 58 in the loop before the brightness decreased to an unusable level.

The limit with current LED tech is around 2100 LED before it isn't possible to maintain the brightness levels and you start losing output mcd.
Project with 1024 LED.
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1267250236
 

MrDudeMan

Lifer
Jan 15, 2001
15,069
94
91
The limit with current LED tech is around 2100 LED before it isn't possible to maintain the brightness levels and you start losing output mcd.
Project with 1024 LED.
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1267250236

He is enabling one line at a time, not one LED at a time. Also, those would not be bright enough for outside use. It may be possible with specialized LEDs designed for this purpose, but with regular, 10 cent LEDs, I have a hard time believeing 2000 of them can be used in this configuration with acceptable brightness levels for external use as I stated in my post.
 
Last edited:
May 11, 2008
22,557
1,471
126
The trick with leds is you can drive more current through the junction as long as you do not heat up the junction to much. You can for example with some white power leds drive with as much as 3 times the maximum current as long as the time duration of the pulse is small enough.


EDIT:

Forgot the datasheet :

http://www.avagotech.com/docs/AV02-0129EN

Made a simple quick and dirty flasher once with this led. a pic12f675 (step up converter boost principle) boosted 3 volts to around 19 volts to charge an capacitor and then switched on a mosfet to discharge the capacitor through the led. After that the cycle repeated. The software pwm functioned in discontinuous mode with a fixed very small duty cycle.

It would work for 2 weeks non stop on 2 AA penlite batteries. Afcourse, the flash time is depending on how fast i could charge the capacitor with a modest amount of current and a programmed delay. And the lower the amount of energy in the batteries, the longer it took to charge the capacitor. Because the current drawn from the battery was something between 11 to 4 milliamperes when charging, the energy losses where very low as well. And the capacitor was releasing it's energy at once through the led and through a mosfet with a very low rds on.
The result was pretty blinding :).

Although i have seen a led based lamp for stadium purposes working. Looking into it will probably cause some retinal damage. The light shined so hard, even barely reflective surfaces became good reflectors. At work we had seen some very strange light patterns because of this.
When shining on a diffusing white area, it still hurt to look at that area. That lamp was expensive though...
 
Last edited:

Modelworks

Lifer
Feb 22, 2007
16,240
7
76
He is enabling one line at a time, not one LED at a time. Also, those would not be bright enough for outside use. It may be possible with specialized LEDs designed for this purpose, but with regular, 10 cent LEDs, I have a hard time believeing 2000 of them can be used in this configuration with acceptable brightness levels for external use as I stated in my post.

The arduino is turning on each LED one at a time by sending data to each 595 chip one line at a time. Each LED is still cycled at the 768Khz rate ,the rate of the 595 chips. It was done that way because the arduino isn't fast enough to send that much data to control 1024 separate LED. The total rate for updating the entire display is roughly 1/24th second or 24 times per second.

Another example.
http://www.youtube.com/watch?v=W7_ABZBX06s&feature=related
http://www.youtube.com/watch?v=K9DI4feRN-M&feature=player_embedded
http://www.youtube.com/watch?v=UyrHF2JJI80&feature=related


For outdoors you have to use higher output LED but the principle stays the same.
 
Last edited:
May 11, 2008
22,557
1,471
126
What is also the case with white leds (blue led with phosphor coating type) especially, is that the color temperature changes with the voltage. As such when you dim with a dc voltage, the color temperature changes because the current changes. When you dim with a pwm constant current source, the color temperature remains closer to it's original value because the peak current is the same, but the pwm causes the average current through the led to be lower. The color temperature of white leds comprised of blue leds with phosphor depends on the current and as such varies.

EDIT:

I just looked up through literature :

At a certain point, the peak current can be decreased as well because it makes no difference then and as such increasing efficiency.
 
Last edited:

Cogman

Lifer
Sep 19, 2000
10,286
145
106
Hopefully we agree that DC current produces maximum brightness and zero current produces minimum brightness, so everything in between starting from DC and going to zero produces less brightness. This is an average current problem as a pn junction charges and discharges like a capacitor and the brightness is based on the current. Frequency is important here, but even more important, to some extent, is duty cycle.

That less light is produced isn't being argued, its a given. Whats being argued is if humans will notice that difference. That is going to entirely depend on the response time of the LED. if it switchs on in 1ns, then the light will appear to be just as bright as if there was no pulse. The time that is spent off just wont register to the human eye.

Now, if the light spends all its time, or a significant portion of it, in transition (frequency is too high, or response time is too slow) then the human eye will be able to catch that, and the light will look dim.
 

MrDudeMan

Lifer
Jan 15, 2001
15,069
94
91
That less light is produced isn't being argued, its a given. Whats being argued is if humans will notice that difference. That is going to entirely depend on the response time of the LED. if it switchs on in 1ns, then the light will appear to be just as bright as if there was no pulse. The time that is spent off just wont register to the human eye.

Now, if the light spends all its time, or a significant portion of it, in transition (frequency is too high, or response time is too slow) then the human eye will be able to catch that, and the light will look dim.

I literally said the subtle difference in light would not be noticeable by your eye. Scroll up and read it. You are saying you agree with me and then arguing against my point by saying the same thing.

Well, at least on the first part we agree. You are still not understanding average current. The brightness is a function of electron-hole recombination, which is directly a result of the amount of current flowing through the junction. Since it charges and discharges like a capacitor, the average current will increase as frequency increases and decrease as frequency decreases. So, as I said before, the brightness decreases with a lower frequency and the human eye will have a hard time noticing subtle differences. Also, the light is not spending its time in transition. The waveform being applied to the junction is what will be transitioning. Light production is simply an output and the amount of it is directly related to what is going on at the input.

Lastly, the time that is spent off, as you said, WILL register to the human eye as decreased brightness. This is the exact change duty cycle has on the LED output. What you meant was the human eye will not see a flicker if the frequency is sufficiently high. They are different things.
 
Last edited:

MrDudeMan

Lifer
Jan 15, 2001
15,069
94
91
The arduino is turning on each LED one at a time by sending data to each 595 chip one line at a time. Each LED is still cycled at the 768Khz rate ,the rate of the 595 chips. It was done that way because the arduino isn't fast enough to send that much data to control 1024 separate LED. The total rate for updating the entire display is roughly 1/24th second or 24 times per second.

Another example.
http://www.youtube.com/watch?v=W7_ABZBX06s&feature=related
http://www.youtube.com/watch?v=K9DI4feRN-M&feature=player_embedded
http://www.youtube.com/watch?v=UyrHF2JJI80&feature=related


For outdoors you have to use higher output LED but the principle stays the same.

I don't think you realized it but what you just said makes no sense. It is literally contradictory to what is said in that post and also what logically makes sense. He is scanning 64 bits at a time into the chain of shift registers, latching them into the storage nodes, and then clocking all of the bits out at once to control each line. Each LED is absolutely not cycled at 768KHz. Read the post for yourself. He admits the LED duty cycle is 1/32 instead of 1/1024, which is in direct conflict with what you are trying to sell me.

This is an extremely common thing to do with shift registers. You clock the data in to temporary latches to keep the output from flickering as data passes through the register. When all of the data has been clocked into the registers, the common strobe is toggled and the data moves to the output nodes all at once. He is sending 64 bits of data to the registers 32 times per second. The clock rate of 782KHz is the bitrate of the 64 bits being sent to the registers. It has nothing to do with the "refresh" rate of the matrix.

If you don't believe me, just look at the code. We'll walk through it.

void bitmapUpdate()
{
int x; // col counter
int y; // row counter
32 iterations, one for each row, meaning each row is done at the same time
for(y = 0; y < 32; y++) // for 32 rows do...
{ // 32 rows + each row is comprised of 4 bytes of X on off data so...
32 bits per row / 8 bits per byte = 4 iterations to handle 4 bytes of data
for(x = 0; x < 4; x++)
{
screenBuffer[x] = mac[y][x];
// read the current row X data into into the screen buffers 0-3
}

// after the X data for the row is in the buffer
// we need to format the row position data for the 595's,
// only 1 line at a time means we have to shuffle a
// single bit though 32 bits(over the last 4 bytes of the buffer array)
switch(y / 8)
{
case 0: // ie 3 / 8 = integer 0
if(screenBuffer[4] == 0) // see if the first 8 rows is turned off
{ // if so
screenBuffer[7] = B00000000; // turn off the last 8 rows
screenBuffer[4] = B00000001; // set the first bit to one, mines backwards
}
else // if not
{
screenBuffer[4] = screenBuffer[4] << 1; // shift the bit one space, or to the next row
}
break;
// repeat 7 more times
case 1:
if(screenBuffer[5] == 0)
{
screenBuffer[4] = B00000000;
screenBuffer[5] = B00000001;
}
else
{
screenBuffer[5] = screenBuffer[5] << 1;
}
break;

case 2:
if(screenBuffer[6] == 0)
{
screenBuffer[5] = B00000000;
screenBuffer[6] = B00000001;
}
else
{
screenBuffer[6] = screenBuffer[6] << 1;
}
break;

case 3:
if(screenBuffer[7] == 0)
{
screenBuffer[6] = B00000000;
screenBuffer[7] = B00000001;
}
else
{
screenBuffer[7] = screenBuffer[7] << 1;
}
break;
} // end switch
screenFlip(); // show screen
} // end y for loop
} // end function

He is filling a buffer in this function with data from an array. At the end, you can see he calls the screenFlip function which actually activates the array.

// what you use to send data to the screen
void screenFlip()
{
screenOn(false); // turn off latch
//x
screenOut(screenBuffer[3]);
screenOut(screenBuffer[2]);
screenOut(screenBuffer[1]);
screenOut(screenBuffer[0]);
//y
screenOut(screenBuffer[7]);
screenOut(screenBuffer[6]);
screenOut(screenBuffer[5]);
screenOut(screenBuffer[4]);
screenOn(true); // tun on latch, showing screen
}

Remember the strobe I was talking about? At the beginning of this function, he disables the strobe by using screenOn(false). The output of each shift register is physically separated from the temporary input nodes. Then all of the data is clocked into the shift register chain and finally at the end he calls screenOn(true) which strobes all of the shift registers at the same time, thus latching the data to the output nodes in parallel to remove flickering due to changing data. The update rate of the actual matrix is different than the update rate of the shift registers. You are getting the terms confused. I've literally done this exact thing dozens of times and I guarantee you what I'm saying is correct. However, since I apparently can't convince you, I sent the author of that post an email and I will post his response for you to confirm what I am saying.
 

Cogman

Lifer
Sep 19, 2000
10,286
145
106
I literally said the subtle difference in light would not be noticeable by your eye. Scroll up and read it. You are saying you agree with me and then arguing against my point by saying the same thing.
It won't be just as bright. Your eye will have trouble seeing subtle differences in brightness, but it will in fact be dimmer if you reduce the frequency.
Sorry, but it sounds like you are both arguing that it will and wont be perceptibly dimmer.

Lets just start out. DC, has a frequency of 0, not infinite, but 0. As you approach a DC current (frequency of zero) the average brightness of the LED will go UP, not down. Less time will be spent in transition. (I don't know if you are, but I am assuming essentially a square wave current. Not sinusoidal, in which case what you are saying is more applicable.)

Well, at least on the first part we agree. You are still not understanding average current. The brightness is a function of electron-hole recombination, which is directly a result of the amount of current flowing through the junction. Since it charges and discharges like a capacitor, the average current will increase as frequency increases and decrease as frequency decreases. So, as I said before, the brightness decreases with a lower frequency and the human eye will have a hard time noticing subtle differences.
Sorry, but I just disagree with you saying a lower frequency makes it dimmer. Assuming a square wave, it is basically like switching the a light switch on and off, in which case the transition is (almost) linear, and the time spent on will have full brightness being emitted. This response time is going to be VERY short. It will only come into play in higher frequencies.

Lastly, the time that is spent off, as you said, WILL register to the human eye as decreased brightness.
Umm, When did I say that?

This is the exact change duty cycle has on the LED output. What you meant was the human eye will not see a flicker if the frequency is sufficiently high. They are different things.

Yes, the Human eye will see a flicker if the frequency is too low. Just like you can see a light blink on and off at low frequencies. No, that wont affect the brightness.

Look, if you blink an LED on for 5 seconds and off for 5 seconds (very low frequency), Do you really want to argue that during the one period that LED will be dimmer then blinking an LED on for 1 second and off for 1 second (higher low frequency)?
 

MrDudeMan

Lifer
Jan 15, 2001
15,069
94
91
Sorry, but it sounds like you are both arguing that it will and wont be perceptibly dimmer.

My first statement that you argued with was "It won't be just as bright. Your eye will have trouble seeing subtle differences in brightness, but it will in fact be dimmer if you reduce the frequency." Read that several times until you see the key words. Then, my next comment, "I literally said the subtle difference in light would not be noticeable by your eye." If you start lowering the frequency, your eye will have a very hard time seeing subtle changes. These statements are not in contention.

Lets just start out. DC, has a frequency of 0, not infinite, but 0. As you approach a DC current (frequency of zero) the average brightness of the LED will go UP, not down. Less time will be spent in transition. (I don't know if you are, but I am assuming essentially a square wave current. Not sinusoidal, in which case what you are saying is more applicable.)

Where did I say DC current was infinite frequency? I said DC current is maximum brightness and zero current is minimum brightness. You are confusing yourself by putting words in my mouth. It also remains true - DC current is maximum brightness and zero current is minimum. Since an LED can be modeled as an RC filter, it absolutely has output ripple depending on the input frequency, just like a power supply charging circuit. By changing the frequency you are changing the average current.

Average current can still be computed with a square wave or a sinusoid. The junction is a capacitor, so applying a square wave will still charge and discharge it. This is how PWM is used to create audio in low budget output drivers. You can vary the frequency and duty cycle at the input of an RC filter and then buffer it with a unity gain op-amp. A higher frequency and duty cycle will give you a higher voltage level at the output. It is literally the exact same thing as what we are talking about.

Sorry, but I just disagree with you saying a lower frequency makes it dimmer. Assuming a square wave, it is basically like switching the a light switch on and off, in which case the transition is (almost) linear, and the time spent on will have full brightness being emitted. This response time is going to be VERY short. It will only come into play in higher frequencies.

The frequency of the input wave will reduce the variation in brightness between rising edges and the duty cycle will increase the offset of the brightness. Just because you are applying a square wave to a capacitor doesn't mean it won't charge and discharge. Your eye is receiving photons from the junction (your eye also has the equivalent of an RC delay. It, too, is averaging light output between rising edges and it doesn't even realize it). Yes, full brightness will be achieved during each high cycle as it will charge the node again on the rising edge of the input wave. The faster the node is brought back up to full charge (higher frequency), the less time will be spent discharging as the RC delay of the node has a finite discharge response.


Yes, the Human eye will see a flicker if the frequency is too low. Just like you can see a light blink on and off at low frequencies. No, that wont affect the brightness.

It can both cause it to flicker and reduce the brightness. Duty cycle is more often used as brightness control, but frequency also matters as you stated below.

Look, if you blink an LED on for 5 seconds and off for 5 seconds (very low frequency), Do you really want to argue that during the one period that LED will be dimmer then blinking an LED on for 1 second and off for 1 second (higher low frequency)?

If you aren't familiar with how the RC time constant governs the discharge of a capacitive node then it makes sense why you aren't understanding what I'm saying. At sufficiently high frequency you will never notice the difference (I already said this, too) because the decay between each recharge cycle will be a very small fraction of the RC decay of the node.

Edit: Removed my previous edit comment in place of this link.
 
Last edited:

Modelworks

Lifer
Feb 22, 2007
16,240
7
76
I Each LED is absolutely not cycled at 768KHz.

I thought he was using the NLSF595 chip not the 74x variety that is why I said what I did.

I've literally done this exact thing dozens of times and I guarantee you what I'm saying is correct. However, since I apparently can't convince you, I sent the author of that post an email and I will post his response for you to confirm what I am saying.
When people post by talking down to people, correcting them even when they may be wrong, being aggressive when people do not agree, it generally leads to people no longer having interest in exchanging thoughts with those people.
 

MrDudeMan

Lifer
Jan 15, 2001
15,069
94
91
I thought he was using the NLSF595 chip not the 74x variety that is why I said what I did.

Edit: The NLSF595 works the same way. Look at the datasheet and you will see all of the pins mentioned above. Data goes in on SI every SCK cycle, and after it is all transmitted the RCK signal is strobed to latch the data to the output. The frequency of SCK is 782KHz. Since he is clocking data at 782KHz, that means the entire display can be updated every 1.31ms. The maximum frequency of RCK is then 763Hz. Each LED has a duty cycle of 1/32 and an update frequency of 763Hz.

When people post by talking down to people, correcting them even when they may be wrong, being aggressive when people do not agree, it generally leads to people no longer having interest in exchanging thoughts with those people.

I apologize if it came off that way. I didn't mean it that way at all. I literally meant I have done this several times and I know it is correct. However, something must not be coming out right since I can't seem to explain, so I emailed the guy who made that post to have him try. I looked at all of your youtube links and while they are all neat, it's the same thing - strobing several registers at once to keep the duty cycle from being reduced too low.
 
Last edited:

Modelworks

Lifer
Feb 22, 2007
16,240
7
76
The NLSF595 is double buffered allowing someone to update the contents without effecting the output. It was designed that way for the sole purpose of driving LED displays used in signs and can operate at rates of about 70Mhz . It is also an easier to use chip because it only requires spi interfaces.

Signs like these use them , using an fpga version that packs multiples of the above chips in each module. Each module requires controlling 256 individual LED , for the big signs they control 25,000 LED+
http://www.adaptivedisplays.com/Outdoor LED Signs/Full Color/23mm.asp
 

MrDudeMan

Lifer
Jan 15, 2001
15,069
94
91
The NLSF595 is double buffered allowing someone to update the contents without effecting the output. It was designed that way for the sole purpose of driving LED displays used in signs and can operate at rates of about 70Mhz . It is also an easier to use chip because it only requires spi interfaces.

Signs like these use them , using an fpga version that packs multiples of the above chips in each module. Each module requires controlling 256 individual LED , for the big signs they control 25,000 LED+
http://www.adaptivedisplays.com/Outdoor&#37;20LED Signs/Full Color/23mm.asp
You still aren't understanding what I'm saying. Those big signs do not reduce the duty cycle to as low as you are suggesting. 70MHz is the maximum scan rate of the serial I/O. There are shift registers that go much faster, but this has nothing to do with the brightness of the LEDs on the output.

That is exactly what I was explaining in my above posts. The data in the shift registers is scanned into temporary latches and then strobed to the output latches all at once to eliminate erratic toggling on the outputs due to serial data movement. The strobe frequency divided by the number of rows or columns, whichever is being toggled in line by line sections, is the percentage duty cycle of each LED and the strobe frequency is the update frequency of each LED. This scales extremely well so 25,000 or 25,000,000 could be done the same way.