|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
14.09.2007, 08:25 | #1 |
Пользователь
Регистрация: 14.09.2007
Сообщений: 16
|
Строка символов в виде байтов
Пишем программу управления прибором через СОМ-порт.
Данные принимаем в виде строки из данных разных типов(Float,unsigned int, unsigned long, unsigned char). Как правильнее и проще представить эту строку в виде последовательности байтов или бит для её дальнейшей обработки.
Blondinka это моё мироощущение при програмировании...
|
14.09.2007, 09:18 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А в чем заключается дальнейшая обработка?
P.S. Строку в байты переводить не обязательно если очень уж хоцца то мона так <переменка байтовая>:=byte(s[i])
I'm learning to live...
|
14.09.2007, 09:49 | #3 |
Пользователь
Регистрация: 14.09.2007
Сообщений: 16
|
Пояснения!!!
Прибор регулярно посылает данные о своём состоянии(20-30 параметров) разных типов в виде длинной строки символов.
Вот пример строки: ?y?yI.?.....?O.A¦?D<4?7;Ao.Bq=.B??. B?e@B??gB®GXB..*A..*A?u??Ay3Axg&A+? 8A¤?O?.....................I.., Где первые 4 байта заголовок, 5-й идентификатор, в следующих 2 байтах передаётся 16 параметров(каждый бит да-нет),далее числа разных типов в перемешку. Правила построения строки знаем. Проблема в том, как всё это разобрать по переменным(каждому параметру прибора своя переменная).
Blondinka это моё мироощущение при програмировании...
|
14.09.2007, 09:53 | #4 |
Участник клуба
Регистрация: 28.03.2007
Сообщений: 1,814
|
Я в своей проге делал следующим образом
.... str:=''; for i:=1 to Rxbytes do begin str:=str+'$'+format('%.2x',[buffer[i]])+','; memo1.Text:=memo1.Text+str; end; где RXBytes-кол-во принятых байтж buffer-массив принятых байт |
14.09.2007, 10:01 | #5 |
Пользователь
Регистрация: 14.09.2007
Сообщений: 16
|
Ответ SERG1980
Меня интересуют не символы, а представление уже принятой строки в виде байтов!
Потому как встречаются и неотображаемые символы!
Blondinka это моё мироощущение при програмировании...
|
14.09.2007, 10:04 | #6 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Блондинка, можеш попробовать сделать переменку типа запись где
=record Zagolovok:array[1..4] of byte id:byte; param:word; Ну и так далее по типам, поскольку Правила построения строки знаем, end; ну и присваивать приведением типов эту строку в переменную типа эта запись P.S. ну я так делал на контроллерах.
I'm learning to live...
|
14.09.2007, 10:08 | #7 |
Пользователь
Регистрация: 14.09.2007
Сообщений: 16
|
А можно поподробнее, я ж блондинка...
Blondinka это моё мироощущение при програмировании...
|
14.09.2007, 10:29 | #8 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Блондинок уважаю и люблю )
Вот например так : Код:
I'm learning to live...
Последний раз редактировалось mihali4; 08.12.2009 в 14:14. |
14.09.2007, 10:35 | #9 | |
Участник клуба
Регистрация: 28.03.2007
Сообщений: 1,814
|
Цитата:
|
|
14.09.2007, 10:35 | #10 |
Пользователь
Регистрация: 14.09.2007
Сообщений: 16
|
Спасибо!!!!
Спасибо!
Пойду попробую!
Blondinka это моё мироощущение при програмировании...
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Строка больше 255 символов? | TwiX | Общие вопросы Delphi | 6 | 07.12.2009 16:53 |
Строка длинною более 255 символов | Kuzya59 | Общие вопросы Delphi | 7 | 27.09.2009 20:29 |
Как узнать состоит ли строка из одных числовых символов | DarkEvil | Общие вопросы Delphi | 12 | 13.08.2009 08:44 |
Данные из буфера обмена в виде массива байтов | eda | Microsoft Office Excel | 10 | 12.08.2009 17:00 |
C++,строка символов | Alik-Soldier | Помощь студентам | 1 | 01.05.2009 16:57 |