STM32使用SimpleFOC库实现直流无刷电机的开环驱动详解
2025-09-23 来源:cnblogs
硬件准备
软件准备
安装微软的Vscode,网上很多教程,且有说明书
打开vscode并安装PlatformIO插件。其他的一些中文插件、AI插件等等,根据需要安装
打开插件,新建工程
重要的设置
Ini文件设置,这是关键
接线
In1-2-3分别接STM32板子的A8,A9,A10,这是三个PWM引脚
en接STM32板子的A11,这是使能引脚
GND接GND
编程
开始编程
#include
#define PIN_PWM_U PA8
#define PIN_PWM_V PA9
#define PIN_PWM_W PA10
#define PIN_ENABLE PA11
BLDCDriver3PWM driver = BLDCDriver3PWM(PIN_PWM_U, PIN_PWM_V, PIN_PWM_W, PIN_ENABLE);
BLDCMotor motor = BLDCMotor(7); // 极对数为 7 的无刷电机
void setup() {
// 1. 先把 EN 拉到“失能”
pinMode(PIN_ENABLE, OUTPUT);
digitalWrite(PIN_ENABLE, LOW);
// 2. 驱动器参数
driver.voltage_power_supply = 12; // 实际 12V 电源
driver.voltage_limit = 4.0; // 限制到 4V,减少电流与发热
driver.pwm_frequency = 20000; // 20kHz
driver.enable_active_high = true; // PA11 拉高时才使能 MS8313
driver.init(); // 初始化驱动器
// 4. 连接电机、初始化
motor.linkDriver(&driver);
motor.voltage_limit = 2.0; // 电机端相电压限幅到 2V
motor.controller = MotionControlType::velocity_openloop;
motor.init();
// 5. 打开 EN
digitalWrite(PIN_ENABLE, HIGH);
}
void loop() {
motor.move(15); // 15 rad/s 开环
}
实现
编译烧录
插上USB,开始烧录
烧录成功

STM32核心板,2804电机和SimpleFOC mini驱动板(M创动工坊提供),ST-link,12V直流电源,USB线等

安装好stlink驱动






lib_deps =
askuric/Simple FOC@ 2.3.4
board_build.mcu = stm32f103c6t6
board_upload.maximum_size = 32768
upload_protocol = stlink
debug_tool = stlink
build_flags = -Os
写好后,记得点保存,就开始自动下载库,右下角

设置到这里就结束了。
根据程序定义,接线
Simplefoc mini板与STM32接线:

STM32与ST-Link接线
按STM32和ST-link的丝印接即可
STM32与USB转串口模块接线

USB供电,microUSB接口。
到此,线已接完。
打开默认是这样的
按arduino格式C++语言,写入以下代码,代码就不做注释了,可以直接复制粘贴到AI,如DEEPSEEK上,让它帮忙逐行解析。

就这么多!

确定驱动安装正确,设备管理器中,可以看到这两个。


接上电源测试,电机就开始转动了。
不过这样电机会有异响,会异响,会异响!会发烫,会发烫,会发烫,这里只是演示一下,验证硬件是否有故障,接线是否正确。
这不是硬件故障的问题,是控制的缘故。

- 意法半导体中国本地造STM32微控制器启动规模量产
- 意法半导体全新STM32C5系列,重新定义入门级微控制器性能与价值,赋能万千智能设备
- 使用 Keil Studio for Visual Studio Code开发 STM32 设备
- 基于机智云与STM32的智能拐杖安全监测系统在养老物联网中的应用
- 内置全栈安全,一站式满足CRA法案与IEC 62443标准——米尔STM32MP257核心板
- 如何用 STM32 FLASH 实现等效 100 万次擦写的 EEPROM 功能?
- 实战解析:通过一个小项目掌握STM32所有外设
- STM32学了两年半,却还是不会做项目
- 意法半导体推出最新STM32MP21微处理器,兼具高性价比、低功耗、高灵活性
- 基于STM32的矿井作业环境监测系统设计与实现
- 六大全新产品系列推出,MCX A微控制器家族迎来创新
- 意法半导体全新STM32C5系列,重新定义入门级微控制器性能与价值,赋能万千智能设备
- 从控制到系统:TI利用边缘AI重塑嵌入式MCU的边界
- 模组复用与整机重测在SRRC、CCC、CTA/NAL认证中的实践操作指南
- 有源晶振与无源晶振的六大区别详解
- 英飞凌持续巩固全球微控制器市场领导地位
- 使用 Keil Studio for Visual Studio Code开发 STM32 设备
- 蓝牙信道探测技术原理与开发套件实践
- Microchip 推出生产就绪型全栈边缘 AI 解决方案,赋能MCU和MPU实现 智能实时决策
- LoRa、LoRaWAN、NB-IoT与4G DTU技术对比及工业无线方案选型分析




