#define POT A0
#define LED 9
#define BUZ 3
int signal;
int brightness = 0;
int target;
void setup() {
pinMode(LED, OUTPUT);
pinMode(BUZ, OUTPUT);
}
void loop() {
// Фильтрация
signal = (analogRead(POT) + analogRead(POT) + analogRead(POT)) / 3;
// Плавная яркость
target = map(signal, 0, 1023, 0, 255);
if (brightness < target) brightness++;
if (brightness > target) brightness--;
analogWrite(LED, brightness);
// Звук
if (signal < 920) {
tone(BUZ, map(signal, 10, 920, 100, 700));
}
else {
int t = millis() % 1000;
if (t < 500)
tone(BUZ, map(t, 0, 500, 400, 800));
else
tone(BUZ, map(t, 500, 1000, 800, 400));
}
delay(2);
}