Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Реализация АЦП с помощью ШИМ
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Саша_74
Народ кто пробовал сварганить АЦП на МЕГЕ с помощью ШИМ.
Охота 16-битную ацепуху дешево и сердито.
Идея такова: Берем ATMega-16, с ШИМа через RC-цепь на внутенний компоратор и мереем с дискретностью 16-битную.
Кто то реально пробовал?
Microwatt
А зачем Вам 16-битное преобразование? 8 бит вполне достаточно для подавляющего большинства преобразований.
Замените компоратор на компаратор и 7 бит уверенно получите. С небольшой скоростью.
Dog Pawlowa
Цитата(Саша_74 @ Dec 6 2010, 21:23) *
Народ кто пробовал сварганить АЦП на МЕГЕ с помощью ШИМ.

Вам АЦП или ЦАП, или Вам все равно? wink.gif
prottoss
Цитата(Саша_74 @ Dec 7 2010, 02:23) *
Народ кто пробовал сварганить...
Наверное имелись ввиду аппноуты AVR400:Low Cost A/D Converter и AVR401:8-bit Precision A/D Converter ?
Только там используется не ШИМ а подсчет количества импульсов таймера за время заряда-разряда измерительного конденсатора. ИМХО теоретически догнать можно и до 16 разрядов и даже больше. Но нафиг такой 16-битный АЦП нужен? sm.gif

Цитата(Microwatt @ Dec 7 2010, 02:49) *
А зачем Вам 16-битное преобразование?
OFF: Улыбнуло... Отличный вопрос для модератора.
Designer56
Цитата(Microwatt @ Dec 6 2010, 23:49) *
А зачем Вам 16-битное преобразование? 8 бит вполне достаточно для подавляющего большинства преобразований.
Замените компоратор на компаратор и 7 бит уверенно получите. С небольшой скоростью.

Как это нафига? а погрешность в 10е-6 как иначе получить? lol.gif
slanted
Цитата(Саша_74 @ Dec 6 2010, 22:23) *
Народ кто пробовал сварганить АЦП на МЕГЕ с помощью ШИМ.
Охота 16-битную ацепуху дешево и сердито.
Идея такова: Берем ATMega-16, с ШИМа через RC-цепь на внутенний компоратор и мереем с дискретностью 16-битную.
Кто то реально пробовал?

Сделайте АЦП интегрирующего типа на timer 1 и input capture. Путем манипуляций с prescaler'ом получите динамический диапазон бит так в 20+, а вот точность будет хуже конечно.
V_G
1. Внутренний меговский компаратор имеет не сильно хорошие параметры. Сомневаюсь, что там и 10 бит точности можно получить.
2. Для высокой точности нужна соотвествующая точность и стабильность как источника питания, так и выходных уровней 0 и 1 ШИМ, вы это обеспечите? И в диапазоне температур??
domowoj
Цитата(V_G @ Dec 7 2010, 05:44) *

Согласен
SasaVitebsk
Цитата(Designer56 @ Dec 6 2010, 22:56) *
Как это нафига? а погрешность в 10е-6 как иначе получить? lol.gif

А вы собираетесь такую погрешность на АЦП получить, используя ШИМ в качестве ЦАП?
lol.gif lol.gif lol.gif

При частоте однокристалки и ШИМ равной 16МГц - один период 16/65535 = 4мс. Если интегрировать по 10 периодам, то получим 40мс. Реально вы получите единицы измерений в секунду.
VladimirYU
Цитата(Саша_74 @ Dec 6 2010, 21:23) *
Народ кто пробовал сварганить АЦП на МЕГЕ с помощью ШИМ.
Охота 16-битную ацепуху дешево и сердито.
Идея такова: Берем ATMega-16, с ШИМа через RC-цепь на внутенний компоратор и мереем с дискретностью 16-битную.
Кто то реально пробовал?

Поставленная задача таким способом не решаема.
GDI
А чем не подходит метод описанный в AVR121: Enhancing ADC resolution by oversampling? Там можно и до 16 бит довести при полосе пропускания 3Гц. И шум опорного напряжения там не мешает, а наоборот его даже специально усиливают.
Designer56
Цитата(SasaVitebsk @ Dec 7 2010, 11:56) *
А вы собираетесь такую погрешность на АЦП получить, используя ШИМ в качестве ЦАП?
lol.gif lol.gif lol.gif

При частоте однокристалки и ШИМ равной 16МГц - один период 16/65535 = 4мс. Если интегрировать по 10 периодам, то получим 40мс. Реально вы получите единицы измерений в секунду.

Это Вы у автора спросите. Он собирается.
П.С.: а Вам кажется, что за 40 мс и даже больше все- таки можно получить вышеуказанное? cool.gif
V_G
Цитата(GDI @ Dec 7 2010, 18:18) *
А чем не подходит метод описанный в AVR121: Enhancing ADC resolution by oversampling? Там можно и до 16 бит довести при полосе пропускания 3Гц. И шум опорного напряжения там не мешает, а наоборот его даже специально усиливают.

Шум измерений (ну, или опорного напряжения в их примере) должен быть белым. Если мы говорим о температурной нестабильности метода, т.е. уход логических уровней и питающего (читай - опорного) напряжения, то получается далеко не белый шум, а очень медленно меняющийся процесс (медленней самого измерения). Когда мы говорим о низкочувствительном компараторе, то тоже сомневаюсь, чтобы шум от него был белым, хотя тут теоретики могут попробовать доказать обратное, я не проверял.
Сергей Борщ
QUOTE (VladimirYU @ Dec 7 2010, 09:43) *
Поставленная задача таким способом не решаема.
Разрешение в 14 бит таким способом получал. Точность не проверял. Только не RC, а фильтр 2-го порядка на ОУ, и не компаратор, а инструментальный усилитель и с выхода на родное АЦП меги. И подбором PWM методом поразрядного уравновешивания выводим результат АЦП в середину шкалы. Затраты - LM324+кучка резисторов-конденсаторов.
Еще раз повторяю - ни линейность, ни точность не проверял.
mse
На коленке, с меговским компаратором,прокатит только АЦП двойного интегрирования. Приложив голову и руки, думаю, можно получить и честных 16 разрядов. Только потом окажется, что купить какой-нить АД7680 куда дешевле, быстрей и меньше по площади. Ну, я тут не говорю о 24р дельта-сигмах по цене грязи. ;О)
Diusha
Цитата(Саша_74 @ Dec 6 2010, 21:23) *
Охота 16-битную ацепуху дешево и сердито.

Есть АВРы с заявленными 18 битами: mega406, mega8HVA и т.п. Вроде дешево и сердито. Но что в реальности - не знаю. Может кто юзал?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.