ESP32开发板支持
| MCU | 2 PWM模式 | 4 PWM模式 | 3 PWM模式 | 6 PWM模式 | PWM频率配置 | MCPWM | LEDC |
|---|---|---|---|---|---|---|---|
| esp32 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| esp32-s2 | ✔️ | ✔️ | ✔️ | ✔️(仅LEDC) | ✔️ | ❌ | ✔️ |
| esp32-s3 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| esp32-c3 | ✔️ | ✔️ | ✔️ | ✔️(仅LEDC) | ✔️ | ❌ | ✔️ |
Esp32设备可使用SimpleFOClibrary进行完全配置,并且适用于所有驱动器类型。
PWM驱动器
Esp32微控制器有两种不同的PWM生成底层驱动器:MCPWM和LEDC。MCPWM驱动器(Motor Control PWM,电机控制PWM)是一种更高级的驱动器,允许对PWM信号进行更多控制,在SimpleFOClibrary中默认使用。LEDC驱动器是一种较简单的驱动器,默认用于LED控制,但也可用于电机控制。LEDC驱动器的灵活性远低于MCPWM驱动器,但SimpleFOClibrary也支持它。默认情况下,如果其他esp32设备支持MCPWM驱动器,则会使用该驱动器;如果不支持(例如esp32-s2和esp32-c3设备),则会使用LEDC驱动器。 如果使用的esp32设备支持MCPWM驱动器,但你想使用LEDC驱动器,可以通过定义SIMPLEFOC_ESP32_USELEDC构建标志来强制使用LEDC驱动器。
经验法则:
MCPWM与LEDC如果使用的esp32设备支持
MCPWM驱动器,建议使用它。MCPWM驱动器更灵活,允许对PWM信号进行更多控制。如果使用的esp32设备不支持MCPWM驱动器,也可以使用LEDC驱动器。
注意
从SimpleFOClibrary版本v2.3.4开始,该库需要esp32 arduino包版本v3.x
一些基于esp32的开发板示例:
| 开发板 | 名称 | 规格 | 链接 | 价格 |
|---|---|---|---|---|
![]() | ESP32 | (例如NodeMCU) - 3.3V / 5V逻辑电平 - 16个PWM - 所有引脚可中断 - 240MHz - Wifi + 蓝牙 | Ebay | 10欧元 |
![]() | ESP32 R32 D1开发板 | - 3.3V / 5V逻辑电平 - 16个PWM - 所有引脚可中断 - 240MHz - Wifi + 蓝牙 - Arduino接口 | Amazon Ebay | 10欧元 |
![]() | FeatherS2 ESP32-S2 | - 3.3V / 5V逻辑电平 - 8个PWM - 13个模拟通道 - 所有引脚可中断 - 240MHz - Wifi | Adafruit商店 | 20欧元 |
![]() | Metro ESP32-S2 | - 3.3V / 5V逻辑电平 - 8个PWM - 18个模拟通道 - 所有引脚可中断 - 240MHz - Wifi | Adafruit商店 | 15欧元 |
Arduino IDE支持包
ESP32开发板通过arduino-esp32包获得支持,这是espressif提供的开源软件。你可以通过Arduino Board Manager搜索esp32下载支持包,或者按照其网页上的包安装说明进行操作。
ESP8266开发板支持
| MCU | 2 PWM模式 | 4 PWM模式 | 3 PWM模式 | 6 PWM模式 | PWM频率配置 |
|---|---|---|---|---|---|
| esp8266 | ✔️ | ✔️ | ✔️ | ❌ | ✔️ |
Esp8266设备在SimpleFOClibrary中仍处于初始支持阶段,并已通过一系列不同的驱动器进行了测试。这些开发板只有4个PWM引脚,因此无法实现6PWM电机控制,而且只有一个模拟输入,无法进行FOC电流控制。
| 开发板 | 名称 | 规格 | 链接 | 价格 |
|---|---|---|---|---|
![]() | NodeMCU ESP8266 | - 3.3V逻辑电平 - 4个PWM - 所有引脚可中断 - 80-160MHz - Wifi | Aliexpress | 2-10欧元 |
![]() | ESP8266 ESP-12E D1开发板 | - 3.3V逻辑电平 - 4个PWM - 所有引脚可中断 - 80-160MHz - Wifi - Arduino UNO R3接口 | Amazon Aliexpress | 3-10欧元 |
Arduino IDE支持包
ESP8266开发板通过arduino-esp8266包获得支持,这是espressif提供的开源软件。你可以通过Arduino Board Manager搜索esp8266下载支持包,或者按照其网页上的包安装说明进行操作。





