2010-11-10 65 views
0

我正在開發一個應用程序,它將使用磁力計數據進行交互,方法是將磁體移向和移開手機。這工作得很好(就夠了),但似乎當我移動磁鐵太靠近手機,一個明顯的滯後發生,並且這些消息被吐出到日誌:磁力儀造成滯後?

標籤消息 AK8973 HRET = AKSC_HOF_DSS_START AK8973 HRET = AKSC_HOF_DSS_REQUEST AK8973 HRET = AKSC_HOF_DSS_REQUEST AK8973 HRET = AKSC_HOF_DSS_REQUEST AK8973 HRET = AKSC_HOF_DSS_REQUEST AK8973 HRET = AKSC_HOF_DSS_REQUEST AK8973 HRET = AKSC_HOF_DSS_REQUEST AK8973 HRET = AKSC_HOF_DSS_REQUEST AK8973 HRET = AKSC_HOF_DSS_COMPLETE

這也可以在市場上可用的應用程序「Compass 3D」中演示。移動耳機直接與手機接觸就足夠了,它會產生至少4-500毫秒的延遲,並且上面的信息會打印到Logcat。這是我的HTC Hero。

任何想法是什麼導致這種滯後,或如何解決它?這是否也出現在其他手機型號上?

所有想法和/或理論都會有所幫助!

+0

場強,滯後? – 2010-11-10 10:47:16

回答

0

好了,AK8973是磁力計:

AK8973 - 3-axis Electronic Compass - Asahi Kasei Microsystems

看起來像它的抱怨強場,也許踢了校準程序?

我注意到這個定義代碼:

的#define AK8973B_PERIOD 5億//0.5秒

+0

這聽起來很合理!但是在Android下運行的軟件沒有辦法控制這個值嗎?在這種情況下,用磁鐵控制手機沒有最佳方式,否則將是可能的。 – MrJohs 2010-11-10 15:47:36