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

 
 
> Какова реальная скорость преобразоваиня АЦП у STM32?
Mik174
сообщение Nov 13 2009, 23:32
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 357
Регистрация: 6-01-07
Пользователь №: 24 139



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

Читаю документацию, но четкого указания не нахожу -
"Sampling rate от 0.05 до 1 МГц
Total conversion time от 1 до 18 мкс"
но к обоим пунктам есть интересная пометка:
"Guaranteed by design, not tested in production."

Т.е. получается типа такого "мы сделали, должно работать, но сами не смотрели, проверьте сами"?

Мне нужно получить преобразование по 3 каналам.
Преобразование по всем каналам должно происходить параллелльно.
Время преобразования нужно порядка 1 мкс
На всех 3 каналах захват сигнала должен происходить одновременно.

Возможно ли такое получить на STM32 или придется городить ПЛИС с отдельно стоящими АЦП?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
adnega
сообщение Nov 17 2009, 19:33
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Резистор у меня "рукодельный" (т.е. я его специально ставил, чтоб как-то ток ограничивать). Сопротивление 20+33 ома. Про емкость завтра поищу. Что-то видел в доках. Но заранее хочу предупредить, что для меня это не проблема, т.к. я не использую все отсчеты - получается так, что на каждый "нужный" отчет у меня приходится несколько "фиктивных", а последовательное преобразование в АЦП делаю лишь для соблюдения точных временных параметров и сбора в буфер по ДМА. Сигнал затухающий и "фиктивные" выборки стремятся к константе, т.е. до "нужного" отчета у меня оцифровывается сигнал близкий к этой константе (к половине питания) и влияние всегда одинаково.

На ум приходят несколько, пожалуй, не самых удачных идей:
1. Поставить повторитель сигнала перед каждым каналом: взять какой-нить быстродействующий ОУ, соединить выход с отрицательным входом, сигнал подавать на положительный вход, выход ОУ без всяких резисторов на ногу АЦП.
2. Менять тайминги (т.е. 1.5 увеличить) или еще хуже между каждым каналом оцифровывать фиктивный с константой. Но это самых худший вариант по скорости.
3. Перетасовать каналы и последовательность оцифровки так, чтобы предыдущий и последующий каналы не сильно отличались по амплитуде. На практике сложно выполнимо.
4. Прикинуть модель работы входных цепей и делать программную коррекцию полученных данных. Потребует хорошей матобработки данных. Но, по-моему, самый перспективных вариант, если еще и п.1 сделать smile.gif
5. "Сгородить" схему, которая бы делала автоматическую компенсацию "следа", т.е. к сигналу, который нужно измерить добавлять "ошибку", такую, чтобы после работы АЦП получать исходный сигнал. Т.е. матобработку из п. 4 "переложить" но внешнюю аналоговую схему.

Попробуйте проследить влияние предыдущей оцифровки на последующую - может не такая уж и сложная зависимость. Что-нить типа "из текущей оцифровки вычитай модуль разности текущей и предыдущей оцифровки деленный на 128"...
Go to the top of the page
 
+Quote Post



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

 


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


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