General > General Technical Chat

Software guys, please, no.

<< < (23/27) > >>

xrunner:
The guy is probably laughing his ass off now if he sees this thread. He even infected an electronics forum with his joke!  :-DD

wraper:

--- Quote from: pcprogrammer on September 22, 2022, 11:15:00 am ---
--- Quote from: wraper on September 22, 2022, 11:01:39 am ---
--- Quote ---The Raspberry Pi's GPIO pins are quite versatile, and you can modify many of their characteristics from software. You can turn on/off input pin hysteresis, limit output slew rate, and control source and sink current drive capability from 2 mA to 16 mA in 2 mA increments. These properties are set for the GPIO block as a whole, not on a pin-by-pin basis.

Source/sink current capability does not limit the current into or out of the pin, but only specifies the maximum current for which the output signal high/low voltage specifications will be met. If misused, output pins can be damaged by excessive current irrespective of the source/sink current programmed. After a reset, the RPi comes up with the GPIO outputs set to 8 mA drive capability.
--- End quote ---

--- End quote ---

It is right there in the quote you gave. I read that article and near the end it states:

--- Quote ---
* To prevent excessive power dissipation in the chip, you should not source/sink more current from the pin than its programmed limit. So, if you have set the current capability to 2 mA, do not draw more than 2 mA from the pin.
* Never demand that any output pin source or sink more than 16 mA.
--- End quote ---

--- End quote ---
As if I did not read that sentence. But it changes the drive strength. Which means higher impedance which very likely is perfectly enough to limit current through the LED to acceptable level. You can even calculate the pin impedance and actual current through the LED with known Vf and drive strength set, as Drive strength is set for current at the border of acceptable logic level which are VIL=0.8V and VIH=1.3V AFAIK. So with default drive strength with LED connected between 3.3V and GPIO the typical current should be below 8mA if Vf is >2.5V.
EDIT: figures taken out of this paper https://matt.ucc.asn.au/mirror/electron/GPIO-Pads-Control2.pdf but I suspect VIL=0.8V and VIH=1.3V are not usable for this since naming and figures suggest input levels. And I did not find definite answer in official documentation.

thinkfat:
Well, I'm sure Dave has an IR camera around somewhere. Just suggest to him using it for visualizing the extra power dissipation of the main SoC. It should be quite noticeable. Even if not, I believe the Raspi SoC has a bandgap somewhere on the silicon die that you can used to measure the die temperature. If I'm not mistaken, there's even a Linux driver included. I expect a noticeable increase once the LED is switched on. If that isn't convincing...

PlainName:

--- Quote from: RPi datasheet ---To prevent excessive power dissipation in the chip, you should not source/sink more current from the pin than its programmed limit. So, if you have set the current capability to 2 mA, do not draw more than 2 mA from the pin.
--- End quote ---

I am struggling to understand the basis of this. Let's suppose you have the output programmed to the example 2mA, and to ensure more tha 2mA is not drawn from the pin (as they state) you put a resistor or other current-limiting device in the circuit. What's the point of programming it for 2mA in the first place?

pcprogrammer:
What I understand from it is that it has to do with the slew rate. 2mA setting will be slow and 16mA fast. It has nothing to do with actual current limiting, and more with the output impedance.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

There was an error while thanking
Thanking...
Go to full version
Powered by SMFPacks Advanced Attachments Uploader Mod