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

 
 
 
Reply to this topicStart new topic
> Проблемы с FT232R..., теряются данные
Konrad
сообщение Jan 11 2011, 09:55
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 202
Регистрация: 7-04-08
Пользователь №: 36 555



Приветствую участников!

Есть ус-во которое должно передавать в ПК данные. Для этих целей в нём реализована связка: USB - FT232R - ADum1402(развязка) - МК.
Скорость 921600. Управление потоком не используется. Протокол обмена: ПК выдаёт запрос (2 байта) в ответ получает 256 байт данных.

Проблемы: периодически ПК недополучает данные, иногда десятки байт.
В этой связи экспериментировали с размером ответной посылки (уменьшали до 62 байт), понижали скорость передачи до 115200, но сбои всё равно происходят...

Кому-нибудь приходилось сталкиваться с чем-нибудь подобным?

Сообщение отредактировал Konrad - Jan 11 2011, 09:56
Go to the top of the page
 
+Quote Post
jorikdima
сообщение Jan 11 2011, 11:31
Сообщение #2


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



Цитата(Konrad @ Jan 11 2011, 15:55) *
Кому-нибудь приходилось сталкиваться с чем-нибудь подобным?

Нет. Работаю на 115200 без управления потоком, проблем нет.
Хотел было сказать, что на 921к надо работать с хэндшейкингом, но коли у вас и на 115 проблемы... Может бодрейт МК не совсем 921 или 115 из-за неправильной конфигурации или ухода генератора. Осциллом смотрели на импульсы?
Go to the top of the page
 
+Quote Post
Konrad
сообщение Jan 11 2011, 17:22
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 202
Регистрация: 7-04-08
Пользователь №: 36 555



Цитата(jorikdima @ Jan 11 2011, 17:31) *
Нет. Работаю на 115200 без управления потоком, проблем нет.
Хотел было сказать, что на 921к надо работать с хэндшейкингом, но коли у вас и на 115 проблемы... Может бодрейт МК не совсем 921 или 115 из-за неправильной конфигурации или ухода генератора. Осциллом смотрели на импульсы?


Смотрел, но с точностью до процентов период следования импульсов не замерял... проверю.
Кстати мы используем драйвер VCP, а Вы?
Go to the top of the page
 
+Quote Post
jorikdima
сообщение Jan 11 2011, 18:11
Сообщение #4


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



Цитата(Konrad @ Jan 11 2011, 23:22) *
Кстати мы используем драйвер VCP, а Вы?

И vcp и D2xxx (через обертку для .NET) использую.

Хотя знаете... для кривого бодрейта все же характерно искажение, а не потеря данных. Хм... я б все же грешил на хэндшэйкинг, но если и на 115 не работает... Схема включение микросхемы стандартная, как в даташите? А до FT232 гарантировано данные долетают из МК? Может ошибка в софте МК/ПК? Просто ни разу не замечал потери в FT232, никогда не использую хэндшейкинг.
Go to the top of the page
 
+Quote Post
Konrad
сообщение Jan 12 2011, 02:41
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 202
Регистрация: 7-04-08
Пользователь №: 36 555



Цитата(jorikdima @ Jan 12 2011, 00:11) *
И vcp и D2xxx (через обертку для .NET) использую.

Хотя знаете... для кривого бодрейта все же характерно искажение, а не потеря данных. Хм... я б все же грешил на хэндшэйкинг, но если и на 115 не работает... Схема включение микросхемы стандартная, как в даташите? А до FT232 гарантировано данные долетают из МК? Может ошибка в софте МК/ПК? Просто ни разу не замечал потери в FT232, никогда не использую хэндшейкинг.


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

После того как проявилась проблема, к поиску ошибок подключилось ещё два специалиста помимо меня, один из них с нуля написал софт нижнего и верхнего уровней и проверка ведётся на макетной плате, т.е. коды инициализации UART'a микроконтроллера для 921600 и на 115200 написаны разными людьми и ошибка крайне маловероятна, также маловероятны какие-либо аппаратные неисправности т.к. эффект присутствует и в устройстве и на макетке. Схема включения FT232RL стандартная, я полагаю, что если бы проблемы были-бы, скажем, из-за питания/помех/итп то это должно было бы приводить к зависаниям а не к потере десятков байт данных...

И ещё один момент: в другом устройстве на 115200 всё работает, но длина пакета там не превышает 10 байт... По какому протоколу Вы обмениваетесь и какой длины посылки посылаете в РС?

Сообщение отредактировал Konrad - Jan 12 2011, 06:15
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jan 12 2011, 03:50
Сообщение #6


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



QUOTE (Konrad @ Jan 12 2011, 07:41) *
По какому протоколу Вы обмениваетесь и какой длины посылки посылаете в РС?
Начните с простого: отключите ADuM, замкните у FTDI ноги Rx и Tx, пошлите в терминалке текстовый файл, предварительно настроив на запись лога в файл. Потом сравните полученный файл с исходным. Должны совпадать. Потом подключите ADuM, отключите МК. Повторите проверку. Нет там никакой зависимости от длины пакета. Посылал 65К и на 115200 и 460800 - прекрасно все проходит. На 921600 у меня проц не успевает разгребать. Нет там аппаратных ошибок внутри FTDI, если вы на это намекаете. Чем ADuM питаете? Ощущение, что проблемы где-то в питании - как будто питание паразитное от информационных входов. Начинаетеся обмен - питание пропадает.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Konrad
сообщение Jan 12 2011, 06:22
Сообщение #7


Местный
***

Группа: Участник
Сообщений: 202
Регистрация: 7-04-08
Пользователь №: 36 555



Господа, авторы ПО верхнего уровня нашли причину...

Виндовз тормозила с выдачей данных, это воспринимали как потерю, хотя потери на самом деле не было.

Благодарю всех за советы.)

Сообщение отредактировал Konrad - Jan 12 2011, 06:22
Go to the top of the page
 
+Quote Post
jorikdima
сообщение Jan 12 2011, 09:31
Сообщение #8


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



Хотя и разобрались, но для истории.
Была проблема с этим чипом, хотя и исключительно по моей вине, но может натолкнет кого на мысли, если будут похожие симптомы. Дело в том, что я по глупости поставил на противоположной от FTDI стороне платы Bluetooth модем и когда он излучал, данные в FTDI терялись и искажались. Глупость конечно, очевидная, но может я не один такой буду sm.gif
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


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


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