作者gpc (gpc)
看板AndroidDev
标题Re: [问题] 有关Ecompass校准的实现
时间Wed Oct 26 15:51:58 2011
我有些想法,但我不知道对不对,供你参考
1.水平仪相关校正确实存在,会在/data里面产生一些资讯,某些人会去读他,
没API,跟硬体有关,你可以看硬体怎麽做,就调整一下那个档案就可以了
2.电子罗盘,没有校正!!!
就我看了一下MOTO(六面)的校正程式,或某第三方软体(八字)的校正
结果得到 电子罗盘 不需要校正!
你说什SensorManager.java sensor.c 看起来很强大,但都没做跟校正相关的.
那你一定会问说 那些程式的校正怎麽做的?
我这样说好了,你去文具店买一个"真正"的指北针,你就知道怎麽校正了!
你有一个真正的指北针 你的校正方法就是把它拿起来甩一甩吧!
其实当你在做六面或八字校正的时候,就是在甩你的手机
有个很简单的方法,如果你用GOOGLE MAP,但罗盘不准,你直接把手机拿起来,
乱甩乱晃,接着你就会发现正常了!! 但你没"跑校正程式"
那些校正程式应该是当你甩到一个程度的时候 (会读sensor值) 他就认为你甩够了
罗盘应该正常了 就会显示校正完成
这是我的推测 校正只是让你"乱甩"手机
不需要写CODE,这是物理原理..
也许有CODE也说不定 但应该不是你看的到的地方,但我比较相信是物理原理..
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.167.233.13
※ 编辑: gpc 来自: 118.167.233.13 (10/26 15:53)
1F:→ priv:你的理解不太对,不过今天因为某些因素我明天再来解释 10/26 17:10
2F:推 tfe:电子罗盘和传统罗盘的原理是完全不一样的 10/26 22:11
3F:→ tfe:校正是跑在akmd or other daemon 10/26 22:12
4F:推 freemantw:楼上神人好像讲到关键字,我先查查先,感恩~ 10/26 22:40
5F:→ priv:除非在系统厂否则一般人是碰不到这块的... 10/26 22:42
6F:推 freemantw:看完感觉结论还是在HAL层就要算出orientation value 10/26 22:50
7F:→ gpc:没底层的code 不太清楚做什 10/26 23:47
8F:→ gpc:我在系统厂也碰不到QQ 10/26 23:53
9F:→ gpc:感觉买了的code塞进去就好了XDY 10/26 23:53
10F:推 tfe:如果要算orientation可以call getOrientation 不过一般都直接 10/27 00:28
11F:→ tfe:用HAL回报的orientation就好了 10/27 00:28