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

 
 
> GPDMA+TxSSP в LPC17xx, Выдать блок данных по прерыванию
AlexPo
сообщение Nov 30 2010, 08:20
Сообщение #1





Группа: Участник
Сообщений: 11
Регистрация: 26-07-05
Пользователь №: 7 090



Задача.
Хотелось бы использовать GPDMA для выдачи блока данных из памяти в SSP, который используется в режиме SPI. Блоки должны выдаваться по периодическому прерыванию (у меня по PWM1). Время на выдачу блока гарантированно меньше периода прерываний. По прерыванию TC от DMA (окончание выдачи) - перезагружаю значение TransferSize в DMACCxControl и адрес источника данных в памяти (перезагружаю рег-р DMACCxSrcAddr). В прерывании от PWM1 только устанавливаю бит Enable рег-ра DMACCxConfig для запуска новой пачки. Вроде всё правильно, но ... Наблюдаю на осциллографе непрерывную выдачу данных по SSP абсолютно не синхронизированную с периодическими прерываниями. В чем ошибка?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 1)
AlexPo
сообщение Nov 30 2010, 12:08
Сообщение #2





Группа: Участник
Сообщений: 11
Регистрация: 26-07-05
Пользователь №: 7 090



Вопрос снят. GPDMA работает правильно. Всё дело в досадном ляпе: надо было очищать флаг прерываний от PWM1!
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 20:58
Рейтинг@Mail.ru


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