Arduino is one of the most famous microcontroller board.
Trying to explain what exactly it is shows multiple difficulties that progressively fade away with practice.
Maybe one feature could intrigue above all others: programming language is a high level one!
No need to write in assembly, while compiler is able to create well optimized binary code
(beside a screenshot of Arduino's IDE).
Arduino platform is totally open source: you have access to both electrical schematics and source code, freely downloadable from internet, primary from the official site.
Its success has been and is actually clear thanks to some strategic points:
- open source hardware and software;
- high level programming;
- entry level lower than with classical microcontrollers programming (see assembly);
- expandibility: modules known as "shields" like ethernet (two types exist), sensor, ect...
- more board types, in according with necessities and tecnological progress and/or component costs reduction;
- IDE is available for different PCs platform: Win, Linux and Mac
and so on.