添加对应sensor 以及 服务功能

类似于重力感应,抬起手势(提示)等功能

 

0. modem 相关底层配置好之后,需要烧入

fastboot flash modem NON-HLOS.bin

vendor.img

 

QSensorTest.apk 可以验证是否底层添加成功

vendor/qcom/propietary/sensors/QSensorsTest, 可以自己mm编译出来然后安装测试


1. 自己添加 新的sensor类型, 需要和 底层对应

(1)sensor.java

privare static final int      QC_SENSOR_TYPE_BASE = 33171000

private static final int      SENSOR_TYPE_PICK_xx = (QC_SENSOR_TYPE_BASE + 100)


(2) sensorManager

修改 getDefaultSensor(int type){

    if(type =xx| type =xx | type =xx | 
        //添加自己新类型
       type = Sensor.SENSOR_TYPE_PICK_xx   ){

         wakeUpSensor = true
    }
}


(3) 

frameworks/native/libs/sensor/SensorManager.cpp ---7.0 可能会动这个文件   8.0 可能不需要
hardware/libhardware/include/hardware/sensors.h 


#define QC_SENSOR_TYPE_BASE = 33171000
#define SENSOR_TYPE_PICK_XX  = (QC_SENSOR_TYPE_BASE + 11)

如果修改了 .cpp文件,找到里面有 里面有Android.bp 的,mm 编译即可

service.jar , framework.jar , arm64


2. 添加自己的服务

2.1 建立自己的服务service(not only mean service),  可以依赖系统的 SystemService 启动

比如依赖  NotificationManagerServices.java

(1)onstart 中初始化和创建自定义的 myService
(2)对应的比较重要的方法

   mNotificationList      ---  这个是所有的当前通知数据
   mEnquenedNoifications  ---  这个是当前发通知的队列

   MyService m ;
   onstart(){
    m = new MyService();
   }

   postNotficationRunnable(){
     //添加自己需要监听的数据
     m.method(mNotificationList)    
     m.method(mEnquenedNoifications)
   }


   cancelNotificationLocked(){
     //添加自己需要监听的数据
     m.method(mNotificationList)
   }

   class myService(){
   
    if(screenOn){
    }

    if (screenOff){
    
    }

    register(){

    }
   }


2.2  在系统本身的服务中,直接添加(移植性较差)

    example:

    systemui/doze/DozeService.java


DozeService.java{

oncreate(){
  // 注册自己的service
  执行 requestPulse()
}

unregister(){
 //销毁service
}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: RK1109是一款用于物联网应用的芯片,可以用于对接新的传感器。传感器是物联网系统的核心组成部分,用于感知环境中的各种物理量并将其转化为电信号。将新的传感器与RK1109对接,可以实现更多的功能和应用。 首先,对接新的传感器需要进行硬件层面的工作。RK1109芯片通常内置了各种接口,如I2C、SPI、UART等,可以与各种类型的传感器进行连接。用户可以根据传感器的接口要求,连接到RK1109的对应接口上。 其次,在软件层面上,需要编写相应的驱动程序,以适配新的传感器。驱动程序可以负责传感器的初始化、数据采集和处理等功能。通过编写驱动程序,RK1109芯片可以读取传感器的数据,并进行相应的处理和计算。 另外,还需要适配RK1109的开发工具和平台,以支持新传感器的开发和应用。RK1109的开发工具一般有相应的软件开发套件(SDK),包括开发环境、文档和示例代码等。用户可以利用这些工具,进行新传感器的驱动开发和测试。 最后,将新传感器与RK1109对接后,可以实现更多种类的应用。例如,通过对接温湿度传感器,可以实现智能家居中的温度和湿度监测;通过对接光线传感器,可以实现室内的自动照明控制;通过对接加速度传感器,可以实现智能手环中的步数、运动距离等数据的采集等。 总之,将新传感器对接到RK1109芯片,需要在硬件层面和软件层面进行相应的工作,以实现传感器的连接和功能适配。这样可以拓展RK1109的功能和应用领域,提升物联网系统的性能和灵活性。 ### 回答2: 为了对接新的sensor rk1109需进行以下步骤。首先,需要确认新的sensor的接口类型和协议,如I2C、SPI或者UART,并确保rk1109具有相应的接口来连接新sensor。 其次,需要阅读新sensor的技术文档,了解其工作原理、寄存器映射和通信协议等。根据文档提供的信息,可以开始编写与新sensor通信的驱动程序。 接下来,需要在rk1109的软件中添加sensor的驱动程序。可以根据新sensor的规格和需求,将相关代码集成到rk1109的操作系统或者固件中。确保驱动程序正确地初始化和配置新sensor,从而实现与rk1109之间的有效通信。 在驱动程序集成完成后,需要进行功能和兼容性测试。这包括验证新sensor的数据输出是否正确以及其与rk1109其他模块的正常交互。需要注意的是,在测试过程中可能会发现一些问题或者兼容性冲突,需要及时进行调试和修复。 最后,进行系统集成测试。将rk1109与新sensor连接,并在特定环境下进行测试,以验证其整体性能和稳定性。此阶段可以检查rk1109是否能够准确读取新sensor的数据,并根据数据进行相应的处理和应用。 总结来说,对接新的sensor rk1109需要确认接口类型和协议、编写驱动程序、集成驱动程序、进行功能和兼容性测试以及进行系统集成测试等步骤。通过这些步骤,新的sensor可以成功与rk1109进行对接,并实现相应的功能。 ### 回答3: RK1109是一款集成类专用芯片,用于处理视觉感知任务。而当我们需要对接新的传感器时,需要进行以下几个步骤: 1. 了解新的传感器:首先需要充分了解新的传感器的技术特点和功能,包括传感器的输出接口、数据格式、采样率等。了解传感器的特点,可以为后续的对接工作提供指导。 2. 硬件接口设计:根据新的传感器的特性,我们需要设计适配的硬件接口电路。这包括与RK1109芯片的连接电路、电源管理电路等。通过设计合适的接口电路,可以实现RK1109与新传感器的接口对接。 3. 驱动程序开发:针对新的传感器,需要开发相应的驱动程序。驱动程序是用来控制传感器的工作状态和数据输出的程序。开发驱动程序时,需要根据传感器的特点和通信协议,配置合适的寄存器、设置相关参数,并编写数据采集与处理的代码,与RK1109实现数据的传输与交互。 4. 软件适配:新的传感器与RK1109之间的接口对接完成后,还需要进行软件适配。这包括与RK1109现有的软件系统的兼容性调试、算法适配等工作。通过软件适配,可以保证新传感器的数据被RK1109正确识别和处理,并实现所需的视觉感知任务。 综上所述,对接新的传感器需要进行硬件设计、驱动程序开发和软件适配等一系列工作。只有在各个环节的高度配合下,才能实现RK1109与新传感器的有效对接,并发挥其视觉感知的功能

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

空白的泡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值