iskra js + iskra mini + uart

Тема в разделе "Iskra JS, Espruino, Йодо", создана пользователем okodemicos, 13 июл 2018.

  1. okodemicos

    okodemicos Нуб

    Доброго времени суток!
    Заранее извиняюсь, если проглядел "ответ" на форуме - во всяком случае подходящего не нашел.
    Задача: необходимо соединить по UART IskraJS и 1 (несколько) IskraMini. При этом нельзя (по техническим причинам проекта) использовать нестандартные пины (неаппаратного Serial-соединения, т.е. пины RX/TX - P0/P1).
    Ранее проверял на связке ArduinoUNOR3 + ArduinoProMini. Там все работало: при отладке через COM-порт с USB-соединением с ПК получал запросы от UNO/Mini, а когда связывал их между собой - корректный прием/передачу данных. Теперь пытаюсь код перетащить из Arduino в Iskra (тяжко после С++ переходить на JS, но не суть).
    Суть проблемы: как их корректно связать по стандартным портам RX/TX (пины P0/P1)? Возможно ли вообще такое или Iskra в этом от Arduino отличается? И есть ли в работе с Iskra аналог "терминала" из Arduino IDE, чтобы можно было отлавливать передаваемые платами сообщения, если разъединить платы друг от друга и по одной подключать к ПК?
     
  2. Daniil

    Daniil Гуру

    Будьте осторожны, когда начнете подключать "несколько" что-то может сломаться, для подключения нескольких устройств посмотрите на rs485
     
  3. okodemicos

    okodemicos Нуб

    to Daniil
    Спасибо, про rs485 тоже думал, но пока на Arduino добился безпроблемной работы по UART, поэтому rs485 прикручу позже (возможно)...
    Тем не менее, тема с Iskra-Iskra+UART все еще актуальна. Как я понимаю, IskraJS не умеет использовать пины 0 и 1 для RX/TX в чистом виде, как это делает Arduino? Возможно, это связано со спецификой JS и инструкций? Просто при заливке в IskraJS любого кода, который в цикле читает Serial-буфер (аппаратный), а позже, по получению ответа, отсылает туда какое-то сообщение, получаю полное зависание IDE и невозможность дальнейшей заливки кода в Iskra. Приходится обновлять прошивку (подменять) через DFU-режим, что крайне неприятно. Использую инструкции Serial3.print и Serial3.read с первичным Serial3.setup(9600)...
     
  4. sys

    sys Злобный Буратино Модератор

    Когда Iskra JS mini не подключена к ПК по USB, то консоль интерпретатора вешается на Serial1 и передача данных по нему невозможна. В этом случае для освобождения Serial1 от консоли используйте LoopbackA.setConsole(true) http://forum.amperka.ru/threads/f-a-q-ЧаВо-Прежде-чем-задать-вопрос-на-форуме.12591/#post-125368

    а так, если честно, не совсем понял схему подключения и ТЗ ваше проекта :)