著录项信息
| 专利名称 | 一种上报传感器数据的方法和终端 |
| 申请号 | CN201310634969.X | 申请日期 | 2013-12-02 |
| 法律状态 | 暂无 | 申报国家 | 暂无 |
| 公开/公告日 | 2014-03-05 | 公开/公告号 | CN103619056A |
| 优先权 | 暂无 | 优先权号 | 暂无 |
| 主分类号 | H04W52/02 | IPC分类号 | H;0;4;W;5;2;/;0;2;;;H;0;4;W;8;4;/;1;8查看分类表>
|
| 申请人 | 华为终端有限公司 | 申请人地址 | 广东省深圳市福田区香蜜湖街道东海社区红荔西路8089号深业中城6号楼A单元3401
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
| 权利人 | 荣耀终端有限公司 | 当前权利人 | 荣耀终端有限公司 |
| 发明人 | 陈磊 |
| 代理机构 | 暂无 | 代理人 | 暂无 |
摘要
本发明实施例公开了一种上报传感器数据的方法和终端。一种上报传感器数据的方法,该方法包括:当处理器只需要处理传感器采集的传感器数据时,处理器发送进入睡眠状态的指令并进入睡眠状态;处理器进入睡眠状态后,传感器集线器接收并暂存传感器采集并上报的传感器数据到事件信息表中,传感器集线器记录传感器采集传感器数据对应的时间,将该时间也暂存到事件信息表中;当处理器恢复成工作状态后,传感器集线器将事件信息表上报给处理器,由处理器解析事件信息表,完成相应的处理。本发明实施例中在只有传感器工作时,处理器一直处于睡眠状态,由低功耗的传感器集线器暂存数据,从而能节省整体功耗。
1.一种上报传感器数据的方法,其特征在于,该方法包括:
处理器判断当前只有传感器采集的传感器数据需要处理时,所述处理器发送进入睡眠状态的指示,并进入睡眠状态;
接收到处理器进入睡眠状态的指示后,传感器集线器接收并暂存传感器采集并上报的传感器数据;
当所述处理器恢复成工作状态时发送处理器恢复成工作状态的指示,所述传感器集线器接收到该处理器恢复成工作状态的指示后将所述传感器数据上报给所述处理器;
其中,所述处理器的工作状态还包括压缩工作状态,所述处理器在所述压缩工作状态中获取其在所述睡眠状态和所述压缩工作状态时由所述传感器集线器暂存的传感器数据,所述处理器解析所述传感器数据,并基于所述睡眠状态和所述压缩工作状态的时间映射的方式,获取所述传感器采集传感器数据对应的时间,所述时间映射的方式包括:
所述处理器计算从该处理器进入睡眠状态到进入压缩工作状态之间的睡眠时间长度T1,其中所述处理器进入睡眠状态的起始时刻为T10;
所述处理器计算从该处理器进入压缩工作状态到压缩工作状态结束的时间长度为T2,其中所述处理器进入压缩工作状态的起始时刻为T20;所述处理器调整系统时间接口,使所述处理器在获取时间是T20+τ时刻获取到传感器数据时,所述系统时间接口读取的所述传感器采集传感器数据对应的时间为T10+τ*(T1+T2)/T2,其中,τ表示一个从压缩工作状态开始的时间长度变量,τ最大的时候,压缩工作状态结束,其中,0≤τ≤T2。
2.根据权利要求1所述的方法,其特征在于,所述接收并暂存传感器采集的传感器数据具体包括:接收并暂存传感器采集的传感器数据到事件信息表中,并记录所述传感器采集传感器数据对应的时间,将该时间也暂存到所述事件信息表中;
将所述传感器数据上报给所述处理器具体包括:将所述事件信息表上报给所述处理器。
3.根据权利要求2所述的方法,其特征在于,所述处理器判断当前只有传感器采集的传感器数据需要处理具体包括:对与所述处理器交互的交互方的身份识别信息进行识别,当识别到的身份识别信息仅包含传感器的身份识别信息时,所述处理器判断当前只有传感器采集的传感器数据需要处理。
4.根据权利要求2所述的方法,其特征在于,所述处理器进入睡眠状态包括:断开所述处理器的时钟和电源。
5.根据权利要求2所述的方法,其特征在于,所述处理器恢复成工作状态包括:自定义所述传感器集线器唤醒所述处理器的条件,当所述传感器集线器判断所述唤醒条件满足时,唤醒所述处理器。
6.根据权利要求5所述的方法,其特征在于,所述条件包括以下至少一个:
所述事件信息表中的数据量超过一定值;
所述处理器进入睡眠状态的时间超过一定值。
7.根据权利要求2~6任一所述的方法,其特征在于,所述方法进一步包括:所述处理器接收并解析所述传感器集线器上报的所述事件信息表,得到所述传感器数据以及所述传感器采集传感器数据对应的时间集合。
8.根据权利要求2~6任一所述的方法,其特征在于,所述处理器接收并解析所述传感器集线器上报的所述事件信息表,获取所述传感器数据,记录获取所述传感器数据的时间,该时间为获取时间;
并通过时间映射的方式从所述获取时间推算出所述传感器采集传感器数据对应的时间。
9.根据权利要求8所述的方法,其特征在于,所述事件信息表是事件队列。
10.一种上报传感器数据的方法,其特征在于,该方法包括:
处理器判断当前只有传感器采集的传感器数据需要处理时,所述处理器发送进入睡眠状态的指示信息,并进入睡眠状态,所述进入睡眠状态的指示信息用于使一传感器集线器在收到所述进入睡眠状态的指示信息后接收并暂存传感器采集的传感器数据;
当所述处理器恢复成工作状态时发送处理器恢复成工作状态的指示信息,所述恢复成工作状态的指示信息用于使所述传感器集线器在收到所述处理器恢复成工作状态的指示信息后将暂存的所述传感器数据上报给所述处理器;
其中,所述处理器的工作状态还包括压缩工作状态,所述处理器在所述压缩工作状态中获取其在所述睡眠状态和所述压缩工作状态时由所述传感器集线器暂存的传感器数据,之后,所述处理器解析所述传感器数据,并基于所述睡眠状态和所述压缩工作状态的时间映射的方式,获取所述传感器采集传感器数据对应的时间,所述时间映射的方式包括:
所述处理器计算从该处理器进入睡眠状态到进入压缩工作状态之间的睡眠时间长度T1,其中所述处理器进入睡眠状态的起始时刻为T10;
所述处理器计算从该处理器进入压缩工作状态到压缩工作状态结束的时间长度为T2,其中所述处理器进入压缩工作状态的起始时刻为T20;所述处理器调整系统时间接口,使所述处理器在获取时间是T20+τ时刻获取到传感器数据时,所述系统时间接口读取的所述传感器采集传感器数据对应的时间为T10+τ*(T1+T2)/T2,其中,τ表示一个从压缩工作状态开始的时间长度变量,τ最大的时候,压缩工作状态结束,其中,0≤τ≤T2。
11.根据权利要求10所述的方法,其特征在于,所述接收并暂存传感器采集的传感器数据具体包括:接收并暂存传感器采集的传感器数据到事件信息表中,并记录所述传感器采集传感器数据对应的时间,将该时间也暂存到所述事件信息表中;
将所述传感器数据上报给所述处理器具体包括:将所述事件信息表上报给所述处理器。
12.一种终端,其特征在于,包括:传感器、处理器、传感器集线器;
所述传感器,用于采集传感器数据;
所述处理器,用于判断当其只有传感器采集的传感器数据需要处理时,发送进入睡眠状态的指示信息,并进入睡眠状态;在恢复工作状态时发送处理器恢复成工作状态的指示信息,并接收所述传感器集线器上报的传感器数据;
所述传感器集线器,连接在所述传感器和所述处理器之间,在接收到处理器进入睡眠状态的指示后接收并暂存所述传感器采集的传感器数据,并在接收到处理器恢复成工作状态的指示后将所述传感器数据上报给所述处理器;
其中,所述处理器的工作状态还包括压缩工作状态,所述处理器在所述压缩工作状态中获取其在所述睡眠状态和所述压缩工作状态时由所述传感器集线器暂存的传感器数据,之后,所述处理器解析所述传感器数据,并基于所述睡眠状态和所述压缩工作状态的时间映射的方式,获取所述传感器采集传感器数据对应的时间,所述时间映射的方式包括:
所述处理器计算从该处理器进入睡眠状态到进入压缩工作状态之间的睡眠时间长度T1,其中所述处理器进入睡眠状态的起始时刻为T10;
所述处理器计算从该处理器进入压缩工作状态到压缩工作状态结束的时间长度为T2,其中所述处理器进入压缩工作状态的起始时刻为T20;所述处理器调整系统时间接口,使所述处理器在获取时间是T20+τ时刻获取到传感器数据时,所述系统时间接口读取的所述传感器采集传感器数据对应的时间为T10+τ*(T1+T2)/T2,其中,τ表示一个从压缩工作状态开始的时间长度变量,τ最大的时候,压缩工作状态结束,0≤τ≤T2。
13.根据权利要求12所述的终端,其特征在于,所述接收并暂存传感器采集的传感器数据具体包括:接收并暂存传感器采集的传感器数据到事件信息表中,并记录所述传感器采集传感器数据对应的时间,将该时间也暂存到所述事件信息表中;
将所述传感器数据上报给所述处理器具体包括:将所述事件信息表上报给所述处理器。
14.根据权利要求13所述的终端,其特征在于,所述传感器集线器还包括:
判断单元:用于检查唤醒所述处理器的唤醒条件是否满足,若满足唤醒条件,则唤醒所述处理器,使所述处理器从睡眠状态恢复到工作状态。
15.根据权利要求14所述的终端,其特征在于:所述唤醒条件包括以下至少一个:
所述事件信息表暂存的数据量超过一定值;
所述处理器进入睡眠状态的时间超过一定值。
16.根据权利要求13~15任一所述的终端,其特征在于,所述处理器包括:
接收单元:用于接收所述传感器集线器上报的传感器数据;
处理单元:用于解析所述接收单元收到的传感器数据。
17.根据权利要求16所述的终端,其特征在于,所述处理单元解析出所述传感器数据和所述传感器采集传感器数据对应的时间集合,并处理所述传感器数据。
18.根据权利要求16所述的终端,其特征在于,所述处理单元解析出所述传感器数据并记录获取所述传感器数据的时间,该时间为获取时间;所述处理器通过时间映射的方式从所述获取时间推算出所述传感器采集传感器数据对应的时间。
19.根据权利要求18所述的终端,其特征在于,所述事件信息表是事件队列。
20.一种处理器,其特征在于:
所述处理器,用于判断当前只有传感器采集的传感器数据需要处理时,发送进入睡眠状态的指示信息,并进入睡眠状态,所述进入睡眠状态的指示信 息用于使一传感器集线器在收到所述进入睡眠状态的指示信息后接收并暂存传感器采集的传感器数据;当所述处理器恢复成工作状态时发送处理器恢复成工作状态的指示信息,所述恢复成工作状态的指示信息用于使所述传感器集线器在收到所述处理器恢复成工作状态的指示信息后将暂存的所述传感器数据上报给所述处理器,
其中,所述处理器包括:接收单元,用于接收并暂存所述传感器集线器上报的事件信息表,所述事件信息表包括传感器数据;处理单元,用于解析所述接收单元接收的事件信息表,所述处理器的工作状态还包括压缩工作状态,其中,所述处理单元用于在所述压缩工作状态中获取其在所述睡眠状态和所述压缩工作状态时由所述传感器集线器暂存的所述传感器数据,之后解析所述传感器数据,并基于所述睡眠状态和所述压缩工作状态的时间映射的方式,获取所述传感器采集传感器数据对应的时间,所述时间映射的方式包括:
所述处理器计算从该处理器进入睡眠状态到进入压缩工作状态之间的睡眠时间长度T1,其中所述处理器进入睡眠状态的起始时刻为T10;
所述处理器计算从该处理器进入压缩工作状态到压缩工作状态结束的时间长度为T2,其中所述处理器进入压缩工作状态的起始时刻为T20;所述处理器调整系统时间接口,使所述处理器在获取时间是T20+τ时刻获取到传感器数据时,所述系统时间接口读取的所述传感器采集传感器数据对应的时间为T10+τ*(T1+T2)/T2,其中,τ表示一个从压缩工作状态开始的时间长度变量,τ最大的时候,压缩工作状态结束,其中,0≤τ≤T2。
21.根据权利要求20所述的处理器,其特征在于,所述接收并暂存传感器采集的传感器数据具体包括:接收并暂存传感器采集的传感器数据到事件信息表中,并记录所述传感器采集传感器数据对应的时间,将该时间也暂存到所述事件信息表中;
将所述传感器数据上报给所述处理器具体包括:将所述事件信息表上报 给所述处理器。
一种上报传感器数据的方法和终端\n技术领域\n[0001] 本发明实施例涉及电子技术领域,尤其涉及一种上报传感器数据的方法和终端。\n背景技术\n[0002] 如今,智能手机、平板电脑等智能终端发展迅速。智能终端中安装了多个传感器,例如重力传感器、陀螺仪、红外接近感应传感器、指南针、压力感应传感器等等,而且随着终端智能化的进一步发展,传感器的数量会进一步增加。这些传感器采集的数据会被不同的应用程序来实现特定的功能,例如计步器需要调用震动传感器的数据。\n[0003] 在这过程中,传感器一旦侦测到事件发生,就会将事件信息上报给处理器的驱动层,驱动层再将事件信息发送给应用程序,应用程序完成相应的处理。为了保持发送给应用程序的传感器信息不丢失,处理器会一直保持唤醒(wake)状态,但这样就会非常耗电。\n[0004] 图1是现有技术中实时上报传感器数据的流程图。当事件发生时,执行如下步骤:\n[0005] 101,传感器采集传感器数据,并上报;\n[0006] 102,处理器接收传感器数据,并处理。\n[0007] 在图1的流程下,由于处理器只要有传感器数据就要接收,并且接收到传感器数据就需要进行处理,因此处理器需要一直处于唤醒状态,从而功耗过大。\n发明内容\n[0008] 有鉴于此,本发明实施例提供了一种上报传感器数据的方法和终端,解决处理器需要一直处于唤醒状态,从而功耗过大的问题。\n[0009] 第一方面,提供一种上报传感器数据的方法,包括:\n[0010] 处理器判断当前只有传感器采集的传感器数据需要处理时,处理器发送进入睡眠状态的指示,并进入睡眠状态;\n[0011] 接收到处理器进入睡眠状态的指示后,传感器集线器接收并暂存传感器采集并上报的传感器数据;\n[0012] 当所述处理器恢复成工作状态时发送处理器恢复成工作状态的指示,所述传感器集线器接收到该处理器恢复成工作状态的指示后将所述传感器数据上报给所述处理器。\n[0013] 在第一方面的第一种可能的实现方式中,所述接收并暂存传感器采集的传感器数据具体包括:接收并暂存传感器采集的传感器数据到事件信息表中,并记录所述传感器采集传感器数据对应的时间,将该时间也暂存到所述事件信息表中;\n[0014] 将所述传感器数据上报给所述处理器具体包括:将所述事件信息表上报给所述处理器。\n[0015] 结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述处理器判断当前只有传感器采集的传感器数据需要处理具体包括:对与所述处理器交互的交互方的身份识别信息进行识别,当识别到的身份识别信息仅包含传感器的身份识别信息时,所述处理器判断当前只有传感器采集的传感器数据需要处理。\n[0016] 结合第一方面的第一或第二种可能的实现方式,在第三种可能的实现方式中,所述处理器进入睡眠状态包括:断开所述处理器的时钟和电源。\n[0017] 结合第一方面的第一至第三种中任一一种可能的实现方式,在第四种可能的实现方式中,所述处理器恢复成工作状态包括:自定义所述传感器集线器唤醒所述处理器的条件,当所述传感器集线器判断所述唤醒条件满足时,唤醒所述处理器。\n[0018] 结合第一方面的第四种可能的实现方式,在第五种可能的实现方式中,所述条件包括以下至少一个:\n[0019] 所述事件信息表中的数据量超过一定值;\n[0020] 所述处理器进入睡眠状态的时间超过一定值。\n[0021] 结合第一方面的第一至第五种中任一一种可能的实现方式,在第六种可能的实现方式中,所述方法进一步包括:所述处理器接收并解析所述传感器集线器上报的所述事件信息表,得到所述传感器数据以及所述传感器采集传感器数据对应的时间集合。\n[0022] 结合第一方面的第一至第五种中任一一种可能的实现方式,在第七种可能的实现方式中,所述处理器接收并解析所述传感器集线器上报的所述事件信息表,获取所述传感器数据,记录获取所述传感器数据的时间,该时间为获取时间;\n[0023] 并通过时间映射的方式从所述获取时间推算出所述传感器采集传感器数据对应的时间。\n[0024] 结合第一方面的第七种可能的实现方式,在第八种可能的实现方式中,[0025] 当所述事件信息表是事件队列时,所述时间映射的方式包括:\n[0026] 所述处理器的工作状态包括压缩工作状态,在所述压缩工作状态,所述处理器要获取其在睡眠状态和压缩工作状态时由所述传感器集线器暂存的传感器数据;\n[0027] 所述处理器计算从该处理器进入睡眠状态到进入压缩工作状态之间的睡眠时间长度T1,其中所述处理器进入睡眠状态的起始时刻为T10;\n[0028] 所述处理器计算从该处理器进入压缩工作状态到压缩工作状态结束的时间长度为T2,其中所述处理器进入压缩工作状态的起始时刻为T20;所述处理器调整系统时间接口,使所述处理器在获取时间是T20+τ时刻获取到传感器数据时,所述系统时间接口读取的所述传感器采集传感器数据对应的时间为T10+τ*(T1+T2)/T2,其中,τ表示一个从压缩工作状态开始的时间长度变量,τ最大的时候,压缩工作状态结束(0≤τ≤T2)。\n[0029] 第二方面,提供一种上报传感器数据的方法,该方法包括:\n[0030] 处理器判断当前只有传感器采集的传感器数据需要处理时,所述处理器发送进入睡眠状态的指示信息,并进入睡眠状态,所述进入睡眠状态的指示信息用于使一传感器数据暂存单元在收到所述进入睡眠状态的指示信息后接收并暂存传感器采集的传感器数据;\n[0031] 当所述处理器恢复成工作状态时发送处理器恢复成工作状态的指示信息,所述恢复成工作状态的指示信息用于使所述传感器数据暂存单元在收到所述处理器恢复成工作状态的指示信息后将暂存的所述传感器数据上报给所述处理器。\n[0032] 在第二方面的第一种可能的实现方式中,所述接收并暂存传感器采集的传感器数据具体包括:接收并暂存传感器采集的传感器数据到事件信息表中,并记录所述传感器采集传感器数据对应的时间,将该时间也暂存到所述事件信息表中;\n[0033] 将所述传感器数据上报给所述处理器具体包括:将所述事件信息表上报给所述处理器。\n[0034] 第三方面,提供一种终端,包括:传感器、处理器、传感器集线器;\n[0035] 所述传感器,用于采集传感器数据;\n[0036] 所述处理器,用于判断当其只有传感器采集的传感器数据需要处理时,发送进入睡眠状态的指示信息,并进入睡眠状态;在恢复工作状态时发送处理器恢复成工作状态的指示信息,并接收所述传感器集线器上报的传感器数据;\n[0037] 所述传感器集线器,连接在所述传感器和所述处理器之间,在接收到处理器进入睡眠状态的指示后接收并暂存所述传感器采集的传感器数据,并在接收到处理器恢复成工作状态的指示后将所述传感器数据上报给所述处理器。\n[0038] 在第三方面的第一种可能的实现方式中,所述接收并暂存传感器采集的传感器数据具体包括:接收并暂存传感器采集的传感器数据到事件信息表中,并记录所述传感器采集传感器数据对应的时间,将该时间也暂存到所述事件信息表中;\n[0039] 将所述传感器数据上报给所述处理器具体包括:将所述事件信息表上报给所述处理器。\n[0040] 结合第三方面或第三方面的第一种可能的实现方式,第二种可能实现的方式是,所述传感器集线器还包括:\n[0041] 判断单元:用于检查所述处理器唤醒条件是否满足,若满足唤醒条件,则唤醒所述处理器,使所述处理器从睡眠状态恢复到工作状态。\n[0042] 结合第三方面的第二种可能的实现方式,第三种可能的实现方式是,所述唤醒条件包括以下至少一个:\n[0043] 所述事件信息表暂存的数据量超过一定值;\n[0044] 所述处理器进入睡眠状态的时间超过一定值。\n[0045] 结合第二方面第一至第三种中任一一种可能的实现方式,第四种可能的实现方式是:所述处理器包括:\n[0046] 接收单元:用于接收所述传感器集线器上报的事件信息表;\n[0047] 处理单元:用于解析所述接收单元收到的事件信息表。\n[0048] 结合第二方面第四种可能的实现方式,第五种可能的实现方式是:所述处理单元解析出所述传感器数据和所述传感器采集传感器数据对应的时间集合,并处理所述传感器数据。\n[0049] 结合第二方面第四种可能的实现方式,第六种可能的实现方式是:所述处理单元解析出所述传感器数据并记录获取所述传感器数据的时间,该时间为获取时间;所述处理器通过时间映射的方式从所述获取时间推算出所述传感器采集传感器数据对应的时间。\n[0050] 结合第二方面第六种可能的实现方式,第七种可能的实现方式是:当所述事件信息表是事件队列时,所述时间映射的方式包括:\n[0051] 所述工作状态包括压缩工作状态,在所述压缩工作状态,所述处理器要获取其在睡眠状态和压缩工作状态时由所述传感器集线器暂存的传感器数据;\n[0052] 所述处理器计算从该处理器进入睡眠状态到进入压缩工作状态之间的睡眠时间长度T1,其中所述处理器进入睡眠状态的起始时刻为T10,\n[0053] 所述处理器计算从该处理器进入压缩工作状态到压缩工作状态结束的时间长度为T2,其中所述处理器进入压缩工作状态的起始时刻为T20,\n[0054] 所述处理器调整系统时间接口,使所述处理器在获取时间是T20+τ时刻获取到传感器数据时,所述系统时间接口读取的所述传感器采集传感器数据对应的时间为T10+τ*(T1+T2)/T2,其中,τ表示一个从压缩工作状态开始的时间长度变量,τ最大的时候,压缩工作状态结束(0≤τ≤T2)。\n[0055] 第四方面,提供一种处理器,所述处理器,用于判断当前只有传感器采集的传感器数据需要处理时,发送进入睡眠状态的指示信息,并进入睡眠状态,所述进入睡眠状态的指示信息用于使一传感器数据暂存单元在收到所述进入睡眠状态的指示信息后接收并暂存传感器采集的传感器数据;当所述处理器恢复成工作状态时发送处理器恢复成工作状态的指示信息,所述恢复成工作状态的指示信息用于使所述传感器数据暂存单元在收到所述处理器恢复成工作状态的指示信息后将暂存的所述传感器数据上报给所述处理器。\n[0056] 在第四方面的第一种可能的实现方式中,所述接收并暂存传感器采集的传感器数据具体包括:接收并暂存传感器采集的传感器数据到事件信息表中,并记录所述传感器采集传感器数据对应的时间,将该时间也暂存到所述事件信息表中;\n[0057] 将所述传感器数据上报给所述处理器具体包括:将所述事件信息表上报给所述处理器。\n[0058] 通过上述方案,在处理器只需要处理传感器采集的传感器数据时,处理器能够进入睡眠状态,由低功耗的传感器集线器将传感器采集的数据暂存到传感器集线器中,在处理器恢复工作状态后,传感器集线器将暂存的传感器采集的数据上报,然后由处理器处理传感器数据。这样一来,高功耗的处理器就不用在只有传感器工作的时候也一直保持工作状态,从而可以降低功耗。\n附图说明\n[0059] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。\n[0060] 图1为现有技术中实时上报传感器数据的流程示意图;\n[0061] 图2为本发明实施例提供的上报传感器数据的流程示意图;\n[0062] 图3为本发明实施例提供的处理器处理传感器数据的流程示意图;\n[0063] 图4为本发明实施例提供的处理器处理传感器数据的另一流程示意图;\n[0064] 图5为本发明实施例提供的通过时间映射方式建立获取时间与采集时间对应关系的示意图;\n[0065] 图6为本发明实施例提供的终端结构示意图;\n[0066] 图7为本发明实施例提供的传感器集线器内部结构示意框图;\n[0067] 图8为本发明实施例提供的传感器集线器与处理器内部单元连接关系的示意图。\n具体实施方式\n[0068] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。\n[0069] 本发明的技术方案可以应用于各种需要用到传感器的移动或固定终端,例如手机,平板电脑等。\n[0070] 图2是根据本发明的一个实施例提供的一种上报传感器数据的流程示意图。\n[0071] 201,处理器判断当前只有传感器采集的传感器数据需要处理时,处理器发送进入睡眠状态的指示,并进入睡眠状态;\n[0072] 具体的,所述的传感器包括重力感应传感器、陀螺仪、光敏传感器、声敏传感器、气敏传感器、化学传感器、压敏传感器等,所述的传感器可以是专门的传感器,也可以是带有传感器功能的其它设备,本发明对此没有任何的限定。\n[0073] 应理解,处理器会判断是否只有传感器采集的传感器数据需要处理。可选的,处理器判断当前只有传感器采集的传感器数据需要处理包括:对与所述处理器交互的交互方的身份识别信息进行识别,当识别到的身份识别信息仅包含传感器的身份识别信息时,所述处理器认为其只有传感器采集的传感器数据需要处理。这里的交互包括第任意单元、模块或者应用等与处理器发生的数据交互或信令通信等,这里的交互方包括上面说到的任意单元、模块或者应用,在交互过程中,交互信息中至少包含了交互方的身份识别信息(ID信息),据此,处理器可以根据该ID信息,识别出交互方的身份。当交互方只包括传感器时,处理器认为这时只有传感器采集的传感器数据需要处理,那么处理器就进入睡眠状态;当交互方来自传感器以外的单元、模块或者应用时,处理器可以保持工作状态。\n[0074] 处理器进入睡眠状态,可以指断开处理器的电源和时钟,可以理解的,如果处理器中包含电源管理模块,该模块不需要断电,以便于处理器热启动。可选的,当处理器从工作状态到睡眠状态,处理器保存处理器以及与处理器交互的各单元、模块、应用等的寄存器的配置和恢复状态函数到存储器中,恢复状态函数的入口地址保存在电源管理模块中,电源管理模块在处理器进入睡眠状态时依然保持工作,从恢复状态函数的入口地址可以准确的找到恢复状态函数,另外,寄存器的配置包括时钟的配置和任务的指针等信息。当处理器从睡眠状态到工作状态,则会调用恢复状态函数的入口地址获取恢复状态函数,从而恢复处理器以及与处理器交互的各单元、模块、应用在处理器进入睡眠状态前的配置。由于在现有技术中,传感器在工作时会将采集的传感器数据实时上报给处理器,这样一来,即使只有传感器在工作,处理器也要一直保持工作状态。而在本发明实施例提供的技术方案中,处理器在只有传感器采集传感器数据的情况下,可以进入到睡眠状态,自然可以节约相应的功耗。\n[0075] 处理器发送进入睡眠状态的指示具体可以为:处理器发送一个指令,该指令指示处理器进入睡眠状态。处理器发送的该指令可以是面向其控制的所有单元的,因此这些单元都能收到处理器发送的该指令。\n[0076] 202,接收到传感器进入睡眠状态的指示后,传感器集线器(Sensor Hub,也叫传感器中枢)接收并暂存传感器采集并上报的传感器数据;\n[0077] 传感器集线器接收并暂存传感器采集并上报的传感器数据具体包括:接收并暂存传感器采集的传感器数据到事件信息表中,并记录所述传感器采集传感器数据对应的时间,将该时间也暂存到所述事件信息表中。\n[0078] 应理解,上述传感器集线器连接在在所述传感器和处理器之间,即:先由传感器采集传感器数据,然后上报给传感器集线器,再由传感器集线器上报给处理器。传感器集线器和一个或者多个相同或者不同的传感器连接,所述的连接方式可以是有线的,也可以是无线的。上述传感器集线器和处理器相比,相当于一个低功耗的处理器,传感器集线器可以从市场上获得。\n[0079] 传感器集线器在处理器工作时,将收到的传感器数据实时上报给处理器;但在处理器处于睡眠状态时,由传感器集线器暂存收到的传感器数据,并记录收到传感器数据的时间,由于传感器始终将采集的传感器数据实时上报给传感器集线器,所以该传感器集线器收到传感器数据的时间也就是采集时间。\n[0080] 接收到传感器进入睡眠状态的指示后传感器集线器接收并暂存传感器采集并上报的传感器数据具体包括:传感器器集线器收到处理器进入睡眠状态的指令后,向处理器返回一个响应消息,并开始存储收到的传感器数据。\n[0081] 需要说明的是,上述传感器集线器将传感器数据和采集时间暂存到该传感器集线器的事件信息表中,所述事件信息表至少包括插入(push)和提取(pop)两种操作,传感器数据和采集时间按照时间顺序依次插入事件信息表中,当提取数据时,根据事件信息表的性质,会有不同的提取顺序,比如事件信息表采用队列(queue)形式时,遵循“先进先出”的顺序、而当事件信息表采用栈(stack)的形式时,遵循“先进后出”的顺序,当然,事件信息表也可以采用链表(Linked List)或者其它数据结构。示例性的,可以在事件信息表中创设一个字段为data,该字段对应存储传感器数据,字段的格式和长度等都不加限制,创设另一个字段为time,该字段对应的存储采集时间,由于传感器数据和采集时间间具有对应关系,所以data字段和time字段间可以通过创设相同的头针节来建立对应的关联,或通过在data字段后扩展time字段的内容,使传感器数据和采集时间间具有对应的关联。具体在实现中,数据结构的形式、算法的方式等都可以由技术人员自行确定,对此本发明不做任何限制。\n[0082] 203,当所述处理器恢复成工作状态时发送处理器恢复成工作状态的指示,所述传感器集线器接收到该处理器恢复成工作状态的指示后将所述传感器数据上报给所述处理器;\n[0083] 将所述传感器数据上报给所述处理器具体包括:将所述事件信息表上报给所述处理器。\n[0084] 当处理器恢复成工作状态时发送处理器恢复成工作状态的指示具体包括:所述处理器恢复成工作状态时,发送一个指令告知处理器已经恢复成工作状态。处理器发送的该指令可以是面向其控制的所有单元的,因此这些单元都能收到处理器发送的该指令。\n[0085] 传感器集线器接收到该处理器恢复成工作状态的指示后确定处理器已恢复成工作状态,并将所述事件信息表上报给所述处理器。\n[0086] 应理解,触发所述处理器恢复成工作状态的因素包括传感器集线器唤醒处理器、或其它单元、模块、应用等唤醒处理器情况(例如用户在处理器睡眠状态时想看下终端的时间)。\n[0087] 在其它单元、模块、应用等唤醒处理器的情况下,处理器恢复了工作状态,先由处理器向传感器集线器发出一个信息,再由传感器集线器将事件信息表上报给所述处理器。\n[0088] 应理解,在没有其它触发所述处理器恢复成工作状态的因素时,上述传感器集线器也可以在适当的时候唤醒处理器(例如传感器集线器的事件信息表已满的情况)。\n[0089] 可选的,可以自定义传感器集线器唤醒处理器的条件,上述唤醒条件包括以下一个或多个:上述事件信息表中的数据量超过一定值,或处理器进入睡眠状态的时间超过一定值。当唤醒条件满足时,传感器集线器唤醒处理器。\n[0090] 进一步的,所述事件信息表上报之后,还可以执行步骤204(图中未示出该步骤):\n处理器解析事件信息表。\n[0091] 需要说明的是,在事件信息表中包含了传感器数据和采集时间。\n[0092] 如果处理器能够解析出传感器数据和采集时间,处理器处理(参见图3)的步骤为:\n[0093] 301,解析事件信息表,获得传感器数据和采集时间;\n[0094] 302,处理传感器数据和采集时间。\n[0095] 但是,由于应用程序与驱动层间接口协议标准的原因,目前的处理器未必能从事件信息表中解析出采集时间,所以,本发明后面的实施例中会介绍如何通过其他方式推算出采集时间,从而处理器完成对应的处理。\n[0096] 采用本发明实施例提供的方法可以让高耗能的处理器在只有传感器工作的情况下进入睡眠状态,由低功耗的传感器集线器替代处理器暂存传感器数据,在处理器恢复工作状态后,由传感器集线器将数据上报给处理器,从而高耗能的处理器不用在只有传感器工作的时候一直保持工作状态,节省了功耗。\n[0097] 当处理器解析事件信息表只能获得传感器数据,无法获得采集时间时,图4提供了另一种处理器处理上报的传感器数据的流程示意图。\n[0098] 本发明实施例中和上述实施例中相同的部分不再赘述,区别点在于处理器要通过时间映射的方式获取采集时间。\n[0099] 具体的,包括步骤:\n[0100] 401,处理器记录从事件信息表中获取传感器数据的时间,该时间为获取时间。可以理解的,该获取时间和前文中的采集时间是不同的,采集时间是与传感器采集传感器数据的时间一一对应的时间,是事件实际发生的时间,而获取时间只是处理器从事件信息表中解析、获取传感器数据的时间,与采集时间间没有对应关系。\n[0101] 402,从获取时间推算出采集时间;\n[0102] 如上所述,获取时间只是处理器从事件信息表中解析出传感器数据的时间。当解析事件信息表后无法直接获得采集时间时,一种方法就是建立获取时间与采集时间间的对应关系,从而通过获取时间推算出采集时间。\n[0103] 403,处理传感器数据与推算出的采集时间。\n[0104] 采用本发明实施例提供的方法可以在处理器只解析获取出传感器数据的情况下,通过从获取时间推算出的采集时间,分析和处理传感器数据。\n[0105] 可选的,图5提供了一种从获取时间推算出采集时间的方法的示意图,当事件信息表采用队列的形式时,可以通过本发明实施例提供的时间映射方式从获取时间获取采集时间。\n[0106] 具体的,在处理器恢复工作状态后,先用一段时间处理处理器在睡眠状态时发生的传感器数据,定义这段时间处理器处于压缩工作状态。在压缩工作状态内,传感器集线器一方面要暂存压缩工作状态内发生的传感器数据,另一方面要把之前处理器睡眠时暂存的传感器数据上报给处理器,当传感器集线器把处理器睡眠时暂存的事件信息表上报完,再把压缩工作状态内暂存的事件信息表上报给处理器。当处理器收到了其处于睡眠状态时和处于压缩工作状态时传感器集线器暂存的全部事件信息表,则处理器结束压缩工作状态,恢复到普通的工作状态,实时处理传感器上报的传感器数据。下面结合图5予以说明:\n[0107] 处理器计算从该处理器进入睡眠状态到进入压缩工作状态之间的睡眠时间长度T1,其中处理器进入睡眠状态的起始时刻为T10,\n[0108] 处理器计算从该处理器进入压缩工作状态到压缩工作状态结束的时间长度为T2,其中处理器进入压缩工作状态的起始时刻为T20,\n[0109] 传感器集线器在压缩工作状态T2内将T1+T2时间内的事件信息表都上报给处理器,并由处理器通过解析事件信息表获取传感器数据。可以理解的,目前处理器的处理速度非常快,几乎数据一上报,就能够迅速得到解析,所以,可以认为传感器集线器在T2时间内上报完事件信息表,处理器就能在T2时间内解析完事件信息表中的所有数据。\n[0110] 在T2内,处理器调整系统时间接口,使处理器在获取时间是T20+τ时刻获取到传感器数据时,系统时间接口读取的时刻为T10+τ*(T1+T2)/T2,其中,τ表示一个从压缩工作状态开始的时间长度变量,τ最大的时候,压缩工作状态结束(0≤τ≤T2)。\n[0111] 根据本发明的实施例,能够使得处理器通过时间压缩方式,从获取时间推算出采集时间,即:虽然处理器是在T20+τ的时候获取到传感器数据,但却会认为这个时间是T10+τ*(T1+T2)/T2,也就是传感器数据采集的真实时间,从而处理器能在只获得传感器数据和获取时间的情况下处理传感器数据和推算出的采集时间集合。\n[0112] 根据本发明的一个实施例提供的一种上报传感器数据的方法,包括:\n[0113] 处理器判断当前只有传感器采集的传感器数据需要处理时,所述处理器发送进入睡眠状态的指示信息,并进入睡眠状态,所述进入睡眠状态的指示信息用于使一传感器数据暂存单元在收到所述进入睡眠状态的指示信息时接收并暂存传感器采集的传感器数据;\n当所述处理器恢复成工作状态时发送处理器恢复成工作状态的指示信息,所述恢复成工作状态的指示信息用于使所述传感器数据暂存单元在收到所述处理器恢复成工作状态的指示信息时将暂存的所述传感器数据上报给所述处理器。\n[0114] 所述接收并暂存传感器采集的传感器数据具体包括:接收并暂存传感器采集的传感器数据到事件信息表中,并记录所述传感器采集传感器数据对应的时间,将该时间也暂存到所述事件信息表中;将所述传感器数据上报给所述处理器具体包括:将所述事件信息表上报给所述处理器。\n[0115] 所述传感器数据暂存单元可以是传感器集线器,接收到传感器进入睡眠状态的指示后,传感器集线器接收并暂存传感器采集的传感器数据。\n[0116] 处理器发送进入睡眠状态的指示具体可以为:处理器发送一个指令,该指令指示处理器进入睡眠状态。处理器发送的该指令可以是面向其控制的所有单元的,因此这些单元都能收到处理器发送的该指令。\n[0117] 当处理器恢复成工作状态时发送处理器恢复成工作状态的指示具体包括:所述处理器恢复成工作状态时,发送一个指令告知处理器已经恢复成工作状态。处理器发送的该指令可以是面向其控制的所有单元的,因此这些单元都能收到处理器发送的该指令。\n[0118] 传感器集线器接收到该处理器恢复成工作状态的指示后确定处理器已恢复成工作状态,并将所述事件信息表上报给所述处理器。\n[0119] 图6是根据本发明实施例提供的能够上报传感器数据的终端结构示意图。\n[0120] 该终端601包括:传感器602,用于采集传感器数据;处理器603,判断当其只有传感器602采集的传感器数据需要处理时发送进入睡眠状态的指示,并进入睡眠状态;在恢复工作状态时发送处理器恢复成工作状态的指示,并接收传感器集线器604上报的事件信息表;\n传感器集线器604,连接在所述传感器602和处理器603之间,在接收到处理器进入睡眠状态的指示后接收并暂存所述传感器602采集的传感器数据到事件信息表中,并记录所述传感器602采集传感器数据的时间,将该时间暂存到所述事件信息表中,并在接收到处理器603恢复成工作状态的指示后将所述事件信息表上报给所述处理器603。\n[0121] 具体的,上述传感器可以是重力感应传感器、陀螺仪传感器、红外感应传感器、化学传感器、压敏传感器等,可以是专门的传感器,也可以是带有传感器功能的其它设备,本发明对此没有任何的限定。\n[0122] 应理解,触发所述处理器603恢复工作状态的因素很多,包括传感器集线器604唤醒处理器、或其它单元、模块、应用等唤醒处理器情况(例如用户在处理器睡眠状态时想看下终端的时间)。\n[0123] 需要说明的是,由于应用程序与驱动层间接口协议标准的原因,采用当前接口协议标准的处理器可能无法从收到的事件信息表中解析出采集时间;而今后通过修改应用程序与驱动层间接口协议的标准,使得处理器能够在收到事件信息表后解析出传感器数据与采集时间,以提高处理器的效率。\n[0124] 根据本发明实施例提供的终端可以在处理器只有传感器数据需要处理时进入睡眠状态,由低功耗的传感器集线器代替处理器暂存传感器数据,在处理器恢复工作状态后,由传感器集线器将事件信息表上报给处理器,从而高耗能的处理器不用在传感器工作的时候一直保持工作状态,节省了功耗。可选的,作为另一实施例(参见图7),传感器集线器701包括:\n[0125] 判断单元702:用于检查处理器唤醒条件是否满足,若满足唤醒条件,则唤醒所述处理器,使所述处理器从睡眠状态恢复到工作状态,若不满足,则所述处理器保持睡眠状态。\n[0126] 可选的,所述唤醒条件包括以下一个或多个:所述事件信息表暂存的数据量超过一定值,或者所述处理器进入睡眠状态的时间超过一定值。\n[0127] 可选的,作为另一实施例(参见图8),所述处理器801包括:\n[0128] 接收单元802:用于接收所述传感器集线器804上报的事件信息表。\n[0129] 处理单元803:用于解析所述接收单元802接收的事件信息表。\n[0130] 所述处理单元803进一步用于解析出所述传感器数据以及所述传感器数据对应的采集时间集合并处理所述传感器数据。\n[0131] 或者所述处理单元803进一步用于解析所述传感器数据,并通过时间映射的方式获取所述传感器采集传感器数据对应的时间。\n[0132] 示例性的,当事件信息表采用队列形式时,所述时间映射的方式包括:在处理器恢复工作状态后,先进入一段压缩工作状态。在压缩工作状态内,传感器集线器一方面要暂存压缩工作状态内发生的事件信息表,另一方面要把之前处理器睡眠时暂存的事件信息表上报给处理器,当传感器集线器把处理器睡眠时暂存的事件信息表上报完,再把压缩工作状态内暂存的事件信息表上报给处理器,由处理器解析和处理,具体的计算方法可以参考方法实施例的过程,不再重复说明。\n[0133] 通过上述方案,终端可以在处理器只需要处理传感器数据时进入睡眠状态,由低功耗的传感器集线器替代处理器暂存传感器数据,在处理器恢复工作状态后,由传感器集线器将数据上报给处理器,从而高耗能的处理器不用在传感器工作的时候一直保持工作状态,降低了功耗。\n[0134] 根据本发明的一个实施例提供的一种处理器,包括:\n[0135] 处理器,用于判断当前只有传感器采集的传感器数据需要处理时,发送进入睡眠状态的指示信息,并进入睡眠状态,所述进入睡眠状态的指示信息用于使一传感器数据暂存单元在收到所述进入睡眠状态的指示信息时接收并暂存传感器采集的传感器数据;当所述处理器恢复成工作状态时发送处理器恢复成工作状态的指示信息,所述恢复成工作状态的指示信息用于使所述传感器数据暂存单元在收到所述处理器恢复成工作状态的指示信息时将暂存的所述传感器数据上报给所述处理器。\n[0136] 所述接收并暂存传感器采集的传感器数据具体包括:接收并暂存传感器采集的传感器数据到事件信息表中,并记录所述传感器采集传感器数据对应的时间,将该时间也暂存到所述事件信息表中;将所述传感器数据上报给所述处理器具体包括:将所述事件信息表上报给所述处理器。\n[0137] 所述传感器数据暂存单元可以是传感器集线器,接收到传感器进入睡眠状态的指示后,传感器集线器接收并暂存传感器采集的传感器数据。\n[0138] 处理器发送进入睡眠状态的指示具体可以为:处理器发送一个指令,该指令指示处理器进入睡眠状态。处理器发送的该指令可以是面向其控制的所有单元的,因此这些单元都能收到处理器发送的该指令。\n[0139] 当处理器恢复成工作状态时发送处理器恢复成工作状态的指示具体包括:所述处理器恢复成工作状态时,发送一个指令告知处理器已经恢复成工作状态。处理器发送的该指令可以是面向其控制的所有单元的,因此这些单元都能收到处理器发送的该指令。\n[0140] 传感器集线器接收到该处理器恢复成工作状态的指示后确定处理器已恢复成工作状态,并将所述事件信息表上报给所述处理器。\n[0141] 在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。
法律信息
- 2021-05-11
专利权的转移
登记生效日: 2021.04.27
专利权人由华为终端有限公司变更为荣耀终端有限公司
地址由523808 广东省东莞市松山湖高新技术产业开发区新城大道2号南方工厂厂房(一期)项目B2区生产厂房-5变更为518040 广东省深圳市福田区香蜜湖街道东海社区红荔西路8089号深业中城6号楼A单元3401
- 2019-06-11
专利权人的姓名或者名称、地址的变更
专利权人由华为终端(东莞)有限公司变更为华为终端有限公司
地址由523808 广东省东莞市松山湖高新技术产业开发区新城大道2号南方工厂厂房(一期)项目B2区生产厂房-5变更为523808 广东省东莞市松山湖高新技术产业开发区新城大道2号南方工厂厂房(一期)项目B2区生产厂房-5
- 2018-01-12
- 2017-12-01
专利申请权的转移
登记生效日: 2017.11.13
申请人由华为终端有限公司变更为华为终端(东莞)有限公司
地址由518129 广东省深圳市龙岗区坂田华为基地B区2号楼变更为523808 广东省东莞市松山湖高新技术产业开发区新城大道2号南方工厂厂房(一期)项目B2区生产厂房-5
- 2014-04-02
实质审查的生效
IPC(主分类): H04W 52/02
专利申请号: 201310634969.X
申请日: 2013.12.02
- 2014-03-05
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2013-06-26
|
2012-11-20
| | |
2
| |
2013-01-23
|
2011-11-21
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |