lun 0 29 марта, 2011 Опубликовано 29 марта, 2011 · Жалоба Какую величину надо использовать при пересчете данных с АЦП (пусть 8-разрядного) в реальные вольты на его входе: 255 или 256? По идее опорному соответствует вроде 255, но в даташитах делят на 256. Разница, конечно, небольшая, но хотелось бы прояснить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rezident 0 29 марта, 2011 Опубликовано 29 марта, 2011 · Жалоба Уточняйте в даташите АЦП. Там обычно приведена формула для расчета. Чаще всего просто делят на 256. Потому, что такое деление вычисляется с помощью арифметического сдвига результата на 8 бит вправо. Но, например, в 12-и разрядном АЦП (макс значение кода = 4095) микроконтроллера MSP430 более точная формула выглядит так: NADC=4095 * (Vin - VR-) / (VR+ - VR-), где NADC это код АЦП, Vin - напряжение входного сигнала, VR+ - напряжение "верхней" опоры, VR- - напряжение "нижней" опоры. Если VR- соединяется с общим проводом входного сигнала, то выражение упрощается до NADC=4095 * Vin / VREF, где VREF это величина напряжения опоры. Соответственно для вычисления значения входного напряжения нужно воспользоваться обратным преобразованием Vin=VREF * NADC / 4095 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DpInRock 0 29 марта, 2011 Опубликовано 29 марта, 2011 · Жалоба 255. Но смысла никакого. Даже если кажется, что точнее будет. Не будет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
lun 0 30 марта, 2011 Опубликовано 30 марта, 2011 · Жалоба Уточняйте в даташите АЦП. Там обычно приведена формула для расчета. ... Но, например, в 12-и разрядном АЦП (макс значение кода = 4095) микроконтроллера MSP430 более точная формула выглядит так: NADC=4095 * (Vin - VR-) / (VR+ - VR-) Так в том-то и вопрос. В даташите АЦП (которые мне попадались) делят на 256. Вы привели пример с "255" (условно говоря). На 256 делят только исходя из простоты или могут быть конструктивные особенности, с которыми связана формула? 255. Но смысла никакого. Даже если кажется, что точнее будет. Не будет. Ненамного, но будет. По крайней мере у края диапазона. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 30 марта, 2011 Опубликовано 30 марта, 2011 · Жалоба Ну вы, блин, даете! (с) На сколько частей разделен диапазон [0:255]? На 256. Если не верите, нарисуйте на бумажке в клетку. Вот и делите на 256. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AHTOXA 15 30 марта, 2011 Опубликовано 30 марта, 2011 · Жалоба На сколько частей разделен диапазон [0:255]? На 256. Если не верите, нарисуйте на бумажке в клетку. Ха:) А на сколько частей разделён диапазон [0..1]? Неужели на 2? :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 30 марта, 2011 Опубликовано 30 марта, 2011 · Жалоба Ха :) А на сколько частей разделён диапазон [0..1]? Неужели на 2? :) Ну конечно! :) Есть 0, и есть 1. Сколько всего? Нужно брать включительно Вот массив из двух элементов какие индексы имеет? Правильно, 0 и 1. И АЦП выдает коды 0...255. Итого 256 ступенек. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rezident 0 30 марта, 2011 Опубликовано 30 марта, 2011 (изменено) · Жалоба На 256 делят только исходя из простотыИ так и так. Чаще всего из-за простоты, но в большинстве случаев это соответствует реальному устройству АЦП. или могут быть конструктивные особенности, с которыми связана формула?Да, могут быть конструктивные особенности, например, доп. смещение на 0,5 LSB. Особенности шкалы в частности могут касаться АЦП с дифференциальными входами и возможностью представления измеренного сигнала как униполярного или как биполярного. Нужно брать включительно Нет. нужно внимательно читать документацию на АЦП. Бывают особенности конструкции при которых вводится доп. смещение на 0,5 LSB, чтобы диапазон изменения кода приблизить к границам диапазона измерения (к величине VREF). При этом NADC(max) соответствует VREF, а не VREF-0,5LSB. Или в случае когда при униполярном питании нужно "чистый" ноль измерять. Изменено 30 марта, 2011 пользователем rezident Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 30 марта, 2011 Опубликовано 30 марта, 2011 · Жалоба Нет. нужно внимательно читать документацию на АЦП. Бывают особенности конструкции Ну, может у MSP430 что-нибудь особенное придумано. Разбираться не буду, вам виднее. В общем же случае - как сказал. Ваш АЦП выдает код 0? А код 4095 выдает? Тогда всего ступенек (уровней) 4096. Чаще всего из-за простоты, но в большинстве случаев это соответствует реальному устройству АЦП. Так "из-за простоты" или "соответствует реальному"? У вас "и тому дала, и тому дала" :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Wise 0 30 марта, 2011 Опубликовано 30 марта, 2011 · Жалоба В том 8-ми разрядном АЦП, который рисуют в учебниках, для пояснения принципа работы, 255 ступенек и нуль. Что соответствует регистру, число возможных состояний которого 256. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AHTOXA 15 30 марта, 2011 Опубликовано 30 марта, 2011 · Жалоба Нужно брать включительно Это кто ж вам сказал такую ерунду? :) Вопрос изначально был - на сколько делить. Так вот, делить надо на число интервалов, а не на число точек. Вот смотрите, как это выглядит в нашем вырожденном случае: АЦП=0 - 0в АЦП=1 - VREF и итоговая формула: V = VREF*АЦП/1 Если АЦП выдаёт числа 0..2, то формула: V = VREF*АЦП/2 И наконец, если АЦП выдаёт числа 0..N, то формула: V = VREF*АЦП/N А никак не N+1. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 133 30 марта, 2011 Опубликовано 30 марта, 2011 · Жалоба Вопрос изначально был - на сколько делить. Так вот, делить надо на число интервалов, а не на число точек.Ой, да что вы спорите. Входное напряжение, равное опорному, дает на выходе АЦП число 255. Решается элементарная пропорция Uвх/Uref = Nизм/Nmax, математика, 4-й класс. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Wise 0 30 марта, 2011 Опубликовано 30 марта, 2011 · Жалоба Ой, да что вы спорите. Входное напряжение, равное опорному, дает на выходе АЦП число 255. Конечно. ..Но, в дэйтшитах-то, действительно, делят на 256, о чем и вопрос автора.. ..Похожий "прикол", для начинающих, с таймерами. Таймер досчитывает до 255, и в следующем такте сбрасывается.. :rolleyes: ..А вот если он сбрасывается по регистру сравнения, сбросится ли он по моменту достижения равенства регистров, или опять-таки, в следующем такте..? Этот нюанс бывает сложно уяснить из документации.. :rolleyes: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 30 марта, 2011 Опубликовано 30 марта, 2011 · Жалоба Попробуем еще раз. Имеем 2-разрядный АЦП, выдающий 4 значения: 0, 1, 2, 3. Опорное напряжение у него 1V. Примем, что ступеньки не смещены на 1/2 младшего разряда. Таким образом, получим: 0 - 0V, 1 - 0.25V, 2 - 0.5V, 3 - 0.75V Вес младшего разряда равен 1V/2^N. Обычно именно такой код АЦП и выдает. Не "добирает" до опорного одну ступеньку. Можно сместить на полразряда, но и тогда младший разряд будет иметь вес 2^-N. 0 - 0.125V, 1 - 0.375V, 2 - 0.625V, 3 - 0.875V. Можно и на целый разряд сместить: 0 - 0.25V, 1 - 0.5V, 2 - 0.75V, 3 - 1V. Допускаю, что где-нибудь и такие АЦП имеются. А вот чтобы данному коду соответствовало напряжение: 0 - 0V, 1 - 1/3V, 2 - 2/3V, 3 - 1V таких АЦП я не встречал. А вы? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Wise 0 30 марта, 2011 Опубликовано 30 марта, 2011 · Жалоба ..А вот чтобы данному коду соответствовало напряжение: 0 - 0V, 1 - 1/3V, 2 - 2/3V, 3 - 1V таких АЦП я не встречал. А вы? У двухбитного АЦП коду 11 будет соответствовать опорное напряжение, то есть, в вашем примере, 1 вольт. А если опорное 3 вольта, то, значит, 3 вольта.. :rolleyes: И ступеньки 1,2,3 вольта.. И нуль, который должен быть равен нулю, а не "смещен" куда-то.. А что не нравится? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться