Миландр

Ключевым подразделением нашей компании является Центр Проектирования интегральных микросхем
Текущее время: 2017-дек-12 20:39

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: Контроллер DMA RISC в 1901ВЦ1Т
СообщениеДобавлено: 2016-ноя-16 22:23 
Не в сети

Зарегистрирован: 2016-ноя-16 21:42
Сообщения: 2
Дорогие разработчики, помогите, пожалуйста заблокировать источник ненужных прерываний DMA RISC.
Суть в следующем. Инициализирую SSP-модули, как советовалось в других ветках форума, чтобы не было лишних срабатываний прерываний DMA:
Код:
RST_CLK_PCLKcmd(RST_CLK_PCLK_DMA|RST_CLK_PCLK_SSP1|RST_CLK_PCLK_SSP2|RST_CLK_PCLK_SSP3|RST_CLK_PCLK_SSP4, ENABLE);
MDR_SSP1->DMACR = 0;
MDR_SSP2->DMACR = 0;
MDR_SSP3->DMACR = 0;
MDR_SSP4->DMACR = 0;

DMA_DeInit();
MDR_DMA->CHNL_ENABLE_CLR   = 0xFFFFFFFF;
MDR_DMA->CHNL_REQ_MASK_SET = 0xFFFFFFFF;

NVIC_EnableIRQ(DMA_IRQn);

for (;;) {}

При этом, как и положено, никаких DMA прерываний не возникает.
Но если перед for(;;) вставить RST_CLK_DSPCmd(ENABLE); код постоянно влетает в обработчик DMA_IRQHandler.
Причем регистр MDR_DMA->STATUS == 0x101F0000, т.е. работа контроллера запрещена.
Как можно решить эту проблему с возникновением ненужных прерываний?

Добавление:
После вызова RST_CLK_DSPCmd(ENABLE); в регистре DIR (который находится по адресу 0x3000_0078) выставляется флаг DMAIRQ. Может, это из-за него генерятся DMA-прерывания? А как его сбросить? Простой вызов DSP_DSPToRISCInterruptCmd(DSP_CORE_DIR_DMAIRQ, RESET); не срабатывает - флаг все равно выставлен.
Прошу помочь в решении проблемы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Контроллер DMA RISC в 1901ВЦ1Т
СообщениеДобавлено: 2017-мар-01 14:12 
Не в сети

Зарегистрирован: 2016-июл-21 09:56
Сообщения: 3
Откуда: Московский прожекторный завод
Столкнулся с такой же проблемой. Есть кто живой на форуме?
Ответьте, пожалуйста.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB