|
72 / 72 / 5
Регистрация: 03.11.2009
Сообщений: 492
|
||||||
FTDI: функция библиотеки D2XX FT_ListDevices(,,FT_LIST_ALL|FT_OPEN_BY_LOCATION)21.09.2017, 17:44. Показов 3850. Ответов 3
Метки нет (Все метки)
Запакованные функции 1 и 2 вариант работают, 3-й нет
1.ftStatus=FT_ListDevices((PVOID)devInde x,Buffer,FT_LIST_BY_INDEX|FT_OPEN_BY_SER IAL_NUMBER); 2.ftStatus = FT_ListDevices(BufPtrs, &numDevs, FT_LIST_ALL|FT_OPEN_BY_DESCRIPTION); не пойму что надо для функции с флагом FT_LIST_ALL|FT_OPEN_BY_LOCATION 3.ftStatus = FT_ListDevices(locIdBuf,&numDevs,FT_LIST _ALL|FT_OPEN_BY_LOCATION); не хочет компилироваться выдает: Undefined symbol 'FT_OPEN_BY_LOCATION' Код использую со справочника
На Винде 7 и ХП попробовал безрезультатно, FT_OPEN_BY_LOCATION Хотя пишут Поддерживаемые ОС: Linux, Mac OS X (10.4 и более свежие), Windows (2000 и более свежие), Windows CE (4.2 и более свежие). Получает информацию об устройствах, подключенных к системе в настоящий момент. Функция может вернуть такую информацию, как количество подключенных устройств, серийный номер устройства и строки описания устройства, и идентификаторы location ID для подключенных устройств. FT_STATUS FT_ListDevices (PVOID pvArg1, PVOID pvArg2, DWORD dwFlags); Параметры: pvArg1 значение зависит от dwFlags. pvArg2 значение зависит от dwFlags. dwFlags определяет формат возвращенной информации. Возвращаемое значение: FT_OK если все прошло удачно, иначе будет возвращен код ошибки FT. Эта функция может использоваться разными способами для получения информации различного типа. Более продвинутый способ, чем эта функция - использовать FT_CreateDeviceInfoList, FT_GetDeviceInfoList и FT_GetDeviceInfoDetail, потому что они возвращают больше информации об устройствах. В этой упрощенной форме функция может быть использована для получения количества подключенных в настоящее время устройств. Если в dwFlags установлен бит FT_LIST_NUMBER_ONLY, то параметр pvArg1 интерпретируется как указатель на переменную DWORD для сохранения количества подключенных в настоящее время устройств. Функция может быть использована для возврата информации об устройстве: если в dwFlags установлен флаг FT_OPEN_BY_SERIAL_NUMBER, то будет возвращена строка серийного номера; если в dwFlags установлен бит FT_OPEN_BY_DESCRIPTION, то будет возвращена строка описания продукта; если в dwFlags установлен бит FT_OPEN_BY_LOCATION, то будет возвращен Location ID; если не установлен ни один из этих битов, то по умолчанию будет возвращена строка серийного номера. Функция может использоваться для возврата строки описания одного устройства. Если в dwFlags установлены биты FT_LIST_BY_INDEX и FT_OPEN_BY_SERIAL_NUMBER или FT_OPEN_BY_DESCRIPTION, то параметр pvArg1 интерпретируется как индекс устройства, и параметр pvArg2 интерпретируется как указатель на буфер, который должен принять соответствующую строку. Используются индексы по базе 0, и для недопустимого индекса будет возвращен код ошибки FT_DEVICE_NOT_FOUND. Функция может использоваться для возврата строки описания всех подключенных устройств. Если в dwFlags установлены биты FT_LIST_ALL и FT_OPEN_BY_SERIAL_NUMBER или FT_OPEN_BY_DESCRIPTION, то параметр pvArg1 интерпретируется как указатель на массив указателей на буферы, куда должны быть помещены соответствующие строки, и параметр pvArg2 интерпретируется как указатель на DWORD, куда будет сохранено количество подключенных в настоящее время устройств. Имейте в виду для pvArg1, что последняя запись в массиве указателей на буферы должна содержать NULL-указатель, так что в массиве может быть больше записей, чем количество подключенных устройств. Будет возвращен location ID устройства, если в dwFlags установлены биты FT_LIST_BY_INDEX и FT_OPEN_BY_LOCATION. В этом случае параметр pvArg1 интерпретируется как индекс устройства, и параметр pvArg2 интерпретируется как указатель на переменную типа long, куда должно быть помещено значение location ID. Используются индексы по базе 0, и для недопустимого индекса будет возвращен код ошибки FT_DEVICE_NOT_FOUND. Имейте в виду, что Windows CE и Linux не поддерживают идентификаторы location ID. Идентификаторы location ID всех подключенных устройств могут быть возвращены, если в dwFlags установлены биты FT_LIST_ALL и FT_OPEN_BY_LOCATION. В этом случае pvArg1 интерпретируется как указатель на массив переменных типа long, куда должны быть сохранены идентификаторы location ID, и параметр pvArg2 интерпретируется как указатель на DWORD, куда будет сохранено количество подключенных в настоящее время устройств.
0
|
||||||
| 21.09.2017, 17:44 | |
|
Ответы с готовыми решениями:
3
d2xx кто нибудь использовал?
Функция Sort библиотеки Algorithm |
|
72 / 72 / 5
Регистрация: 03.11.2009
Сообщений: 492
|
|
| 25.10.2017, 18:37 [ТС] | |
|
ТЕМА ОСТАЕТСЯ В СИЛЕ
0
|
|
|
72 / 72 / 5
Регистрация: 03.11.2009
Сообщений: 492
|
|
| 28.10.2017, 19:57 [ТС] | |
|
Пошел путем сравнения, если эта классическая функция D2XX работает
ftStatus=FT_ListDevices((PVOID)devIndex, Buffer,FT_LIST_BY_INDEX|FT_OPEN_BY_SERIA L_NUMBER); сделал ее просмотр и выдало FT_LIST_BY_INDEX - FTD2XX.h(89) FT_LIST_BY_INDEX = 0x40000000 FT_OPEN_BY_SERIAL_NUMBER - FTD2XX.h(81) FT_OPEN_BY_SERIAL_NUMBER = 1 //************************************* тогда что не так с этой функцией ftStatus = FT_ListDevices(locIdBuf, &numDevs, FT_LIST_ALL|FT_OPEN_BY_LOCATION); сделал ее просмотр и выдало FT_LIST_ALL - FTD2XX.h(90) FT_LIST_ALL = 0x20000000 FT_OPEN_BY_LOCATION - ПУСТО FT_OPEN_BY_LOCATION = ПУСТО //****************************** Заглянул в FTD2XX.h строка 89 #define FT_LIST_BY_INDEX 0x40000000 81 #define FT_OPEN_BY_SERIAL_NUMBER 1 90 #define FT_LIST_ALL 0x20000000 А #define FT_OPEN_BY_LOCATION ОТСУТСТВУЕТ //Вопрос по форуму? нужен FTD2XX.h с #define FT_OPEN_BY_LOCATION ))))))))))))))))))))))))))))))))
0
|
|
|
72 / 72 / 5
Регистрация: 03.11.2009
Сообщений: 492
|
||||||
| 29.10.2017, 23:52 [ТС] | ||||||
|
Подкинул другой FTD2XX.h с #define FT_OPEN_BY_LOCATION
Теперь компилируется. В Memo1 показывает количество устройств, а в ComboBox1 нули вместо всех подключенных устройств.
0
|
||||||
| 29.10.2017, 23:52 | |
|
Помогаю со студенческими работами здесь
4
Функция generate() библиотеки algorithm Функция floor() стандартной библиотеки Не работает функция из библиотеки FMOD Функция LAPACKE_dgetrs библиотеки lapack Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|