The Arduino is an immensely popular microcontroller that allows designers to quickly prototype projects. It provides many GPIO and peripherals, and it's easily programmable.
The Arduino series microcontrollers typically have many IO connectors and peripherals, but unfortunately that may not be enough.Imagine, for example, that an Arduino Uno user wishes to integrate Wi-Fi capabilities into their project. They could purchase a Wi-Fi module (such as the ESP8266), connect it to the specific GPIO pins it requires, and then program the Uno to use the module.
The Arduino Shield
So, now that we know that Arduino shields are awesome, we still don't know what they look like or how we should go about choosing one. First, you MUST identify your board! The name Arduino covers all development boards, and, because of its diversity, some shields may not be compatible with all Arduinos.
Once you have identified the type of Arduino you have, you then need to check the following:
Pin-out of the shield
Operating voltage of the shield
Libraries for the shield
The bare number of shields that are available for Arduino is staggering, and all these shields can be stacked on top of each other.While shields are not necessary for any project, they are very useful.They can be key to starting and running projects!