Рейтинг:
0
OriginalGriff
Но это не так. Проблема в том, что - по крайней мере - это четыре буквенных символа: от "А" до "Я" в каждом месте. Это означает, что существует 26 возможных значений для каждого из четырех символов, составляющих ваш код (или 36, Если вы также разрешаете цифры).
Два байта могут содержать только четыре значения * 16 - от 0 до 65535 - и четыре * 26 требуют от 0 до 456875, которые физически не поместятся в два байта.
ramadevi82
или я могу хранить в пакетном формате?
если да,то можете ли вы помочь мне в кодировании
OriginalGriff
Откуда мне знать? У меня нет никакой информации о том, что вы делаете, кроме того, что вы набрали, и до сих пор это просто просьба о чем-то, что физически невозможно!
Я понятия не имею, почему вы пытаетесь это сделать, для чего используется ваш код, вообще ничего.
ramadevi82
мой код используется для биомедицинской машины.мы проводим в нем некоторые тесты.для запуска теста нам нужны некоторые значения параметров.раньше мы хранили значения вручную с помощью клавиатуры, но теперь я пытаюсь сохранить их в ПК и отправить через rs232 на машину.
например,у нас температуры 37 град С,название испытания, "Чол"(холестерина),объем аспирации и т. д....те поля, которые у меня есть, чтобы сохранить значения
OriginalGriff
Итак, первое, что вам нужно сделать, это посмотреть на связь с машиной, и что она принимает, и как она принимает их - потому что пока вы точно не знаете, что вы можете отправить (и как вы можете это отправить), нет никакого смысла начинать кодировать или даже начинать проектировать код - вы не можете изменить то, что делает машина, поэтому вам нужно обойти это. А это означает полное понимание связи с ним и тестирование того, что вы хотите сделать, используя что-то вроде Hyperterminal, чтобы доказать концепцию, прежде чем вы начнете кодировать.
ramadevi82
я должен отправить код в шестнадцатеричном формате и уже код был разработан ранее в коде C теперь в соответствии с этим я должен установить параметры
ramadevi82
с помощью программирования в VB6 у меня есть, чтобы отправить значения параметров
ramadevi82
а связь осуществляется через rs232
OriginalGriff
О, боже мой...
RS232-это спецификация связи физического уровня: она определяет электрические характеристики линии связи в терминах напряжений и означает ли они "1" или "0" в битовых терминах. Он не указывает, что эти "1"и "0"означают для любого конца ссылки, как быстро они должны быть отправлены или какая интерпретация должна быть поставлена на них. Черт возьми, он даже не определяет, является ли ссылка синхронной, асинхронной или насколько велик символ (или даже используются ли символы вообще).
Если у вас есть код на языке Си, которому вы должны следовать - потому что он работает - тогда прочтите его и посмотрите, что он делает. Потому что "отправка параметров" - это не функция RS232: речь идет о слое 2 7-слойной модели, в которой RS232-это седьмой слой, прямо внизу!
ramadevi82
Хорошо, спасибо, я проверю и еще одно сомнение..я уже говорил ранее, что преобразую параметры в шестнадцатеричный код, поэтому "CHOL" преобразуется в "43484f4c" и сохраняется в базе данных, но могу ли я сформировать его как структуру пакета с кадром RS-232 as (1 стартовый бит, 7 битов данных, 1 бит четности и 2 стоп-бита).