![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
JohnZ |
![]()
Сообщение
#1
|
Участник ![]() ![]() Группа: Участник Сообщений: 139 Регистрация: 19.7.2014 Пользователь №: 4190 Спасибо сказали: 10 раз(а) Репутация: ![]() ![]() ![]() |
Пытаюсь написать универсальные "дрова" для USB сканера ШК.
Универсальные в том смысле что под Lin/Win и с учётом разновидности протоколов самих ШК (USB-COM / KB) Всё что перерыл - работает в основном на тредах, и даже не "подозревает" о аппаратных прерываниях ![]() Было уже обрадовался увидев в LibUSB вызов
но как оказалось её реализация организует свой "внутренний" тред для раздачи event-ов и опроса устр-в ... ... поэтому call-back - чная ф-ция у меня не вызывалась. На обслуживание (и перехват) USB прерываний у гугля почему-то затык, или я его неправильно спрашивалЪ ... ![]() Что нужно ? В пространстве пользователя ( т е в ПО ) "сесть" на НУЖНОЕ прерывание и формировать сигналы с принятым и расшифрованным кодом ШК из call-back - чной ф-ции. (как в DOS-e для COM-Port ) Расшифровывать ШК нужно т к разные сканеры по разному его формируют ... Кто в курсе, подскажите куда копать ?! Буду премного благодарен за ссылки и примеры. |
|
|
![]() |
Iron Bug |
![]()
Сообщение
#2
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: ![]() ![]() ![]() |
у тебя очень примитивные и неграмотные рассуждения про системы. я системный программист с опытом более 20 лет и мне на эти глупости отвечать подробно просто некогда.
если ты хочешь что-то изучать - бери и читай документацию по написанию драйверов. тогда, вероятно, ты поймёшь, почему ты неправ и почему твои вопросы не имеют смысла в контексте современных операционных систем. вся документация по ядру Linux есть в онлайне. она быстро устаревает, поэтому самое актуальное - это документация в самом кернеле. есть книга LDD (Linux Device Drivers), там подбробнее написано, но не под совсем свежие ядра. под венду придётся покупать книги по KMDF и т.д. другой документации под венду практически нет. но я тебе сразу скажу, что никаких "универсальных" драйверов не бывает. драйвер заточен для работы с конкретной железякой и привязан к специфике чипов, с которыми он общается. и поверх него до юзерского уровня может быть много других драйверов и библиотек. так что юзер напрямую с прерываниями ничего делать не должен. |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 8.5.2025, 20:21 |