Управляемые светодиоды и другие вопросы.

Тема в разделе "Iskra JS, Espruino, Йодо", создана пользователем ИгорьК, 10 мар 2016.

  1. ИгорьК

    ИгорьК Гуру

    С одной стороны:
    0001.jpg

    С другой:
    0002.jpg

    Вопрос: можно ли программно управлять LED2?
     
  2. ИгорьК

    ИгорьК Гуру

    003.jpg

    На слегка желтом фоне указываются пины, как к ним можно обратиться из программы.
    Можно ли и как обратиться к этим пинам:

    004.jpg
     
  3. r1000ru

    r1000ru JS-технократ

    Можно обращаться ко всем пинам. При попытке использовать LED2 как GPIO|PWM, он перестает быть индикатором занятости "Busy". Для того, чтобы вернуть ему в вашей программе функцию индикатора занятости, можно воспользоваться функцией setBusyIndicator([pin]).
     
    egordorichev и ИгорьК нравится это.
  4. ИгорьК

    ИгорьК Гуру

    Слышал о C(ях), видел Lua (NodeMCU), читал про Python (он Малиновый).
    Убивался об JQuery, потому как JS не знаю. Но Искру купил...
    В общем, подскажите конструкцию, типа как прерывание. Как независимо от основного кода запускать некий процесс по таймеру?
    UPD. Видимо это: http://wiki.amperka.ru/js:timer
     
    Последнее редактирование: 11 мар 2016
  5. r1000ru

    r1000ru JS-технократ

    С таймерами все просто. Есть две функции: setTimeout(callback, delay), которая выполнит функцию callback через deley миллисекунд и setInterval(callback, timeout), которая будет выполнять каждые timeout миллисекунд функцию callback. Обе эти функции возвращают идентификатор Подробнее о них можно прочесть в вики в разделе http://wiki.amperka.ru/js:builtins#setInterval. Там же описаны функции clearInterval, для отмены выполнения по таймеру, и changeInterval, для изменения периода вызова функции callback.

    Что касается прерываний и событий. Для того чтобы на пин навесить прерывание, можно использовать функцию setWatch(callback, pin [, opts]). Функция callback будет вызываться при событии на пине pin, в opts вы можете указать параметры, когда вызывать событие: по какому фронту сигнала (или по обоим фронтам), значение времени для подавления дребезга, однократное это прерывание или постоянное. Подробнее об этой функции вы можете прочесть тут: http://wiki.amperka.ru/js:функции_работы_с_пинами#setWatch

    Так же существуют обработчики событий для последовательного порта SerialN.on(trigger, callback), где trigger - название события, к примеру data (появление новых данных), а callback - функция которая будет выполнена при наступлении этого события.
     
    Последнее редактирование: 11 мар 2016
    Budist_2 и ИгорьК нравится это.
  6. Budist_2

    Budist_2 Нуб

    В Iskre js есть два аналоговых выхода, подскажите пожалуйста, можно ли с помощью них воспроизводить звук?
     
  7. nailxx

    nailxx Официальный Нерд Администратор

    Да, но вам понадобится кое-какая обвязка (voltage follower, voltage shifter): пины выдают от 0 до 3,3 вольт, а на наушниках нужно получить переменный ток, т.е. качать их от отрицательного до положительного напряжения.

    У нас в прототипах уже есть беззаботный модуль-посредник, который одной стороной включается к ЦАП’у, а на другой стороне у него 3,5 мм джек; но на витрине он появится только через пару месяцев.
     
  8. ИгорьК

    ИгорьК Гуру

    Подскажите, а это работает?
    43563456.jpg
     
  9. nailxx

    nailxx Официальный Нерд Администратор

    Проверил. Бага в коде. Добавил в список багов.