STM32CubeIDE где взять, установка и первая программа.
STM32CubeIDE среда разработки от компании ST для всего семейства контроллеров STM32 которая может сама подключать нужные библиотеки(HAL,LL) и помогает легко настроить периферию контроллера причем в графическом режиме, что значительно облегчает работу программиста. Именно с этой среды разработки я вам рекомендую начать свой путь программиста контроллеров.
Что вам понадобится?
Первое это отладочная плата от ST которую можно приобрести в специализированных магазинах или же купить бывшею в употреблении на сайте объявлений. В дальнейшем этой платой можно будет прошивать любые контроллеры семейства STM32 даже китайские отладчики.
Среду разработки можно скачать здесь. Скачать на Boosty
Внимание! CubeIde перестала поддерживать китайские программаторы и поэтому вы не сможете запрограммировать ими контроллер.
Выглядят примерно они так, отладочная плата со встроенным программатором. Так как имеется большое количество подделок на рынке можно проверит набрав название отладочной платы в поисковике браузера и должна появится ссылка на документ в формате pdf от ST описывающий эту плату.
Допустим вы приобрели отладочную плату, где взять среду разработки STM32CubeIDE?
На официальном сайте ST, вам придется там зарегистрироваться и после скачать но для стран России и Белоруссии действует запрет, даже если вы добудете среду разработки программа будет требовать входа на сайте ST так что регистрация обязательна.
И не много от себя, мне нравится работать на IAR где всё минимизировано и есть только необходимые инструменты но ST пытается переманить программистов контроллеров STM32 на свою среду разработки, что я считаю хорошо. Но при этом считаю, что STM32CubeIDE создавали не профессиональные программисты контроллеров а какие это интернет разработчики которые мало связаны с контроллерами, что подтверждает интерфейс среды и конечно библиотека HAL.
Установка среды Cube IDE.
Внимание! Путь к установочному файлу не должен содержать кириллицу иначе будет так!
Переместите установочный файл на диск C и от туда установите, после установки удалите его. В установке среды нет не чего сложного просто соглашаемся со всем и устанавливаем.

При первом запуске программы выскочит окно где указан путь по умолчанию к папке в которой будет находится будущий проект или вы можете выбрать папку где хранится ваш проект. Слева можете поставить галочку, что бы программа больше не спрашивала и жмём Launch.
Потом появится это окно.

Жмём на Start new STM32 project.

Тут в правом-верхнем углу в Commercial Part Number пишем название вашего контроллера с каким будете работать и выбираем из списка нужный контроллер, жмем Next.

В Project Name пишем название вашего проекта у меня Test и жмём Finish.

Если у вас вот такое окно то проект собрался и можно работать, здесь можно настроить выводы контроллера кликнув на нужный мышкой. У меня будет работать PC6 и поэтому жмём на него.

Выбираем из списка как GPIO_Output и вывод должен поменять цвет на зелёный значит он настроен.
Теперь поменяем библиотеку которая стоит по умолчанию это HAL на LL в которой и будем работать.

Жмём на Project Manager.

Выбираем Advanced Settings.

И в открывшемся окне меняем HAL на LL, теперь можно писать код с функциями библиотеки LL.

Должно выглядеть так. Почему библиотека LL(Low Layer Drivers) она меньше тратит памяти чем HAL(Hardware Abstraction Layer) и позволяет более гибко работать с регистрами контроллера.

Теперь нам нужно открыть файл в котором будем писать код программы. В левом верхнем углу выбираем из списка Core->Src->main.c.

Выскочит такое окно просто жмём Yes.

Это наше рабочее окно где будем писать код.

Вставляю такой код, что бы мигал светодиод подключённый к порту PC6 контроллера.
Внимание! Код программы должен находится между парными комментариями например как у меня. Первый комментарий USER BEGIN открытие пространства для кода а USER END до него должен закончится код. Таких парных комментариев много и находятся во всех необходимых местах отличаются они название например где я написал код называется WHILE.
Я выделил для примера парные комментарии. Если писать код программы за парными комментариями то при пересборки проекта он пропадёт, например перенастроили вывод контроллера в графическом режиме.

Теперь осталось запрограммировать контроллер, жмём на зеленый кружок с белым треугольником внутри и должна начаться прошивка контроллера. Если загрузка не идёт и выскакивает ошибка то попробуйте перегрузить компьютер, если это не помогло то вы используете китайский программатор или поддельный.
