реклама на сайте
подробности

 
 
8 страниц V  < 1 2 3 4 5 > »   
Reply to this topicStart new topic
> FT245R работает со сбоями
koluna
сообщение Feb 10 2009, 20:03
Сообщение #31


Профессионал
*****

Группа: Участник
Сообщений: 1 040
Регистрация: 3-01-07
Пользователь №: 24 061



Цитата(Седой @ Feb 10 2009, 20:08) *
Сейчас просмотрел документацию на драйвера FTDI.
Можно же работать не через COM порт, а через D2XX интерфейс и попробовать воспользоваться функцией FT_ResetPort (FT_ResetDevice,FT_CyclePort) для выхода из ошибочного состояния.


Можно попробовать, но я пока рассчитывал только на работу с VCP smile.gif

Цитата(Седой @ Feb 10 2009, 17:08) *
Что значит откуда?


Из какого источника? В хелпе я что-то не нашёл кодов ошибок sad.gif


--------------------
Благодарю заранее!
Go to the top of the page
 
+Quote Post
Седой
сообщение Feb 11 2009, 13:25
Сообщение #32


Местный
***

Группа: Свой
Сообщений: 244
Регистрация: 21-02-05
Из: Урал
Пользователь №: 2 806



Цитата(n_bogoyavlensky @ Feb 11 2009, 01:03) *
Из какого источника? В хелпе я что-то не нашёл кодов ошибок sad.gif


Из документации производителя OS http://msdn.microsoft.com/en-us/library/ms681382(VS.85).aspx

Цитата(n_bogoyavlensky @ Feb 11 2009, 01:03) *
Можно попробовать, но я пока рассчитывал только на работу с VCP smile.gif


Если делаете USB-DMX под серию и выбрали AVR - посмотрите в сторону AT90USB162, получится и надежней и дешевле.
Мы сделали мультипротокольный (DMX тоже поддерживает) USB-RS485 на C8051F326, драйвер свой, проблем с наводками нет.
Лежит у меня на столе, заканчиваю документацию на ПО.
Go to the top of the page
 
+Quote Post
koluna
сообщение Feb 11 2009, 14:30
Сообщение #33


Профессионал
*****

Группа: Участник
Сообщений: 1 040
Регистрация: 3-01-07
Пользователь №: 24 061



Цитата
Если делаете USB-DMX под серию и выбрали AVR - посмотрите в сторону AT90USB162, получится и надежней и дешевле.
Мы сделали мультипротокольный (DMX тоже поддерживает) USB-RS485 на C8051F326, драйвер свой, проблем с наводками нет.
Лежит у меня на столе, заканчиваю документацию на ПО.


Хм...
Как я понял, этот путь существенно более сложный и длительный?
Т. е., драйвер надо писать, знать как с USB работать со стороны МК и ПК...
Это получается наподобие как у Агурова?


--------------------
Благодарю заранее!
Go to the top of the page
 
+Quote Post
Седой
сообщение Feb 11 2009, 15:06
Сообщение #34


Местный
***

Группа: Свой
Сообщений: 244
Регистрация: 21-02-05
Из: Урал
Пользователь №: 2 806



Цитата(n_bogoyavlensky @ Feb 11 2009, 19:30) *
Хм...
Как я понял, этот путь существенно более сложный и длительный?

Это вам кажется - затраченное время на стартапе с лихвой окупается в дальнейшем.

Цитата(n_bogoyavlensky @ Feb 11 2009, 19:30) *
Т. е., драйвер надо писать, знать как с USB работать со стороны МК и ПК...

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

Цитата(n_bogoyavlensky @ Feb 11 2009, 19:30) *
Это получается наподобие как у Агурова?

По поводу Агурова - ответил в соседней ветке.
Вы же изучаете работу конкретного чипа по его документации (data sheet) от производителя, а не по книжкам.

Сообщение отредактировал Седой - Feb 11 2009, 15:10
Go to the top of the page
 
+Quote Post
stoker
сообщение Feb 11 2009, 18:36
Сообщение #35


Местный
***

Группа: Свой
Сообщений: 340
Регистрация: 28-11-05
Из: Москва
Пользователь №: 11 469



Попробуйте использовать драйвер D2XX. Гораздо прощще, там вообще думать не надо. Работаю с ним, проблемм с зависаниями и потерей данных нет вообще. Щас вот 5 метров кабель юзал. Правда у меня все заземлено.
Если он засыпает при помехе, возможно есть сбой в логике управления микрухой. У вас опторазвязка на HCPL-2630?
Go to the top of the page
 
+Quote Post
Alex11
сообщение Feb 11 2009, 21:15
Сообщение #36


Гуру
******

Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965



Эти драйвера при помехах виснут так же, это у Вас помех не было серьезных.
Go to the top of the page
 
+Quote Post
koluna
сообщение Feb 12 2009, 19:51
Сообщение #37


Профессионал
*****

Группа: Участник
Сообщений: 1 040
Регистрация: 3-01-07
Пользователь №: 24 061



Решил набросать блок-схему соединений...
Т. е., имеем три блока: персональный компьютер (ПК), USB-DMX конвертор (разделён на две оптически развязанные части) и прожектор.

ПК шлёт с помощью VCP пакеты 62 байта в конвертор. Конвертор принимает пакеты и тут же их отсылает обратно.
По прерыванию от таймера реализовано формирование DMX-пакета для прожектора.
Формируются все 512 каналов.

Следует отметить.
Экран USB кабеля соединён с общей цепью конвертора.
Сбои в основном происходят при подключении и отключении сетевой вилки прожектора.

Цитата
Это вам кажется - затраченное время на стартапе с лихвой окупается в дальнейшем.


Каковы преимущества данного варианта?

Цитата
Драйвер можно не писать, воспользоваться готовым, если устраивают его возможности.
А как без знаний!!!????


Из состава ОС или где-то скачать для данного типа микроконтроллеров?

Цитата(stoker @ Feb 11 2009, 21:36) *
Попробуйте использовать драйвер D2XX. Гораздо прощще, там вообще думать не надо. Работаю с ним, проблемм с зависаниями и потерей данных нет вообще. Щас вот 5 метров кабель юзал. Правда у меня все заземлено.
Если он засыпает при помехе, возможно есть сбой в логике управления микрухой. У вас опторазвязка на HCPL-2630?


Развязка на ней smile.gif
Т. е., развязка конвертора и объекта управления (смотри схему).
Ну сбоя в логике нет, я думаю...

Сообщение отредактировал n_bogoyavlensky - Feb 12 2009, 19:46
Эскизы прикрепленных изображений
Прикрепленное изображение
 


--------------------
Благодарю заранее!
Go to the top of the page
 
+Quote Post
Седой
сообщение Feb 12 2009, 20:08
Сообщение #38


Местный
***

Группа: Свой
Сообщений: 244
Регистрация: 21-02-05
Из: Урал
Пользователь №: 2 806



Цитата(n_bogoyavlensky @ Feb 13 2009, 00:51) *
Каковы преимущества данного варианта?

Меньше возможность уткнуться в чужую ошибку.

Цитата(n_bogoyavlensky @ Feb 13 2009, 00:51) *
Из состава ОС или где-то скачать для данного типа микроконтроллеров?


В вашем случае я бы использовал winusb от Microsoft.
Go to the top of the page
 
+Quote Post
stoker
сообщение Feb 13 2009, 10:12
Сообщение #39


Местный
***

Группа: Свой
Сообщений: 340
Регистрация: 28-11-05
Из: Москва
Пользователь №: 11 469



Питание VCC1 - это на контроллер и FT245R? Просто немного не понятно. Можно попробовать проверить питание на осцилографе - VCC1 относительно GND1 при передёргивании питания прожектора. Мож там питание на время пропадает, или наоборот импульс питания выходит за пределы входного для TMA0505 (у него входное 5В +/-10%)? Питание приходит по 485 кабелю? Какая длина кабеля? Вообще попробуйте запитать отдельно схемку на УСБ с контроллером. На будущее - если питание идёт по линии 485 лучше применять DC/DC с более широким входным напряжением.
Go to the top of the page
 
+Quote Post
galjoen
сообщение Feb 13 2009, 15:09
Сообщение #40


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(n_bogoyavlensky @ Feb 10 2009, 16:59) *
А если это у меня не предусмотрено? wink.gif

В суспенд ФТДИ переходит если пропускается 3 маркера SOF от хоста. Другими словами - нет никаких вестей от хоста в течении 3х милисекунд. Никаких специальных команд перехода в суспенд не существует. В реальности это означает, что хост просто решил, что ваш девайс выдернут из него.
Цитата(n_bogoyavlensky @ Feb 10 2009, 16:59) *
Как я понял, сбои возникают только при подсоединённом кабеле DMX к устройству! Несмотря на развязку!
Т. е., помеха идёт по кабелю в конвертор и как-то проходит через развязку или через DC-DC конвертор, попадая на USB.

Именно так. Сингфазная помеха проходит через все ваши преграды и воспринимается хостом как сигнал отключения устройства. Поэтому и всяческие заземления экрана помогают (а могут и навредить).
Я уже отвечал абсолютно на такой-же вопрос на этом-же форуме в этом-же разделе. Лень писать заново (и смотреть как называется состояние в USB, вызываемое сингфазной помехой). Поищите. Там WESTxxx (xxx - цифры) вопрос задавал.
Но хаять шину USB за это я бы не стал. Тут вопрос скорее к ФТДИ. Вот мои самодельные девайсы в таких условиях самостоятельно восстанавливают связь с хостом.
Go to the top of the page
 
+Quote Post
stoker
сообщение Feb 13 2009, 15:58
Сообщение #41


Местный
***

Группа: Свой
Сообщений: 340
Регистрация: 28-11-05
Из: Москва
Пользователь №: 11 469



Цитата(galjoen @ Feb 13 2009, 18:09) *
В суспенд ФТДИ переходит если пропускается 3 маркера SOF от хоста. Другими словами - нет никаких вестей от хоста в течении 3х милисекунд. Никаких специальных команд перехода в суспенд не существует. В реальности это означает, что хост просто решил, что ваш девайс выдернут из него.

Это вы где прочитали? Или опытным путем обнаружили?
Go to the top of the page
 
+Quote Post
galjoen
сообщение Feb 13 2009, 16:17
Сообщение #42


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(stoker @ Feb 13 2009, 18:58) *
Это вы где прочитали? Или опытным путем обнаружили?

Про это написано в стандарте USB. Кажется 7я глава - usb.org посмотрите. У меня и на русском есть, только перевод не очень. Я уже здесь выкладывал.

Ещё хочу заметить, что вывести девайс из суспенда со стороны компьютера с помощью всяческих програмных уловок, как здесь предлагалось, невозможно. Хотя м.б. и возможно, но это нужно хостом управлять, а кто вас туда пустит?
Go to the top of the page
 
+Quote Post
Седой
сообщение Feb 13 2009, 17:39
Сообщение #43


Местный
***

Группа: Свой
Сообщений: 244
Регистрация: 21-02-05
Из: Урал
Пользователь №: 2 806



Цитата(galjoen @ Feb 13 2009, 21:17) *
Ещё хочу заметить, что вывести девайс из суспенда со стороны компьютера с помощью всяческих програмных уловок, как здесь предлагалось, невозможно. Хотя м.б. и возможно, но это нужно хостом управлять, а кто вас туда пустит?


Вот кстати из реального suspend вывести как раз можно, как и ввести. А то что описали вы - это хаб обнаруживает ошибку и просто отключает порт, а не производит selective suspend. Я как раз и указал псевдокоманду запроса перевода в suspend порта хаба - SetPortFeature(PORT_SUSPEND).

К хосту, кстати, доступ из UserMode тоже есть - пример из DDK usbview.

Сообщение отредактировал Седой - Feb 13 2009, 17:52
Go to the top of the page
 
+Quote Post
koluna
сообщение Feb 13 2009, 18:11
Сообщение #44


Профессионал
*****

Группа: Участник
Сообщений: 1 040
Регистрация: 3-01-07
Пользователь №: 24 061



Цитата(stoker @ Feb 13 2009, 13:12) *
Питание VCC1 - это на контроллер и FT245R? Просто немного не понятно.


Старался сделать как можно понятнее smile.gif
Да, VCC1, GND1 - цепи питания FT245, ATmega88, HCPL2630 (наполовину) и TMA0505S (входное напряжение).
Экран USB-кабеля соединён с GND1.

Цитата
Можно попробовать проверить питание на осцилографе - VCC1 относительно GND1 при передёргивании питания прожектора. Мож там питание на время пропадает, или наоборот импульс питания выходит за пределы входного для TMA0505 (у него входное 5В +/-10%)?


Проверим. Но что может быть с питанием при передёргивании сетевой вилки?

Цитата
Питание приходит по 485 кабелю?


Питание чего? Левая часть конвертора питается от USB, правая тоже от USB, только через DC-DC TMA0505S - цепи питания VCC2, GND2.

Цитата
Какая длина кабеля? Вообще попробуйте запитать отдельно схемку на УСБ с контроллером.


Т. е., запитать всю левую часть от отдельного источника питания, а не от USB, т. е. "self power" для FT?

Цитата
На будущее - если питание идёт по линии 485 лучше применять DC/DC с более широким входным напряжением.


Спасибо за совет. Но в кабеле RS-485 задействованы только информационные линии.


--------------------
Благодарю заранее!
Go to the top of the page
 
+Quote Post
galjoen
сообщение Feb 13 2009, 18:24
Сообщение #45


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(Седой @ Feb 13 2009, 20:39) *
Вот кстати из реального suspend вывести как раз можно, как и ввести. А то что описали вы - это хаб обнаруживает ошибку и просто отключает порт, а не производит selective suspend. Я как раз и указал псевдокоманду запроса перевода в suspend порта хаба - SetPortFeature(PORT_SUSPEND).

Согласен. Ошибся в терминах. Это для девайса суспенд получается. А для хоста там не ошибка получается, а просто хост думает, что девайс из порта вытащили. На то, что линии перекошены из-за резистора 1,5 кОм он внимания не обращает - SOF слать перестаёт. И никаких попыток связь восстановить не предпринимает. Я имел ввиду, что програмно заставить его девайс поискать не удастся.
Это примерно тот-же глюк, как если компьютер в слип кнопкой ввести, а потом разбудить. В этом случае все USB девайсы кроме мыши и клавы (для них сделали исключение) пропадут. И поможет только их перетыкание.
Цитата(Седой @ Feb 13 2009, 20:39) *
К хосту, кстати, доступ из UserMode тоже есть - пример из DDK usbview.

Так там вроде только читать можно. Хотя спорить не буду - давным-давно с этим разбирался.
Go to the top of the page
 
+Quote Post

8 страниц V  < 1 2 3 4 5 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 17:48
Рейтинг@Mail.ru


Страница сгенерированна за 0.015 секунд с 7
ELECTRONIX ©2004-2016