/* * SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Apache-2.0 */ #pragma once #include "soc/soc_caps.h" #if SOC_MCPWM_SUPPORTED #include "esp_err.h" #include "soc/soc.h" #include "driver/gpio.h" #include "esp_intr_alloc.h" #include "hal/mcpwm_types.h" #ifdef __cplusplus extern "C" { #endif /** * @brief IO signals for the MCPWM * * - 6 MCPWM output pins that generate PWM signals * - 3 MCPWM fault input pins to detect faults like overcurrent, overvoltage, etc. * - 3 MCPWM sync input pins to synchronize MCPWM outputs signals * - 3 MCPWM capture input pins to gather feedback from controlled motors, using e.g. hall sensors */ typedef enum { MCPWM0A = 0, /*!