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

Есть необходимость привинтить к контроллеру внешний ацп с паралельным интерфейсом .

Есть вариант adc1410s080 если удасться достать или более доступный LTC2246

Оба 14 битные с похожими простыми паралельными интерфейсами. Считывает данные по перепаду на клоке

Хочу привинтить их к FSMC как внешнюю SRAM

CS использовать как клок

Может у кого то есть подобный практический опыт подключения АЦП или других устройств? Так же интересует стабильность такого клока от СТМ32.

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


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

Хочу привинтить их к FSMC как внешнюю SRAM

CS использовать как клок

Подсказка есть тут:

https://www.st.com/content/ccc/resource/tec....CD00201397.pdf

 

 

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

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

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


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

14бит и менее к DCMI ( параллельному интерфейсу камеры) легко прикручиваются. Сбор данных по DMA. Синхронизации строчные и кадровые отключить.

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


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

14бит и менее к DCMI ( параллельному интерфейсу камеры) легко прикручиваются. Сбор данных по DMA. Синхронизации строчные и кадровые отключить.

 

Спасибо.

Вчера все просто получилось

Поднял в кубе SRAM с одним битом адреса . О не дает, ругаеться

Попробовал считать . Затем поднял DMA mem to mem

тоже без особых проблем все завелось .

Покак просто попробовал подавать напряжения на ноги и смотрел что читает в отладчике

Ну и осцилографом клок посмотрел тот что NE1 у меня.

Единсьвенная проблемка это была небольшая задержка между байтами что для ацп неприемлемо

Пропала после того как в кубе ДМА аоменял значение thкуырщдв на любое кроме full-

теперь всевь пакет идет равномерно

 

Подсказка есть тут:

https://www.st.com/content/ccc/resource/tec....CD00201397.pdf

 

 

 

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

 

Насколько я понимаю CS в SRAM дергаеться всегда не зависимо от того к какому участку памяти обращаемся. Он так и называпеться -чип селект выбор кристалл.?

 

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


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

Насколько я понимаю CS в SRAM дергаеться всегда не зависимо от того к какому участку памяти обращаемся. Он так и называпеться -чип селект выбор кристалл.?

Обычно линий CS несколько (у ST они называются NE0, NE1 и т. д.). Каждая из них привязана к своему региону памяти.

Разумеется, когда идет обращение к одному и тому же региону, то дергается только один соотв. NE.

Подробности см. в даташите. Не ленитесь по-чаще это делать ;)

 

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


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

Подробности см. в даташите. Не ленитесь по-чаще это делать ;)

Тут налицо типичное кубокодерство, а Вы про какие-то даташиты.... :smile3046:

Вообще сомневаюсь, что там реально нужен внешний АЦП.

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


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

Вообще сомневаюсь, что там реально нужен внешний АЦП.

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

ПЛИС "цепляется" к соотв. и достаточно "злобному" МК.

 

А причина, почему в данном случае используется АЦП, который тут как из пушки по воробьям, скорее выходит за рамки этой темы.

Ждем новой темы в стиле "как заставить stm32f4 обрабатывать поток данных с внешнего АЦП под 50 мегасэмплов в сек без тормозов?" :)

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


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

Ждем новой темы в стиле "как заставить stm32f4 обрабатывать поток данных с внешнего АЦП под 50 мегасэмплов в сек без тормозов?" :)

Насколько понимаю, там проблема возникнет гораздо раньше обработки, при сопряжении МК<->АЦП: принять по внешнему FSMC в STM32F4 на достаточной скорости поток данных от АЦП ой как непросто! А без умения читать даташиты вообще невозможно.

С какой реально частотой можно принимать сэмплы с такого АЦП через FSMC? Уверен на 90%, что когда это выяснится, то окажется, что LPC4370 с его внутренним АЦП много шустрее. И дешевле.

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


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

окажется, что LPC4370 с его внутренним АЦП много шустрее. И дешевле.

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

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


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

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

ПЛИС "цепляется" к соотв. и достаточно "злобному" МК.

 

А причина, почему в данном случае используется АЦП, который тут как из пушки по воробьям, скорее выходит за рамки этой темы.

Ждем новой темы в стиле "как заставить stm32f4 обрабатывать поток данных с внешнего АЦП под 50 мегасэмплов в сек без тормозов?" :)

 

Здесь все очень просто. Это НЕ ПОТОК ДАННЫХ поэтому и применяеться контроллер . Мы оцифровываем короткий участок с обьемом до сотни выборок и потом можем достаточно долго его обрабатывать

Пэтому выполнить преобразование например Герцеля для длока из 50-100 точек можно и на ф4 без всяких проблемм

По поводу скорости то FMC f4 по датащиту обеспечивает скорость работы с памятью до 90 мгц. Хотелось бы это посмотреть так как мне 25 вполне хватит

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


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

Хотелось бы это посмотреть так как мне 25 вполне хватит

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

 

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


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

По поводу скорости то FMC f4 по датащиту обеспечивает скорость работы с памятью до 90 мгц. Хотелось бы это посмотреть так как мне 25 вполне хватит

Это с памятью. С определённым интерфейсом и сигналами. У АЦП они немного другие и такой скорости там можно и не получить, а получить раза в 2 меньше.

А тогда получается, что LPC4370 однозначно лучше связки из STM32F4+внешний_АЦП. Ну если конечно младшие 2 бита слова данных АЦП не критичны.

Тем более если хватит 80MSPS - то на LPC4370 это без проблем, а через FSMC 80MSPS - вряд-ли.

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


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

По 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 делать.

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


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

По 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

Буду паралельно узучать и пробовать но это думаю не очень быстрро будет. Подскажите пожалуйста по ней русорсы для начала. Особенно примеры конфигураций итд чтото живое

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


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

По поводу LPC4370 заказал сегодня для изучения демоплату ОМ13054

Буду паралельно узучать и пробовать но это думаю не очень быстрро будет. Подскажите пожалуйста по ней русорсы для начала. Особенно примеры конфигураций итд чтото живое

Не знаю, наверное какие-то примеры есть - не интересовался. Я делал всё по юзер-мануалу и даташиту.

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

В качестве бонусов отладки на данном МК есть ETB.

 

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

А потом нашёл LPC4370 и все проблемы решились :rolleyes:

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


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

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

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

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

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

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

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

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

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

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