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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> stm32f4 external parallel ADC
spirit_1
сообщение Jun 26 2018, 09:22
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 61
Регистрация: 2-10-17
Пользователь №: 99 572



Есть необходимость привинтить к контроллеру внешний ацп с паралельным интерфейсом .
Есть вариант adc1410s080 если удасться достать или более доступный LTC2246
Оба 14 битные с похожими простыми паралельными интерфейсами. Считывает данные по перепаду на клоке
Хочу привинтить их к FSMC как внешнюю SRAM
CS использовать как клок
Может у кого то есть подобный практический опыт подключения АЦП или других устройств? Так же интересует стабильность такого клока от СТМ32.
Go to the top of the page
 
+Quote Post
Forger
сообщение Jun 26 2018, 19:58
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Цитата(spirit_1 @ Jun 26 2018, 12:22) *
Хочу привинтить их к FSMC как внешнюю SRAM
CS использовать как клок

Подсказка есть тут:
https://www.st.com/content/ccc/resource/tec....CD00201397.pdf


Цитата
Так же интересует стабильность такого клока от СТМ32.

Зависит от кода - CS (точнее NEx) дергается лишь при обращении к соотв. региону внешней памяти. Это вам не DDR.


--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post
khach
сообщение Jun 26 2018, 20:36
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 3 439
Регистрация: 29-12-04
Пользователь №: 1 741



14бит и менее к DCMI ( параллельному интерфейсу камеры) легко прикручиваются. Сбор данных по DMA. Синхронизации строчные и кадровые отключить.
Go to the top of the page
 
+Quote Post
spirit_1
сообщение Jun 27 2018, 06:37
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 61
Регистрация: 2-10-17
Пользователь №: 99 572



Цитата(khach @ Jun 26 2018, 21:36) *
14бит и менее к DCMI ( параллельному интерфейсу камеры) легко прикручиваются. Сбор данных по DMA. Синхронизации строчные и кадровые отключить.


Спасибо.
Вчера все просто получилось
Поднял в кубе SRAM с одним битом адреса . О не дает, ругаеться
Попробовал считать . Затем поднял DMA mem to mem
тоже без особых проблем все завелось .
Покак просто попробовал подавать напряжения на ноги и смотрел что читает в отладчике
Ну и осцилографом клок посмотрел тот что NE1 у меня.
Единсьвенная проблемка это была небольшая задержка между байтами что для ацп неприемлемо
Пропала после того как в кубе ДМА аоменял значение thкуырщдв на любое кроме full-
теперь всевь пакет идет равномерно

Цитата(Forger @ Jun 26 2018, 20:58) *
Подсказка есть тут:
https://www.st.com/content/ccc/resource/tec....CD00201397.pdf



Зависит от кода - CS (точнее NEx) дергается лишь при обращении к соотв. региону внешней памяти. Это вам не DDR.


Насколько я понимаю CS в SRAM дергаеться всегда не зависимо от того к какому участку памяти обращаемся. Он так и называпеться -чип селект выбор кристалл.?
Go to the top of the page
 
+Quote Post
Forger
сообщение Jun 27 2018, 07:27
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Цитата(spirit_1 @ Jun 27 2018, 09:37) *
Насколько я понимаю CS в SRAM дергаеться всегда не зависимо от того к какому участку памяти обращаемся. Он так и называпеться -чип селект выбор кристалл.?

Обычно линий CS несколько (у ST они называются NE0, NE1 и т. д.). Каждая из них привязана к своему региону памяти.
Разумеется, когда идет обращение к одному и тому же региону, то дергается только один соотв. NE.
Подробности см. в даташите. Не ленитесь по-чаще это делать wink.gif


--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post
jcxz
сообщение Jun 27 2018, 07:31
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Forger @ Jun 27 2018, 10:27) *
Подробности см. в даташите. Не ленитесь по-чаще это делать wink.gif

Тут налицо типичное кубокодерство, а Вы про какие-то даташиты.... smile3046.gif
Вообще сомневаюсь, что там реально нужен внешний АЦП.
Go to the top of the page
 
+Quote Post
Forger
сообщение Jun 27 2018, 07:43
Сообщение #7


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Цитата(jcxz @ Jun 27 2018, 10:31) *
Вообще сомневаюсь, что там реально нужен внешний АЦП.

Безусловно в реальности такие АЦП с таким потоком данных обычно вешают на толстую ПЛИС (буферы, цифровые фильтры).
ПЛИС "цепляется" к соотв. и достаточно "злобному" МК.

А причина, почему в данном случае используется АЦП, который тут как из пушки по воробьям, скорее выходит за рамки этой темы.
Ждем новой темы в стиле "как заставить stm32f4 обрабатывать поток данных с внешнего АЦП под 50 мегасэмплов в сек без тормозов?" sm.gif


--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post
jcxz
сообщение Jun 27 2018, 07:49
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Forger @ Jun 27 2018, 10:43) *
Ждем новой темы в стиле "как заставить stm32f4 обрабатывать поток данных с внешнего АЦП под 50 мегасэмплов в сек без тормозов?" sm.gif

Насколько понимаю, там проблема возникнет гораздо раньше обработки, при сопряжении МК<->АЦП: принять по внешнему FSMC в STM32F4 на достаточной скорости поток данных от АЦП ой как непросто! А без умения читать даташиты вообще невозможно.
С какой реально частотой можно принимать сэмплы с такого АЦП через FSMC? Уверен на 90%, что когда это выяснится, то окажется, что LPC4370 с его внутренним АЦП много шустрее. И дешевле.
Go to the top of the page
 
+Quote Post
Forger
сообщение Jun 27 2018, 07:55
Сообщение #9


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Цитата(jcxz @ Jun 27 2018, 10:49) *
окажется, что LPC4370 с его внутренним АЦП много шустрее. И дешевле.

Возможно, у ТС "в ящике стола" нашлись только эти микросхемы. Зачастую именно и возникают попытки скрестить "ежа с ужом" sm.gif


--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post
spirit_1
сообщение Jun 27 2018, 09:16
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 61
Регистрация: 2-10-17
Пользователь №: 99 572



Цитата(Forger @ Jun 27 2018, 08:43) *
Безусловно в реальности такие АЦП с таким потоком данных обычно вешают на толстую ПЛИС (буферы, цифровые фильтры).
ПЛИС "цепляется" к соотв. и достаточно "злобному" МК.

А причина, почему в данном случае используется АЦП, который тут как из пушки по воробьям, скорее выходит за рамки этой темы.
Ждем новой темы в стиле "как заставить stm32f4 обрабатывать поток данных с внешнего АЦП под 50 мегасэмплов в сек без тормозов?" sm.gif


Здесь все очень просто. Это НЕ ПОТОК ДАННЫХ поэтому и применяеться контроллер . Мы оцифровываем короткий участок с обьемом до сотни выборок и потом можем достаточно долго его обрабатывать
Пэтому выполнить преобразование например Герцеля для длока из 50-100 точек можно и на ф4 без всяких проблемм
По поводу скорости то FMC f4 по датащиту обеспечивает скорость работы с памятью до 90 мгц. Хотелось бы это посмотреть так как мне 25 вполне хватит
Go to the top of the page
 
+Quote Post
Forger
сообщение Jun 27 2018, 09:35
Сообщение #11


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Цитата(spirit_1 @ Jun 27 2018, 12:16) *
Хотелось бы это посмотреть так как мне 25 вполне хватит

Это легко проверить без создания тем и проектирования плат, для этого под руками должны быть даташиты.


--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post
jcxz
сообщение Jun 27 2018, 09:38
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(spirit_1 @ Jun 27 2018, 12:16) *
По поводу скорости то FMC f4 по датащиту обеспечивает скорость работы с памятью до 90 мгц. Хотелось бы это посмотреть так как мне 25 вполне хватит

Это с памятью. С определённым интерфейсом и сигналами. У АЦП они немного другие и такой скорости там можно и не получить, а получить раза в 2 меньше.
А тогда получается, что LPC4370 однозначно лучше связки из STM32F4+внешний_АЦП. Ну если конечно младшие 2 бита слова данных АЦП не критичны.
Тем более если хватит 80MSPS - то на LPC4370 это без проблем, а через FSMC 80MSPS - вряд-ли.
Go to the top of the page
 
+Quote Post
khach
сообщение Jun 27 2018, 09:45
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 3 439
Регистрация: 29-12-04
Пользователь №: 1 741



По FSMC очень нерегулярно обмен происходит. Данные с АЦП будут терятся. Можно конечно поставить FIFO, но мелких микросхем FIFO сейчас найти трудно, да и обвязки логикой они требуют. Поэтому получается FPGA. Если FIFO все таки удалось найти, то там получается сложная система прерываний и запросов DMA, чтобы не было ни переполнения, ни опустошения FIFO. Заводили сигналы записи-чтения в FIFO на таймеры STM32 чтобы аппаратно считать обьем данных для обмена.
А на DCMI этих проблем нет. Скорость обмена до половины тактовой процессора, FIFO встроеное.
https://www.st.com/content/ccc/resource/tec....DM00373474.pdf
Собираем до 64 к выборок с АЦП, потом неспешно крутим фурье в оффлайне или еще какую цифровую обработку.
Проблема, если надо 2 и более АЦП на DCMI поставить или если вывыедены только 8 бит DCMI ( на многих макетных платах так сделано) . Тогда пришлось мультиплексор из мелкой CPLD делать.
Go to the top of the page
 
+Quote Post
spirit_1
сообщение Jun 27 2018, 10:32
Сообщение #14


Участник
*

Группа: Участник
Сообщений: 61
Регистрация: 2-10-17
Пользователь №: 99 572



Цитата(khach @ Jun 27 2018, 10:45) *
По FSMC очень нерегулярно обмен происходит. Данные с АЦП будут терятся. Можно конечно поставить FIFO, но мелких микросхем FIFO сейчас найти трудно, да и обвязки логикой они требуют. Поэтому получается FPGA. Если FIFO все таки удалось найти, то там получается сложная система прерываний и запросов DMA, чтобы не было ни переполнения, ни опустошения FIFO. Заводили сигналы записи-чтения в FIFO на таймеры STM32 чтобы аппаратно считать обьем данных для обмена.
А на DCMI этих проблем нет. Скорость обмена до половины тактовой процессора, FIFO встроеное.
https://www.st.com/content/ccc/resource/tec....DM00373474.pdf
Собираем до 64 к выборок с АЦП, потом неспешно крутим фурье в оффлайне или еще какую цифровую обработку.
Проблема, если надо 2 и более АЦП на DCMI поставить или если вывыедены только 8 бит DCMI ( на многих макетных платах так сделано) . Тогда пришлось мультиплексор из мелкой CPLD делать.



минимально надо 20м выборок, Поэтому шанс есть всетаки что потянет
Поясните пожалуйста фразу По FSMC очень нерегулярно обмен происходит. Данные с АЦП будут терятся.
Это происходит при каких то определенных скоростях ? В чем заключаеться потеря. ? Не высталяються сигналы на шину или наоборот сигналы выставляються но несчитываються при этом данные с внешнего устрройства
.
По поводу LPC4370 заказал сегодня для изучения демоплату ОМ13054
Буду паралельно узучать и пробовать но это думаю не очень быстрро будет. Подскажите пожалуйста по ней русорсы для начала. Особенно примеры конфигураций итд чтото живое
Go to the top of the page
 
+Quote Post
jcxz
сообщение Jun 27 2018, 10:39
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(spirit_1 @ Jun 27 2018, 13:32) *
По поводу LPC4370 заказал сегодня для изучения демоплату ОМ13054
Буду паралельно узучать и пробовать но это думаю не очень быстрро будет. Подскажите пожалуйста по ней русорсы для начала. Особенно примеры конфигураций итд чтото живое

Не знаю, наверное какие-то примеры есть - не интересовался. Я делал всё по юзер-мануалу и даташиту.
Заказывал 2шт. ОМ13054 - в одну прошил J-Link. Хотя можно пользоваться и внешним J-Link если имеется соответствующий кабель для него.
В качестве бонусов отладки на данном МК есть ETB.

PS: В то время тоже сначала хотел STM32F4+внешний_АЦП_на_FSMC (типа AD9226). Но нужно было около 50MSPS. Но из юзермануала на STM32F4 неясно было - можно ли вообще осуществить сопряжение с данным АЦП (по его сигналам) хотя-бы на половинной частоте FSMC? Тоже нужно было сделать выборку в пару тысяч отсчётов непрерывно, а потом сравнительно неспеша их обработать.
А потом нашёл LPC4370 и все проблемы решились rolleyes.gif
Go to the top of the page
 
+Quote Post

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

 


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


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