微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > 如何添加新的sensor type

如何添加新的sensor type

时间:10-02 整理:3721RD 点击:
[DESCRIPTION]

添加新的sensor type到android架构,和hwmsen架构中。
example:
4合1 sensor集成ALS,PS,Motion,Face detect等sensor功能,Motion和Face
detect功能Android不支持,需要添加这两个type到软件架构中。
Sensor的类型分别是Motion和Facedetect,sensor的name是motiondemo和facedetectdemo。

[SOLUTION]

Step1. sensor.java中添加type:
file:Sensor.java(php?mod=tag&id=6090" target="_blank" class="relatedlink">Frameworks\base\core\java\android\hardware\)


file:current.txt(frameworks\base\api\)


Step2.hwmsen.h 中加入define:
file:
hwmsensor.h (mediatek\kernel\include\linux\)
hwmsensor.h (bionic\libc\kernel\common\linux\)
两个文件都要修改,而且定义值要和sensor.java中的相同


Step3.添加makefile中的宏定义:
file1:ProjectConfig.mk(mediatek\config\$(project)\)


file2:ProjectConfig.mk(mediatek\config\common\)


Step4.添加对应name的folder和driver文件:
注意以下的folder和file name的path和定义


Step5.添加custom sensor info:
file:hwmsen_chip_info.c(mediatek\hardware\sensor\hwmsen)


Step6.添加device code:
file: mt_devs.c(mediatek\platform\$(mt65xx)\kernel\core\)


Step7.添加对应的driver code:
file:motiondemo.c(mediatek\custom\common\kernel\motion\motiondemo)


同时请完成对应的operate函数,可以参考其他sensor的函数。
-------------start----step9在kk版本需要操作,在JB版本不需要操作-----------
---------------------------------
Step9.添加hal层code
——>file:hwmsen.h
这里添加sensortype


——>file:hwmsen.cpp


这里添加sensorEvent
(1)添加pendingEvent


(2)添加到enable列表中


(3)添加到setdelay列表中


(4)添加数据处理(上报几个数据由添加的sensor决定)


--------------end---step9在kk版本需要操作,在JB版本不需要操作-------------
-------------------------------
Step10.添加framework层调用代码:
file: demo.java(framework\base\core\java\android\view)
这里是自定义的客制化java函数文件。


重新new之后,可以通过log看是否添加sensor type成功。

谢谢分享

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top