я бы посоветовал начать изучение с програмирования на CMSIS, т.е. на регистрах.
Поддерживаю. Правда, для старта придется поискать чей-то чужой блинк без всего этого мусора. Дело в том, что в stm32 в отличие от восьмибиток приходится писать свой стартап код, обычно на ассемблере. Если в этом опыта нет, и изучать неохота, лучше взять готовый. Потом, когда опыт появится, можно будет и полистать. Но в целом, стертап это не та вещь, в которую приходится лазить.
Martian писал(а):китайский чип-пром налепил уже кучу клонов ST, да и будущее неизвестно
Что-то сомневаюсь, что эти клоны поддерживаются ST-кубом и ST_HAL.
А на счет будущего - так потому и надо изучать с начала, а не с конца, чтобы при переходе на другое семейство не было паники и ступора. Сейчас вон RISC-V популярность набирают. Причем gd32vf103 совместим с аналогичным arm-ом как по ногам и большей части периферии (только регистры и биты переименовали), так и, внезапно, по программированию. Если кому интересно, я даже писал по нему
цикл статей с самого начала.
А вот wch пока не радуют. То есть сами камни вкусные, но вот чем их по-нормальному программировать, пока непонятно. Но, наверное, и это решаемо.
JackSmith писал(а):1) ARM он 32-битный, т.е. все метки, указатели, и адреса будут больше чем у 8-битников.
Не настолько. Я видел блинк для stm32f103 размером то ли 50, то ли вообще 20 байт. Правда, там уже начинались хаки. А дефолтный вроде пол-килобайта занимает. В основном на таблицу векторов прерываний. Их там полсотни, и каждое 4 байта занимает.
JackSmith писал(а):2) не имеет значения сколько занимает код
До определенного предела. К тому же, в ST-HAL разрастание кода идет не ради оптимизаций, а ради абстракций ради абстракций. Десяток функций, перекладывающих одни и те же параметры друг другу безо всякого изменения и смысла. В такой ситуации больше кода это больше инструкций контроллеру выполнять. На Хабре проскакивала статья по USB на ST-HAL, что автору не удалось выжать заявленную скорость. А вот с человеческими реализациями все работало как надо.
Плюс не забываем, что иногда в код надо положить большое количество данных. Совсем недавно я делал демонстрационный пример
составного USB устройства - два COM-порта плюс "флешка". И на "флешку" удалось запихнуть и описание, и прошивку самого контроллера, и даже исходники. Размер исполняемой части составил что-то около 10 кБ, плюс около 30 кБ пожатых исходников. А вот для стандартных библиотек места уже не хватило, они около мегабайта занимают, даже архивация не спасла.
veso74 писал(а):На данный момент из-за настроек конфигурации по STM32, даже для простых проектов, у меня нет нервов
Так может, попробуете risc-v? Для именно "попробовать", могу попробовать обеспечить вам удаленный доступ к стенду с gd32vf103. Только все же сначала ознакомьтесь немного с материалом, чтобы админа попусту не дергать.