Российский производитель и разработчик сертифицированного измерительного оборудования с 1987 года


Как преобразовать байты в вольты для E-24?

Вы не вошли.

 Поиск | Регистрация | Вход 

Александр
07.03.2006 12:40:58
#1

Гость

Как преобразовать байты в вольты для E-24?

Кусок кода:

unsigned char buf[ 4 ]; // Байты с данными
long data;

data = int((buf[3]>>1)&0x3f)|(int(buf[2])<<6)| /
(int(buf[1])<<13)|(int(buf[0]&0xf)<<20);
data -= 0x800000;

double napr = ????? * data;

Вопрос: на какой коэффициент нужно умножить число data чтобы получить напряжение в вольтах?

oam
08.03.2006 15:05:01
#2

Гость

Re: Как преобразовать байты в вольты для E-24?

E-24 cодержит в себе 24-разрядный АЦП типа AD7714. В (псевдо)биполярном режиме максимальному 24-разрядному двоичному числу 0xFFFFFF будет соотвестсвовать напряжение +2.5 вольт, а двоичному нулю - напряжение -2.5 вольт. Т.е. цена дискреты составляет 2.5/2^24 вольт.
В вашем примере число уже центрировано (data-=0x800000), а потому для превращения в вольты остается только умножить его на множитель 2.5/0x800000;

oam
08.03.2006 15:07:14
#3

Гость

Re: Как преобразовать байты в вольты для E-24?

Поправка:
вместо
"цена дискреты составляет 2.5/2^24 вольт",
читать
"цена дискреты составляет 5.0/2^24 вольт".