|
|
  |
XMega - FT232RL - PS |
|
|
|
May 16 2012, 05:27
|

Гуру
     
Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106

|
УРА! Нашел эту самую злополучную задержку! В доп. настройках ком порта FTDI. В параметре "Время ожидания (мсек)" стояло именно 17! Поставил 1 и задержка действительно стала 1мс, правда иногда скачет до 2-х мс, но это видать винда чудит. В результате удалось получить скорость приёма ~278сек. Далеко от идеала но всёже лучше чем не 1310с Кстати, уменьшение параметра "Буфер приёма/передачи (Байты)" с 4096 до 512 не даёт ни какого эффекта. Сейчас думаю как ещё уменьшить время приёма. 1. Увеличить скорость до 3Mb/s - эффект предсказуем. 2. Увеличить размер передаваемой пачки до 1024,2048 или 4096 байт. Как думаете существенно ли повлияет увеличение размера буфера на время передачи? Т.к. изменение буфера довольно кропотливый процесс и не хочется зря время тратить. Цитата(dimka76 @ May 16 2012, 08:04)  Не фантастика сам лично через виртуальный COM порт загонял в компьютер 1 ГБайт за 90 секунд  Как же это возможно? Ведь скрость должна быть ~120Mb/s!
Эскизы прикрепленных изображений
|
|
|
|
|
May 16 2012, 05:45
|

Гуру
     
Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106

|
Цитата(V_G @ May 16 2012, 08:37)  У вас в одну сторону буфер должен быть 512 байт, а в другую - 1 байт. Возможно, сейчас тормозит именно передающая команды сторона Дык, гадюка, буфер меньше 64 байт ни на прём ни на передачу поставить не даёт! Но даже если ставлю буфер передачи 64 байта, эффекта никакого. И потом, приём в ПК это всего лишь один из режимов. Позже нужно будет и обратно 32МБ гнать. Как размеры буферов менять на лету? Я бы лучше "Время ожидания (мсек)" поставил в 0 но меньше 1 тоже не даёт.
|
|
|
|
|
May 16 2012, 09:06
|

developer
   
Группа: Свой
Сообщений: 902
Регистрация: 12-04-06
Из: Казань
Пользователь №: 16 032

|
Цитата(zombi @ May 16 2012, 08:27)  Как же это возможно? Ведь скрость должна быть ~120Mb/s! Вертуальный СОМ порт это мост USB<->UART. Т.е. с одной стороны у вас ножки USB, а стругой - ножки UART. Эта кортинка справедлива только если вы реально что-то выдаете на ножки UART. И в этой картинке (окне) вы задаете с какой скоростью будут идти данные на ножках UART. И значение этой скорости передается в микросхему в дескрипторах USB. Если использовать аппаратный мост (типа FT232) то получается, что не возможно выйти за рамки этих настроек. Если виртуальный СОМ порт реализовать на микроконтроллере, то эти настройки (передаваемые в дескрипторах) можно проигнорировать и сделать все по-своему. У меня так и было сделано. А данные гнались из внутреннего ОЗУ микроконтроллера по HIGH-SPEED USB.
--------------------
Все может быть и быть все может, и лишь того не может быть-чего уж точно быть не может, хотя..и это может быть.
|
|
|
|
|
  |
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|