Нужна помощь

Тема в разделе "Arduino & Shields", создана пользователем evgencom, 30 окт 2017.

  1. evgencom

    evgencom Нуб

    Нужна помощь
    Ард2.jpg как сделать правильный код
    застрял на месте
    Код (C++):
    long vl,v1,v2,v3,v4,v5,v6,v7,v8,v9,v10;
    long hz=0;
    long hzprev=0;
    long tout=0;

    void setup() {
    pinMode(2, OUTPUT);//Светодиод
    pinMode(3, INPUT);//Если есть напряжение или светодиод горит
    pinMode(A0, INPUT);//Аудиовход
    зшт
    }
    void loop() {
    tout=millis()+600;
    while (tout>millis() && digitalRead(A0) > 10 );
    v1 = micros();
    while (tout>millis() && analogRead(A0) < 1);
    v2 = micros();
    while (tout>millis() && analogRead(A0) > 0 );
    v3 = micros();
    while (tout>millis() && analogRead(A0) < 1 );
    v4 = micros();
    while (tout>millis() && analogRead(A0) > 0 );
    v5 = micros();
    while (tout>millis() && analogRead(A0) < 1 );
    v6 = micros();
    while (tout>millis() && analogRead(A0) > 0 );
    v7 = micros();
    while (tout>millis() && analogRead(A0) < 1 );
    v8 = micros();
    while (tout>millis() && analogRead(A0) > 0 );
    v9 = micros();
    while (tout>millis() && analogRead(A0) < 1 );
    v10 = micros();
    hzprev=1000000/(((v2-v1)+(v3-v2)+(v4-v3)+(v5-v4)+(v6-v5)+(v7-v6)+(v8-v7)+(v9-v8)+(v10-v9))/9);
    if (tout>millis()&&sq((hz+hzprev)/2-hzprev)>1000){
    hz=(hz+hzprev)/2;
    }
    hz=0;
    }
    //Перед тем, как зажечь нужный светодиод - тушим все
    digitalWrite(2, LOW);
    if (hz>20 && hz<100){
    digitalWrite(2, HIGH);// если укладываемся в частоту hz>20 && hz<100, то светодиод начинает моргать
      digitalWrite(3, HIGH);//если нет напряжение на светодиоде то включить реле
    }
    }
     
    Последнее редактирование: 30 окт 2017
  2. NikitOS

    NikitOS Король шутов Администратор

    Ну Вы конечно интересный, какой код, что он делает????
     
  3. Tomasina

    Tomasina Сушитель лампочек Модератор

    из школьной математики за 3й класс вот это
    Код (C++):
    (v2-v1)+(v3-v2)+(v4-v3)+(v5-v4)+(v6-v5)+(v7-v6)+(v8-v7)+(v9-v8)+(v10-v9)
    просто равно
    Код (C++):
    v1 + v10
     
  4. evgencom

    evgencom Нуб

    я понимаю но как это работает
     
  5. rkit

    rkit Гуру

    Напишите внятно, что вы хотите сделать.

    v10 - v1