This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

GPIO drive high Vf LED w/o current limiting resistor?

Specifically, sinking a Cree C503B green LED (Vf 3.2V at 20ma) from a GPIO configured for high drive, without a current limiting resistor, from VDD 3.6V?

Figure 23 “GPIO drive strength vs Voltage, high drive VDD=3.0V” of the nrf52832 product spec, seems to show that the voltage drop across the GPIO rises with current. My reasoning is that the circuit would stabilize at about 0.5V drop across the GPIO, 3.1V across the LED, and 13mA current. I know an LED should be driven from a constant current source, is a GPIO in some sense regulating the current, at least in this circuit? I am not a electrical engineer.

Parents
  • it's not a very good idea. High drive will still limit current, although much less-so than low drive. However it will let you pull about 15mA through the pin. That's ok as long as nothing else is pulling current through pins. If it is you're exceeding the total GPIO current draw of 15mA and bad things are likely to happen.

    If you really want to drive a 20mA LED you should really just put a driver circuit on it, an sot-23 mosfet is plenty good enough, and a current limiter (unless your power supply is sufficiently close to 3.2v you're on Vf anyway). The nRF series aren't like the chips they put into arduinos which are designed to drive things directly, it's low power, doesn't have a big fat power bus in there.

  • I think what you are saying might work in theory. The voltage drop across the LED and the GPIO's internal voltage drop will reach some sort of equilibrium and the LED will draw a current that coincidentally happens to be within the range you need. However, this it is definitely not how the GPIO is intended to be used so if you chose to go down this path you are doing so at your own discretion.

    Anyway, as you say, a resistor wastes power into heat, but if you don't use an external resistor the exact same power is wasted within the nRF52 instead. Power = Voltage * current. It doesn't matter if the voltage drop occurs over an external or internal resistance or over an LED. Hence, if board space isn't important to you I would recommend using an external resistor.

Reply
  • I think what you are saying might work in theory. The voltage drop across the LED and the GPIO's internal voltage drop will reach some sort of equilibrium and the LED will draw a current that coincidentally happens to be within the range you need. However, this it is definitely not how the GPIO is intended to be used so if you chose to go down this path you are doing so at your own discretion.

    Anyway, as you say, a resistor wastes power into heat, but if you don't use an external resistor the exact same power is wasted within the nRF52 instead. Power = Voltage * current. It doesn't matter if the voltage drop occurs over an external or internal resistance or over an LED. Hence, if board space isn't important to you I would recommend using an external resistor.

Children
No Data
Related