Вот вы... ленивые...
1) есть оболочка, редактор - Arduino IDE
2) есть конфиги Arduino IDE, в которых команды для создания меню Arduino IDE и их интерпретация в команды
3) есть компиляторы, библиотеки итд итп под разные МК
Чо еще вашему мозгу для понимания?
P.S. Более умные участники меня поправят или еще чего я упустил подскажут