|
FT232R - как передать большой пакет |
|
|
|
 |
Ответов
|
Mar 11 2012, 19:42
|
Гуру
     
Группа: Участник
Сообщений: 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кб. Попробуйте все ж на другом компьютере. Проблем не должно быть, это работает и проверено.
|
|
|
|
|
Mar 12 2012, 03:06
|

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 (если не считать бага в имплементации)?
|
|
|
|
|
Mar 12 2012, 08:28
|
Гуру
     
Группа: Участник
Сообщений: 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 кило.
|
|
|
|
Сообщений в этой теме
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
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|