Программа работает неправильно

Тема в разделе "Iskra JS, Espruino, Йодо", создана пользователем Mercury, 25 окт 2018.

Метки:
  1. Mercury

    Mercury Нуб

    Вот код:
    Код (Javascript):
    var servoX = require('@amperka/servo').connect(P11);
    var servoY = require('@amperka/servo').connect(P13);
    minX=10;
    maxX=160;
    minY=90;
    maxY=130;
    function moveLaser(){
      var X = Math.random()*(maxX-minX);
      var Y = Math.random()*(maxY-minY);
      servoX.write(minX+X);
      servoY.write(minY+Y);
    }
    setInterval(moveLaser(), 1000);
    Вот ошибка, которую я получаю после одного цикла:

    Код (Bash):
    >Uncaught Error: File already written with different data
    at line 2 col 449
    ...l(moveLaser(), 1000);",1024);
                                  ^
    =undefined
    Uncaught Error: Function or String not supplied!
    at line 14 col 30
    setInterval(moveLaser(), 5000);
                                 ^
    >
    Вот как ошибка выглядит в среде:
    https://yadi.sk/i/ba52Ua8f9u8D0A
     
  2. Mitrandir

    Mitrandir Гуру

    Код (C++):
    var servoX = require('@amperka/servo').connect(P11);
    var servoY = require('@amperka/servo').connect(P13);
    minX=10;
    maxX=160;
    minY=90;
    maxY=130;
    function moveLaser(){
      var X = Math.random()*(maxX-minX);
      var Y = Math.random()*(maxY-minY);
      servoX.write(minX+X);
      servoY.write(minY+Y);
    }
    setInterval(moveLaser, 1000);
    так надо.

    первым аргументом функции setIterval передаем функцию.

    вы передали результат который вернула функция moveLaser тоесть ничего