Первая программа

Основной код программы хранится в файле main.c. Найдём этот файл в дереве проекта и откроем его. Слева появится вкладка с редактором кода выбранного файла.

Код состоит из фрагментов, которые генерируются автоматически при любом изменении в конфигураторе, и фрагментов, куда разработчик может вставить свой код. Фрагменты разработчика помечены комментарием, начинающимся со слов «USER CODE«. Если написать что-то, вне этих фрагментов, конфигуратор всё удалит!

Найдем главный суперцикл программы, а в нём фрагмент:

/* USER CODE BEGIN 3 */
/* USER CODE END 3 */

Теперь придумаем, что туда вписать. Для смены состояния контакта используем стандартную функцию:

HAL_GPIO_WritePin(порт, индекс, состояние)

Здесь порт — имя порта, которому принадлежит контакт. Поскольку мы назначили псевдоним, то имя будет такое: LED_GPIO_Port. Затем идёт индекс контакта в порту — LED_Pin. Наконец, третий параметр — состояние: GPIO_PIN_SET — высокий уровень либо GPIO_PIN_RESET — низкий уровень (в Ардуино это эквивалентно HIGH и LOW).

После включения и выключения светодиода нам нужно немного подождать, иначе глаз не заметит столь быстрого мигания. Используем функцию:

HAL_Delay(время)

где время — количество миллисекунд, которые нужно подождать.

Таким образом, чтобы мигнуть светодиодом, пишем:

HAL_GPIO_WritePin(LED_GPIO_Port, LED_Pin, GPIO_PIN_SET);
HAL_Delay(50);
HAL_GPIO_WritePin(LED_GPIO_Port, LED_Pin, GPIO_PIN_RESET);
HAL_Delay(500);

А вот так это будет выглядеть в редакторе.

Сохраняем файл и переходим к сборке проекта.

Компиляция программы

Чтобы собрать все компоненты программы воедино и превратить это в код пригодный для работы в микроконтроллере, запустим процесс сборки. Для этого, выберем в меню пункт: Project / Build Project. В консоли под вкладками начнет отображаться процесс сборки, который завершится текстом:

22:05:23 Build Finished. 0 errors, 0 warnings. (took 25s.625ms)

Если рядом с errors стоит не 0, значит в коде какая-то ошибка. Пока все ошибки не будут устранены, программа не скомпилируется. warnings — это предупреждения, на которые тоже следует обратить внимание, но они не препятствуют сборке программы.

Следующий этап — самый волнующий: загрузка программы на микроконтроллер.


Изменено: