[問題] sensor的頻率

看板AndroidDev作者 (宗樺)時間14年前 (2011/12/24 12:25), 編輯推噓1(1024)
留言25則, 6人參與, 最新討論串1/1
想請問一下是不是每隻手機的sensor頻率都一樣~? 還是得建一個timertask去計算~? 目前我測我的野火頻率約是11 感覺是個很奇妙的數字= =~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.33.133.29

12/24 12:38, , 1F
同一支手機的話應該都會一樣
12/24 12:38, 1F

12/24 12:42, , 2F
^型號 不過更新頻率要看你的程式是怎麼寫的
12/24 12:42, 2F

12/24 12:43, , 3F
直接從driver讀出來會比較準確
12/24 12:43, 3F

12/24 13:25, , 4F
MAGIC
12/24 13:25, 4F

12/24 23:15, , 5F
Android有定義最低的頻率,你是捉哪個sensor?
12/24 23:15, 5F

12/24 23:19, , 6F
當然還有你的APP下的時間參數是啥,也是有關
12/24 23:19, 6F

12/25 00:00, , 7F
角度感測器的精度只到小數一位,所以當sensor監聽到更改
12/25 00:00, 7F

12/25 00:01, , 8F
才會觸發onSensorChanged,加速度與磁力線因為有noise
12/25 00:01, 8F

12/25 00:02, , 9F
所以基本上是隨時在更新(與註冊sensor時的更新頻率flag有
12/25 00:02, 9F

12/25 00:02, , 10F
關, fastest 為 1ms game為20ms)
12/25 00:02, 10F

12/25 00:21, , 11F
頻率是可以改的
12/25 00:21, 11F

12/25 00:25, , 12F
問"sensor的頻率"實在太奇怪了,因為每個sensor一定不一樣
12/25 00:25, 12F

12/25 00:26, , 13F
首先,每顆sensor的integration cycle都不同,也會隨設計變化
12/25 00:26, 13F

12/25 00:26, , 14F
另外就是HAL層怎麼去定義polling的間隔
12/25 00:26, 14F

12/25 00:27, , 15F
還有一些作法,delay是放在kernel driver裡
12/25 00:27, 15F

12/25 00:28, , 16F
Android沒有一個規範得很好的標準Sensor HAL
12/25 00:28, 16F

12/25 00:28, , 17F
導致每家的實作都差異很大
12/25 00:28, 17F

12/25 00:29, , 18F
四種api中定義的sensor delay
12/25 00:29, 18F

12/25 00:30, , 19F
實際上到底會多快...只有測了才會曉得
12/25 00:30, 19F

12/25 00:34, , 20F
例如說前面說fastest是1ms
12/25 00:34, 20F

12/25 00:35, , 21F
但是像light sensor/proximity integration cycle一定超過
12/25 00:35, 21F

12/25 00:35, , 22F
所以一秒根本不可能讀得到一千個值
12/25 00:35, 22F

12/25 00:36, , 23F
更正一下前面的,integration cycle會隨'設定'變化
12/25 00:36, 23F

12/28 11:39, , 24F
我是用重力的,我用thread抓五秒內的平均值
12/28 11:39, 24F

12/28 11:39, , 25F
不過值也很不準每次要80-90ms
12/28 11:39, 25F
文章代碼(AID): #1EzLGrYf (AndroidDev)