#define BUTTON_PIN 2
#define PWM_PIN 3
volatile int pulseCount = 0;
void setup() {
pinMode(BUTTON_PIN, INPUT_PULLUP);
pinMode(PWM_PIN, OUTPUT);
TCCR2A = (1 << COM2B1) | (1 << WGM20);
TCCR2B = (1 << CS22);
OCR2B = 78;
attachInterrupt(digitalPinToInterrupt(BUTTON_PIN), buttonPressed, FALLING);
}
void loop() {
}
void buttonPressed() {
if (pulseCount < 11000) {
pulseCount++;
OCR2B = 78; // 60% коефіцієнт заповнення
} else {
pulseCount = 0;
OCR2B = 0; // Зупинити генерацію ШІМ
}
}