先看一下BMA250E的datasheet关于温度的说明
0.5K/LSB,0.5K是什么?是凯尔文温度吗?凯式温度和摄氏温度单位换算是相差273.15(摄氏温度=凯式温度-273.15),这显然不正确,
正确的应该是0.5度/LSB(经过验证)。
再有温度测量范围是-40--85度,按照手册的0X00表示23度,85度是127,超过127的值表示的是什么?
经过验证超过127也就是0xEF的数据时,最高位表示符号位,超过127的表示负温度,计算时使用 tempvalue = 23-(float)(0XFF-reg_val)*0.5;即可。
还有振动数据的读取也是服了,手册能编写成这样也是没几个了。希望对大家有帮助