Всем привет.
В процессе брожения по интернету я внезапно наткнулся на Platform IO.
Немного погуглил. Нашёл общих слов, что мол "клёвый тулчейн" и всё такое. Эммм, ну я в принципе понимаю, что такое тулчейн, но...
Зашёл на главную. Вижу, например:
BluePill F103C6 Arduino, CMSIS, STM32Cube
И вот здесь я потерялся. Обычно я пишу под Arduino. Немного пробовал под STM. Убедился в том, что в STM - сплошные Си и аппноты, из которых можно накопипастить что нужно.
Но.
Из строчки на Platform IO кажется, что STM можно программить и в Arduino Style.
Теперь, собственно, вопрос: что же такое Platform IO? IDE? Компилятор? Набор библиотек? Они таки реально запилили ахапку библиотек, чтобы можно было невзирая на конкретный микроконтроллер написать Serial.print("hello world"); и оно заработает? Или вот эти вот 100500 плат в списке - это лишь возможность программировать их всех из одной IDE, но никаких пересечений по части библиотек не будет совсем?
ЗЫ: Ну и чтоб два раза не вставать - можно как-то программировать STM32 так, чтобы это было похоже на ООП, а не на копипаст аппнот?
platformio это, во-первых, всё-таки фреймворк. Он задаёт общий формат описания и структуру проекта для микроконтроллеров, умея инсталлировать тулчейны и собирать проекты под разные конфигурации. И наподобие cmake он умеет генерировать файлы проектов для работы в различных IDE.
Во-вторых, это ещё и плагин к vscode (можно использовать и без vscode, через командную строку).
Вещь приятная и удобная в использовании, мне нравится.