Компонент TJvHidDeviceController из JVCL

Подключаем наши девайсы к компьютеру. Обсуждаются: порты, протоколы, драйвера, языки программирования и т.д.
Ответить
Открыл глаза
Сообщения: 47
Зарегистрирован: Вт авг 31, 2010 18:26:35

Сообщение ____Eugene____ »

Пытаюсь соединить мк с пк со стороны мк решил воспользоваться V-USB со стороны пк Компоненом TJvHidDeviceController писать решил на делфи

можит кто знает где найти подробное описание как роботать с TJvHidDeviceController
желательно на русском, в поисковике толком нечего не нашел

из тогочто нарыл Примеры работы с V-USB

но там много непонятного например для чтения с устройства процедура
procedure TMForm.btReadClick(Sender: TObject);
begin
if Dev=nil then exit; //Я так понимаю проверка описателя
fillchar(Raw,length(RAW),0); //?
Raw[0]:=0; //ReportID //зачем перед чтением обнулять то что сечас заполнит девайс
res:=Dev.GetFeature(Raw,Dev.Caps.FeatureReportByteLength); //Dev.Caps.FeatureReportByteLength ???
if not res then ShowMessage(SysErrorMessage(GetLastError))
else LB.Items.Append('Read data');
end;
Реклама
Друг Кота
Аватара пользователя
Сообщения: 4751
Зарегистрирован: Вс янв 24, 2010 13:14:02
Откуда: Омск

Сообщение vem566 »

____Eugene____ писал(а):fillchar(Raw,length(RAW),0); //?
Raw[0]:=0; //ReportID //зачем перед чтением обнулять то что сечас заполнит девайс
А если не заполнит? Ошибка чтения, например.
Raw определен как массив 0..128 байт. Фактически 129.
Функция fillchar заполняет массив Raw нулями но не весь, а количество, которое вернет функция length. А она вернет значение 128, т. к. эта функция не "видит" нулевой байт и начинает свой счет с 1-го. Таким образом нулевой байт массива останется не известно каким. Поэтому принудительно и сознательно обнуляется нулевой байт Raw[0]:=0;
____Eugene____ писал(а):res:=Dev.GetFeature(Raw,Dev.Caps.FeatureReportByteLength); //Dev.Caps.FeatureReportByteLength ???
Функцию Caps.FeatureReportByteLength нужно смотреть в описании класса TJvHidDevice из библиотеки JVCL. Если начал пробовать, значит библиотека у тебя есть. У неё открытый код.
Реклама
Вымогатель припоя
Аватара пользователя
Сообщения: 651
Зарегистрирован: Пн мар 23, 2009 09:25:58
Откуда: Самара

Сообщение mr_smit »

Вот тут http://radiokot.ru/circuit/digital/pcmod/16/ исходник на Delphi для работы с HID. Брал его за основу в своё время. Всё работало. А вообше там же есть к этому компоненту примеры в комплекте. Запускаете и сразу видите свою USB мышь в списке обнаруженных устройств (как пример)
Нельзя всё знать, достаточно понимать.
Ответить

Вернуться в «Интеграция с ПК»