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

 
 
> STM32F4: по EXTI запускать чтение SPI по DMA, чтение из внешнего ацп по сигналу DRDY
kostyan
сообщение Dec 17 2014, 09:35
Сообщение #1


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

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



Народ помогите разобраться! Готовность данных во внешнем АЦП сигнализируется перепадом в ноль на пине. После этого надо прочитать из АЦП 3 байта, и далее ждать следующей оцифровки. Есть какой то механизм в STM32F4 чтобы по перепаду на пине запускать чтение SPI через DMA, не пользуя прерывание?

Сообщение отредактировал kostyan - Dec 17 2014, 09:36
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
kostyan
сообщение Dec 18 2014, 04:08
Сообщение #2


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

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



спасибо за наводку, буду медитировать это:

Цитата
Я бы предложил так:
1. Настраиваем один DMA на передачу 16 байт по событиям от SPI_TX.
2. Настраиваем другой DMA на прием N*2*16 байт по событиям от SPI_RX в кольцевой буфер с генерацией прерываний при заполнении и полузапонении.
3. Настраиваем таймер на одиночный запуск по спаду на ноге.
4. Первый канал совпадения таймера настраиваем на запись через еще один канал DMA числа 16 для NDTR первого DMA (M2M).
5. Второй канал совпадения таймера настраиваем на запись через еще один канал DMA управляющего слова (регистр CR) для первого DMA для запуска передачи (M2M).
6. Разрешаем таймер.
7. Имеем каждые N срабатываний готовности одно прерывание с данными в кольцевом буфере. Пока шаманим с этими данными, заполняется вторая часть кольцевого буфера - никто не потеряется.


Сообщение отредактировал kostyan - Dec 18 2014, 04:11
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 20th August 2025 - 12:47
Рейтинг@Mail.ru


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