I have a question regarding the ARDuino uno and some shields. I currently have a shield on my Uno, which takes the pins 0 to 7. However, on top of that board there is an extension of those 8 pins. If they were always in use, I suppose that the extra ports wouldn't be on top of the board, right?

Here's how it looks: arduino shield

So it seems like you're able to "share" them. Is it possible to do so in real-time or is that there so you can use the ports when you disable the shield?

If its possible in real-time, how would I go about doing that? I've searched a little but couldn't find anything. I suppose i'd need some kind of clock to make the switch between the shield and the other components on pins 0-7, but not sure how to do that.

I'm kind of an electrics newbie, so hence the question might be a little silly :)

1 Answer 1


No, you can't "share" pins between shields, except in specific circumstances (open-drain interrupts, I2C or SPI buses, etc). General GPIO pins connect to just one device at a time.

I can't tell from that picture, but it is highly unlikely that all 8 of the IO pins are actually in use by the shield, and the ones that aren't actually connected to anything within the shield are available for another shield placed on top to use. You'll have to look at the schematic or manual for the shield to know exactly which pins are used for what and which are available for other shields to use.

However, one thing to note with that shield - it doesn't appear to pass through the power header, so how a shield on top would get powered at all is a mystery to me.

  • Its using the ICSP headers to power the board :) But this makes sense. The board (and the arduino, and the extra hardware) would need an interrupt controller to check whoose turn it is to listen / write to the ports, if I understand correctly. Thanks for the answer!
    – Rob
    Nov 23, 2015 at 9:49
  • Interrupts are far from the only means of deconflicting. Nov 24, 2015 at 2:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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