In arduino's official page about ShiftOut https://www.arduino.cc/en/Tutorial/ShiftOut, a drawing with two 74HC595 powered by the arduino board, is displayed.

Since the resistors are 220Ω, the total current should be 5/220x16 = 0.36A which exceeds the maximum total current of 0.20A for the arduino device.

So, could someone turn on simultaneously 16 LEDs using two shift registers without damaging the device?

Thank you

  • BTW, there is also a voltage drop across each LED, so the voltage across each 220R is not 5V, it is 5V-1.5V (or so). Different LEDs have different "forward voltage" drops. So the current is actually (5-1.5)/220 * 16 = 0.254A.
    – slash-dev
    Dec 4 '15 at 19:54

0.20A is not the maximum current for an Arduino device. 0.20A is the maximum current for the chip that is on the Arduino. Thus it is only relevant to devices that are directly connected to the Arduino's IO pins (that connect direct to the chip).

The shift registers take their own power from the +5V pin, which is limited to between 500mA and 800mA depending on how you power your board. Each shift register has its own power limits that are completely separate to the Arduino's main chip's power limits.

  • You are right, 0.2A is the maximum current of the ATMega328 chip. Nevertheless, if someone power let's say four shift registers which drive LEDs, not from an external power but directly from the arduino board, would that be OK? Dec 4 '15 at 19:46
  • @user3060854 As long as the total current consumption of the Arduino board and all the items powered from it is less than 500mA (USB) or 800mA (barrel jack) then yes that is perfectly fine.
    – Majenko
    Dec 4 '15 at 20:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.