请教L3G4200D静止时读出的数据是否正确?
各位大侠:小弟最近用STM32读L3G4200D的数据,在静止时得出以下数据,不知道对不对
------------X= 47 Y= 19 Z= 38
------------X= 71 Y= 32 Z= 46
------------X= 48 Y= 7 Z= 17
------------X= 73 Y= 41 Z= 48
------------X= 66 Y= 25 Z= 31
------------X= 56 Y= 39 Z= 42
------------X= 59 Y= 26 Z= 18
------------X= 62 Y= 32 Z= 41
------------X= 66 Y= 27 Z= 51
------------X= 38 Y= 32 Z= 37
------------X= 72 Y= 31 Z= 45
------------X= 70 Y= 24 Z= 40
------------X= 79 Y= 25 Z= 55
------------X= 69 Y= 29 Z= 44
------------X= 49 Y= 25 Z= 37
------------X= 82 Y= 22 Z= 41
------------X= 45 Y= 29 Z= 32
------------X= 59 Y= 16 Z= 14
------------X= 61 Y= 26 Z= 32
------------X= 63 Y= 26 Z= 40
------------X= 88 Y= 28 Z= 59
------------X= 69 Y= 26 Z= 39
------------X= 85 Y= 30 Z= 44
------------X= 82 Y= 29 Z= 52
------------X= 63 Y= 31 Z= 44
------------X= 72 Y= 41 Z= 51
------------X= 54 Y= 25 Z= 34
现在为止,还不知道如何测试该值的正确性。求指教。。。 应该没问题 还有直接读出来的是负数是补码形式需要转换下-100~100之间 大概就没什么问题 回复【1楼】Name_006
-----------------------------------------------------------------------
谢谢!!./emotion/em035.gif
那请教一下,这个该怎么测试啊?如何转换成实际的角度? 回复【2楼】chenhuizai210
-----------------------------------------------------------------------
这个啊 自己再看吧 积分什么的 回复【楼主位】chenhuizai210
-----------------------------------------------------------------------
比我的正常多了。。呵呵~ 回复【楼主位】chenhuizai210
-----------------------------------------------------------------------
你好,请问你的数据是怎么处理的?就是得到x y z 高地位数据后如何处理呢? 回复【5楼】Farid
-----------------------------------------------------------------------
(short int)( (valueH << 8) | valueL ); 回复【6楼】chenhuizai210
-----------------------------------------------------------------------
请问下 不需要判断读出来的x轴高低位正负么?我的直接按照:((高位<<8位)|低位)得到的数据都是很大
有时候达到65534!
请问兄台,这个是如何处理的呢?多谢! 回复【7楼】Farid
-----------------------------------------------------------------------
会不会是你的寄存器设置有问题?
我也没有比较,从串口查看数据,非常正确。
从陀螺仪读出的数据是无符号16位数据,把他强制装换成有符号数后,系统自动把补码转换,不用比较。
注意,一定是强制转换成short int。否则可能出错。
(short int)( (valueH << 8) | valueL ); 回复【楼主位】chenhuizai210
-----------------------------------------------------------------------
小弟认为,L3G4200D是测量角速度的,静止时候采集到的数据可以算是垃圾不能使用,可能是因为器件本身固有的性质或者后期焊接造成的,可以软件滤波方式弄掉它。 chenhuizai210 发表于 2012-1-6 13:52 static/image/common/back.gif
回复【7楼】Farid
-----------------------------------------------------------------------
(short int) 不是把16位的变成8了吗??? 也学着怎么用
页:
[1]