2016-04-13 60 views
0

ben var numarayı yüzer sabit noktayı imzaladı: Değer modu = 16 bit sabit noktadönüştürme bu modda

(imzalı) Ve nasıl kayan nokta için bu numaraya dönüştürebilirsiniz? Herhangi bir fikir?

Bu numara, imzalandığında bu işlevi kullanabilir miyim?

float toFloat(int16_t val) { 
     return ((float)val)/256.0f; 
    } 
+3

"Sabit nokta" ile ne demek istiyorsun? Form 123.45'ten mi? Yoksa sadece bir tam sayı mı? –

+0

Bu, jiroskoptan elde edilen veriler: [--- LINK ---] (http://www.lp-research.com/site/wp-content/uploads/2012/05/LpmsAllUsersGuide1.3.4.pdf), sayfa 45 Ve formda sabit nokta: '123.45' veya' -123.45' – Jirka

+1

Bağlı veri sayfası, 100 veya 1000, 256 değil, faktörleri gösterir. 0x100'ün 256 olacağı doğrudur, ancak onaltılık bir öneri yoktur. –

cevap

1

Tamam. Yanlış anladım.

float toFloat(int16_t val) { 
    return ((float)val)/1000.0f; 
} 

Şimdi veri iyi alıyor: Yani Int16 x 1000 yılında jiroskop veriler, tekrar ben işlevini kullanıldığında.