作者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)
→ priv:你的理解不太對,不過今天因為某些因素我明天再來解釋 10/26 17:10
推 tfe:電子羅盤和傳統羅盤的原理是完全不一樣的 10/26 22:11
→ tfe:校正是跑在akmd or other daemon 10/26 22:12
推 freemantw:樓上神人好像講到關鍵字,我先查查先,感恩~ 10/26 22:40
→ priv:除非在系統廠否則一般人是碰不到這塊的... 10/26 22:42
推 freemantw:看完感覺結論還是在HAL層就要算出orientation value 10/26 22:50
→ gpc:沒底層的code 不太清楚做什 10/26 23:47
→ gpc:我在系統廠也碰不到QQ 10/26 23:53
→ gpc:感覺買了的code塞進去就好了XDY 10/26 23:53
推 tfe:如果要算orientation可以call getOrientation 不過一般都直接 10/27 00:28
→ tfe:用HAL回報的orientation就好了 10/27 00:28