STM32 ADC помехи

Кто любит RISC в жизни, заходим, не стесняемся.
Ответить
Это не хвост, это антенна
Аватара пользователя
Сообщения: 1433
Зарегистрирован: Вс дек 02, 2012 03:13:48
Откуда: Калининград

Сообщение balmer »

Пытаюсь применить ADC встроенный в STM32. Он вобщемто работает, но выдает на свой вход помехи с частотой 100 Кгц 25 милливольт. Быстро-быстро нарастающий фронт, а потом экспоненциальное затухание. Это нормальное его поведение или мой косяк? Использую в том-же порте несколько выводов и для выхода, но там статические сигналы, не меняющиеся во время работы ADC.

А с такими помехами получается, что 25 mV / 3.3 V это получается всего 7 бит разрешающей способности :cry:

На вход ADC когда мерял - поставил резистор на 470 ом.
Реклама
Это не хвост, это антенна
Аватара пользователя
Сообщения: 1433
Зарегистрирован: Вс дек 02, 2012 03:13:48
Откуда: Калининград

Сообщение balmer »

Вот как это выглядит на осциллографе:
Изображение
Реклама
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1518
Зарегистрирован: Пт дек 28, 2012 21:56:46
Откуда: St. Petersburg

Сообщение blackx »

А на опорном напряжении такого нет случайно? 100 кГц в питание может выдавать какой-нибудь импульсный преобразователь, например.
Изображение only pure true norwegian blackx Изображение
Это не хвост, это антенна
Аватара пользователя
Сообщения: 1433
Зарегистрирован: Вс дек 02, 2012 03:13:48
Откуда: Калининград

Сообщение balmer »

blackx писал(а):А на опорном напряжении такого нет случайно? 100 кГц в питание может выдавать какой-нибудь импульсный преобразователь, например.
Нет, это именно ADC - когда его включаю програмно, начинает идти такая пила. Когда выключаю - прекращается. Проверил на демоплатке - полностью аналогичная картина. Причем он както умудряется довольно точно измерять напряжения и порядка 5-10 милливольт. Хотя портит его при этом до неузнаваемости.

Про 100 килогерц это я на глазок сказал. Осцилограф говорит что 549 килогерц. Сейчас поменял частоту сэмплирования ADC, поменялась и частота пилы.
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Аватара пользователя
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

В курсе как работает ADC ? Что там переключается при сэмплировании ? :)))
И вообще как происходит процесс ? :)))
Повесь конденсатор на вход ADC , 10 nF хватит.
Последний раз редактировалось dosikus Пт июн 28, 2013 18:56:25, всего редактировалось 2 раза.
Реклама
Друг Кота
Аватара пользователя
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

blackx писал(а):А на опорном напряжении такого нет случайно? 100 кГц в питание может выдавать какой-нибудь импульсный преобразователь, например.
В данном случае это совершенно не причем ...
Реклама
Это не хвост, это антенна
Аватара пользователя
Сообщения: 1433
Зарегистрирован: Вс дек 02, 2012 03:13:48
Откуда: Калининград

Сообщение balmer »

dosikus писал(а):В курсе как работает ADC ? Что там переключается при сэмплировании ? :)))
И вообще как происходит процесс ? :)))
Заряжается маааленький конденсатор (несколько сотен пикофарад) от источника напряжения. Потом конденсатор отключается от источника напряжения и начинает компаратором сравниваться с несколькими разными напряжениями если не ошибаюсь. То есть если на входе нулевое напряжение (включенно сопротивление просто на вход), то вроде как не должно быть никакого напряжения.

Конечноже поставил на вход операционный усилитель (AD825), так что проблемма не актуальна.

Но вообще вопрос интересный, можно ли без операционного усилителя на входе использовать ADC? Если можно, то какое сопротивление источника сигнала должно быть, чтобы получить определенную точность?

Да и вообще тема шумов важная, както мало ее обсуждают. Я вот например только недавно померял/узнал, что дисплей от Nokia3310 это довольно мощьный источник шума, потому как там стоит StepUp преобразователь. Казалось бы всего 0.3 ма потребление, а шумит в несколько раз сильнее микроконтроллера.
Друг Кота
Аватара пользователя
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

Ну собственно на вход по любому нужен НЧ фильтр . В твоем варианте - резистор что ставил, и конденсатор хватило бы.
Это не хвост, это антенна
Аватара пользователя
Сообщения: 1433
Зарегистрирован: Вс дек 02, 2012 03:13:48
Откуда: Калининград

Сообщение balmer »

Не хочу НЧ фильтр. Хочу частоту ADC 400 кгц c максимально возможным разрешением. Потому как судя по "How to get the best ADC accuracy in STM32F10xxx devices.pdf" на частоту 400 кгц конденсатор не более 200 pF в RC фильтр нужен.
Друг Кота
Аватара пользователя
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

Ясно . Просто из твоего первого поста показалось , что пока просто играешься с ADC ...
Друг Кота
Аватара пользователя
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

balmer писал(а): на частоту 400 кгц конденсатор не более 200 pF в RC фильтр нужен.
Порядком не ошибся? Я вижу в 2.2.6 Source frequency condition vs. source and parasitic capacitors - 7pF.
Это не хвост, это антенна
Аватара пользователя
Сообщения: 1433
Зарегистрирован: Вс дек 02, 2012 03:13:48
Откуда: Калининград

Сообщение balmer »

dosikus писал(а):Порядком не ошибся?
Нет. 7 pf - это соооовсем мало.
Смотрю на таблицу "Figure 19. Recommended values for RAIN and CAIN vs. source frequency FAIN"
Там правда нет такой высокой частоты, но так как зависимость линейная - легко продолжить.
Поставщик валерьянки для Кота
Сообщения: 2222
Зарегистрирован: Вт ноя 27, 2007 11:32:06
Откуда: Tashkent

Сообщение uk8amk »

Вы не указали номер кристалла, режим работы и номер канала АЦП.
У 100 и 103-й серии имеются некоторые глюки, описанные в Errata:
2.1 Voltage glitch on ADC input 0
Description
A low-amplitude voltage glitch may be generated (on ADC input 0) on the PA0 pin, when the
ADC is converting with injection trigger. It is generated by internal coupling and
synchronized to the beginning and the end of the injection sequence, whatever the
channel(s) to be converted.
Это не хвост, это антенна
Аватара пользователя
Сообщения: 1433
Зарегистрирован: Вс дек 02, 2012 03:13:48
Откуда: Калининград

Сообщение balmer »

uk8amk писал(а):Вы не указали номер кристалла, режим работы и номер канала АЦП.
Пробовал на 102 серии на PA0 и на 103 серии на PB0. Результат примерно одинаковый.

Для освоения STM32 сделал простецкий ESR/С Meter, скоро попытаюсь выложить результаты/графики. Уже сейчас понятно, что ADC неплох, сильно лучше чем в ATmega8. Но вот результаты получающиеся при измерении ESR для конденсаторов порядка 1-10 мкф обескураживают, хотя скорости вроде бы хватает.
Ответить

Вернуться в «ARM»