Link

编译标志

SimpleFOC支持一些编译器选项,这些选项可能对高级用户来说很有用。下面对它们进行说明。

可用的编译标志

编译标志控制编译器为SimpleFOC生成代码的方式。有些在所有架构上都受支持,而有些则取决于MCU架构。

标志架构描述
SIMPLEFOC_DISABLE_DEBUG所有设置此标志可禁用整个调试代码
SIMPLEFOC_PWM_ACTIVE_HIGHSTM32、RP2040、ESP32设置相位PWM输出的PWM极性——默认是高电平有效(true),但可设置为低电平有效(false)。在6-PWM模式下会影响高侧和低侧(STM32、RP2040)
SIMPLEFOC_PWM_LOWSIDE_ACTIVE_HIGHSTM32、RP2040、ESP32设置低侧相位PWM输出的PWM极性——默认是高电平有效(true),但可设置为低电平有效(false)。仅在6-PWM模式下影响低侧场效应管。在其他模式下无效果。
SIMPLEFOC_PWM_HIGHSIDE_ACTIVE_HIGHSTM32、RP2040、ESP32设置高侧相位PWM输出的PWM极性——默认是高电平有效(true),但可设置为低电平有效(false)。仅在6-PWM模式下影响高侧场效应管。在其他模式下无效果。
SIMPLEFOC_STM32_DEBUGSTM32设置此标志可启用STM32微控制器的额外调试输出。
SIMPLEFOC_STM32_MAX_PINTIMERSUSEDSTM32可配置的PWM引脚最大数量,默认是12(最多2个6-PWM,通常这已经足够了)
SIMPLEFOC_SAMD_DEBUGSAMD21 / SAMD51设置此标志可启用SAMD微控制器的额外调试输出。
SIMPLEFOC_SAMD_MAX_TCC_PINCONFIGURATIONSSAMD21 / SAMD51可配置的PWM引脚最大数量,默认是24(最多4个6-PWM,这应该足够了;-))
SIMPLEFOC_SAMD51_DPLL_FREQSAMD21 / SAMD51DPLL上的预期频率,因为我们不会自己配置它。通常这是CPU频率。对于定制板或超频用户,可以使用此定义来覆盖它。默认是120000000
SIMPLEFOC_DEBUG_RP2040RP2040设置此标志可在Raspberry Pico上启用额外的调试输出。
SIMPLEFOC_ESP32_USELEDCESP32即使在支持MCPWM的ESP32上,也强制使用LEDC PWM驱动程序。主要用于测试目的,通常如果MCPWM可用,你会更倾向于使用它。
SIMPLEFOC_ESP32_HW_DEADTIMEESP32在MCPWM硬件死区和允许相位状态配置的软件实现之间进行选择。默认是硬件死区,因为它经过了更多测试。
SIMPLEFOC_TEENSY_DEBUGTeensy 3.x / 4.x设置此标志可启用Teensy 3.x / 4.x微控制器的额外调试输出。
SIMPLEFOC_TEENSY4_ADC_INTERRUPT_DEBUGTeensy 4启用低侧电流检测中断的简单调试,每次ADC1触发中断时,将引脚30设置为高电平。
SIMPLEFOC_TEENSY4_FORCE_CENTER_ALIGNED_3PWMTeensy 4在Teensy 4上强制中心对齐的3PWM模式。通常3PWM模式不是中心对齐的,且定时器不同步。