Picproje Elektronik Sitesi

MİKRODENETLEYİCİLER => Diğer => Konuyu başlatan: muhittin_kaplan - 24 Kasım 2016, 15:00:07

Başlık: BMP085 basınç hesaplaması
Gönderen: muhittin_kaplan - 24 Kasım 2016, 15:00:07
Merhaba,

https://www.sparkfun.com/datasheets/Components/General/BST-BMP085-DS000-05.pdf

datasının 13. sayfasında hesaplamayı vermiş. Temp de problem yok. ama basınca geldiğimde anlamsız sonuçlarla karşılaşıyorum. Sonuç olarak verdiği bacınç değerinde Eskişehir -2000mt lerde felan çıkıyor.
startup değerler

short          AC1 = I2C_getword(0xEE, 0xAA);//AA ile AB yi al
short          AC2 = I2C_getword(0xEE, 0xAC);//AC ile AD yi al
short          AC3 = I2C_getword(0xEE, 0xAE);
unsigned short AC4 = I2C_getword(0xEE, 0xB0);
unsigned short AC5 = I2C_getword(0xEE, 0xB2);
unsigned short AC6 = I2C_getword(0xEE, 0xB4);
short           B1 = I2C_getword(0xEE, 0xB6);
short           B2 = I2C_getword(0xEE, 0xB8);
short           MB = I2C_getword(0xEE, 0xBA);
short           MC = I2C_getword(0xEE, 0xBC);
short           MD = I2C_getword(0xEE, 0xBE);


sıcaklık hesaplaması
I2C_putbyte(0xEE,0xF4,0x2e);
    CycleDelay(10000000);
    uT = I2C_getword(0xEE, 0xF6);

    X1=(uT-AC6)*AC5/32768;
    X2=MC*2048/(X1+MD);
    B5=X1+X2;
    T=(B5+8)/16;


basıç hesabı

I2C_putbyte(0xEE,0xF4,0x84);
    CycleDelay(10000000);
    uP = I2C_getword(0xEE, 0xF6);


    B6 = B5 - 4000; //This allows the function to be called multiple times without updating
X1 = (B2 * (B6 * B6 /4096))/2048; //The termperature raw reading
X2 = AC2 * B6 /2048;
X3 = X1 + X2;
B3 = ((AC1*4 + X3) << OSS + 2)/4;
X1 = AC3 * B6 /8192;
X2 = (B1 * (B6 * B6 / 4096))/65536;
X3 = ((X1 + X2) + 2) /4;
B4 = (AC4 * (unsigned long)(X3 + 32768)) / 32768;
B7 = ((unsigned long)uP - B3) * (50000 >> OSS);
if (B7<0x80000000){
        p=(B7*2)/B4;
}
else{
        p=(B7/B4)*2;
}

X1 = (p/256) * (p/256);
X1 = (X1 * 3038)/65536;
X2 = (-7357 * p) /65536;
p = p + (X1 + X2 + 3791)/16;





Başlık: Ynt: BMP085 basınç hesaplaması
Gönderen: muhittin_kaplan - 24 Kasım 2016, 16:11:34
http://home.anadolu.edu.tr/~mcavcar/common/Standart-Atmosfer.pdf

birilerine lazım olur..
Başlık: Ynt: BMP085 basınç hesaplaması
Gönderen: muhittin_kaplan - 24 Kasım 2016, 22:12:51
BMP085 için excel hesap tablosu

https://yadi.sk/i/9z1IZdcozQJeY