Набор "Йодо" 17 задание

Тема в разделе "Iskra JS, Espruino, Йодо", создана пользователем ejdme, 31 янв 2018.

  1. ejdme

    ejdme Нуб

    Всем привет! Не могу додуматься как улучшить код, чтобы светодиод всегда гас после того, как на пульте кнопку отпущу. Подскажите пожалуйста. Заранее спасибо. Вот код:
    Код (Javascript):
    var ir=require('@amperka/ir-receiver')
        .connect(P7);

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


    ir.on ('receive', function(code, repeat) {
    if (!repeat) {
      console.log('*******');
                 }

      console.log('0x' + code.toString(16));

      led.toggle();
    });
     
  2. Morgan

    Morgan Administrator Команда форума

    можно вместо led.toggle(); написать
    Код (Javascript):

    if (led.isOn()) {
      led.turnOff();
    } else {
      led.blink(0.1);
    }
     
    не проверял на работу, но попробуйте
     
    ejdme нравится это.
  3. andrey_308

    andrey_308 Нуб

    Ик-приемник не принимает никаких сигналов пульта. Код взял из книги Йодо (эксперимент №17), однако светодиод не мигает при нажатии. Как понять, проблема в пульте, или приемнике?
     
  4. ejdme

    ejdme Нуб

    Через камеру на телефоне можешь посмотреть, издаёт ли пульт инфракрасный свет во время нажатия.
     
  5. andrey_308

    andrey_308 Нуб

    Проверил, пульт работает. Значит проблема в ик - приемнике?
     
  6. andrey_308

    andrey_308 Нуб

    Решил проблему переподключив приемник в 6 пин. Видимо с 7 проблемы
     
  7. Ramil

    Ramil Нерд

    Это работает только когда плата подключена к espruino web ide.
    Если плату отключить от espruino web ide и зажать, не на долго, кнопку на пульте и отпустить диод остаётся гореть пока снова не подключишь к espruino web ide, подскажите как исправить?
    Код (Javascript):
    var led = require('@amperka/led')
      .connect(P1);
    var ir = require('@amperka/ir-receiver')
    .connect(P7);

    ir.on('receive', function(code, repeat) {
      if (led.isOn()) {
      led.turnOff();
    } else {
        led.blink(0.1);
      }
      console.log('0x' + code.toString(16));
    });
     
     
  8. ejdme

    ejdme Нуб

    Код (Javascript):
    var led=require('@amperka/led')
        .connect(P1)
        .brightness(0.5);


    var ir=require('@amperka/ir-receiver')
        .connect(P7);



    ir.on ('receive', function(code, repeat) {
    if (!repeat) {  console.log('*******');  }

      console.log('0x' + code.toString(16));
    var svet=false;
      if (svet) {
      led.turnOff();
    } else {
      led.blink(0.1);
    }
    });
     
    Я потом додумал как можно использовать знания из материалов и вот получил такой код