|
HF Interface Wrapper 0.1.0-dev
Embedded C++ hardware abstraction layer
|
ESP32 PWM channel configuration with comprehensive LEDC feature support. More...
#include <EspTypes_PWM.h>
Public Member Functions | |
| hf_pwm_channel_config_t () noexcept | |
Public Attributes | |
| hf_gpio_num_t | gpio_pin |
| GPIO pin for PWM output (check pin matrix) | |
| uint8_t | channel_id |
| Channel ID (0 to variant max) | |
| uint8_t | timer_id |
| Timer ID (0 to variant max) | |
| hf_pwm_mode_t | speed_mode |
| Speed mode configuration. | |
| uint32_t | frequency_hz |
| PWM frequency in Hz (validated against clock source) | |
| uint8_t | resolution_bits |
| PWM resolution in bits (4-14, validated) | |
| hf_pwm_clock_source_t | clock_source |
| Preferred clock source for this channel. | |
| uint32_t | duty_initial |
| Initial duty cycle value (RAW for specified resolution) | |
| hf_pwm_intr_type_t | intr_type |
| Interrupt type configuration. | |
| bool | invert_output |
| Invert output signal polarity. | |
| uint32_t | hpoint |
| High point timing for phase shift (0 to max_duty) | |
| uint8_t | idle_level |
| Idle state level when disabled (0 or 1) | |
| bool | output_invert |
| Hardware output inversion (different from invert_output) | |
| hf_pwm_channel_priority_t | priority |
| Channel priority for eviction decisions. | |
| bool | is_critical |
| Mark as critical (never evict) | |
| const char * | description |
| Optional description for debugging/logging. | |
ESP32 PWM channel configuration with comprehensive LEDC feature support.
This structure provides complete control over LEDC channel configuration, including advanced features like hardware fade, phase shifting, and resource protection. All parameters are validated against hardware constraints.
|
inlinenoexcept |
| uint8_t hf_pwm_channel_config_t::channel_id |
Channel ID (0 to variant max)
| hf_pwm_clock_source_t hf_pwm_channel_config_t::clock_source |
Preferred clock source for this channel.
| const char* hf_pwm_channel_config_t::description |
Optional description for debugging/logging.
| uint32_t hf_pwm_channel_config_t::duty_initial |
Initial duty cycle value (RAW for specified resolution)
| uint32_t hf_pwm_channel_config_t::frequency_hz |
PWM frequency in Hz (validated against clock source)
| hf_gpio_num_t hf_pwm_channel_config_t::gpio_pin |
GPIO pin for PWM output (check pin matrix)
| uint32_t hf_pwm_channel_config_t::hpoint |
High point timing for phase shift (0 to max_duty)
| uint8_t hf_pwm_channel_config_t::idle_level |
Idle state level when disabled (0 or 1)
| hf_pwm_intr_type_t hf_pwm_channel_config_t::intr_type |
Interrupt type configuration.
| bool hf_pwm_channel_config_t::invert_output |
Invert output signal polarity.
| bool hf_pwm_channel_config_t::is_critical |
Mark as critical (never evict)
| bool hf_pwm_channel_config_t::output_invert |
Hardware output inversion (different from invert_output)
| hf_pwm_channel_priority_t hf_pwm_channel_config_t::priority |
Channel priority for eviction decisions.
| uint8_t hf_pwm_channel_config_t::resolution_bits |
PWM resolution in bits (4-14, validated)
| hf_pwm_mode_t hf_pwm_channel_config_t::speed_mode |
Speed mode configuration.
| uint8_t hf_pwm_channel_config_t::timer_id |
Timer ID (0 to variant max)