|
FT232RL - изменение baud rate |
|
|
|
Jan 17 2012, 17:07
|
Группа: Участник
Сообщений: 11
Регистрация: 7-05-07
Пользователь №: 27 583

|
Возник вопрос - как можно интерпретировать лог ниже? Видно, что бодрейт меняется, но одна из сторон - FT232RL(будильник sleeptracker elite) по определению крайне тупа и не должна изменять параметры протокола во время работы. Дамп делал в виртуальной машине c помощью дампилки последовательных портов от aggsoft, в хост-системе вайршарк выдает крайне малочитабельный дамп обмена по юсб, из которого сложно выцепить что-либо кроме собственно дата-чаров, передающихся после установления последовательного протокола. Предыдущие версии будильника работали, судя по исходникам, на 24008N1, потому такое поведение и удивляет. Код <20120117010045.756 SYS> COM is open <20120117010045.756 SYS> In/out queue size 4096/4096 <20120117010045.756 SYS> Baud rate 9600 <20120117010045.772 SYS> RTS on <20120117010045.772 SYS> DTR on <20120117010045.772 SYS> Data bits=8, Stop bits=1, Parity=None <20120117010045.772 SYS> Set chars: Eof=0x00, Error=0x00, Break=0x00, Event=0x00, Xon=0x11, Xoff=0x13 <20120117010045.787 SYS> Handflow: ControlHandShake=(DTR_CONTROL), FlowReplace=(TRANSMIT_TOGGLE, RTS_CONTROL), XonLimit=2048, XoffLimit=512 <20120117010045.787 SYS> Baud rate 19200 <20120117010045.787 SYS> RTS on <20120117010045.803 SYS> DTR on <20120117010045.803 SYS> Data bits=8, Stop bits=1, Parity=None <20120117010045.803 SYS> Set chars: Eof=0x00, Error=0x00, Break=0x00, Event=0x00, Xon=0x11, Xoff=0x13 <20120117010045.803 SYS> Handflow: ControlHandShake=(DTR_CONTROL), FlowReplace=(TRANSMIT_TOGGLE, RTS_CONTROL), XonLimit=1024, XoffLimit=1024 <20120117010045.803 SYS> Set timeouts: ReadInterval=-1, ReadTotalTimeoutMultiplier=0, ReadTotalTimeoutConstant=0, WriteTotalTimeoutMultiplier=0, WriteTotalTimeoutConstant=2147483647 <20120117010045.803 SYS> Set timeouts: ReadInterval=-1, ReadTotalTimeoutMultiplier=0, ReadTotalTimeoutConstant=0, WriteTotalTimeoutMultiplier=0, WriteTotalTimeoutConstant=212900 <20120117010045.803 SYS> Set timeouts: ReadInterval=1000, ReadTotalTimeoutMultiplier=0, ReadTotalTimeoutConstant=1000, WriteTotalTimeoutMultiplier=0, WriteTotalTimeoutConstant=212900 <20120117010045.803 SYS> Set timeouts: ReadInterval=1000, ReadTotalTimeoutMultiplier=0, ReadTotalTimeoutConstant=1000, WriteTotalTimeoutMultiplier=0, WriteTotalTimeoutConstant=2147483647 <20120117010045.803 TX>
|
|
|
|
|
 |
Ответов
(1 - 6)
|
Jan 18 2012, 07:42
|
Группа: Участник
Сообщений: 11
Регистрация: 7-05-07
Пользователь №: 27 583

|
Цитата(V_G @ Jan 18 2012, 02:45)  Я бы присоединил лог размером мегабайт и заставил форумчан его разбирать, чтобы служба медом не казалась...
По делу - никогда не считал FT232RL тупой машиной, бодрейт она (точнее, ее драйвер) меняет точно в соотвествии с командами от виндовой программы. Вы же даже не обозначили, в какой операционке и с какими драйверами работате. И в чем состоит вопрос (интерпретировать лог - это не вопрос) А, конечно - гостевая система, в которую проброшен усб-девайс - windows 2008, можно считать, та же семерка, драйвер с оффсайта фтди. Про сам лог - имеет ли смысл делать соединение сразу на 19200 и пытаться общаться с девайсом или нужно обязательно повторять путь выше? Поскольку даты в сессии на 9600 не передается никакой, возникает вопрос, зачем она создается.
|
|
|
|
|
Jan 18 2012, 08:09
|

Профессионал
    
Группа: Свой
Сообщений: 1 818
Регистрация: 15-10-09
Из: Владивосток
Пользователь №: 52 955

|
Все равно непонятно, к чему вопрос, и непонятно, лог чего это. Если вы пишете софт сами, устанавливайте нужную скорость сразу и качайте данные. Или вы хотите вскрыть чью-то программу? Тогда это вопрос не как работать с FT232, а как вскрывать чужие программы!
Да, и я использую драйвер виртуального компорта (VCP), а не D2XX. Какие команды шлет при работе драйвер микросхеме, мне сугубо по барабану, я использую обычные виндовые API функции работы с компортом.
|
|
|
|
|
Jan 18 2012, 08:17
|
Группа: Участник
Сообщений: 11
Регистрация: 7-05-07
Пользователь №: 27 583

|
Цитата(V_G @ Jan 18 2012, 12:09)  Все равно непонятно, к чему вопрос, и непонятно, лог чего это. Если вы пишете софт сами, устанавливайте нужную скорость сразу и качайте данные. Или вы хотите вскрыть чью-то программу? Тогда это вопрос не как работать с FT232, а как вскрывать чужие программы!
Да, и я использую драйвер виртуального компорта (VCP), а не D2XX. Какие команды шлет при работе драйвер микросхеме, мне сугубо по барабану, я использую обычные виндовые API функции работы с компортом. Я хочу избавиться от необходимости запускать гостевую винду каждый раз, когда мне потребуется слить данные, плюс виндовая программа умеет только одно - отсылать данные о цикле сна на сервер слиптрекера, чего я, например, могу не желать. Хочется получить для себя полное описание протокола, благо он не шибко сложный, и наваять консольную софтинку, которую можно будет пускать в хостовом линуксе. То есть ответ на мой вопрос - пробовать сразу ставить 19200, верно?
|
|
|
|
|
Jan 18 2012, 09:43
|

Профессионал
    
Группа: Свой
Сообщений: 1 818
Регистрация: 15-10-09
Из: Владивосток
Пользователь №: 52 955

|
Под виндой я бы сказал однозначно: да, верно! Где-то писали о линукс-драйверах для FTDI. Может, на самом сайте FTDI? Не думаю, что где-то в открытом доступе есть протокол FTDI, там какие-то заморочки с авторскими правами. Но на этом форуме что-то подобное обсуждалось (то ли сам протокол, то ли линукс-дрова), поищите. PS. Точно, на http://www.ftdichip.com есть линуксовые дрова, заходите и качайте
Сообщение отредактировал V_G - Jan 18 2012, 09:45
|
|
|
|
|
Jan 18 2012, 10:56
|
Группа: Участник
Сообщений: 11
Регистрация: 7-05-07
Пользователь №: 27 583

|
Цитата(V_G @ Jan 18 2012, 13:43)  Под виндой я бы сказал однозначно: да, верно! Где-то писали о линукс-драйверах для FTDI. Может, на самом сайте FTDI? Не думаю, что где-то в открытом доступе есть протокол FTDI, там какие-то заморочки с авторскими правами. Но на этом форуме что-то подобное обсуждалось (то ли сам протокол, то ли линукс-дрова), поищите. PS. Точно, на http://www.ftdichip.com есть линуксовые дрова, заходите и качайте С драйвером проблем нету, используется ядерный ftdi_sio. Дело в том, что слиптрекеры предыдущих моделей кроме отличного бодрейта имели другой протокол обмена, сейчас там аскей не задействован вообще и используются байты выше 127 и нулевой(зачем?). В общем спасибо, буду на 19200 пинать железку.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|