Перейти к содержанию
    

эмуляция FTDI FIFO посредством STM32

Добрый день.

 

Почти все устройства работают с компом и им необходимо просто передавать данные в комп и обратно, естественно выбрана для этого микросхема FTDI в режиме FIFO очереди. Но с переходом на АРМ и STM32 в частности стали задумываться об отказе от FTDI т.к. аппаратный уже усб есть в данном МК. Но опыта разработки под усб нет вообще как со стороны компа так и со стороны МК. Поэтому ищу уже готовые реализации. Наверняка есть реализация протокола FTDI в режиме фифо-очереди т.к. сама компания опубликовала протокол усб стыка на эту ФИФО. Но найти в инете не удалось.

 

Может быть кто знает, есть ли готовые реализации протокола аналогичного ФТДИ на STM32?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

зачем ФТДИ то?

 

ФТДИ виден в компе как виртуальный комп порт. Как сделать усб - виртуальный комп порт это первый пример который идет с УСБ. Скачайте примеры и апликейшен ноты про усб к вашему процу и там будет этот пример...

 

А еже ли вы хотите работать через драйвер ФТДИ (второй режим который не виртуальный комп порт), то тут вряд ли вам помогут... тому кто способен расковырять драйвер ФТДИ легче написать свой усб через тот же ХИД, а то и свой драйвер...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может быть кто знает, есть ли готовые реализации протокола аналогичного ФТДИ на STM32?

Поищите примеры реализации устройства класса CDC для вашего МК (они должны поставляться с Keil'ом или IAR'ом) ...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поищите примеры реализации устройства класса CDC для вашего МК (они должны поставляться с Keil'ом или IAR'ом) ...

...при этом можно пройтись густой гребенкой по коду, выбросив оттуда поддержку управления скоростью и модемными линиями за ненадобностью.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...при этом можно пройтись густой гребенкой по коду, выбросив оттуда поддержку управления скоростью и модемными линиями за ненадобностью.

Безусловно. Но это придется сделать в любом случае ...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Извините, Уважаемые писатели, но позволю уточнить: я же написал FIFO - у фтди есть прекрасный режим без уарта где просто по 8 битной шине данных передаются данные с любой скоростью, пока усб позволяет. Вот мне его и надо. По сути мне нужно просто в комп передавать данные так чтоб реализация усб на МК была совместима с драйвером от ФТДИ в режиме D2XX. Т.к. софта написано за 10 лет не просто много а ОЧЕНЬ МНОГО и отказываться и переписывать его мне просто не дадут - не поймут необходимости. Единственный выход - реализовать аналог работы фтди на МК в режиме D2XX. Что и ищу.

 

Было - УСБ --> FTDI245RL которая подключена к STM32 c 8битной шиной с стробами записи чтения.

Надо - УСБ --> STM32 с программной эмуляцией фтди.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Т.к. софта написано за 10 лет не просто много а ОЧЕНЬ МНОГО и отказываться и переписывать его мне просто не дадут - не поймут необходимости. Единственный выход - реализовать аналог работы фтди на МК в режиме D2XX. Что и ищу.

В режиме D2XX самый простой способ - написать свою d2xx, эмулирующую нужные функции.

Если перекомпиляция существующего ПО невозможна - прямая подмена dll в папке программы, если возможна - то просто перекомпилировать проект под новую прослойку.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Извините, Уважаемые писатели, но позволю уточнить: я же написал FIFO - у фтди есть прекрасный режим без уарта где просто по 8 битной шине данных передаются данные с любой скоростью, пока усб позволяет. Вот мне его и надо. По сути мне нужно просто в комп передавать данные так чтоб реализация усб на МК была совместима с драйвером от ФТДИ в режиме D2XX. Т.к. софта написано за 10 лет не просто много а ОЧЕНЬ МНОГО и отказываться и переписывать его мне просто не дадут - не поймут необходимости. Единственный выход - реализовать аналог работы фтди на МК в режиме D2XX. Что и ищу.

 

Было - УСБ --> FTDI245RL которая подключена к STM32 c 8битной шиной с стробами записи чтения.

Надо - УСБ --> STM32 с программной эмуляцией фтди.

 

Уважаемый читатель :), напомню что я вам сразу и написал. Если вы хотите чтобы что-то работало как фтди на его драйвере, то готового не будет. Потому что всем легче свое сделать, чем под чужое подлезать. Обуреешь прослушкой глядеть что там за ендпоинты, протокол разбирать и прочее...

 

Длл подменять тоже не раз-два... прослушка вам в помощь...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Уважаемый читатель :), напомню что я вам сразу и написал. Если вы хотите чтобы что-то работало как фтди на его драйвере, то готового не будет. Потому что всем легче свое сделать, чем под чужое подлезать. Обуреешь прослушкой глядеть что там за ендпоинты, протокол разбирать и прочее...

 

На сайте микрочипа был пример эмуляции FT2232 "в образовательных целях" на Си, там вроде все основные функции D2XX обрабатывались. Гугл в помощь...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Драйверы FTDI нельзя использовать с чужими чипами. Ну это если легально ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...