Вверх ↑
Этот топик читают: Гость
Ответов: 16884
Рейтинг: 1239
#31: 2012-12-17 01:58:44 ЛС | профиль | цитата
Леонид, а в Label (или в любой другой компонент передать)?
l2.png
и это только 16 знаков, а человеку нужно 22.
Пришлось сооружать такую муть (вот выдрал из своей схемы):
code_29771.txt
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 2l2.png [16.4KB] [282], code_29771.txt [1.4KB] [140]
Ответов: 8930
Рейтинг: 823
#32: 2012-12-17 02:16:10 ЛС | профиль | цитата
Tad, ну мы же не знаем, как у ТС происходит обмен командами между компьютером и железом, наверняка побайтно или 16, или 32, но никак не четырьмя битами, ознакомит с "руководством программиста", ещё можно тыкву чесать Во, уже третий час у нас спать пошёл
карма: 19

0
Разработчик
Ответов: 26164
Рейтинг: 2127
#33: 2012-12-17 02:17:24 ЛС | профиль | цитата
Леонид писал(а):
ну мы же не знаем, как у ТС происходит обмен командами между компьютером и железом

Вот только что хотел это же самое спросить
карма: 22

0
Ответов: 91
Рейтинг: 1
#34: 2012-12-17 10:08:25 ЛС | профиль | цитата
Вот, наваял вчера прогу, призванную достучаться до железа.
Как видите, обмен данными происходит фреймом в 22 байта, за раз.
Но, каждый элемент фрейма должен быть обработан отдельно от остальных перед передачей.
Я использую тип вводимых данных - Text ,если использовать HexNumber, то при обработке данные искажаются.
code_29772.txt
карма: 1

1
файлы: 1code_29772.txt [11.2KB] [138]
Голосовали:ser_davkin
Ответов: 8930
Рейтинг: 823
#35: 2012-12-17 11:04:28 ЛС | профиль | цитата
rolin, молодец! Первый раз вижу "начинающего", который озаботился внешним видом схемы
(Вместо цепочки StrCat можно и нужно использовать один FormatStr) code_29773.txt
карма: 19

0
файлы: 1code_29773.txt [10.4KB] [125]
Разработчик
Ответов: 26164
Рейтинг: 2127
#36: 2012-12-17 11:25:40 ЛС | профиль | цитата
rolin писал(а):
фреймом в 22 байта, за раз.

Вопрос -- 22 байта бинарных данных или еще чего
Если это 22 байта, то причем здесь вообще HEX
И это бинарные байты или их символьное представление
------------ Дoбавленo в 11.13:
Схема, конечно, здорово, но пока вопрос о типе обмениваемых данных остается открытым
------------ Дoбавленo в 11.25:
Продолжаем исследование. Остановимся на трех распространенных кодировках

ASCII -- один бинарный байт равен одному символу ASCII со значениями от 0 до 255;
HEX -- один бинарный байт соответствует двум символам ASCII со значениями от 0 до F;
TEXT -- один бинарный байт соответствует трем символам ASCII (если выдерживать разрядность) со значениями от 0 до 9

Какими из этих данных происходит обмен

На будущее -- у нас формат String это не текст, а кодовая последовательность ASCII символов, которая может поддерживать весь диапазон байтовых значений от 0 до 255
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#37: 2012-12-17 11:28:45 ЛС | профиль | цитата
В дополнение к Леонид-у.
rolin, у Edit есть свойство MaxLenField. Так что все твои сравнения на ">" и все Delete выбрасываем.
В схеме остаётся
Edit......11
Label......2
FormatStr..1
Button.....1
------------
Всего.....15
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26164
Рейтинг: 2127
#38: 2012-12-17 11:31:59 ЛС | профиль | цитата
Tad писал(а):
у Edit есть свойство MaxLenField

Которого нет в инсталляционной версии, а есть только в билдах
карма: 22

0
Ответов: 1536
Рейтинг: 176
#39: 2012-12-17 11:40:17 ЛС | профиль | цитата
[flood]nesco, я уже писал Шефу об этом, мол, нужно указать ссылку альтернативной сборки на главной странице Hiasm. Но пока, не был услышан.[/flood]
карма: 1
Не так страшна ошибка, как опасность её не заметить.

0
Ответов: 8930
Рейтинг: 823
#40: 2012-12-17 11:44:01 ЛС | профиль | цитата
nesco, по схеме ТС формирует 44 НЕХ символа, полагаю что их нужно превратить попарно справа в 22 байтных символов и в таком виде скормить железу
карма: 19

0
Разработчик
Ответов: 26164
Рейтинг: 2127
#41: 2012-12-17 11:56:54 ЛС | профиль | цитата
Леонид писал(а):
полагаю что их нужно превратить попарно справа в 22 байтных символов и в таком виде скормить железу

Вот именно, что "полагаю"
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#42: 2012-12-17 12:29:29 ЛС | профиль | цитата
nesco писал(а):
Которого нет в инсталляционной версии, а есть только в билдах
А что у него ПКМ и "Обновить с SVN" не работает ?
rolin,
code_29774.txt
------------ Дoбавленo в 12.15:
И всего 3.5kb вместо 11.5 у тебя
------------ Дoбавленo в 12.29:
Леонид писал(а):
полагаю
что они передаются строкой, а железо раздаёт кому, чего и сколько надо.
(в управлении трансиверами, во всяком случае, вроде так (полагаю))
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1code_29774.txt [3.4KB] [175]
Ответов: 8930
Рейтинг: 823
#43: 2012-12-17 13:50:43 ЛС | профиль | цитата
Tad писал(а):
они передаются строкой
Ну да, как-то так, кусочек переделал code_29775.txt
карма: 19

0
файлы: 1code_29775.txt [5.9KB] [137]
Ответов: 91
Рейтинг: 1
#44: 2012-12-17 14:02:12 ЛС | профиль | цитата
Tad, Не, обновление элемента у меня не сработало и в Edit нет такого свойства, но это и неважно, в дальнейшем не будет необходимости вводить данные вручную, это просто временная защита от кривых рук.

nesco, Глубина Ваших мыслей поражает, но приходится углубляться
nesco писал(а):
Вопрос -- 22 байта бинарных данных или еще чего
Если это 22 байта, то причем здесь вообще HEX


Ответ - 22 байта данных значение которых строго определено. Формат, в котором эти данные представлены не важен.В документе на железо используется
НЕХ а значит в таком виде нам удобно представить свои данные. В каком виде элемент UDP отправит эти данные нас не интересует, но формат входных данных должен быть понятен элементу.
nesco писал(а):
И это бинарные байты или их символьное представление

Даже если и символьное представление то кодировка должна соответствовать бинарному значению исходных данных.

nesco писал(а):

ASCII -- один бинарный байт равен одному символу ASCII со значениями от 0 до 255;
HEX -- один бинарный байт соответствует двум символам ASCII со значениями от 0 до F;
TEXT -- один бинарный байт соответствует трем символам ASCII (если выдерживать разрядность) со значениями от 0 до 9

Какими из этих данных происходит обмен

Я не знаю какие типы у нас передаются по TCP/IP/UDP. А Вы не помните программки типа Терминал? Там тоже Нех данные клавой набивались и отправлялись
но как оно внутрях я не знаю.

Короче, свою прогу опробовал, и она явно стучится в дверь к железу судя по лампочке сетевой активности, но железо не реагирует.
Леонид писал(а):
по схеме ТС формирует 44 НЕХ символа, полагаю что их нужно превратить попарно справа в 22 байтных символов и в таком виде скормить железу

Полагаю что в этом и ошибка,тип Техт не подходит.
карма: 1

0
Разработчик
Ответов: 26164
Рейтинг: 2127
#45: 2012-12-17 14:10:25 ЛС | профиль | цитата
rolin писал(а):
В документе на железо используется НЕХ а значит в таком виде нам удобно представить свои данные

А ссылкой не побалуете на это описание
rolin писал(а):
Я не знаю какие типы у нас передаются по TCP/IP/UDP

Разные могут быть
карма: 22

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)