On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение



ссылка на сообщение  Отправлено: 11.02.17 15:56. Заголовок: Текстовый буффер


Не совсем про Serial Buffer, но что-то туплю. Наверняка тривиально, но не вижу простого решения...

Дано: Crestron App, из которой снимается Serial join от элемента TextEntry. Мне надо передать законченную строку (после того, как нажали ENTER) на другое устройство. НО! Устройство принимает строку и сразу обрабатывает, ругается, если она неправильная (не законченная). То есть строку надо посылать, когда она полностью сформирована.

Как сделать? TextEntry выдает по Serial Join всю строку на текущий момент, так что Serial Queue мне не помогает... Я мог бы открывать Serial Buffer по нажатию ENTER, но он не будет пропускать строку, если она не меняется (а на момент нажатия ENTER она уже закончилась).

Есть простое решение?

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 13 [только новые]







ссылка на сообщение  Отправлено: 11.02.17 17:39. Заголовок: Если есть признак ок..


Если есть признак окончания (делиметр) наверное поможет gather (могу ошибаться, посмотрите).
Мне проще simpl+ модуль из пары строк написать.
DIGITAL_INPUT Enter;
STRING_INPUT in$[255];
STRING_OUTPUT out$;

PUSH Enter
{
out$=in$;
Processlogic();
}

Продам модули на конференц системы BOSCH DCN CCU2, CCS1000D, EmailRUS
+79161734005
Спасибо: 0 
ПрофильЦитата Ответить



ссылка на сообщение  Отправлено: 11.02.17 17:53. Заголовок: Не, нет признака... ..


Не, нет признака... Проверил - при нажатии ENTER TextEntry его не добавляет...

Да, я тоже больше про SIMPL+, но это кажется тем случаем, когда должно быть простое решение в SIMPL... Спасибо, не буду заморачиваться - действительно, проще в SIMPL+ написать

Спасибо: 0 
ПрофильЦитата Ответить





ссылка на сообщение  Отправлено: 11.02.17 18:26. Заголовок: Я исправил опечатку..


Я исправил опечатку

Продам модули на конференц системы BOSCH DCN CCU2, CCS1000D, EmailRUS
+79161734005
Спасибо: 0 
ПрофильЦитата Ответить





ссылка на сообщение  Отправлено: 11.02.17 18:33. Заголовок: Делаю такую же хрень..


Делаю такую же хрень, только на старой графике...
Не очень понял как поле по сериал выдает текст при нажатии ентера?

Спасибо: 0 
ПрофильЦитата Ответить



ссылка на сообщение  Отправлено: 11.02.17 20:09. Заголовок: В TextEntry есть Ser..


В TextEntry есть Serial join, по которому выдается текущее состояние вводимой строки - т.е. при каждом нажатии клавиши, значение меняется.

Есть отдельный join на нажатие Enter. Соответственно, задача была отправить завершенную строку по нажатию Enter, но не раньше. В SIMPL не нашел элегантного решения. В SIMPL+ действительно решается в одну строку.

Спасибо: 0 
ПрофильЦитата Ответить





ссылка на сообщение  Отправлено: 11.02.17 21:04. Заголовок: Есть в SIMPL простое..


Есть в SIMPL простое решение...
Serial RAM + Serial/Analog One-Shot + Serial Buffer
Сериал подаем на каждый элемент, в Serial RAM select1 ставим в единицу, ентер ставим на recall и enable Serial Buffer, выход Serial/Analog One-Shot ставим на store в Serial RAM. С выхода Serial Buffer забираем данные дальше... Должно работать.

Спасибо: 0 
ПрофильЦитата Ответить



ссылка на сообщение  Отправлено: 11.02.17 21:53. Заголовок: Неа. Проблема в том,..


Неа. Проблема в том, что serial buffer передает значение только при изменении строки. То есть при открытии гейта (нажатие ENTER) ничего не передастся, т.к. строка после этого не меняется...

Спасибо: 0 
ПрофильЦитата Ответить



ссылка на сообщение  Отправлено: 11.02.17 22:33. Заголовок: Crestroner пишет: Н..


Crestroner пишет:

 цитата:
Неа. Проблема в том, что serial buffer передает значение только при изменении строки. То есть при открытии гейта (нажатие ENTER) ничего не передастся, т.к. строка после этого не меняется...



analog buffer ? ;)

Спасибо: 0 
ПрофильЦитата Ответить



ссылка на сообщение  Отправлено: 11.02.17 22:37. Заголовок: Гуд поинт. С ним дол..


Гуд поинт. С ним должно сработать. Ну, да ладно, уже на + сделал...

Спасибо: 0 
ПрофильЦитата Ответить





ссылка на сообщение  Отправлено: 13.02.17 20:51. Заголовок: Кто знает как реализ..


Кто знает как реализовать на модулях код:
STRING_INPUT in$[1024]; 
STRING_OUTPUT out$;

CHANGE in$
{
out$=LEFT(in$, LEN(in$)-1);
}


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




ссылка на сообщение  Отправлено: 13.02.17 21:34. Заголовок: Я бы даже не тратил ..


Я бы даже не тратил время на реализацию такой подвижки в SIMPL.
Предлагаю остановиться на SIMPL+.

Буфер пишется с одной буквой "ф", с двумя больше похоже на буффонаду, это где колуны скачут.

Чем продиктована такая необходимость? Что придавило?

Спасибо: 0 
ПрофильЦитата Ответить





ссылка на сообщение  Отправлено: 13.02.17 21:56. Заголовок: Низкий приоритет SIM..


Низкий приоритет SIMPL+ и время выполнения.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




ссылка на сообщение  Отправлено: 13.02.17 22:04. Заголовок: ОК, а оно может не в..


ОК, а оно может не выполниться вообще из "низкого приоритета"?
Я бы пересмотрел структуру системы управления, если получается, что процессор загружен под завязку.
Возможно, у вас избыток лишних операций, циклов, бесполезных висяков.

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 74
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет