[an error occurred while processing this directive]
Ответ:
(«Телесистемы»: Конференция «Цифровые сигнальные процессоры (DSP) и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено andr2000 15 марта 2005 г. 10:21
В ответ на: Прерывание UART в Blackfine отправлено dinam 14 марта 2005 г. 13:27

Может я конечно не прав, но...
У меня тоже RS-485, но я все делаю через ДМА с дескрипторами
(первый дескр на заголовок, 2-й на данные и 3-й на чек сумму)
Причем есть 2 варианта.
1. использование флага DMA_RUN
в этом случае после получения прерывания TX_EMPTY в самом обработчике
ждем когда ФИФО ДМА реально уйдет и только после этого прекращаем передачу. в этом случае плохо то, что приходится сидеть в обработчике
и ждать когда уйдет 4 байта (это длина ФИФО ДМА для 8-битных слов)
2. так как длина ФИФО 4 байта, то последний дескриптор передает на 4
байта больше чем нужно, но в обработчике не ждем никого, а сразу обрываем передачу. таким образом эти 4 байта никуда не идут и никому
не мешают

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru