SmartPipe. Настройка.

Блог им. trapper
SmartPipe довольно сложное устройство, оно может работать и как обычный USB-Serial адаптер, так и как фильтр для логов, может как передавать данные от тестируемого устройства так и предавать данные между двумя портами компьютера. Чтобы использовать все эти возможности необходимо правильно настроить SmartPipe.
Если коротко, то SmartPipe может быть в одном из двух состояний: состояние обработки данных и состояние настройки устройства.
  • В состоянии обработки данных SmartPipe передает и обрабатывает данные поступающее на входы/выходы устройства.
  • В состоянии настройки SmartPipe пользователь через командную строку может настроить правила обработки данных посмотреть сервисную информацию и тд.


Ну а если более подробно, то в SmartPipe есть три параметра настройки, комбинация которых и дают все многообразие работы устройства:
  • режим работы (MODE)
  • канал обмена (PIPES)
  • тип входного потока (ITYPE)

Режимы работы (MODE).
SmartPipe имеет три режима работы.
  • DEFAULT MODE — режим «по-умолчанию». В этом режиме находиться устройство при первом включении. В этом режиме UART порт устройства обменивается данными с USB-COM1 портом без какой-либо обработки данных. Фактически это режим стандартного USB-Serial адаптера.
  • STREAM MODE — режим форматирования данных. В этом режиме во время обмена данными между портами устройства происходит форматирование данных в соответствии с правилами.Это основной режим работы устройства.
  • COMMAND MODE — режим конфигурации устройства. В этом режиме запускается shell-оболочка устройства, в которой с помощью shell-команд можно производить конфигурирование SmartPipe (добавлять/удалять правила, получить информацию об устройстве и тд.)

Каналы обмена и порты (PIPES).
В SmartPipe имеет несколько портов — программно-аппаратных интерфейсов, через которые SmartPipe взаимодействует с внешними устройствами(с ПК и тестируемым девайсом).
Всего таких портов три:
  • UART1 — аппаратный порт с тремя сигналами UART интерфейса (RXD/TXD/GND);
  • USB-COM1 — первый виртуальный COM порт, видимый ПК при подключении SmartPipe;
  • USB-COM2 — второй виртуальный COM порт, видимый ПК при подключении SmartPipe.

Для передачи данных между портами в устройстве создаются каналы обмена.
Канал обмена(Pipe) описывает «путь» прохождения данных между портами SmartPipe (например канал обмена direct: UART1<->USB-COM1;).
Кроме портов в описание «пути» канала могут входить другие функциональные модули устройства такие как Filter (модуль фильтрации логов), Rules (список правил) и др.
На данный момент определенно три канала обмена:
  1. Канал direct — передает необработанные данные между UART1 и COM1 портами. (UART1 <-> USB-COM1;)
  2. Канал test — передает и обрабатывает данные между COM1 и COM2 портами, а также передает «эхо» в UART1 порте. (USB-COM1<->Filter<->USB-COM1;UART~;)
  3. Канал filter — передает и обрабатывает данные между UART1 и COM1 портами, а также передает необработанные данные между UART1 и COM2 портами. (UART1<->Filter<->USB-COM1;UART1<->USB-COM2;)



Тип входного потока (ITYPE).
Поток данных, приходящих на входные порты SmartPipe, может обрабатываться в двух разных режимах (ITYPE):
  • CHAR — режим посимвольного ввода, как только символ появляется на входе устройства он тут же пересылается по каналу на выход. В этом режиме правила отключены. Режим удобен когда устройство работает как стандартный UART/USB адаптер.
  • LINE — режим построчного ввода, данные со входа устройства обрабатываются и передаются на выход только при получении символа «Подача строки» LF(0x0A). В этом режиме правила включены и будут применяться к входящим строкам. Режим удобен когда устройство работает c логами от устройств и может фильтровать и обрабатывать их.

Переход между режимами работы.

Переход в COMMAND MODE.
В COMMAND MODE можно перейти из любого другого режима, для этого необходимо нажать последовательность клавиш:
CTRL-Q / CTRL-S / Enter в терминале любого из портов текущего канала обмена.
Например (cм. рисунок 1):
SmartPipe находится в DEFAULT MODE режиме в котором текущий канал обмена direct(UART1<->USB-COM1;).
Тогда для перехода в COMMAND MODE необходимо:
  1. Открыть программу-терминал (например TeraTerm) и подключить ее к порту USB-COM1.
  2. Выполнить нажатие последовательности клавиш: CTRL-Q / CTRL-S / Enter.
  3. SmartPipe прейдет в COMMAND MODE и появиться promt «sLog#»

Переход в DEFAULT MODE.
В DEFAULT MODE можно перейти только из COMMAND MODE, когда список правил ПУСТ. Для этого необходимо выполнить команду «exit» в shell SmartPipe.

Переход в STREAM MODE.
В STREAM MODE можно перейти только из COMMAND MODE, когда список правил НЕ ПУСТ. Для этого необходимо выполнить команду «exit» в shell SmartPipe.


Переключение каналов обмена.
Каналы обмена используются только в STREAM MODE поэтому переключить их можно только с помощью специальных команд в SmartPipe правилах. Обычно эти команды добавляются в правила инициализации, но могут быть применимы и в любых других правилах. Последняя команда создания канала отменяет установки предидущего канала.
Команды создания каналов:
  1. Канал direct. Команда: "direct;" (пример правила ":;;direct;")
  2. Канал test. Команда: "test;" (пример правила ":;;test;")
  3. Канал filter. Команда: "filter;" (пример правила ":;;filter;")


Переключение типа входного потока.
Переключение между типами входного потока происходит нажатием последовательности клавиш:
CTRL-Q / CTRL-W / Enter в STREAM MODE/DEFAULT MODE режимах.

0 комментариев

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.