var button = require('@amperka/button').connect(P6); var led = require('@amperka/led').connect(P1); var mops = false; button.on('press', function() { mops=!mops; if(mops) {led.turnOff();} else {led.blink(0.1, 0.1);} }); Не понимаю зачем заводить переменную mops и присваивать ей значение "ложь", а потом использовать (i) внутри функции. Помогите пожалуйста.
Переменная mops нужна, чтобы хранить состояние диода (выключен или мигает). Если б он не мигал, а просто включался, то переменная была бы не нужна, мы могли бы использовать встроенный метод led.isOn() для проверки включен он или нет. А так во время нажатия на кнопку он может быть как включен, так и выключен (т.к. он мигает). Единственное, в этом примере mops=!mops логичнее перенести в конец функции, иначе при первом нажатии на кнопку после загрузки программы ничего не произойдет, т.к. выполнится led.turnOff() при том, что диод и так выключен. Кстати фигурные скобки не обязательны в if, если выполняется только одно выражение. Код (Javascript): var button = require('@amperka/button').connect(P3); var led = require('@amperka/led').connect(P1); var mops = false; button.on('press', function() { if (mops) led.turnOff(); else led.blink(0.1, 0.1); mops = !mops; });