На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Перед отправкой сообщения внимательно прочтите правила раздела!!!
1. Запрещается обсуждать написание вирусов, троянов и других вредоносных программ!
2. Помните, что у нас есть FAQ раздела Assembler и Полезные ссылки. Посмотрите, возможно, там уже имеется решение вашего вопроса.

3. Настоятельно рекомендуем обратить особое внимание на правила форума, которые нарушаются чаще всего:
  3.1. Заголовок темы должен кратко отражать её суть. Темы с заголовками типа "Срочно помогите!" или "Ассемблер" будут отправляться в Корзину для мусора.
  3.2. Исходники программ обязательно выделяйте тегами [code]...[/code] (одиночные инструкции можно не выделять).
  3.3. Нежелательно поднимать старые темы (не обновлявшиеся более года) без веской на то причины.

Не забывайте также про главные Правила форума!

Добро пожаловать и приятного вам общения!!! ;)
 
Модераторы: Jin X, Qraizer
Страницы: (51) « Первая ... 35 36 [37] 38 39 ...  50 51  ( Перейти к последнему сообщению )  
> Желающим USB под ДОС , Welcome!!!
    Вот дамп CBW команды READ для 0 сектора. Сравнивай сам, мне недосуг разбираться в твоем коде.
    Скрытый текст
    55 53 42 43 02 00 00 00 00 02 00 00 80 00 0a
    28 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00
    Сообщение отредактировано: zakharo -
      Цитата StasNewOs @
      shm Что такое тригер?

      Data Toggle (DT)
        Привет shm!
        У меня вопрос к Вам. Я так понял из форума, что Вы неплохо разобрались с программированием USB. ;)
        Вопрос. Можно ли написать драйвер виртуального порта COM для DOS для контроллера на PL2303 на USB?
        На сколько это будет сложно? Драйвер просто должен обрабатывать допустим приём и передачу байтов (Rx и Tx)
        :huh:

        Добавлено
        shm :)
          Цитата RUSSTARUS @
          Можно ли написать драйвер виртуального порта COM для DOS

          Можно.
          Цитата RUSSTARUS @
          На сколько это будет сложно?

          Зависит от опыта работы с железом. Изучаем шину USB. Под DOS придется писать свой драйвер хост-контроллера.
          Цитата RUSSTARUS @
          контроллера на PL2303

          Даташит есть?
          Сообщение отредактировано: shm -
            Драйвер сможет быть только в нереальном режиме?
            Книгу уже скачал (Практика программирования USB)
            Даташит PL2303 ???

            Добавлено
            Где можно посмотреть наработки на ASM захвата виртуального порта COM под DOS ? :)
              Цитата RUSSTARUS @
              Драйвер сможет быть только в нереальном режиме?

              Цитата RUSSTARUS @
              де можно посмотреть наработки на ASM захвата виртуального порта COM под DOS ?

              Ну доступ за пределы 1го мегабайта нужен в любом случае, один из способов это да, использовать нереальный режим. И не совсем понятно на каком уровне требуется поддержка "виртуального COM", если на уровне портов, то потребуется вообще свой экстендер писать (с V86) или править существующий. В общем случае эмуляция порта намного менее проблематична, чем разработка драйвера для хост-контроллера.
              Цитата RUSSTARUS @
              Даташит PL2303 ???

              Для разработки драйвера нужно описание протокола обмена с ним, я бегло погуглил и нашел лишь описание физического интерфейса. Если протокол закрытый, то написать сторонний драйвер для устройства очень проблематично.

              Добавлено
              Вот тут нашел часть, но этого мало.
              Сообщение отредактировано: shm -
                Позволено будет встрять? Я исследовал какой-то USB-COM адаптер, сейчас, правда, не помню, какой. На работе лежит. Весь интерфейс примитивен - есть две КТ, in и out. В одну кидаем инфу, с другой - берем. Еще как-то выставлялись параметры COM-соединения.
                В принципе, есть класс устройств CDC - описание на usb.org http://www.usb.org/developers/devclass_docs/usbcdc11.pdf
                Только у PL2303 в дескрипторе интерфейса стоит 0xff, т.е. "vendor specific", получается, что он не подходит под этот класс. Завтра гляну, как я там делал, отпишусь.
                Сообщение отредактировано: zakharo -
                  Цитата zakharo @
                  Позволено будет встрять?

                  Тебе тут всегда рады :)
                  Цитата zakharo @
                  Весь интерфейс примитивен - есть две КТ, in и out.

                  Тут нечто похожее, но + еще interrupt in. Что-то мне подсказывает, что эта КТ предназначена для аппаратной поддержки асинхонного режима передачи. Однако в виндуязных драйверах подновляющего большинства преобразователей com-to-что-нибудь этот режим реализован через заднее место, но это так мысли вслух...
                  Хотя все же обольщаться не стоит, так как вендоры бывает такого намутят :wacko:
                  Сообщение отредактировано: shm -
                    Нашел. Я делал для 2303. И уже не помню, где брал спецификацию. Там добавляется два реквеста - получить параметры линии и установить параметры линии. Скорость там, четность, число бит. КТ типа interrupt используется для контроля состояния линии - несущая, звонок, CTS, RTS т.д. А данные проходят через in и out.
                    Сообщение отредактировано: zakharo -
                      Спасибо большое, что поддерживаете тему! ;)
                      Очень всё интересно.
                      Хотел спросить Вас про драйвер USBASPI.EXE для DOS. Его можно как либо использовать под часть хоста, или нет.
                      (Может легче что будет, ведь кое что он делает, написать привязку к нему, перенаправить потоки COM порта туда) или легче писать всё с нуля??? :unsure:
                        Цитата RUSSTARUS @
                        Хотел спросить Вас про драйвер USBASPI.EXE

                        Не использовал.

                        Добавлено
                        Цитата zakharo @
                        там добавляется два реквеста - получить параметры линии и установить параметры линии.

                        Хм, почему-то в том даташите про них не написали. :scratch:
                        Сообщение отредактировано: shm -
                          Да, в даташите этого нет. Я ж говорю - не помню, где брал. Не исключено, что из сниффера. Документов, по крайней мере, найти не могу.
                            Нет, не из сниффера все-таки. Там было было трудно понять структуру реквестов.. Скорее, из каких-нибудь опенсорсных линуксовых текстов.

                            PS Ну да, точно. Вот, например: http://lxr.free-electrons.com/source/drive...serial/pl2303.c
                            Можно еще найти.
                            Сообщение отредактировано: zakharo -
                              Нашёл что искал! http://www.georgpotthast.de/usb/ или http://www.dosusb.net/ :victory:

                              Georg Potthast написал уже приличный хост контроллер USB под DOS и кучу программ (драйверов) приложений
                              к нему! :good:

                              Просто супер! (Там и серийный порт (правда не эмуляция UART), параллельный порт, работа в web-камерой,
                              поддержка MASS STORAGE DEVICE DRIVERS и многое другое, USB-мышь, USB-клавиатура и т.д. и т.п.)
                              Описание интерфейса хоста для собственных приложений под устройства USB, вообщем всё для программиста...

                              Демо версия USBDOS.COM работает 20 минут (затем надо перегружаться).
                              Полная версия стоит ого!... :-? (смотрите сами...). Ну это наверное того стоит! :yes:

                              Да, а спецификация у PL2303 похоже закрытая и свободно не распространяется (пишет автор) :tong:
                                Возможно, действительно, это то, что тебе нужно. Этот драйвер обеспечивает базовый уровень USB-транзакций. Я в свое время (в 2007-м) с ним разбирался довольно хорошо. Даже, скажу по секрету, дизассемблировал его - это помогло начать работать с контроллерами уже самостоятельно. У него был единственный недостаток - он не поддерживал hot-plugging - но тебе, наверное, это и не нужно. Та версия еще была совершенно бесплатной и поддерживала только USB 1.1 (если не ошибаюсь, pl2303 работает как раз по USB 1.1). Кажется, у меня она еще где-то осталась. Если найду, поделюсь.
                                Ну, а спецификацию pl2303 придется делать самостоятельно, опираясь на линуксовые тексты.
                                Сообщение отредактировано: zakharo -
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (51) « Первая ... 35 36 [37] 38 39 ...  50 51


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0599 ]   [ 15 queries used ]   [ Generated: 20.07.25, 14:35 GMT ]