Отправка данных в 3-байтовом пакете - PullRequest
0 голосов
/ 23 февраля 2012

Я пытаюсь отправить команду на мою плату LAC, используя Visual C ++.На странице 6 LAC Config говорится, что буфер отправляется в 3-байтовом пакете.

Buffer[0]=Control

Buffer[1]=Data Low

Buffer[2]=Data High

Что это значит и как мне выяснить, как мне установить каждое из этих значений?

Спасибо

1 Ответ

1 голос
/ 24 февраля 2012

Если вы продолжите читать, то увидите, что далее следует список всех управляющих кодов, после чего следует подробное описание каждого из них. В руководстве также упоминается, что образец кода доступен, возможно, где-то на их веб-сайте.

В общем, установка значений немного сложна. BYTE, вероятно, является typedef или макросом, который разрешается в 8-битный тип данных без знака, то есть он может содержать значения только от 0 до 255. Два байта могут представлять значения до 65535. Однако, если вы хотите сохранить значение Если этот буфер больше 255, вам придется разложить его на старший и младший байты. Вы можете сделать это следующим образом:

unsigned int value = 512;
BYTE low_byte = 0xff & value;
BYTE high_byte = value >> 8;
...