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

 
 
> FT232R - как передать большой пакет
Alt.F4
сообщение Mar 10 2012, 19:14
Сообщение #1


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

Группа: Свой
Сообщений: 1 468
Регистрация: 28-03-10
Из: Беларусь
Пользователь №: 56 256



Добрый день.
Столкнулся с проблемой передачи пакета 250КБ при помощи терминальной программы и FT232R на скорости 115200.
1) Программа RS232pro v3.30 виснет и шлет байты с огромными паузами, хотя с реальным СОМ-портом вопросов нет.
2) Программа Advanced Serial Port вроде как шлет, но на выходе FT232R теряется половина байтов.
Думаю, что переполянется внутренний буфер FT232R.
Как решить проблему?
Спасибо.

Сообщение отредактировал Alt.F4 - Mar 10 2012, 19:15
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Alt.F4
сообщение Mar 11 2012, 15:27
Сообщение #2


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

Группа: Свой
Сообщений: 1 468
Регистрация: 28-03-10
Из: Беларусь
Пользователь №: 56 256



Заюзал я короче нормальный сом-порт стационарного РС. При острой необходимости виртуального порта на ноуте буду пытаться передавать по 8кб.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Mar 11 2012, 15:31
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Alt.F4 @ Mar 11 2012, 19:27) *
При острой необходимости виртуального порта на ноуте буду пытаться передавать по 8кб.

По-моему, и 8 уже изрядный перебор. Чем обусловлена потребность работы такими большими блоками?
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Mar 11 2012, 19:42
Сообщение #4


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(aaarrr @ Mar 11 2012, 19:31) *
По-моему, и 8 уже изрядный перебор. Чем обусловлена потребность работы такими большими блоками?

А зачем вообще без необходимости использовать поблочную работу ? Если, например, есть какой-то файл и его надо передать в устройство - пусть на максимальной скорости и летит, о блочности позаботится сама микросхема (исходя из размера своих буферов). Какая-то все ж странная проблема - я не наблюдал такого ни с простой передаче потока (когда микроконтроллер заведомо успевал обработать), без управления потоком. Когда же не успевал - использовал управление, и опять же все байт в байт. просто "copy <файл> COM<n>" и ни о чем не приходилось задумываться.

Цитата(Alt.F4 @ Mar 11 2012, 19:27) *
Заюзал я короче нормальный сом-порт стационарного РС. При острой необходимости виртуального порта на ноуте буду пытаться передавать по 8кб.

Попробуйте все ж на другом компьютере. Проблем не должно быть, это работает и проверено.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Mar 11 2012, 19:45
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(rx3apf @ Mar 11 2012, 23:37) *
А зачем вообще без необходимости использовать поблочную работу ?

Отправить 250кБайт просто на удачу? Обычно все же принято использовать квитирование, контроль целостности и т.п.
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Mar 11 2012, 19:56
Сообщение #6


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(aaarrr @ Mar 11 2012, 23:45) *
Отправить 250кБайт просто на удачу? Обычно все же принято использовать квитирование, контроль целостности и т.п.

Контроль целостности можно и по контрольной сумме внутри эти 250 кило. Это все ж кусок провода, а не радиоэфир или поганая телефонная линия.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Mar 11 2012, 20:12
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(rx3apf @ Mar 11 2012, 23:56) *
Контроль целостности можно и по контрольной сумме внутри эти 250 кило. Это все ж кусок провода, а не радиоэфир или поганая телефонная линия.

И потратить еще 30 секунд на повторную посылку, ежели вдруг сломалось. Если мы говорим о RS-232, то это отнюдь не просто кусок провода.
Go to the top of the page
 
+Quote Post
=AK=
сообщение Mar 12 2012, 03:06
Сообщение #8


pontificator
******

Группа: Свой
Сообщений: 3 055
Регистрация: 8-02-05
Из: страны Оз
Пользователь №: 2 483



Цитата(aaarrr @ Mar 12 2012, 06:42) *
И потратить еще 30 секунд на повторную посылку, ежели вдруг сломалось. Если мы говорим о RS-232, то это отнюдь не просто кусок провода.

Откуда у вас 30 сек взялись? USB FS типично перекачает 250 кБ за пару секунд. Битые пакеты в балке перезапрашиваются автоматически, потому вероятность, что "ежели вдруг сломалось" исчезающе мала. Если бы не баг в драйвере, то разбивать файл на мелкие блоки не имело бы ни малейшего смысла: это лишний гемморой и ненужный оверхед, достаточно проверять целостность всего файла.

Цитата(aaarrr @ Mar 12 2012, 00:12) *
Совершенно не логично. Эмуляция последовательного порта (весьма урезанная и убогая) - это лишь малая часть CDC.

Вот именно поэтому весьма вероятно, что FTDI VCP пристыкуется к CDC, поскольку тогда пользователю предоставляется вся стандартная функциональность CDC, а усилия для этого от FTDI требуются мизерные. Вот в этом и состоит логика всякого вменяемого разработчика: не изобретать велосипед там, где предоставляется стандартный сервис достаточно хорошего качества.

Цитата(aaarrr @ Mar 12 2012, 00:12) *
Данные гонять можно, но для построения полноценного виртуального порта она неприменима.

А что же тогда по-вашему есть "полноценный виртульный порт"? Чем вас не устраивают виртуальные порты, появляющиеся при использовании драйверов класса CDC (если не считать бага в имплементации)?
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Mar 12 2012, 08:28
Сообщение #9


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(=AK= @ Mar 12 2012, 07:06) *
Откуда у вас 30 сек взялись? USB FS типично перекачает 250 кБ за пару секунд. Битые пакеты в балке перезапрашиваются автоматически, потому вероятность, что "ежели вдруг сломалось" исчезающе мала. Если бы не баг в драйвере, то разбивать файл на мелкие блоки не имело бы ни малейшего смысла: это лишний гемморой и ненужный оверхед, достаточно проверять целостность всего файла.

Мы там уже плавно перешли к "настоящему" RS-232. Но и в том, и другом (USB->COM) случае, если заказана скорость UART 115200, 250 кб будут передаваться больше 25 секунд (не бывает мостов с буфером в четверть мегабайта).

И по факту все работает (FT232, FT2232) без ограничений на длину блока 8 кило.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Alt.F4   FT232R - как передать большой пакет   Mar 10 2012, 19:14
- - rx3apf   Управление потоком включено ?   Mar 10 2012, 19:46
- - Alt.F4   Отключено, на другой стороне юзаю только RXD и TXD...   Mar 11 2012, 04:15
- - Andreymai   1. я сперва использовал PL-2303, но потом у него н...   Mar 11 2012, 04:51
- - Alt.F4   Цитатаеще надо проверить выводы RTS/CTS - не висят...   Mar 11 2012, 07:37
|- - rx3apf   Цитата(Alt.F4 @ Mar 11 2012, 11:37) Вся п...   Mar 11 2012, 11:03
- - Vasily_   Попробуйте в настройках порта FTDI поменять латенц...   Mar 11 2012, 09:58
- - -SANYCH-   Когда работал с FT232 тоже столкнулся с проблемой....   Mar 11 2012, 10:54
- - =AK=   Цитата(Alt.F4 @ Mar 11 2012, 05:44) Столк...   Mar 11 2012, 11:56
|- - aaarrr   Цитата(=AK= @ Mar 11 2012, 15:56) У винды...   Mar 11 2012, 12:00
|- - =AK=   Цитата(aaarrr @ Mar 11 2012, 22:30) А как...   Mar 11 2012, 12:06
|- - aaarrr   Цитата(=AK= @ Mar 11 2012, 16:06) Посколь...   Mar 11 2012, 12:15
|- - =AK=   Цитата(aaarrr @ Mar 11 2012, 22:45) VCP -...   Mar 11 2012, 12:36
|- - aaarrr   Цитата(=AK= @ Mar 11 2012, 16:36) Я полаг...   Mar 11 2012, 13:01
|- - =AK=   Цитата(aaarrr @ Mar 11 2012, 23:31) Нет т...   Mar 11 2012, 13:27
|- - aaarrr   Цитата(=AK= @ Mar 11 2012, 17:27) У любог...   Mar 11 2012, 13:42
|- - =AK=   Цитата(aaarrr @ Mar 12 2012, 00:12) Еще р...   Mar 11 2012, 13:53
- - aaarrr   Да перечитал уже, но решил оставить: печально, но ...   Mar 11 2012, 14:16
|- - rx3apf   Цитата(aaarrr @ Mar 12 2012, 00:12) И пот...   Mar 11 2012, 20:37
||- - aaarrr   Цитата(rx3apf @ Mar 12 2012, 00:37) И на ...   Mar 11 2012, 20:51
||- - rx3apf   Цитата(aaarrr @ Mar 12 2012, 00:51) Таки ...   Mar 11 2012, 21:00
||- - aaarrr   Цитата(rx3apf @ Mar 12 2012, 01:00) Однак...   Mar 11 2012, 21:09
||- - rx3apf   Цитата(aaarrr @ Mar 12 2012, 01:09) Мне п...   Mar 11 2012, 21:19
||- - aaarrr   Цитата(rx3apf @ Mar 12 2012, 01:19) До та...   Mar 11 2012, 21:43
|- - aaarrr   Цитата(=AK= @ Mar 12 2012, 07:06) Чем вас...   Mar 12 2012, 09:28
|- - XVR   Цитата(=AK= @ Mar 12 2012, 07:06) Вот име...   Mar 12 2012, 09:29
- - Alt.F4   ЦитатаЧем обусловлена потребность работы такими бо...   Mar 11 2012, 16:52
|- - aaarrr   Цитата(Alt.F4 @ Mar 11 2012, 20:52) Звук ...   Mar 11 2012, 16:57
- - Alt.F4   ЦитатаПопробуйте в настройках порта FTDI поменять ...   Mar 11 2012, 18:56
|- - XVR   Цитата(Alt.F4 @ Mar 11 2012, 22:56) Зато ...   Mar 12 2012, 09:26
- - fox2trot   Был такой же баг пока не отключил в свойствах для ...   Mar 13 2012, 05:14


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

 


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


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