数据处理方法、装置、可读存储介质及下位机转让专利

申请号 : CN201911267148.0

文献号 : CN110968179B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李酉管永煌

申请人 : 深圳市雷能混合集成电路有限公司

摘要 :

本发明实施例提供了一种数据处理方法、装置、可读存储介质及下位机,方法包括:在向上位机返回当前功耗命令之前,判断当前功耗命令中的数据是否发生溢出;并在当前功耗命令中的数据发生溢出后,按照预先设定的规则对当前功耗命令中的数据进行调整;将调整后的当前功耗命令返回给上位机。由于在下位机中对当前功耗命令中的数据溢出进行了监测,并在数据溢出后进行了数据调整,因此提高了上位机计算下位机平均功耗的准确性;以及,上位机按照采用之前的计算方法计算下位机的平均功耗即可,并不需要设置相应规则对当前功耗命令中的数据溢出情况进行考虑。

权利要求 :

1.一种数据处理方法,其特征在于,应用于下位机,所述数据处理方法包括:在向上位机返回当前功耗命令之前,判断所述当前功耗命令中的数据是否发生溢出,所述当前功耗命令的数据包括瞬时功率累加值、翻转计数和采样数;

若所述当前功耗命令中的数据发生溢出,则按照预先设定的规则对所述当前功耗命令中的数据进行调整;

将调整后的当前功耗命令返回给所述上位机。

2.根据权利要求1所述的数据处理方法,其特征在于,若所述当前功耗命令中的数据发生溢出,则按照预先设定的规则对所述当前功耗命令中的数据进行调整的步骤包括:在所述当前功耗命令中的翻转计数发生溢出时,将所述当前功耗命令中的瞬时功率累加值调整为预设的功率累加值调整值,并将所述当前功耗命令中的翻转计数调整为预设的翻转计数调整值;

根据所述功率累加值调整值、所述翻转计数调整值和所述下位机的平均功率,以及前一次功耗命令中的瞬时功率累加值、翻转计数和采样数,计算得到采样数调整值;

将所述当前功耗命令中的采样数调整为所述采样数调整值。

3.根据权利要求2所述的数据处理方法,其特征在于,所述功率累加值调整值和所述翻转计数调整值均为零。

4.根据权利要求1所述的数据处理方法,其特征在于,若所述当前功耗命令中的数据发生溢出,则按照预先设定的规则对所述当前功耗命令中的数据进行调整的步骤包括:在所述当前功耗命令中的采样数发生溢出时,将所述当前功耗命令中的瞬时功率累加值调整为前一次功耗命令中的瞬时功率累加值,将所述当前功耗命令中的翻转计数调整为前一次功耗命令中的翻转计数,以及将所述当前功耗命令中的采样数调整为预设的采样数调整值。

5.根据权利要求4所述的数据处理方法,其特征在于,所述采样数调整值为零。

6.根据权利要求1~5中任意一项所述的数据处理方法,其特征在于,所述瞬时功率累加值的数据格式为直接格式。

7.一种数据处理装置,其特征在于,应用于下位机,所述数据处理装置包括:溢出检测单元,用于在向上位机返回当前功耗命令之前,判断所述当前功耗命令中的数据是否发生溢出,所述当前功耗命令的数据包括瞬时功率累加值、翻转计数和采样数;

数据调整单元,用于若所述当前功耗命令中的数据发生溢出,则按照预先设定的规则对所述当前功耗命令中的数据进行调整;

发送单元,用于将调整后的当前功耗命令返回给所述上位机。

8.根据权利要求7所述的数据处理装置,其特征在于,所述数据调整单元具体用于:在所述当前功耗命令中的翻转计数发生溢出时,将所述当前功耗命令中的瞬时功率累加值调整为预设的功率累加值调整值,并将所述当前功耗命令中的翻转计数调整为预设的翻转计数调整值;

根据所述功率累加值调整值、所述翻转计数调整值和所述下位机的平均功率,以及前一次功耗命令中的瞬时功率累加值、翻转计数和采样数,计算得到采样数调整值;

将所述当前功耗命令中的采样数调整为所述采样数调整值;

和/或,所述数据调整单元具体用于:在所述当前功耗命令中的采样数发生溢出时,将所述当前功耗命令中的瞬时功率累加值调整为前一次功耗命令中的瞬时功率累加值,将所述当前功耗命令中的翻转计数调整为前一次功耗命令中的翻转计数,以及将所述当前功耗命令中的采样数调整为预设的采样数调整值。

9.一种可读存储介质,其上存储有程序,其特征在于,所述程序被处理器执行时,实现如权利要求1~6中任意一项所述的数据处理方法的各个步骤。

10.一种下位机,包括存储器和处理器;

所述存储器,用于存储程序;

其特征在于,

所述处理器,用于执行所述程序,实现如权利要求1~6中任意一项所述的数据处理方法的各个步骤。

说明书 :

数据处理方法、装置、可读存储介质及下位机

技术领域

[0001] 本发明涉及数据处理领域,更具体地说,涉及数据处理方法、装置、可读存储介质及下位机。

背景技术

[0002] PMBus协议是电源管理总线协议;其定义了很多控制电源的命令,其中包括READ_EIN(0x86)和READ_EOUT(0x87)命令。下位机在接收到上位机的功耗读取请求后,向上位机
返回READ_EIN(0x86)或READ_EOUT(0x87)命令;READ_EIN(0x86)和READ_EOUT(0x87)命令包
括可用于计算下位机的功耗的数据。
[0003] 目前,用户侧的上位机会根据下位机返回的READ_EIN(0x86)或READ_EOUT(0x87)命令中的数据,计算下位机的平均功耗。但是由于很多客户对于PMBus协议并不熟悉,对于
READ_EIN(0x86)或READ_EOUT(0x87)命令中数据的溢出,并未进行考虑,进而导致上位机计
算出下位机的功耗不对,偏离正常值很多。

发明内容

[0004] 有鉴于此,本发明提出数据处理方法、装置、可读存储介质及下位机,欲实现在不需要上位机考虑数据溢出的情况下,提高上位机计算下位机平均功耗的准确性。
[0005] 为了实现上述目的,现提出的方案如下:
[0006] 第一方面,提供一种数据处理方法,应用于下位机,所述数据处理方法包括:
[0007] 在向上位机返回当前功耗命令之前,判断所述当前功耗命令中的数据是否发生溢出,所述当前功耗命令的数据包括瞬时功率累加值、翻转计数和采样数;
[0008] 若所述当前功耗命令中的数据发生溢出,则按照预先设定的规则对所述当前功耗命令中的数据进行调整;
[0009] 将调整后的当前功耗命令返回给所述上位机。
[0010] 可选的,若所述当前功耗命令中的数据发生溢出,则按照预先设定的规则对所述当前功耗命令中的数据进行调整的步骤包括:
[0011] 在所述当前功耗命令中的翻转计数发生溢出时,将所述当前功耗命令中的瞬时功率累加值调整为预设的功率累加值调整值,并将所述当前功耗命令中的翻转计数调整为预
设的翻转计数调整值;
[0012] 根据所述功率累加值调整值、所述翻转计数调整值和所述下位机的平均功率,以及前一次功耗命令中的瞬时功率累加值、翻转计数和采样数,计算得到采样数调整值;
[0013] 将所述当前功耗命令中的采样数调整为所述采样数调整值。
[0014] 可选的,所述功率累加值调整值和所述翻转计数调整值均为零。
[0015] 可选的,若所述当前功耗命令中的数据发生溢出,则按照预先设定的规则对所述当前功耗命令中的数据进行调整的步骤包括:
[0016] 在所述当前功耗命令中的采样数发生溢出时,将所述当前功耗命令中的瞬时功率累加值调整为前一次功耗命令中的瞬时功率累加值,将所述当前功耗命令中的翻转计数调
整为前一次功耗命令中的翻转计数,以及将所述当前功耗命令中的采样数调整为预设的采
样数调整值。
[0017] 可选的,所述采样数调整值为零。
[0018] 可选的,所述瞬时功率累加值的数据格式为直接格式。
[0019] 第二方面,提供一种数据处理装置,应用于下位机,所述数据处理装置包括:
[0020] 溢出检测单元,用于在向上位机返回当前功耗命令之前,判断所述当前功耗命令中的数据是否发生溢出,所述当前功耗命令的数据包括瞬时功率累加值、翻转计数和采样
数;
[0021] 数据调整单元,用于若所述当前功耗命令中的数据发生溢出,则按照预先设定的规则对所述当前功耗命令中的数据进行调整;
[0022] 发送单元,用于将调整后的当前功耗命令返回给所述上位机。
[0023] 可选的,所述数据调整单元具体用于:
[0024] 在所述当前功耗命令中的翻转计数发生溢出时,将所述当前功耗命令中的瞬时功率累加值调整为预设的功率累加值调整值,并将所述当前功耗命令中的翻转计数调整为预
设的翻转计数调整值;
[0025] 根据所述功率累加值调整值、所述翻转计数调整值和所述下位机的平均功率,以及前一次功耗命令中的瞬时功率累加值、翻转计数和采样数,计算得到采样数调整值;
[0026] 将所述当前功耗命令中的采样数调整为所述采样数调整值。
[0027] 可选的,所述功率累加值调整值和所述翻转计数调整值均为零。
[0028] 可选的,所述数据调整单元具体用于:
[0029] 在所述当前功耗命令中的采样数发生溢出时,将所述当前功耗命令中的瞬时功率累加值调整为前一次功耗命令中的瞬时功率累加值,将所述当前功耗命令中的翻转计数调
整为前一次功耗命令中的翻转计数,以及将所述当前功耗命令中的采样数调整为预设的采
样数调整值。
[0030] 可选的,所述采样数调整值为零。
[0031] 可选的,所述瞬时功率累加值的数据格式为直接格式。
[0032] 第三方面,提供一种可读存储介质,其上存储有程序,所述程序被处理器执行时,实现如第一方面中任意一项所述的数据处理方法的各个步骤。
[0033] 第四方面,提供一种下位机,包括存储器和处理器;
[0034] 所述存储器,用于存储程序;
[0035] 所述处理器,用于执行所述程序,实现如第一方面中任意一项所述的数据处理方法的各个步骤。
[0036] 与现有技术相比,本发明的技术方案具有以下优点:
[0037] 上述技术方案提供的一种数据处理方法、装置、可读存储介质及下位机,方法包括:在向上位机返回当前功耗命令之前,判断当前功耗命令中的数据是否发生溢出;并在当
前功耗命令中的数据发生溢出后,按照预先设定的规则对当前功耗命令中的数据进行调
整;将调整后的当前功耗命令返回给上位机。由于在下位机中对当前功耗命令中的数据溢
出进行了监测,并在数据溢出后进行了数据调整,因此提高了上位机计算下位机平均功耗
的准确性;以及,上位机按照之前的计算方法计算下位机的平均功耗即可,并不需要设置相
应规则对当前功耗命令中的数据溢出情况进行考虑。

附图说明

[0038] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据
提供的附图获得其他的附图。
[0039] 图1为本发明实施例提供的一种应用于下位机的数据处理方法的流程图;
[0040] 图2为本发明实施例提供的一种针对翻转计数发生溢出的数据调整方法的流程图;
[0041] 图3为本发明实施例提供的一种应用于下位机的数据处理装置的逻辑结构示意图;
[0042] 图4为本发明实施例提供的一种下位机的示意图。

具体实施方式

[0043] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于
本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他
实施例,都属于本发明保护的范围。
[0044] READ_EIN(0x86)和READ_EOUT(0x87)命令均为功耗命令。功耗命令中的数据与任何设备特定的平均周期、采样频率或计算算法均无关。功耗命令中包括瞬时功率累加值、翻
转计数和采样数。例如READ_EIN(0x86)命令中的数据包括瞬时输入功率累加值、瞬时输入
功率累加值的翻转计数和瞬时输入功率的采样数。READ_EOUT(0x87)命令包括瞬时输出功
率累加值、瞬时输出功率累加值的翻转计数和瞬时输出功率的采样数。
[0045] 本实施例提供一种应用于下位机的数据处理方法,参见图1,该数据处理方法包括步骤:
[0046] S11:在向上位机返回当前功耗命令之前,判断当前功耗命令中的数据是否发生溢出,若是,则执行步骤S12,若否,则执行步骤S14。
[0047] 下位机在接收到上位机的功耗读取请求后,向上位机返回的功耗命令包括瞬时功率累加值、翻转计数和采样数。当前要向上位机返回的功耗命令称为当前功耗命令;已经向
上位机返回的最近一次功耗命令称为前一次功耗命令。
[0048] 在本实施例中,判断当前功耗命令中的数据是否发生溢出,具体是判断当前功耗命令包括的翻转计数和采样数是否发生溢出。翻转计数是否发生溢出的具体的判断方法可
以是,如果当前功耗命令中的翻转计数小于前一次功耗命令中的翻转计数,则确定翻转计
数发生溢出;或者,当前功耗命令中的翻转计数为零且前一次功耗命令中的翻转计数不为
零,则确定翻转计数发生溢出。采样数是否发生溢出的判断方法与翻转计数的判断方法思
路一致,本实施例不再赘述。
[0049] S12:按照预先设定的规则对当前功耗命令中的数据进行调整。
[0050] 针对不同的数据溢出情况,预先设置相应的规则,以调整功耗命令中的数据。
[0051] S13:将调整后的当前功耗命令返回给所述上位机。
[0052] S14:将当前功耗命令返回给上位机。
[0053] 在当前功耗命令中的数据发生溢出后,在下位机侧对当前功耗命令中的数据进行调整;若当前功耗命令中的数据未发生溢出,则不需要对当前功耗命令中的数据进行调整。
由于在下位机中对当前功耗命令中的数据溢出进行了监测,并在数据溢出后进行了数据调
整,因此提高了上位机计算下位机平均功耗的准确性;以及,使得上位机按照之前的计算方
法计算下位机的平均功耗即可,并不需要设置相应规则对当前功耗命令中的数据溢出情况
进行考虑。
[0054] 本实施例提供了一种针对翻转计数发生溢出的数据调整方法,参见图2,该方法包括步骤:
[0055] S21:在当前功耗命令中的翻转计数发生溢出时,将当前功耗命令中的瞬时功率累加值调整为预设的功率累加值调整值,并将当前功耗命令中的翻转计数调整为预设的翻转
计数调整值。
[0056] 在一个具体实施例中,预设的功率累加值调整值和翻转计数调整值均为零。
[0057] S22:根据功率累加值调整值、翻转计数调整值和下位机的平均功率,以及前一次功耗命令中的瞬时功率累加值、翻转计数和采样数,计算得到采样数调整值。
[0058] S23:将当前功耗命令中的采样数调整为采样数调整值。
[0059] 上位机根据当前功耗命令中的数据和前一次功耗命令中的数据,计算下位机的在生成前一次功耗命令至当前功耗命令这段时间的平均功率。下位机工作稳定后,下位机的
当前功率即认为是下位机的平均功率。因此,在对当前功耗命令中的数据进行调整时,将当
前功率作为平均功率,结合其它数据,以及上位机计算平均功率的方法,可以得到采样数调
整值,以使得上位机接收到调整后的当前功耗命令后,计算的平均功率较为准确。
[0060] 本实施例提供了一种针对采样数发生溢出的数据调整方法,该方法具体为:在当前功耗命令中的采样数发生溢出时,将当前功耗命令中的瞬时功率累加值调整为前一次功
耗命令中的瞬时功率累加值,将当前功耗命令中的翻转计数调整为前一次功耗命令中的翻
转计数,以及将当前功耗命令中的采样数调整为预设的采样数调整值。在一个具体实施例
中,设置采样数调整值为零。
[0061] READ_EIN(0x86)和READ_EOUT(0x87)命令均包括六个数据字节。下面对READ_EIN(0x86)命令进行介绍。
[0062] READ_EIN(0x86)命令的前两个字节是瞬时输入功率累加值(即Accumulator_Value)。通过累加器对瞬时输入功率的采样值(即输入电压和输入电流的采样乘积)进行连
续求和,得到Accumulator_Value。这两个数据字节的格式为线性数据格式或直接格式。
[0063] READ_EIN(0x86)命令的第三个数据字节是瞬时输入功率累加值的翻转计数,即累加器的Rollover_Count值。当累加器的输出值由最大值翻转为零后,Rollover_Count值加
1。Rollover_Count值增加到最大值后也会翻转为零。该字节是无符号整数。
[0064] READ_EIN(0x86)命令的后三个数据字节是瞬时输入功率的采样数(即Sample_Count)。Sample_Count增加到最大值后也会翻转为零。这三个数据字节为一个24位无符号
整数。
[0065] 下面举例对本发明提供的应用于下位机的数据处理方法进行说明。
[0066] 下位机向上位机返回的READ_EIN(0x86)命令中的Accumulator_Value的数据格式为直接格式。直接格式中的m=1,b=0,R=1。
[0067] 上位机在不考虑数据溢出情况时,利用以下公式计算下位机的平均输入功率:
[0068]
[0069] 其中,Average_Power表示平均输入功率,Current_Energy_Count表示当前能量计数,Last_Energy_Count表示前一次能量计数,Current_Sample_Count表示当前READ_EIN
(0x86)命令中的采样数,Last_Sample_Count表示前一次READ_EIN(0x86)命令中的采样数。
[0070] 在Accumulator_Value的数据格式为直接格式时,能量计数的计算公式为:Energy_Count=Rollover_Count*Maximum_Direct_Format_Value(m,b,R)+Accumulator_
Value
[0071] 其中,Maximum_Direct_Format_Value(m,b,R)=(m*Ymax+b)*10R;Ymax表示15
Accumulator_Value的最大值,Ymax=2 ‑1=32767;m、b和R通信双方预先规定好的值,不需
要通信传输;Energy_Count表示能量计数。Maximum_Direct_Format_Value(m,b,R)=(1×
32767+0)×10=327670。
[0072] 上位机根据当前READ_EIN(0x86)命令中数据计算得到的Energy_Count用Current_Energy_Count表示;上位机根据前一次READ_EIN(0x86)命令中数据计算得到的
Energy_Count用Last_Energy_Count表示。上位机计算Average_Power后,会赋值存储的
Last_Energy_Count=Current_Energy_Count,以供下一次计算Average_Power使用。
[0073] 在采样得到下位机的瞬时输入功率后,将该瞬时输入功率除以10后再输入累加器进行累加,得到Accumulator_Value。上位机接收到下位机发送的READ_EIN(0x86)命令后,
还需要对Accumulator_Value的值进行转换,得到单位为瓦特的数值。具体转换过程为
R
(Accumulator_Value×m+b)×10 =10×Accumulator_Value。例如,上位机第一接收到下
位机发送的READ_EIN(0x86)命令中的数据Accumulator_Value=34,Rollover_Count=0,
Sample_Count=1,则上位机计算Current_Energy_Count=0×327670+34×10=340。
[0074] 在上位机第一接收到下位机发送的READ_EIN(0x86)命令之前,Last_Energy_Count和Last_Sample_Count均为初始值,初始值都是零。因此,上位机计算Average_Power
=(340‑0)/(1‑0)=340。
[0075] 通过实验随机记录上位机连续两次接收到下位机发送的READ_EIN(0x86)命令。前一次READ_EIN(0x86)命令中的Accumulator_Value=0x3658(即13912),Rollover_Count=
3,Sample_Count=3618,当前READ_EIN(0x86)命令中的Accumulator_Value=0x7F38(即
32568),Rollover_Count=3,Sample_Count=4166。则上位机计算:
[0076] Average_Power=(3×327670+32568×10–(3×327670+13912×10))/(4166‑3618)=(1308690‑1122130)/548=186560/548=340.4379562
[0077] 因此,对于上位机来说,按照之间的计算方法计算下位机的平均功率均是正确的,不需要考虑数据溢出的问题。
[0078] 下面举例说明本发明提供的应用于下位机的数据处理方法,在检测到数据溢出时进行数据调整的过程。
[0079] 下位机的瞬间输入功率一直为240W,即平均功率为240W。前一次READ_EIN(0x86)命令中Accumulator_Value=32732,Rollover_Count=255,Sample_Count=352475;当前
READ_EIN(0x86)命令中Accumulator_Value=0,Rollover_Count=0,Sample_Count=
352477。判断出Rollover_Count产生了溢出。此时保持Accumulator_Value=0,Rollover_
Count=0,下位机根据以下公式:
[0080]
[0081] 计算得到Current_Sample_Count=Last_Sample_Count‑((Last_Accumulator_Value+327670×Last_Rollover_Count)/Average_Power)=352475‑(32732×10+327670×
255)/240=2962。
[0082] 上位机根据调整后的当前READ_EIN(0x86)命令中的数据计算:Average_Power=(0×327670+0×10–(255×327670+32732×10))/(2960‑352475)=240。
[0083] 通过以上计算可以看出,在Rollover_Count产生了溢出时,按照上述规则对当前READ_EIN(0x86)命令中的数据进行调整后,上位机计算得到平均功率仍是正确的。
[0084] 发明人在实现本发明的过程中发现,在Sample_Count发生溢出时,下位机的平均功率都较小。下位机在Sample_Count发生溢出时,将当前READ_EIN(0x86)命令中
Accumulator_Value的值调整为前一次READ_EIN(0x86)命令中Accumulator_Value的值;并
将当前READ_EIN(0x86)命令中Rollover_Count的值调整为前一次READ_EIN(0x86)命令中
Rollover_Count的值;以及将当前READ_EIN(0x86)命令中Sample_Count的值调整为零。这
样上位机根据调整后的当前READ_EIN(0x86)命令中的数据计算:Average_Power=0。由于
下位机这时的平均功率本身就比较小,所以上位机计算得到0,导致的误差也较小;这样不
需要上位机在计算下位机的功率时考虑数据溢出问题,且节省了下位机的计算资源。
[0085] 对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某
些步骤可以采用其他顺序或者同时进行。
[0086] 下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。
[0087] 本实施例提供了一种应用于下位机的数据处理装置,参见图3,该数据处理装置包括:溢出检测单元31、数据调整单元32和发送单元33。
[0088] 溢出检测单元31,用于在向上位机返回当前功耗命令之前,判断当前功耗命令中的数据是否发生溢出,当前功耗命令的数据包括瞬时功率累加值、翻转计数和采样数。
[0089] 数据调整单元32,用于若当前功耗命令中的数据发生溢出,则按照预先设定的规则对当前功耗命令中的数据进行调整。
[0090] 发送单元33,用于将调整后的当前功耗命令返回给上位机。
[0091] 在一个具体实施例中,数据调整单元32具体用于:在当前功耗命令中的翻转计数发生溢出时,将当前功耗命令中的瞬时功率累加值调整为预设的功率累加值调整值,并将
当前功耗命令中的翻转计数调整为预设的翻转计数调整值;根据功率累加值调整值、翻转
计数调整值和下位机的平均功率,以及前一次功耗命令中的瞬时功率累加值、翻转计数和
采样数,计算得到采样数调整值;将当前功耗命令中的采样数调整为采样数调整值。和/或,
[0092] 在当前功耗命令中的采样数发生溢出时,将当前功耗命令中的瞬时功率累加值调整为前一次功耗命令中的瞬时功率累加值,将当前功耗命令中的翻转计数调整为前一次功
耗命令中的翻转计数,以及将当前功耗命令中的采样数调整为预设的采样数调整值。
[0093] 功率累加值调整值、翻转计数调整值和采样数调整值均可以为零。瞬时功率累加值的数据格式可以为直接格式。
[0094] 参见图4,为本发明实施例提供的一种下位机。下位机的硬件结构可以包括:至少一个处理器41,至少一个通信接口42,至少一个存储器43和至少一个通信总线44;且处理器
41、通信接口42、存储器43通过通信总线44完成相互间的通信。
[0095] 处理器41在一些实施例中可以是一个CPU(Central Processing Unit,中央处理器),或者是ASIC(Application Specific Integrated Circuit,特定集成电路),或者是被
配置成实施本发明实施例的一个或多个集成电路等。
[0096] 通信接口42可以包括标准的有线接口、无线接口(如WI‑FI接口)。通常用于在下位机与其他电子设备或系统之间建立通信连接。
[0097] 存储器43包括至少一种类型的可读存储介质。可读存储介质可以为如闪存、硬盘、多媒体卡、卡型存储器等NVM(non‑volatile memory,非易失性存储器)。可读存储介质还可
以是高速RAM(randomaccess memory,随机存取存储器)存储器。可读存储介质在一些实施
例中可以是下位机的内部存储单元,例如该下位机的硬盘。在另一些实施例中,可读存储介
质还可以是下位机的外部存储设备,例如该下位机上配备的插接式硬盘、SMC(Smart Media 
Card,智能存储卡)、SD(Secure Digital,安全数字)卡,闪存卡(Flash Card)等。
[0098] 其中,存储器43存储有计算机程序,处理器41可调用存储器43存储的计算机程序,所述计算机程序用于:
[0099] 在向上位机返回当前功耗命令之前,判断所述当前功耗命令中的数据是否发生溢出,所述当前功耗命令的数据包括瞬时功率累加值、翻转计数和采样数;
[0100] 若所述当前功耗命令中的数据发生溢出,则按照预先设定的规则对所述当前功耗命令中的数据进行调整;
[0101] 将调整后的当前功耗命令返回给所述上位机。
[0102] 所述程序的细化功能和扩展功能可参照上文描述。
[0103] 图4仅示出了具有组件41~44的下位机,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
[0104] 可选地,该下位机还可以包括用户接口,用户接口可以包括输入单元(比如键盘)、语音输入装置(比如包含麦克风的具有语音识别功能的设备)和/或语音输出装置(比如音
响、耳机等)。可选地,用户接口还可以包括标准的有线接口和/或无线接口。
[0105] 可选地,该下位机还可以包括显示器,显示器也可以称为显示屏或显示单元。在一些实施例中可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light‑
Emitting Diode,有机发光二极管)显示器等。显示器用于显示在下位机中处理的信息以及
用于显示可视化的用户界面。
[0106] 可选地,该下位机还包括触摸传感器。触摸传感器所提供的供用户进行触摸操作的区域称为触控区域。此外,触摸传感器可以为电阻式触摸传感器、电容式触摸传感器等。
而且,触摸传感器不仅包括接触式的触摸传感器,也可包括接近式的触摸传感器等。此外,
触摸传感器可以为单个传感器,也可以为例如阵列布置的多个传感器。用户可以通过触摸
触控区域输入身份识别信息或启动程序。
[0107] 此外,该下位机的显示器的面积可以与触摸传感器的面积相同,也可以不同。可选地,将显示器与触摸传感器层叠设置,以形成触摸显示屏。该装置基于触摸显示屏侦测用户
触发的触控操作。
[0108] 该下位机还可以包括RF(Radio Frequency,射频)电路、传感器和音频电路等等,在此不再赘。
[0109] 本发明实施例还提供一种可读存储介质,该可读存储介质可存储有适于处理器执行的程序,所述程序用于:
[0110] 在向上位机返回当前功耗命令之前,判断所述当前功耗命令中的数据是否发生溢出,所述当前功耗命令的数据包括瞬时功率累加值、翻转计数和采样数;
[0111] 若所述当前功耗命令中的数据发生溢出,则按照预先设定的规则对所述当前功耗命令中的数据进行调整;
[0112] 将调整后的当前功耗命令返回给所述上位机。
[0113] 所述程序的细化功能和扩展功能可参照上文描述。
[0114] 以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单
元,。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领
域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0115] 在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际
的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包
含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括
没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素
的过程、方法、物品或者设备中还存在另外的相同要素。
[0116] 本说明书中各个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
[0117] 对本发明所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所
定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,
本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特
点相一致的最宽的范围。