我目前正在做一个项目,在那里我想使用位于Android手机内部的振动马达。
我想,在舱单上设置正确的许可并得到振动器的实例:
Vibrator v = (Vibrator) game.getSystemService(Context.VIBRATOR_SERVICE);会让我接触到它。据我所见,使其振动的唯一方法是:
公共抽象空洞振动(长毫秒)
和
公共抽象空洞振动(long[]模式,int重复)
但我想要控制振动的力量:
我如何控制振动的力量?
更新:
速度不应该由可变电压(或PWMing直流)来控制吗?
发布于 2012-07-14 11:02:16
按照下面的说法,我认为控制强度是不可能的。你能做的就是使用短脉冲,这样设备就不会振动得那么快?但我还没亲自测试过。
http://developer.android.com/reference/android/os/Vibrator.html和控制android手机的振动强度?有可能吗?
发布于 2013-12-31 14:55:42
诚然,API并没有提供一种直接控制振动强度的方法。但正如您在更新中所建议的那样,脉宽调制可用于产生不同脉冲宽度的振动模式,从而降低振动器电机的平均电压(从而削弱振动输出)。
我已经发布了一个概念方法这里的简单证明。此方法将根据指定的强度生成模式。该方法的转换不是很线性的,所以我已经发布了一个慷慨的建议,希望得到一些替代的建议。当我有更好的算法时会更新。
发布于 2012-07-14 11:05:00
振子级不允许这样做,您只能设置模式和持续时间:
vibrate(long[] pattern, int repeat)
vibrate(long milliseconds)强度与硬件"振动电机“有关。
https://stackoverflow.com/questions/11483168
复制相似问题