Перейти к содержанию
    

stm32f4 ADC triple mode с выводом данных на порт

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

 

Есть 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: )

Заранее спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...