12345
Reviews / articles about OS/2 |
Operating systems: ArcaOS, eComStation, IBM OS/2 Warp |
![]()
|
|
DATE: 2006-04-28 17:27:53 AUTHOR: Frolov Dmitry
ВведениеБольшинство современных периферийных устройств подключаются к компьютеру через USB-порт, постепенно вытесняя COM- и SCSI-устройства. Их поддержка со стороны программного обеспечения сейчас востребована как никогда. Библиотека USBCALLS предлагает разработчикам удобный программный интерфейс для работы с USB-устройствами, который может значительно упростить разработку приложений. При использовании USBCALLS разработчику не нужно писать драйвер для управления USB-устройством. Он пишет обычное Ring-3 приложение, которое обращается к драйверу USBCALLS, благодаря чему отладка кода заметно упрощается. USBCALLS позволяет взаимодействоать с устройствами, присоединенными к контроллеру любого типа, поскольку он не работает напрямую с USB-контроллером, а обращается к драйверу USBD. USBCALLS позволяет управлять устройствами, подключенными через любой USB-контроллер:
Программы, использующие USBCALLS:
Библиотека USBCALLS была разработана Markus Montkowski. В настоящее время, разработку ведет Dmitry Froloff.
Управление USB-устройствами, краткий обзор endpointsЛюбое USB-устройство обязано поддерживать USB Control Transfer. С помощью этого протокола производится распознавание и конфигурирование USB-устройств, сброс ошибок, перезапуск и т. п. Соотвествующие типы Control Transfer отвечают за передачу различных дескрипторов устройства, из которых, в свою очередь, можно узнать об устройстве все, что оно может сообщить о себе: Device Class/Subclass, Vendor Product Id, Serial Number, количество и типы endpoints и прочее.
Interrupt-протокол - это обычное чтение из USB endpoint, с той лишь разницей, что данные реально передаются лишь тогда, когда USB-устройство готово к их передаче, т.е. хост контроллер периодически (с заданным интервалом) опрашивает устройство. Содержимое самих данных полностью зависит от типа и протокола работы устройства. ![]() Действия программиста сводятся к следующему:
Следующий вариант управления USB-устройствами - Bulk endpoint. ![]()
Работа с устройством через Iso endpoint. ![]() Алгоритм работы следующий:
Другие функции USBCALLS: USBCALLS включает в себя Функцию выбора конфигурации. Конфигурация весьма важна, поскольку она определяет режим работы устройства. Например, в веб-камере, в зависимости от требуемого разрешения и цветности, устанавливается соотвествующая конфигурация. Аналогично для аудио-устройств, рабочая частота дискретизации и разрядность аудио-данных задается путем выставления конфигурации. Кроме этого, в UsbCalls есть весь необходимый набор функций для построения дерева устройств:
Подключайся к разработке управляющих программ!Обмениваться данными можно через любые типы endpoints, а значит возможно реализовать поддержку практически любых USB-устройств из Ring3. Поддержку каких устройств можно реализовать? Мы предлагаем вам заняться разработкой программ управления устройствами:
Мы надеемся, вы убедились, что управлять USB-устройствами очень просто. Если у вас возникли вопросы по библиотеке USBCALLS, задавайте их в форуме http://forum.ecomstation.ru Дополнительная информация
Комментарии:
|
|
||||||||||||||||
ArcaOS 5.1.1 что нового? - PNG иконкиТеперь PNG иконки на рабочем столе (вместо древних .ico 1994-го года) |
Мы напоминаем про заслуги eComStationНаш сайт - единственный про OS/2, где напоминаем про заслуги eComStation, за основу была взята OS/2 Warp, разработка велась с 1999.. 2001.. по 2013-ый годы. |
// надо на ENG!!
![]()
Купить программу OS/2:
DVD/CD Toys
|
Warpstock Europe 2016Interview with Dmitry Kuminov |