1. 搭建FOC控制开发环境
任务目标
本案例完成BLDC FOC开发的前置环境搭建:安装STM32CubeIDE与Motor Control SDK(X-CUBE-MCSDK),创建最小STM32工程并点亮板载LED,以此验证工具链、调试器连接及烧录链路均可用。
所需环境与依赖
- 硬件:NUCLEO-G431RB开发板(板载ST-LINK调试器)
- 软件:STM32CubeIDE 1.15.0及以上(含STM32CubeMX),X-CUBE-MCSDK 6.2.0(FOC电机控制SDK,本案例仅需安装,不调用其库)
- 驱动:ST-LINK USB驱动(STM32CubeIDE安装时自动附带)
操作步骤
- 从ST官网下载并安装STM32CubeIDE,安装过程中勾选STM32CubeMX组件。
- 从ST官网下载X-CUBE-MCSDK,通过STM32CubeMX的Embedded Software Manager在线安装,或直接运行离线安装包。安装完成后在CubeIDE中确认SDK出现在
Help > About > Installed Software列表。 - 打开STM32CubeIDE,选择
File > New > STM32 Project,在MCU选择器中输入STM32G431RB,选中后点击Next。 - 输入工程名
LED_Blink,点击Finish,等待CubeMX初始化完成。
关键完整代码
在CubeMX图形界面中完成以下引脚配置:
- PC6设置为GPIO_Output(NUCLEO-G431RB板载LED2,低电平点亮)
- 调试接口保持默认Serial Wire(PA13/PA14)
配置完成后点击Save生成代码。在main.c的while(1)循环中添加以下代码:
/* USER CODE BEGIN WHILE */
while (1)
{
HAL_GPIO_TogglePin(GPIOC, GPIO_PIN_6);
HAL_Delay(200);
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */
编译与烧录
- 点击工具栏锤子图标编译工程,确认
Console窗口输出Build Finished且无错误。 - 用USB线连接NUCLEO-G431RB的ST-LINK USB口到电脑。
- 点击绿色播放按钮(Debug),在弹出的配置窗口中保持默认设置,点击OK。CubeIDE将自动烧录固件并进入调试模式。
- 点击红色停止按钮退出调试,板卡复位后程序独立运行。
验证方法与判定标准
- 编译通过:Console窗口无error,仅有0个警告或可忽略警告。
- 烧录成功:Debug启动后IDE无报错,Console显示
Download verified successfully。 - 功能正确:退出调试模式后,板载LED2(绿色,PC6)以约2.5Hz频率闪烁(亮200ms灭200ms)。若LED常亮或常灭,检查PC6是否配置为输出且代码位于
while(1)内。
常见问题
- 烧录时报No ST-LINK detected:检查USB连接,确认设备管理器中识别到ST-LINK;若仍失败,在CubeIDE的
Window > Preferences > ST-LINK中更新固件。 - 编译报找不到头文件:确认工程已由CubeMX生成,且
main.h中存在#include "main.h";若手动添加过文件,检查Include路径。 - LED不闪烁但程序在跑:用调试模式在
HAL_GPIO_TogglePin处设断点,单步执行观察PC6输出电平是否翻转;若翻转但LED不亮,检查硬件跳线JP3(若存在)是否将LED连接到PC6。