ESP32 minimal Arduino PWM output example (PlatformIO)
#include <Arduino.h>
#include <driver/ledc.h>
void setup() {
Serial.begin(115200);
ledcSetup(LEDC_CHANNEL_0, 10000 /* Hz */, 12);
ledcAttachPin(GPIO_NUM_14, LEDC_CHANNEL_0);
ledcWrite(LEDC_CHANNEL_0, 2048); // 50%
}
void loop() {
// Example of how to change the duty cycle to 25%
ledcWrite(LEDC_CHANNEL_0, 1024);
}