work.c

Данный код в базовом проекте не выполняет почти никаких функций, но представляет основу для всех последующих проектов.

Как обычно подключим заголовочные файлы - стандартных констант: stm32f4xx.h, и наш собственный: work.h:

/* include headers */
#include "stm32f4xx.h"
#include "work.h"

Также создадим функцию work() в которой и будет происходить вся работа в дальнейшем:

/* work */
void work() {
    /* infinity loop */
    while (1);
}

В настоящее время же тут находится только бесконечный цикл. Это необходимо в целях того что work() вызывается в последнюю очередь и чтобы процессорное ядро не пошло исполнять следующие за этой функцией блоки данных или кода, необходимо зациклить исполнение.