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

 
 
> stm32f4 ADC triple mode с выводом данных на порт
Sprite
сообщение Apr 8 2018, 15:00
Сообщение #1


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

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



Доброго всем времени суток!

Есть stm32f4 и ПЛИС. Требуется реализовать оцифровку АЦП-сигнала с максимально возможной частотой и передать сигнал по параллельной шине в ПЛИС желательно без использования ресурсов МК, т.е. аппаратно. Для этого планирую настроить АЦП в режиме triple interleaved и посредством ДМА (режим DMA mode 1 - поправьте, если я не прав) складывать полученные данные в какую-нибудь переменную, скажем adc_val[3]. Далее посредством другого DMA отправлять данные adc_val на порт. Слышал, что это возможно, вопрос только в синхронизации, а именно:

1. Нужно ли синхронизировать DMA друг с другом, т.е. не получится ли ситуации, когда в момент обновления переменной adc_val первым DMA второй DMA попытается "забрать" эти данные и выведет непонятно что на порт.

2. Как обеспечить синхронный сбор данных на ПЛИС? ПЛИС тактируется с выхода MCO МК, поэтому МК желательно иметь сигнал тактирования забора данных, которых выдавался бы строго посредине времени вывода очередного АЦП показания на порт. Если я правильно понимаю, другой DMA должен запускаться по таймеру, работающему на частоте преобразования АЦП. Если так, то задача сводится к выводу ШИМ-сигнала, но как настроить этот таймер таким образом, чтобы генерация ШИМ-сигнала происходила бы строго посредине времени преобразования АЦП?


Был бы очень признателен готовым примерам ADC triple interleaved mode.
HAL не люблю, предпочитаю работать напрямую через регистры (но свою нелюбовь никому не навязываю rolleyes.gif )
Заранее спасибо!
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


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

 


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


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