TemplateMDK-ARM/Template.uvprojx。
Drivers/STM32F4xx_HAL_Driver/Inc 与 Src 到工程;Drivers/CMSIS 到工程;Templates/Src/main.c Templates/Inc/main.h 替换掉。C/C++ → Define:USE_HAL_DRIVER,STM32F407xx C/C++ → Include Paths:加 Drivers/STM32F4xx_HAL_Driver/Inc、Drivers/STM32F4xx_HAL_Driver/Inc/Legacy、Drivers/CMSIS/Device/ST/STM32F4xx/Include、Drivers/CMSIS/Include、Src、Inc。 Output → Create HEX File 勾选。 Debug → CMSIS-DAP。
main.c 模板里加:
#include "led.h"
#include "delay.h"
int main(void) {
HAL_Init();
SystemClock_Config(); // CubeMX 生成
delay_init(168);
led_init();
while (1) {
LED0_TOGGLE();
delay_ms(500);
LED1_TOGGLE();
delay_ms(500);
}
}

F7 编译 → 0 Error → F8 烧录 → 板子 LED 闪烁说明工程跑通。

USE_HAL_DRIVER,STM32F407xx。HAL_Init()、SystemClock_Config()、外设初始化函数。