ATmega + 12bit ADC

Обсуждаем контроллеры компании Atmel.
Ответить
Говорящий с текстолитом
Сообщения: 1523
Зарегистрирован: Пн май 28, 2012 19:52:17
Откуда: г.Киров (Вятка)

Сообщение goldmen8 »

slav0n писал(а):...совершенно не въехал в идею...
Всё нормально он там въехал. И вполне понятно объясняет и показывает какой эффект при этом получается.
Никого не заставляю этим заниматься, и ни коим образом не настаиваю. :wink:
Реклама
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

goldmen8 писал(а):Всё нормально он там въехал.
ну, и зачем он 240 выборок суммировал можешь пояснить?

Добавлено after 1 hour 38 seconds:
а если-бы он действительно въехал, то суммировал бы 256 выборок и получил 14 бит
ohmycode!
primuss3.com
Контактная информация:
Реклама
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Сообщение Dimon456 »

slav0n писал(а):то суммировал бы 256 выборок и получил 14 бит
мечтай
СпойлерИзображение
Даю отсчеты
Спойлерна входе 0,336091

Код: Выделить всё

adc_data[0]		74
adc_data[1]		75
adc_data[2]		76
adc_data[3]		76
adc_data[4]		74
adc_data[5]		76
adc_data[6]		69
adc_data[7]		73
adc_data[8]		76
adc_data[9]		68
adc_data[10]		69
adc_data[11]		74
adc_data[12]		69
adc_data[13]		72
adc_data[14]		76
adc_data[15]		68
Сумма 1165
1165 / 16 = 72,81
1165 / 4 = 291,25

72,81 * 5000 / 1024 = 355,52
291,25 * 5000 / 4096 = 355,52
Спойлерна входе 0,334702

Код: Выделить всё

adc_data[0]		76
adc_data[1]		69
adc_data[2]		69
adc_data[3]		68
adc_data[4]		69
adc_data[5]		71
adc_data[6]		76
adc_data[7]		69
adc_data[8]		76
adc_data[9]		68
adc_data[10]		76
adc_data[11]		71
adc_data[12]		76
adc_data[13]		69
adc_data[14]		76
adc_data[15]		68
Сумма 1147
1147 / 16 = 71,69
1147 / 4 = 286,75

71,69 * 5000 / 1024 = 350,04
286,75 * 5000 / 4096 = 350,04

А теперь шаг
355,52 - 350,04 = 5,48
355,52 - 350,04 = 5,48

(0,336091 - 0,334702) * 1000 = 1,38 вот который должен быть шаг.
Хоть так крути, хоть эдак, результат один. Захотел он 14 бит. :tea:
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

Dimon456 писал(а):Даю отсчеты
"умник", а где ты взял дробные числа при сдвиге суммы?
1165/16 = 72
1165/4 = 291

1147/16 = 71
1147/4 = 286
Последний раз редактировалось slav0n Ср авг 11, 2021 20:50:58, всего редактировалось 3 раза.
ohmycode!
primuss3.com
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Поставщик валерьянки для Кота
Сообщения: 2466
Зарегистрирован: Сб май 07, 2011 17:52:59

Сообщение charchyard »

мде. туповатый всёж модератор на соседском форуме. а тут такие батлы корифейские из-за никчёмной темы :o пойду ка я повнимательнее апноут почитаю, что умный малчик перевёл с латиницы. уже склоняюсь, что оверсемплинг мне как нельзя лучшее подойдёт, но исчё очкую маленько :)))
Реклама
Модератор
Аватара пользователя
Сообщения: 19055
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Сообщение Starichok51 »

подойдет, не сомневайся.
тут всё до предела просто:
сумма 4 выборок добавляет 1 бит.
сумма 16 выборок добавляет 2 бита.
сумма 64 выборок добавляет 3 бита.
сумма 256 выборок добавляет 4 бита.
сумма 1024 выборок добавляет 5 бит.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Реклама
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Сообщение Dimon456 »

slav0n писал(а):"умник", а где ты взял дробные числа при сдвиге суммы?
А может ты float решишь использовать.
Ну да ладно, что там у тебя:

Код: Выделить всё

1165/16 = 72
1165/4 = 291
72 * 5000 / 1024 = 351
291 * 5000 / 4096 = 355

1147/16 = 71
1147/4 = 286
71 * 5000 / 1024 = 346
286 * 5000 / 4096 = 349

А теперь шаг
351 - 346 = 5
355 - 349 = 6

А должен быть 1,38
где твои 12 бит?

А теперь, "умник", 16 * 1024 = 16384 и 4 * 4096 = 16384, хоть так крути хоть эдак, результат один. :tea:
Модератор
Аватара пользователя
Сообщения: 19055
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Сообщение Starichok51 »

если мы проверяем оверсемплинг, то первое деление (на 16) вообще не имеет смысла проводить. соответственно, и все остальные вычисления после деления на 16 делать не нужно.
и при работе с целыми числами нет проблемы сделать округление после деления (сдвига).
тогда в первом случае получим 291, а во тором случае - 287.
Dimon456, и еще не известно, что ты в своей схеме подмешал в качестве шума. но по результатам выборок это вообще не похоже на пилу, о которой говорится в вышеупомянутом апноте. поэтому твои результаты бессмысленны. и неправильность твоего эксперимента хорошо видна, так как у тебя вместо 336 мВ в расчете получилось 355 мВ.
Dimon456 писал(а):А должен быть 1,38
а откуда родилось это число?
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

от беда с этими "умниками"...

(72 - 71) * 5.0 / 1024 = 0.0049
(291 - 286) *5.0 / 4096 = 0.0061

6.1 - 4.9 = 1.2
ohmycode!
primuss3.com
Контактная информация:
Модератор
Аватара пользователя
Сообщения: 19055
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Сообщение Starichok51 »

выше я показал, что при округлении получится 287, и результат будет точно таким же:
(291 - 287) * 5 / 4096 = 0,0049.
но так как его эксперимент полностью ошибочен, то с оверсемплингом нужно делить 1 * 5 / 4096 = 0,00122.
и для проверки оверсемплинга нужно подавать на вход два напряжения, отличающиеся на 0,00122 Вольта.
а также нужно подмешивать правильный шум.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

Starichok51 писал(а):а также нужно подмешивать правильный шум.
да в железе будет видно - нужно или нет
ohmycode!
primuss3.com
Контактная информация:
Мудрый кот
Сообщения: 1759
Зарегистрирован: Пт июн 01, 2018 07:28:45

Сообщение parovoZZ »

[uquote="Starichok51",url="/forum/viewtopic.php?p=4074597#p4074597"]тут всё до предела просто:
сумма 4 выборок добавляет 1 бит.
сумма 16 выборок добавляет 2 бита.
сумма 64 выборок добавляет 3 бита.
сумма 256 выборок добавляет 4 бита.
сумма 1024 выборок добавляет 5 бит.[/uquote]
это теорема какая-то или что? Откуда взяты эти цифры?
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

Starichok51 писал(а):Dimon456, и еще не известно, что ты в своей схеме подмешал в качестве шума.
а он просто подмешал какую-то каку амплитудой ~40 mV и предлагает выделить сигнал 1.5 мВ
ну, я ж говорю - настоящий "умник"
ohmycode!
primuss3.com
Контактная информация:
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Сообщение Dimon456 »

Starichok51 писал(а):что ты в своей схеме подмешал в качестве шума
Эта ваша схема, это не моя схема.
Смотри
СпойлерИзображение
Наверное не тот шум, может на тон выше или ниже?
Starichok51 писал(а):а также нужно подмешивать правильный шум.
ага, а еще и войти в резонанс с космосом.

Вот ведь какая красивая таблица получается
СпойлерИзображение
Чего только стоит "разгон" 10 битного АЦП до 16 бит.
Просто слов нет, люди ставят чуть ли не "атомные" источники опорного напряжения, типа REF195,
а тут шум собираются подмешивать.
Вопросик один, а если шума не будет то оверсемплинг работать не будет?
Поставщик валерьянки для Кота
Сообщения: 2466
Зарегистрирован: Сб май 07, 2011 17:52:59

Сообщение charchyard »

я собираюсь использовать "атомнобомбический" Aref
СпойлерИзображение
надеюсь шума будет достаточное колво :solder:
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

засимулил в шпротеусе
без шума не работает.
дал на опору наобум синус 100кГц 5 мВ - заработало
ohmycode!
primuss3.com
Контактная информация:
Модератор
Аватара пользователя
Сообщения: 19055
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Сообщение Starichok51 »

без шума и не должно работать.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

та это я для сомневающихся "умников" написал.
использовал модель топикстартера.
у меня при подключении шума динамическая индикация в симуляторе превращается в лютое слайдшоу.
как побороть?
ohmycode!
primuss3.com
Контактная информация:
Говорящий с текстолитом
Сообщения: 1523
Зарегистрирован: Пн май 28, 2012 19:52:17
Откуда: г.Киров (Вятка)

Сообщение goldmen8 »

slav0n писал(а):динамическая индикация в симуляторе превращается в лютое слайдшоу.
slav0n писал(а):и зачем он 240 выборок суммировал
а потом посчитал и вывел на табло, с большим таким усреднением и замедлением чтоб табло не мельтешило. И больше ни чем контроллер не занимается.
Это просто был опыт, получится или нет увеличить точность (разрядность) измерения.
Опытный кот
Аватара пользователя
Сообщения: 882
Зарегистрирован: Ср дек 01, 2010 00:38:15
Откуда: Харьков

Сообщение slav0n »

goldmen8 писал(а):а потом посчитал и вывел на табло, с большим таким усреднением и замедлением чтоб табло не мельтешило. И больше ни чем контроллер не занимается.
та забыли уже про того чувака с его 240

Добавлено after 24 minutes 6 seconds:
симуляция и сыр.
сыр с коментами топикстартера, я просто его немного покромсал

Добавлено after 1 hour 34 minutes 37 seconds:
charchyard писал(а):я собираюсь использовать "атомнобомбический" Aref
кстати, если здесь использовать калиброванную опору 4.096, то можно избавиться от float в вычислениях
Вложения
Mega8+Oversampling.rar
(57.56 КБ) 225 скачиваний
ohmycode!
primuss3.com
Контактная информация:
Ответить

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