Загрузка данных


#define POT A0
#define LED 8
#define BUZ 3

int signal;
int brightness;
int percent;

void setup() {
  pinMode(LED, OUTPUT);
  pinMode(BUZ, OUTPUT);
  Serial.begin(9600);
}

void loop() {

  // 3 измерения и среднее
  signal = (analogRead(POT) + analogRead(POT) + analogRead(POT)) / 3;

  // Яркость светодиода
  brightness = map(signal, 0, 1016, 0, 255);
  analogWrite(LED, brightness);

  // Процент
  percent = map(signal, 0, 934, 0, 100);

  Serial.print("Value=");
  Serial.print(signal);
  Serial.print("  Percent=");
  Serial.print(percent);
  Serial.println("%");

  // От 0 до 89% - обычный звук
  if (signal < 841) {
    tone(BUZ, map(signal, 0, 841, 100, 700));
  }

  // От 90 до 100% - сирена
  if (signal >= 841) {

    if ((millis() % 1000) < 500) {
      tone(BUZ, 400);
    }

    if ((millis() % 1000) >= 500) {
      tone(BUZ, 700);
    }
  }
}