|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.07.2016, 12:33 | #1 |
Регистрация: 02.10.2012
Сообщений: 5
|
Chr и ansistring
Пишу программу для работы с устройством. Необходимо в устройство отправлять команды в шестнадцатеричном формате.
Если пишу так: Var adr:ansistring; ...... adr:=#128; .... отправка в порт ..... то все нормально, в устройство приходит значение 80 Но если пишу так: adr:=Chr(128); то приходит значение 3F. При чем числа от 0 до 127 приходят правильно, а вот начиная с 128 начинается какая то ерунда. Помогите разобраться, пожалуйста. p.s. Пишу на Delphi xe2 Последний раз редактировалось Vitamaster; 22.07.2016 в 12:43. |
22.07.2016, 12:44 | #2 |
Форумчанин
Регистрация: 24.10.2007
Сообщений: 208
|
может лучше для отправки в порт использовать не строку а байтовый массив и заполнять его как то так
Buf[0] := $80; Buf[1] := $81;
интенсивно гуглю прежде чем задать вопрос
|
22.07.2016, 12:52 | #3 |
Регистрация: 02.10.2012
Сообщений: 5
|
Дело в том, что для отправки использую готовый компонент и используется вот такая команда:
nrComm1.SendData(PAnsiChar(adr),raz mer); Но мне нужно, чтобы параметр adr был динамическим, то есть я не могу прописывать значения статически. |
22.07.2016, 12:57 | #4 | |
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
Цитата:
Метод SendData() может выдать любой кусок памяти. Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
|
22.07.2016, 12:58 | #5 |
Форумчанин
Регистрация: 24.10.2007
Сообщений: 208
|
Опишите массив так TBuf = array[0..MAXWORD] of byte
а в вашей функции SendData вы как раз и указываете последним параметром сколько байт из этого буфера вы должны взять для отправки
интенсивно гуглю прежде чем задать вопрос
|
22.07.2016, 13:00 | #6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
adr:=AnsiChar(128)
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
22.07.2016, 13:04 | #7 |
Регистрация: 02.10.2012
Сообщений: 5
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
delphi: chr(); java ??? | Borec95 | Общие вопросы по Java, Java SE, Kotlin | 1 | 19.03.2012 21:41 |
Delphi: chr(); Java ???; | Borec95 | Помощь студентам | 1 | 18.03.2012 23:19 |
Функция, подобная Chr | Bagirli | Общие вопросы Delphi | 3 | 04.02.2012 21:38 |
Ошибка Unresolved external 'AVIA::AVIA(int, System::AnsiString, System::AnsiString, System::AnsiString, int) | mexmexmex | C++ Builder | 3 | 27.12.2011 13:31 |
Функция Chr() | Fantom | Общие вопросы Delphi | 4 | 12.05.2008 12:45 |