Аппаратный

Начнем с создания директории:

nis@jane ~/stm32/f4examples/08-reset $ cp -a 00-base/ 01-hardware

nis@jane ~/stm32/f4examples/08-reset $ cd 01-hardware/

Алгоритм такой: после события перезагрузки, мы забираем данные из регистра статуса и управления RCC_CSR. Из полученного значения убираем ненужные флаги. И сравниваем его с типом сброса. В зависимости от типа мы зажигаем соответствующий светодиод. Для аппаратного сброса это красный.

Для этого напишем необходимый код в функции work() в файле work.c.

После соберем и загрузим в МК новую версию кода:

nis@jane ~/stm32/f4examples/08-reset $ make write

Видео: