#define POT A0
#define LED 9
#define BUZ 3
int signal;
int brightness;
void setup() {
pinMode(LED, OUTPUT);
pinMode(BUZ, OUTPUT);
}
void loop() {
// Фильтрация: 3 измерения
signal = (analogRead(POT) + analogRead(POT) + analogRead(POT)) / 3;
// Яркость плавно зависит от напряжения
brightness = map(signal, 0, 1023, 0, 255);
analogWrite(LED, brightness);
// Звук 100-700 Гц
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));
}
}