×
Namespaces

Variants
Actions

如何使用加速度传感器(Sensor)API

From Nokia Developer Wiki
Jump to: navigation, search
Article Metadata

文章
tongren 在 21 Jan 2008 创建
最后由 hamishwillee 在 15 Dec 2011 编辑

N95硬件中隐藏了一个加速度传感器(Accelerometers),该硬件来自STMicroelectronics,型号为LIS302DL。加速度传感器用于将重力或者运动加速度变换为电信号,Accelerometers很可能是继GPS之后的下一个重量级的硬件。Forum Nokia Wiki上有最权威的描述:Nokia Sensor APIs

Accelerometers API首先在NokiaResearchCenter上( http://betalabs.nokia.com/apps/nokia-step-counter )发布,目前可以支持N95,N95 8GB,N93i,N82等手机.该plug-in只能用于研究和开发用途,并含有如下Capabilities,根据Symbian安全性规则,你的应用程序不能含有比他更多的Capabilities:

   LocalServices 
   Location 
   NetworkServices 
   ReadDeviceData 
   ReadUserData 
   SurroundingsDD 
   SwEvent 
   UserEnvironment 
   WriteDeviceData 
   WriteUserData

如何使用Accelerometers plug-in API开发应用程序。 首先下载:N95_RD_Accelerometer.zip ( http://research.nokia.com/files/N95_RD_Accelerometer.zip ) 1,安装配置: 需要将N95AccelerometerPlugin.sis安装到你的手机(目前可以支持N95,N95 8GB,N93i,N82) 在开发环境中,将RDAccelerometer.h和RDAccelerometerObserver.h头文件放到SDK的\epoc32\include目录中将*.dso和*.lib文件复制到SDK的\epoc32\release\armv5\LIB目录中

2,具体使用:

 a,将库文件RDAccelerometer.lib添加到你应用程序的工程中
 b,在你需要的类中继承MRDAccelerometerObserver接口,并实现HandleAccelerationL()函数接收来自加速度传感器的数据
 c,创建一个CRDAccelerometer实例,并将上面提到的类作为参数传入
 d,当实例创建完成后,加速度传感器数据会自动通过HandleAccelerationL()方法发送到应用程序中。
 参数含义如下(参考RDAccelerometerObserver.h 获取更多信息):
    1G加速度等于64
    0G加速度等于0
   (-1G)加速度等于(-63)
 e,删除CRDAccelerometer实例就可以停止接收来自传感器的数据

3,开发经验:

  即使你将手机放在桌上不动,通过HandleAccelerationL()得到的数据还是略为有所改变。
  每秒钟会有30帧的数据传入到HandleAccelerationL()中,非常耗电。
  应用程序中尽量早地关闭传感器,在需要的时候再开启,以节省电池。

附上显示加速度传感器数据的例子 http://symbianblog.com/wordpress/wp-content/uploads/2008/01/testsensor.rar

最后欢迎访问我的blog: http://symbianblog.com

This page was last modified on 15 December 2011, at 09:44.
55 page views in the last 30 days.