Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: at91 usart in hardware handshaking mode
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
sergeeff
Столкнулся с таким эффектом. В at91rm9200 процессоре USART1 в handshaking mode с DMA. Сигнал RTS устанавливается автоматом, когда оба DMA буфера заполнены. По теории сигнал RTS должен тотчас блокировать передачу с хоста. Но! На стороне PC, как правило, активириваны приемо-передающие FIFO. Выяснилось (http://docs.tibbo.com/taiko/index.html?ser_uart_mode.htm), что RTS передачу данных из FIFO не блокирует. Таким образом, я при приеме теряю эти самые байты. Отключение FIFO для COM в PC - не вариант.

Кто знает, как это побороть?
aaarrr
Цитата(sergeeff @ Dec 9 2009, 18:55) *
Кто знает, как это побороть?

Только вручную, запрещая хосту передачу задолго (>60 байт) до конца приемного буфера.
sergeeff
Спасибо за совет. "Ручками" все получилось реализовать. Очередной пример того, что "умные" аппаратные режимы на практике такими не оказываются.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.