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

 
 
 
Reply to this topicStart new topic
> При использовании DMA флаг ENDRX всегда взведен
wodya
сообщение Apr 2 2007, 14:07
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 112
Регистрация: 27-03-07
Пользователь №: 26 549



Хочу использовать DMA для USART. Открываю прерывание по ENDRX. Но это флаг у USART все время взведен и, соответственно, все время вызывается прерывание. Данные по RS не передаются. Чтение статусного регистра у USART не помогает.
Кто знает как сбросить этот флаг?
Go to the top of the page
 
+Quote Post
kichkine
сообщение Apr 2 2007, 16:02
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 3-11-06
Из: Kiev
Пользователь №: 21 933



Цитата(wodya @ Apr 2 2007, 13:07) *
Хочу использовать DMA для USART. Открываю прерывание по ENDRX. Но это флаг у USART все время взведен и, соответственно, все время вызывается прерывание. Данные по RS не передаются. Чтение статусного регистра у USART не помогает.
Кто знает как сбросить этот флаг?


Это не сигнал об окончании DMA-цикла.
Сигнал ENDRX становится активным, когда счетчик RCR равен нулю.
Сигнал RXBUFF становится активным, когда счетчики RCR И RNCR равны нулю.

Сигнал ENDTX становится активным, когда счетчик TCR равен нулю.
Сигнал TXBUFE становится активным, когда счетчики TCR И TNCR равны нулю.

Я его использую для генерации прерываний следующим образом:
1. программирую DMA, счетчики становятся не нулевыми -> сигналы неактивны
2. разрешаю прерывания, запускаю DMA
3. получаю прерывание, запрещаю прерывание, обрабатываю его.

Примерно так.
Go to the top of the page
 
+Quote Post
wodya
сообщение Apr 2 2007, 16:08
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 112
Регистрация: 27-03-07
Пользователь №: 26 549



Да, так работает.
Спасибо
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 4th July 2025 - 22:18
Рейтинг@Mail.ru


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