注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
jasmien的个人空间 https://home.eeworld.com.cn/space-uid-717194.html [收藏] [复制] [分享] [RSS]
日志

如何解决旋屏应用受马达影响的case

已有 641 次阅读2017-12-11 17:38 | mtk

[DESCRIPTION]
CAMERA等应用的旋屏和一般界面的旋屏(指打开设置->显示->自动旋转屏幕 后产生的)所采用的算法不一样,后者的
算法限制条件要多得多,且有一定滞后性,涉及到的文件为windowOrientationListener.java。
前者则灵敏得多,容易受外部干扰的影响而导致错误的旋屏:如mtk手机闹钟的马达响时Camera UI乱转,涉及到的文件为
OrientationEventListener.java

[PLATFORM]

MT6575 MT6577 MT6589

[SOLUTION]

1.请把cust_acc.c里的.fillen=0====>fiLTEr=10或者16看看 即是底层先做这么多次平
均之后再上报,防止上报的数据有毛刺的现象发生
2.或者在OrientationEventListener.java的onsensorChanged函数内的最后
if(orientation!=mOrientation){
//在这里面加更多的判断条件,即过滤 让函数不能轻易的调后面的
onOrientationChanged函数
比如,可以判断连续2次数据,前一次为mOrientation,最新的当前这次为
orientation,差值不超过某个范围,如50(这是针对实际数据特性所设置的) 才调后面
的onOrientationChanged函数(这个函数会被Camera或者其他的引用模块用到),否则
直接return.
这样可以防止毛刺的出现
}
请上面2种方法分别做测试,或者一起测试 方法2更有针对性一些
谢谢~
评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章