Форум: "Начинающим";
Текущий архив: 2010.11.21;
Скачать: [xml.tar.bz2];
ВнизПреоброзование данных Найти похожие ветки
← →
ZV © (2010-08-30 18:28) [0]Есть массив целых чисел типа
Byte
, допустим79,166,57,....
ониже в НЕХ формате4f,a6,39,....
Так вот мне нужно их преобразовать в такой вид4,f,a,6,3,9,....
При помощи какой функции это можно сделать в Delphi ?
← →
Сергей М. © (2010-08-30 18:30) [1]При помощи самописной.
← →
Сергей М. © (2010-08-30 18:32) [2]Впрочем, смотря что понимать под "преобразовать".
В первом приближении можно воспользоваться штатной BinToHex
← →
ZV © (2010-08-30 18:56) [3]
> Впрочем, смотря что понимать под "преобразовать".
Дело в том что устройство которому необходимо передать данные (по СОМ порту), нужно отпровлять данные в таком формате:
если нужно отправить число 4f, то в порт нужно передать сперва бай 4 а потом f.
← →
Anatoly Podgoretsky © (2010-08-30 19:09) [4]> ZV (30.08.2010 18:56:03) [3]
Ну и нафига ты тогда указываешь формат с запятыми, и я весьма соневаюсь, что
устройство работает с HEX кодами.
← →
ZV © (2010-08-30 19:53) [5]Устройство работает не с НЕХ кодами, а с данными. Я привел пример в НЕХ формате что бы было понятно что я хочу.
Вот как принимает данные устройство код на Си
char tetrada(B:char)
{
if (B <=9) return(B-"0");
else return(B-"A"+10);
}
unsigned char decod (void)
{
unsigned char Data;
Data = tetrada(getchar())<<4 | terada(getchar());
}
← →
Германн © (2010-08-30 20:19) [6]
> При помощи какой функции это можно сделать в Delphi ?var
St : String;
St:="";
for i:=1 to N do St:=St+IntToHex(Bytes[i],2);
← →
ZV © (2010-08-30 20:53) [7]Спасибо .Сейчас попробую
← →
Сергей М. © (2010-08-30 21:22) [8]
> ZV © (30.08.10 18:56) [3]
А давай ты уже не будешь нести здесь фривольную отсебячину и приведешь один-в-один соотв.фрагмент оригинальной документации , касаемой протокола инф.обмена с этим устройством ?
← →
Германн © (2010-08-31 00:51) [9]
> Сергей М. © (30.08.10 21:22) [8]
>
>
Встречал я такой протокол однажды.
← →
Anatoly Podgoretsky © (2010-08-31 09:06) [10]
> Устройство работает не с НЕХ кодами
Как тогда понимать это
> мне нужно их преобразовать в такой вид
← →
Anatoly Podgoretsky © (2010-08-31 09:08) [11]
> for i:=1 to N do St:=St+IntToHex(Bytes[i],2);
>
И как тогда понимать это, если ты с HEX не работаешь
> Спасибо .Сейчас попробую
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2010.11.21;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.003 c