问题描述
我想将 IMU 传感器校准到十进制精度。我正在用 C 编程。 我用 int16_t 格式的变量 x、y 和 z 定义了一个称为加速的结构。
我从寄存器读数(即加速度)中获得的原始值(分别针对 x、y 和 z 轴)例如:218 -924 16312
我面临的问题是,通过进行校准的乘法
accelerations.x = (1*0.0006*(accelerations.x)-0.1681);
accelerations.y = (1*0.0006*(accelerations.y)+0.8076);
accelerations.z = (1*0.0006*(accelerations.z)-0.1698);
这些值被四舍五入为整数,产生如下输出:0 0 9
我在这里遗漏了什么?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)