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

 
 
 
Reply to this topicStart new topic
> Проблемы с FT232BM, Как сделать Hardware Flow Control и отключается спустя минут 20
hd44780
сообщение Apr 24 2006, 13:12
Сообщение #1


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

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Сделал устройство FT232BM + ATMega8535.
Работают на скорости 0.5 Mbit (такт МК 4MHz).

Когда связь идет без аппаратного flow control - все идеально. Только на больших объемах данных (порядка 10кб от МК в компза одно обращение) глохнет.
Сделал flow control CTS/RTS:

Код
// прием байта из USART
byte uartBufferGetchar ( void )
{
byte data;

RTS = 1;        // МК готов к приему

// ждем прихода символа
// Если UCSRA.RXC == 0 - символа нет
while ( UCSRA.RXC == 0 );

// считать принятый байт из регистра данных USART
data = UDR;

RTS = 0;        // МК не готов к приему
return data;
} // uartBufferGetchar

// передача байта в USART
void uartBufferPutchar ( byte c )
{
// ждать опустошения буфера передатчика
while ( UCSRA.UDRE == 0 );

// ждать готовности FT232BM
// CTS == 1 - FT232BM готова к приему, 0 - не готова;
while ( CTS == 0 );

UDR = c;
} // uartBufferPutchar


Реакции - ноль.
FT232 конфигурируется так:
Код
    // RTS/CTS flow control
    ftStatus = FT_SetFlowControl ( ftHandle, FT_FLOW_RTS_CTS, 0, 0 );
    if ( ftStatus != FT_OK )
    {
        FT_Close ( ftHandle );
        printf ( "FT_SetFlowControl failed \n" );

        return 1;
    } // if


В чем беда? Не пойму.
Смотрел примеры, вроде также...

Еще одна трабла непонятная.

Когда к девайсу не обращаешься минут 20 (примерно, точно не засекал), оно не отвечает.
FT_OpenEx/FT_Open дает ошибку.
Приходится отключать и повторно включать USB разъем.

Это что все USB девайсы такие? у меня есть USB-мыша. Тоже отключается. только не через 20 мин, а когда как.

На FT стоит EEPROM. Питание от шины.


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
Alex11
сообщение Apr 24 2006, 19:32
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965



Что ьам с flow control, не знаю, а по поводу отключения проверь, как сконфигурено в PC управление питанием, не разрешено ли отключать USB устройства при паузе.
Go to the top of the page
 
+Quote Post
hd44780
сообщение Apr 25 2006, 05:48
Сообщение #3


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

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



А где это управление питанием сидит.
Рылся, рылся, не нашел ...


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
Asb
сообщение Apr 25 2006, 08:36
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 294
Регистрация: 11-11-04
Из: Москва
Пользователь №: 1 109



Возможно Ваши проблемы не в программе, а в помехах по шине USB. Сам налетал на подобное, првда с FT245BM.
Рекомендации от FTDI: http://www.ftdichip.com/Support/Knowledgeb...5workwhenco.htm полностью решили проблему, да и в любом случае на мой взгляд стоит использовать эту рекомендацию.
Go to the top of the page
 
+Quote Post
hd44780
сообщение Apr 25 2006, 08:44
Сообщение #5


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

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



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


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
hd44780
сообщение Apr 26 2006, 05:12
Сообщение #6


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

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Управление питанием не помогло.
Придется кондеры ставить...


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
GDI
сообщение Nov 14 2006, 11:46
Сообщение #7


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

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



Для справки: у меня переходник COM-USB на PL2303, купленный в магазине, тоже отключается через 20 минут.
И второе: аппаратный флоу контролл в виндах работает как-то коряво, он выставляет сигнал RTS и все... это я когда делал переходник rs232-rs485 напоролся( может просто плохо вкурил тему), но в итоге я сделал свой переходник без управления RTS.


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
Massi
сообщение Nov 14 2006, 13:09
Сообщение #8


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

Группа: Свой
Сообщений: 1 007
Регистрация: 24-01-06
Из: Киев
Пользователь №: 13 556



была такая трабла...это помехи вырубают фтшку...драйвер криво писан...помехи рублю так....RC цепочка 50 Ом и 360 пФ последовательная....резистор на данные конденсатор на землю...пики срубает на три пятнадцать и не давит скорость передачи...

Сообщение отредактировал Massi - Nov 14 2006, 13:12


--------------------
Motobaza.kiev.ua
Go to the top of the page
 
+Quote Post

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

 


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


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