Требуется написать программу.

Тема в разделе "Iskra JS, Espruino, Йодо", создана пользователем Alinur, 2 май 2020.

  1. Alinur

    Alinur Нуб

    Всем привет!
    Я только недавно освоил JavaScript и Искру. Мне нужно написать программу . Программа называется "Сигнализация". Сигнализация основана на зуммере, светодиоде и ультрозвуковом дальнометре. Должно работать так, что когда в радиусе 1 метра дальнометр замечает зуммер и светодиод работают. Я написал программу, но возникли неполадки. Неполадки заключаются в том, чот плата выключается когда подключен дальнометр, а если вынуть его то плата работает нормально. Помогите пожалуйста!!! Вот сама моя программа(написана на JavaScript) :
    var sonic = require('@amperka/ultrasonic')
    .connect({trigPin: P10, echoPin: P11});
    var buzzer = require('@amperka/buzzer')
    .connect(P5);
    var light = require('@amperka/led')
    .connect(P1);

    var hysteresis = require('@amperka/hysteresis')
    .create({high: 0.5, highLag: 4, low: 0.5, lowLag: 0});
    var animation = require('@amperka/animation')
    .create({
    from: 0,
    to: 1,
    loop: true,
    updateInterval: 0.01
    });
    var armed = false;
    setInterval(function() {
    sonic.ping(function(err, val) {
    if (err) return;
    hysteresis.push(val);
    }, 'm');
    }, 100);

    animation.on('update', function(val) {
    light.brightness(val);
    buzzer.frequency(1000 + 4000 * val);
    });
    hysteresis.on('low', function(val) {
    armed = !armed;
    buzzer.toggle(armed);
    light.toggle(armed);
    if (armed) {
    animation.play();
    } else {
    animation.stop();
    }
    });
    Также при написанни этой программы, я использовал части из другой программы:
    Умный Шлагбаум:
    var sonic = require('@amperka/ultrasonic')
    .connect({trigPin: P10, echoPin: P11});

    var buzzer = require('@amperka/buzzer')
    .connect(P5)
    .frequency(50);

    var light = require('@amperka/led')
    .connect(P1);

    var barrier = require('@amperka/servo')
    .connect(P13)
    .write(90);

    var hysteresis = require('@amperka/hysteresis')
    .create({high: 0.5, highLag: 4, low: 0.5, lowLag: 0});

    setInterval(function() {
    sonic.ping(function(err, val) {
    if (err) return;
    hysteresis.push(val);
    }, 'm');
    }, 100);

    hysteresis.on('low', function(val) {
    buzzer.beep(1, 0.5);
    light.blink(1, 0.5);
    barrier.write(0);
    });

    hysteresis.on('high', function(val) {
    buzzer.turnOff();
    light.turnOff();
    barrier.write(90);
    });
    Тревожная кнопка:
    var button = require('@amperka/button')
    .connect(P2);

    var buzzer = require('@amperka/buzzer')
    .connect(P5);

    var light = require('@amperka/led')
    .connect(P1);

    var animation = require('@amperka/animation')
    .create({
    from: 0,
    to: 1,
    loop: true,
    updateInterval: 0.01
    });

    var armed = false;

    animation.on('update', function(val) {
    light.brightness(val);
    buzzer.frequency(1000 + 4000 * val);
    });

    button.on('press', function() {
    armed = !armed;
    buzzer.toggle(armed);
    light.toggle(armed);
    if (armed) {
    animation.play();
    } else {
    animation.stop();
    }
    });

    Прошу помогите и подскажите, что я не так сделал
     
  2. NikitOS

    NikitOS Public enemy Администратор

    Код неправильно вставили.
     
  3. Alinur

    Alinur Нуб

    По подробней можно ?
     
  4. parovoZZ

    parovoZZ Гуру

    в бане разберешься. Когда заходишь в монастырь, необходимо сперва прочитать правила поведения в нем.
     
    NikitOS нравится это.
  5. Airbus

    Airbus Радиохулиган Модератор

    Да.Можно както так
    [​IMG]
     
    NikitOS нравится это.
  6. parovoZZ

    parovoZZ Гуру

    у меня никогда не было братьев. Только сестра.
     
    NikitOS нравится это.