CN111562502B - 一种设备剩余电量计量方法及装置 - Google Patents

一种设备剩余电量计量方法及装置 Download PDF

Info

Publication number
CN111562502B
CN111562502B CN202010683762.1A CN202010683762A CN111562502B CN 111562502 B CN111562502 B CN 111562502B CN 202010683762 A CN202010683762 A CN 202010683762A CN 111562502 B CN111562502 B CN 111562502B
Authority
CN
China
Prior art keywords
register
timer
value
time
counting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010683762.1A
Other languages
English (en)
Other versions
CN111562502A (zh
Inventor
陆舟
于华章
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Feitian Technologies Co Ltd
Original Assignee
Feitian Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Feitian Technologies Co Ltd filed Critical Feitian Technologies Co Ltd
Priority to CN202010683762.1A priority Critical patent/CN111562502B/zh
Publication of CN111562502A publication Critical patent/CN111562502A/zh
Application granted granted Critical
Publication of CN111562502B publication Critical patent/CN111562502B/zh
Priority to PCT/CN2021/100762 priority patent/WO2022012261A1/zh
Priority to US17/799,563 priority patent/US20230128424A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/36Arrangements for testing, measuring or monitoring the electrical condition of accumulators or electric batteries, e.g. capacity or state of charge [SoC]
    • G01R31/382Arrangements for monitoring battery or accumulator variables, e.g. SoC
    • G01R31/3842Arrangements for monitoring battery or accumulator variables, e.g. SoC combining voltage and current measurements
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/36Arrangements for testing, measuring or monitoring the electrical condition of accumulators or electric batteries, e.g. capacity or state of charge [SoC]
    • G01R31/3644Constructional arrangements
    • G01R31/3646Constructional arrangements for indicating electrical conditions or variables, e.g. visual or audible indicators
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/36Arrangements for testing, measuring or monitoring the electrical condition of accumulators or electric batteries, e.g. capacity or state of charge [SoC]
    • G01R31/385Arrangements for measuring battery or accumulator variables
    • G01R31/387Determining ampere-hour charge capacity or SoC
    • G01R31/388Determining ampere-hour charge capacity or SoC involving voltage measurements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/14Time supervision arrangements, e.g. real time clock
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/28Supervision thereof, e.g. detecting power-supply failure by out of limits supervision

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Sources (AREA)
  • Measurement Of Unknown Time Intervals (AREA)

Abstract

本发明公开一种设备剩余电量计量方法及装置,检测标志位状态,当第一标志位置位时计算口令,显示口令将第一标志位复位,返回检测标志位状态;当第二标志位置位时计算总消耗电量,根据总消耗电量与第二预设值更新剩余电量,将第二标志位复位,返回检测标志位状态;可以实现不增加额外器件的情况下提高剩余电量的计量精度,更精确地反应电池剩余电量的实际值,且不增加额外的功耗;设备的使用寿命不受影响且成本低。

Description

一种设备剩余电量计量方法及装置
技术领域
本发明涉及电量计量领域,尤其涉及一种设备剩余电量计量方法及装置。
背景技术
用户在使用动态令牌、蓝牙卡等带屏幕的低功耗设备时,剩余电量的显示能够提醒用户及时更换或充电,电池剩余电量的精确显示成为一个重要的性能指标。现有技术中,一种通过模数转化模块检测电池电压来判断电池容量的方法无法较为精确地反应电池剩余电量的实际值,误差较大;另一种采用电量计采集剩余电量,相较上一种方案可以较为精确地反应电池剩余电量的实际值,但在带屏幕的显示设备中集成电量计会增加设备的功耗,缩短设备的使用寿命,且成本高。
发明内容
本发明的目的是为了克服现有技术的不足,提供一种设备剩余电量计量方法及装置。
本发明提供了一种设备剩余电量计量方法,包括:
步骤S1:检测标志位状态,当第一标志位置位时,执行步骤S2,当第二标志位置位时,执行步骤S4;
步骤S2:开启定时器开始计数,计算口令,当口令计算完成时关闭定时器,停止计数得到口令计算时间,重置定时器,将口令计算时间累加至第四寄存器中,执行步骤S3;
步骤S3:显示口令和剩余电量,将第一标志位复位,返回步骤S1;
步骤S4:检测电池电压,根据检测到的电池电压和预先存储的第一数据表获取预置的唤醒电流值、口令计算电流值、显示电流值,将唤醒电流值与第一寄存器中的数据的乘积、口令计算电流值与第四寄存器中的数据的乘积、显示电流值与第一预设值减第四寄存器中的数据的结果的乘积相加得到总消耗电量;
步骤S5:根据总消耗电量与第二预设值更新剩余电量,将第二标志位复位,返回步骤S1;
在执行步骤S1至步骤S5过程中,当检测到实时时钟中断时执行步骤A1至步骤A4,实时时钟中断每隔第一预设时间触发一次;
步骤A1:开启定时器开始计数,将第二寄存器和第六寄存器中的数据分别加第一预设时间的结果更新至第二寄存器和第六寄存器中,当第六寄存器中的数据等于第四预设值时,执行步骤A2,当第二寄存器中的数据等于第一预设值时执行步骤A3;
步骤A2:将第一标志位置位,清除第六寄存器中的数据,执行步骤A4;
步骤A3:将第二标志位置位,执行步骤A4;
步骤A4:关闭定时器停止计数,得到唤醒用时,将唤醒用时累加至第一寄存器中。
本发明提供了一种设备剩余电量计量装置,包括:
检测模块,用于检测标志位状态,当第一标志位置位时触发计算口令模块,当第二标志位置位时,触发计算总消耗电量模块;
计算口令模块,用于开启定时器开始计数,计算口令,当口令计算完成时关闭定时器,停止计数得到口令计算时间,重置定时器,将口令计算时间累加至第四寄存器中,触发显示模块;
显示模块,用于显示口令和剩余电量,将第一标志位复位,触发检测模块;
计算总消耗电量模块,用于检测电池电压,根据检测到的电池电压和预先存储的第一数据表获取预置的唤醒电流值、口令计算电流值、显示电流值,将唤醒电流值与第一寄存器中的数据的乘积、口令计算电流值与第四寄存器中的数据的乘积、显示电流值与第一预设值减第四寄存器中的数据的结果的乘积相加得到总消耗电量;
更新剩余电量模块,用于根据总消耗电量与第二预设值更新剩余电量,将第二标志位复位,触发检测模块;
装置还包括:实时时钟模块,用于计量设备的时间,每隔第一预设时间触发唤醒模块;
唤醒模块,用于开启定时器开始计数,将第二寄存器和第六寄存器中的数据分别加第一预设时间的结果更新至第二寄存器和第六寄存器中,当第六寄存器中的数据等于第四预设值时,将第一标志位置位,清除第六寄存器中的数据,关闭定时器停止计数,得到唤醒用时,将唤醒用时累加至第一寄存器中;当第二寄存器中的数据等于第一预设值时将第二标志位置位,关闭定时器停止计数,得到唤醒用时,将唤醒用时累加至第一寄存器中。
本发明还提供了一种设备剩余电量计量方法,包括:
步骤S1:检测标志位状态,当第一标志位置位时,执行步骤S2,当第二标志位置位时,执行步骤S4;
步骤S2:开启定时器开始计数,计算口令,当口令计算完成时关闭所述定时器,停止计数得到口令计算时间,重置所述定时器,将所述口令计算时间累加至第四寄存器中,执行步骤S3;
步骤S3:显示所述口令和剩余电量,将所述第一标志位复位,返回步骤S1;
步骤S4:检测电池电压,根据检测到的电池电压查询预先存储的第一数据表,获取预置的电流值,根据电流值和相应的用时计算总消耗电量;
步骤S5:根据所述总消耗电量与第二预设值更新剩余电量,将所述第二标志位复位,返回步骤S1。
本发明还提供了一种设备剩余电量计量装置,包括:
检测模块,用于检测标志位状态,当第一标志位置位时触发计算口令模块,当第二标志位置位时,触发计算总消耗电量模块;
所述计算口令模块,用于开启定时器开始计数,计算口令,当口令计算完成时关闭所述定时器,停止计数得到口令计算时间,重置所述定时器,将所述口令计算时间累加至第四寄存器中,触发显示模块;
所述显示模块,用于显示所述口令和剩余电量,将所述第一标志位复位,触发所述检测模块;
所述计算总消耗电量模块,用于检测电池电压,根据检测到的电池电压查询预先存储的第一数据表,获取预置的电流值,根据电流值和相应的用时计算总消耗电量;
更新剩余电量模块,用于根据所述总消耗电量与第二预设值更新剩余电量,将所述第二标志位复位,触发所述检测模块。
本发明与现有技术相比,具有以下优点:
本发明提供了一种设备剩余电量计量方法,可以实现不增加额外器件的情况下提高剩余电量的计量精度,更精确地反应电池剩余电量的实际值,且不增加额外的功耗;设备的使用寿命不受影响且成本低。
附图说明
图1为本发明实施例一提供的一种设备剩余电量计量方法的流程图;
图2为本发明实施例三提供的一种设备剩余电量计量方法的流程图;
图3为本发明实施例五提供的一种设备剩余电量计量方法的流程图;
图4为本发明实施例七提供的一种设备剩余电量计量装置的方框图;
图5为本发明实施例八提供的一种设备剩余电量计量装置的方框图;
图6为本发明实施例九提供的一种设备剩余电量计量装置的方框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清除、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本发明实施例一提供一种设备剩余电量计量方法,应用于常显型动态令牌,如图1所示,包括:
步骤S1:检测标志位状态,当第一标志位置位时,执行步骤S2,当第二标志位置位时,执行步骤S4;
步骤S2:开启定时器开始计数,计算口令,当口令计算完成时关闭定时器,停止计数得到口令计算时间,重置定时器,将口令计算时间累加至第四寄存器中,执行步骤S3;
可选的,在本实施例中,当口令计算完成时关闭定时器,停止计数得到口令计算时间,重置定时器具体为:当口令计算完成时停止计数,从定时器寄存器中获取第三数值,根据第三数值得到口令计算时间,清除第三数值。
步骤S3:显示口令和剩余电量,将第一标志位复位,返回步骤S1;
步骤S4:检测电池电压,根据检测到的电池电压和预先存储的第一数据表获取预置的唤醒电流值、口令计算电流值、显示电流值,将唤醒电流值与第一寄存器中的数据的乘积、口令计算电流值与第四寄存器中的数据的乘积、显示电流值与第一预设值减第四寄存器中的数据的结果的乘积相加得到总消耗电量;
可选的,在本实施中,总消耗电量=唤醒电流值×第一寄存器中的数据+口令计算电流值×第四寄存器中的数据+显示电流值×(第一预设值-第四寄存器中的数据);
预存的第一数据表如下:
模块\电池电压 V>=2.8V 2.8V>V>=2.6V V<2.6V
显示 第一显示电流 第二显示电流 第三显示电流
口令计算 第一口令计算电流 第二口令计算电流 第三口令计算电流
唤醒 第一唤醒电流 第二唤醒电流 第三唤醒电流
步骤S5:根据总消耗电量与第二预设值更新剩余电量,将第二标志位复位,返回步骤S1;
可选的,在本实施例中,步骤S5具体包括:
步骤S5-1:判断总消耗电量是否小于第二预设值,是则将总消耗电量存入电量消耗计数寄存器中,执行步骤S5-2,否则将剩余电量减第三预设值的结果更新为剩余电量,将总消耗电量与第二预设值的差值存入电量消耗计数寄存器中,执行步骤S5-2;
步骤S5-2:判断电量消耗计数寄存器中的数值是否小于第二预设值,是则将第二寄存器中的数值恢复为初始值,将第二标志位复位,返回步骤S1,否则将剩余电量减第三预设值的结果更新为剩余电量,将电量消耗寄存器中的数值与第二预设值的差值更新到电量消耗计数寄存器中,将第二寄存器中的数值恢复为初始值,将第二标志位复位,返回步骤S1。
在执行步骤S1至步骤S5过程中,当检测到实时时钟中断时执行步骤A1至步骤A4,实时时钟中断每隔第一预设时间触发一次;
步骤A1:开启定时器开始计数,将第二寄存器和第六寄存器中的数据分别加第一预设时间的结果更新至第二寄存器和第六寄存器中,当第六寄存器中的数据等于第四预设值时,执行步骤A2,当第二寄存器中的数据等于第一预设值时执行步骤A3;
步骤A2:将第一标志位置位,清除第六寄存器中的数据,执行步骤A4;
步骤A3:将第二标志位置位,执行步骤A4;
步骤A4:关闭定时器停止计数,得到唤醒用时,将唤醒用时累加至第一寄存器中。
可选的,在本实施例中,关闭定时器停止计数,得到唤醒用时具体包括:关闭定时器停止计数,从定时器寄存器中获取第一数值,根据第一数值得到唤醒用时,清除第一数值。
实施例二
本发明实施例二提供一种设备剩余电量计量方法,应用于常显型动态令牌,包括:
步骤101:动态令牌上电,初始化定时器的时钟源频率、分频系数、计数初始值,进入休眠状态;
具体的,动态令牌电池设定为满电状态;
步骤102:当检测到动态令牌实时时钟中断时,启动定时器开始计数,当实时时钟中断结束时,关闭定时器停止计数,从定时器寄存器中获取第一数值,根据第一数值、定时器的时钟源频率、分频系数、计数初始值得到实时时钟中断时间作为唤醒用时,将唤醒用时累加至第一寄存器中,清除第一数值;分别将第二寄存器和第六寄存器中的数据加第一预设时间的结果更新至第二寄存器和第六寄存器中,执行步骤103;实时时钟中断每隔第一预设时间触发;
具体的,第一预设时间为1秒;
步骤103:动态令牌判断第六寄存器中的数值是否等于第四预设值,是则执行步骤104,否则执行步骤106;
具体的,第四预设值为60s,第一预设值为86400s;
步骤104:动态令牌开启定时器开始计数,计算口令,当口令计算完成后关闭定时器停止计数,从定时器寄存器中获取第三数值,根据第三数值得到口令计算时间,将口令计算时间累加至第四寄存器中,清除第三数值;
具体的,口令计算时间=(第三数值-计数初始值+1)×(分频系数+1)/时钟源频率;
步骤105:动态令牌显示口令和剩余电量,清除第六寄存器中的数据,执行步骤106;
显示口令的同时显示剩余电量,例如,设置一个电池符号,设置五格,每格表示百分之二十电量,根据剩余电量的具体数值对应显示电池格;
或者设置一个电池符号,分为满电、半电、低电状态,分别对应显示2格、1格、空框,假设剩余电量在标称容量的1/3之上时,电池符号两格都显示,表示当前状态是满电状态,在1/3-2/3之间时,认为是半电,只显示一格,电量低于1/3时,表示低电,此时显示一个空框,并且闪烁提示用户,电池电量已不足;
或者设置一个电池符号,按比例显示剩余电量,并且显示剩余电量百分比,例如95%;
具体的,唤醒时间=(第一数值-计数初始值+1)×(分频系数+1)/时钟源频率;
步骤106:动态令牌判断第二寄存器中的数值是否等于第一预设值,是则执行步骤107,否则返回步骤102;
具体的,第一预设值为86400秒,即每24小时为一个周期;
步骤107:动态令牌检测电池电压,根据检测到的电池电压查找预先存储的电池电压-电流数据表,确定各个模块对应的电流值,计算总消耗电量,执行步骤108;
模块\电池电压 V>=2.8V 2.8V>V>=2.6V V<2.6V
显示 第一显示电流 第二显示电流 第三显示电流
口令计算 第一口令计算电流 第二口令计算电流 第三口令计算电流
唤醒 第一唤醒电流 第二唤醒电流 第三唤醒电流
具体的,读取预先存储的的电池电压-电流数据表,如果电池电压大于或等于2.8V,显示模块对应的电流值为第一显示电流,口令计算模块对应的电流值为第一口令计算电流,唤醒模块对应的电流值为第一唤醒电流;
如果电池电压大于或等于2.6V且小于2.8V,则显示模块对应的电流值为第二显示电流,口令计算模块对应的电流值为第二口令计算电流,唤醒模块对应的电流值为第二唤醒电流;
如果电池电压小于2.6V,则显示模块对应的电流值为第三显示电流,口令计算模块对应的电流值为第三口令计算电流,唤醒模块对应的电流值为第三唤醒电流;
例如,动态令牌检测电池电压为3V,则显示模块对应的电流值为第一显示电流,口令计算模块对应的电流值为第一口令计算电流,唤醒模块对应的电流值为第一唤醒电流,分别计算三个功能模块的耗电量;
显示模块耗电量=第一显示电流×(第一预设值-口令计算时间);
口令计算模块耗电量=第一口令计算电流×口令计算时间;
具体的,口令计算时间为第四寄存器中的数据;
唤醒模块耗电量=第一唤醒电流 ×(唤醒时长-口令计算时间);
具体的,唤醒时长为第一寄存器中的数据;
总消耗电量=显示模块耗电量+口令计算模块耗电量+唤醒模块耗电量;
步骤108:动态令牌判断总消耗电量是否小于第二预设值,是则将总消耗电量存入电量消耗计数寄存器中,执行步骤109,否则将剩余电量减第三预设值的结果更新为剩余电量,将总消耗电量与第二预设值的差值存入电量消耗计数寄存器中,执行步骤109;
步骤109:动态令牌判断电量消耗计数寄存器中的数值是否小于第二预设值,是则将第二寄存器中的数据清除,返回步骤102,否则将剩余电量减第三预设值的结果更新为剩余电量,将电量消耗计数寄存器中的数值与第二预设值的差值更新到电量消耗计数寄存器中,将第二寄存器中的数据清除,返回步骤102。
实施例三
本发明实施例三提供一种设备剩余电量计量方法,应用于按键型动态令牌,如图2所示,包括:
步骤 Q1:检测标志位状态,当第一标志位置位时,执行步骤Q2,当第二标志位置位时,执行步骤Q4;
步骤Q2:开启定时器开始计数,计算口令,当口令计算完成时关闭定时器,停止计数得到口令计算时间,重置定时器,将口令计算时间累加至第四寄存器中,执行步骤Q3;
步骤Q3:开启定时器开始计数,显示口令和剩余电量,当显示结束时关闭定时器停止计数,得到显示时间,重置定时器,将显示时间累加至第五寄存器中,将第一标志位复位,返回步骤Q1;
步骤Q4:检测电池电压,根据检测到的电池电压和预先存储的第一数据表获取预置的唤醒电流值、口令计算电流值、按键电流值、显示电流值和休眠电流值,将唤醒电流值与第一寄存器中的数据的乘积、口令计算电流值与第四寄存器中的数据的乘积、按键电流值与第三寄存器中的数据的乘积、显示电流值与第五寄存器中的数据的乘积、休眠电流值与第一预设值减第一寄存器、第四寄存器、第三寄存器、第五寄存器中的数据的结果的乘积相加得到总消耗电量;
可选的,在本实施例中,总消耗电量=唤醒电流值×第一寄存器中的数据+口令计算电流值×第四寄存器中的数据+按键电流值×第三寄存器中的数据+显示电流×第五寄存器中的数据+休眠电流×(第一预设值-第一寄存器中的数据-第四寄存器中的数据-第三寄存器中的数据-第五寄存器中的数据);
预存的第一数据表如下:
模块\电池电压 V>=2.8V 2.8V>V>=2.6V V<2.6V
按键 第一按键电流 第二按键电流 第三按键电流
显示 第一显示电流 第二显示电流 第三显示电流
口令计算 第一口令计算电流 第二口令计算电流 第三口令计算电流
休眠 第一休眠电流 第二休眠电流 第三休眠电流
唤醒 第一唤醒电流 第二唤醒电流 第三唤醒电流
步骤Q5:根据总消耗电量与第二预设值更新剩余电量,将第二标志位复位,返回步骤Q1;
在执行步骤Q1至步骤Q5过程中,当检测到实时时钟中断时执行步骤B1至步骤B2,实时时钟中断每隔第一预设时间触发一次;
步骤B1:开启定时器开始计数,将第二寄存器中的数据加第一预设时间的结果更新至第二寄存器中,判断第二寄存器中的数据是否等于第一预设值,是则将第二标志位置位,执行步骤B2,否则执行步骤B2;
步骤B2:关闭定时器停止计数,得到唤醒用时,将唤醒用时累加至第一寄存器中;
在执行步骤Q1至步骤Q5的过程中,还包括:当检测到按键中断时,开启定时器开始计数,将第一标志位置位,当检测到第二电平时关闭定时器停止计数,得到按键时长,将按键时长累加保存至第三寄存器中,退出按键中断。
可选的,在本实施例中,当口令计算完成时关闭定时器,停止计数得到口令计算时间,重置定时器具体为:当口令计算完成时停止计数,从定时器寄存器中获取第三数值,根据第三数值得到口令计算时间,清除第三数值。
可选的,在本实施例中,关闭定时器停止计数,得到唤醒用时具体包括:关闭定时器停止计数,从定时器寄存器中获取第一数值,根据第一数值得到唤醒用时,清除第一数值。
可选的,在本实施例中,当显示结束时停止计时,得到显示时间,重置所述定时器具体为:当显示结束时停止计数,从定时器寄存器中获取第四数值,根据第四数值得到显示时长,将显示时长累加至第五寄存器中,清除第四数值。
可选的,在本实施例中,步骤Q3中还包括:当检测到第一电平时,显示结束,开启定时器开始计数,当检测到第二电平时,关闭定时器停止计数,从定时器寄存器中获取第二数值,根据第二数值得到按键时长,将按键时长累加至第三寄存器中,清除第二数值。
可选的,在本实施例中,当检测到第二电平时关闭定时器停止计数,得到按键时长具体为:当检测到第二电平时,关闭定时器停止计数,从定时器寄存器中获取第二数值,根据第二数值得到按键时长,清除第二数值。
可选的,在本实施例中,步骤Q3替换为:开启定时器开始计数,显示口令,当显示结束时停止计数,得到显示时间,将显示时间累加至第五寄存器中,将第一标志位复位,返回步骤Q1。
可选的,在本实施例中,步骤Q3中还包括:当检测到第一电平时,开启第二定时器开始计数,当检测到第二电平时关闭第二定时器停止计数,从第二定时器寄存器中获取第五数值,根据第五数值得到按键时长,将按键时长累加至第三寄存器中,清除第五数值,如按键时长大于或等于第五预设值则切换屏幕显示剩余电量;如按键时长小于第五预设值时则关闭定时器停止计数,从定时器寄存器中获取第四数值,根据第四数值得到显示时长,将显示时长累加至第五寄存器中,清除第四数值。
可选的,在本实施例中,步骤Q5具体包括:
步骤Q5-1:判断总消耗电量是否小于第二预设值,是则将总消耗电量存入电量消耗计数寄存器中,执行步骤Q5-2,否则将剩余电量减第三预设值的结果更新为剩余电量,将总消耗电量与第二预设值的差值存入电量消耗计数寄存器中,执行步骤Q5-2;
步骤Q5-2:判断电量消耗计数寄存器中的数值是否小于第二预设值,是则将第二寄存器中的数值恢复为初始值,将第二标志位复位,返回步骤Q1,否则将剩余电量减第三预设值的结果更新为剩余电量,将电量消耗寄存器中的数值与第二预设值的差值更新到电量消耗计数寄存器中,将第二寄存器中的数值恢复为初始值,将第二标志位复位,返回步骤Q1。
实施例四
本发明实施例四提供一种设备剩余电量计量方法,应用于按键型动态令牌,包括:
步骤201:动态令牌上电,初始化定时器的时钟源频率、分频系数、计数初始值;
具体的,动态令牌电池设定为满电状态;
步骤202:动态令牌进入休眠状态;
步骤203:动态令牌判断实时时钟中断是否发生,是则启动定时器开始计数,当实时时钟中断结束时,关闭定时器停止计数,从定时器寄存器中获取第一数值,根据第一数值、定时器的时钟源频率、分频系数、计数初始值得到实时时钟中断时间作为唤醒用时,将唤醒用时累加至第一寄存器中,清除第一数值,执行步骤204,否则执行步骤205;实时时钟中断每隔第一预设时间触发一次;
具体的,唤醒用时=(第一数值-计数初始值+1)×(分频系数+1)/时钟源频率;
步骤204:动态令牌将第二寄存器中的数值加第一预设时间的结果更新至第二寄存器中,当第二寄存器中的数值等于第一预设值时,执行步骤209;
具体的,第一预设值为86400秒,即每24小时为一个周期;
步骤205:动态令牌判断按键是否被用户触发,是则执行步骤206,否则返回步骤203;
步骤206:开启定时器开始计数,当检测到第二电平时关闭定时器停止计数,从定时器寄存器中获取第二数值,根据第二数值、定时器的时钟源频率、分频系数、计数初始值得到按键时长,将按键时长累加至第三寄存器中,清除第二数值;
具体的,当第二电平为高电平时,按键被用户触发则检测到低电平;当第二电平为低电平时,按键被用户触发则检测到高电平;
具体的,按键时长=(第二数值-计数初始值+1)×(分频系数+1)/时钟源频率;
步骤207:动态令牌开启定时器开始计数,计算口令,当口令计算完成后关闭定时器停止计数,从定时器寄存器中获取第三数值,根据第三数值、定时器的时钟源频率、分频系数、计数初始值得到口令计算时间,将口令计算时间累加保存至第四寄存器中,清除第三数值;
具体的,口令计算时间=(第三数值-计数初始值+1)×(分频系数+1)/时钟源频率;
步骤208:动态令牌开启定时器开始计数,显示口令和剩余电量,判断是否接收到用户的按键触发,是则关闭定时器停止计数,从定时器寄存器中获取第四数值,根据第四数值、定时器的时钟源频率、分频系数、计数初始值得到显示时长,将显示时长累加至第五寄存器中,清除第四数值,返回步骤203,否则将预设显示时长累加至第五寄存器中,清除定时器寄存器中的数值,返回步骤203;
具体的,当接收到用户的按键触发时,显示口令时长=(第四数值-计数初始值+1)×(分频系数+1)/时钟源频率;
具体的,步骤208中清除第四数值之后还包括:动态令牌开启定时器开始计数,当检测到第二电平时,关闭定时器停止计数,从定时器寄存器中获取第二数值,根据第二数值、定时器的时钟源频率、分频系数、计数初始值得到按键时长,将按键时长累加保存至第三寄存器中,清除第二数值;
具体的,当第二电平为高电平时,用户按键触发为低电平;当第二电平为低电平时,用户按键触发为高电平;
具体的,显示口令的同时显示剩余电量,例如,设置一个电池符号,设置五格,每格表示百分之二十电量,根据剩余电量的具体数值对应显示电池格;
或者设置一个电池符号,分为满电、半电、低电状态,分别对应显示2格、1格、空框,假设剩余电量在标称容量的1/3之上时,电池符号两格都显示,表示当前状态是满电状态,在1/3-2/3之间时,认为是半电,只显示一格,电量低于1/3时,表示低电,此时显示一个空框,并且闪烁提示用户,电池电量已不足;
或者设置一个电池符号,按比例显示剩余电量,并且显示剩余电量百分比,例如95%;
可选的,步骤208可替换为:动态令牌开启定时器开始计时,显示口令,当显示结束后停止计数,从定时器寄存器中获取第四数值,根据第四数值得到显示时长,将显示时长累加保存至第五寄存器中,清除第四数值;
可选的,在本实施例中,步骤208还包括:
当检测到第一电平时开启第二定时器开始计时,当检测到第二电平时关闭第二定时器停止计时,从第二定时器寄存器中获取第五数值,根据第五数值得到按键时长,将按键时长累加至第三寄存器中,如按键时长大于或等于第五预设值则切换屏幕显示剩余电量;如按键时长小于第五预设值则关闭定时器停止计数,从定时器寄存器中获取第四数值,根据第四数值得到显示时长,将显示时长累加至第五寄存器中,清除第四数值;
具体的,第五预设值为3s;
具体的,当第一电平为高电平时,第二电平为低电平,当第一电平为低电平时,第二电平为高电平;
具体的,按键时长=(第二数值-计数初始值+1)×(分频系数+1)/时钟源频率;
步骤209:动态令牌检测电池电压,根据检测到的电池电压查找预先存储的电池电压-电流数据表,确定各个模块对应的电流值,计算总消耗电量,执行步骤210;
具体的,动态令牌检测电池电压时为避免因干扰产生的误差,采用均值滤波法连续取多个采样值进行算数平均运算;
预存的电池电压-电流数据表如下所示:
模块\电池电压 V>=2.8V 2.8V>V>=2.6V V<2.6V
按键 第一按键电流 第二按键电流 第三按键电流
显示 第一显示电流 第二显示电流 第三显示电流
口令计算 第一口令计算电流 第二口令计算电流 第三口令计算电流
休眠 第一休眠电流 第二休眠电流 第三休眠电流
唤醒 第一唤醒电流 第二唤醒电流 第三唤醒电流
具体的,读取预先存储的电池电压-电流数据表,如果电池电压大于或等于2.8V,则按键模块对应的电流值为第一按键电流,显示模块对应的电流值为第一显示电流,口令计算模块对应的电流值为第一口令计算电流,休眠模块对应的电流值为第一休眠电流,唤醒模块对应的电流值为第一唤醒电流;
如果电池电压大于或等于2.6V且小于2.8V,则按键模块对应的电流值为第二按键电流,显示模块对应的电流值为第二显示电流,口令计算模块对应的电流值为第二口令计算电流,休眠模块对应的电流值为第二休眠电流,唤醒模块对应的电流值为第二唤醒电流;
如果电池电压小于2.6V,则按键模块对应的电流值为第三按键电流,显示模块对应的电流值为第三显示电流,口令计算模块对应的电流值为第三口令计算电流,休眠模块对应的电流值为第三休眠电流,唤醒模块对应的电流值为第三唤醒电流;
例如,动态令牌检测电池电压为3V,则按键模块对应的电流值为的第一按键电流,显示模块对应的电流值为第一显示电流,口令计算模块对应的电流值为第一口令计算电流,休眠模块对应的电流值为第一休眠电流,唤醒模块对应的电流值为第一唤醒电流,分别计算五个功能模块的耗电量;
按键模块耗电量=第一按键电流×按键总时长;
具体的,按键总时长为第三寄存器中的数据;
显示模块耗电量=第一显示电流×显示总时长;
具体的,显示总时长为第五寄存器中的数据;
口令计算模块耗电量=第一口令计算电流×口令计算时间;
具体的,口令计算时间为第四寄存器中的数据;
唤醒模块耗电量=第一唤醒电流 ×唤醒时长;
具体的,唤醒时长为第二寄存器中的数据;
休眠模块耗电量=第一休眠电流×(第一预设值-显示总时长-按键总时长-口令计算时间-唤醒时长);
总消耗电量=按键模块耗电量+显示模块耗电量+口令计算模块耗电量+休眠模块耗电量+唤醒模块耗电量;
步骤210:动态令牌判断总消耗电量是否小于第二预设值,是则将总消耗电量存入电量消耗计数寄存器中,执行步骤211,否则将剩余电量减第三预设值的结果更新为剩余电量,将总消耗电量与第二预设值的差值存入电量消耗计数寄存器中,执行步骤211;
具体的,第二预设值为2700000uAs,第三预设值为1%;
例如,电池容量75mAh,百分之一的电池容量为0.75mAh,由于各功能模块耗电电流对应的都是uA级,所以将百分之一的电池容量换算成uAs即0.75mAh=2700000uAs;
步骤211:动态令牌判断电量消耗计数寄存器中的数值是否小于第二预设值,是则将第二寄存器中的数据清除,返回步骤203,否则将剩余电量减第三预设值的结果更新为剩余电量,将电量消耗计数寄存器中的数值与第二预设值的差值更新到电量消耗计数寄存器中,将第二寄存器中的数据清除,返回步骤203。
实施例五
本发明实施例五提供一种设备剩余电量计量方法,应用于蓝牙卡,如图3所示,包括:
步骤 M1:检测标志位状态,当第一标志位置位时,执行步骤M2,当第二标志位置位时,执行步骤M4;
步骤M2:开启定时器开始计数,计算口令,当口令计算完成时关闭定时器,停止计数得到口令计算时间,重置定时器,将口令计算时间累加至第四寄存器中,开启定时器开始计数,与上位机进行蓝牙配对,配对成功时关闭定时器停止计数得到蓝牙配对时间,重置定时器,将蓝牙配对时间累加至第八寄存器中,开启定时器开始计数,将口令通过蓝牙发送给上位机,关闭定时器停止计数得到蓝牙通信时间并累加至第七寄存器中,重置定时器,执行步骤M3;
步骤M3:开启定时器开始计数,显示口令和剩余电量,当显示结束时关闭定时器停止计数,得到显示时间,重置定时器,将显示时间累加至第五寄存器中,将第一标志位复位,返回步骤M1;
步骤M4:检测电池电压,根据检测到的电池电压和预先存储的第一数据表获取预置的唤醒电流值、口令计算电流值、按键电流值、显示电流值、蓝牙通信电流值、蓝牙配对电流值、休眠电流值,将唤醒电流值与第一寄存器中的数据的乘积、口令计算电流值与第四寄存器中的数据的乘积、按键电流值与第三寄存器中的数据的乘积、显示电流值与第五寄存器中的数据的乘积、蓝牙通信电流值与第七寄存器中的数据的乘积、蓝牙配对电流值与第八寄存器中的数据的乘积、休眠电流值与第一预设值减第一寄存器、第四寄存器、第三寄存器、第五寄存器、第七寄存器、第八寄存器中的数据的结果的乘积相加得到总消耗电量;
可选的,在本实施例中,总消耗电量=唤醒电流值×第一寄存器中的数据+口令计算电流值×第四寄存器中的数据+按键电流值×第三寄存器中的数据+显示电流×第五寄存器中的数据+蓝牙通信电流值×第七寄存器中的数据+蓝牙配对电流值×第八寄存器中的数据+休眠电流×(第一预设值-第一寄存器中的数据-第四寄存器中的数据-第三寄存器中的数据-第五寄存器中的数据-第七寄存器中的数据-第八寄存器中的数据);
预存的第一数据表如下:
模块\电池电压 V>=2.8V 2.8V>V>=2.6V V<2.6V
按键 第一按键电流 第二按键电流 第三按键电流
显示 第一显示电流 第二显示电流 第三显示电流
休眠 第一休眠电流 第二休眠电流 第三休眠电流
唤醒 第一唤醒电流 第二唤醒电流 第三唤醒电流
口令计算 第一口令计算电流 第二口令计算电流 第三口令计算电流
蓝牙通信 第一蓝牙通信电流 第二蓝牙通信电流 第三蓝牙通信电流
蓝牙配对 第一蓝牙配对电流 第二蓝牙配对电流 第三蓝牙配对电流
步骤M5:根据总消耗电量与第二预设值更新剩余电量,将第二标志位复位,返回步骤M1;
在执行步骤M1至步骤M5过程中,还包括:当检测到实时时钟中断时执行步骤B1至步骤B2,实时时钟中断每隔第一预设时间触发一次;
步骤B1:开启定时器开始计数,将第二寄存器中的数据加第一预设时间的结果更新至第二寄存器中,判断第二寄存器中的数据是否等于第一预设值,是则将第二标志位置位,执行步骤B2,否则执行步骤B2;
步骤B2:关闭定时器停止计数,得到唤醒用时,将唤醒用时累加至第一寄存器中;
在执行步骤M1至步骤M5的过程中,还包括:当检测到按键中断时,开启定时器开始计数,将第一标志位置位,当检测到第二电平时关闭定时器停止计数,得到按键时长,将按键时长累加保存至第三寄存器中,退出按键中断。
可选的,在本实施例中,得到蓝牙配对时间具体为:从定时器寄存器中获取第七数值,根据第七数值得到蓝牙配对时间;
得到蓝牙通信时间具体为:从定时器寄存器中获取第六数值,根据第六数值得到蓝牙通信时间。
可选的,在本实施例中,当口令计算完成时关闭定时器,停止计数得到口令计算时间,重置定时器具体为:当口令计算完成时停止计数,从定时器寄存器中获取第三数值,根据第三数值得到口令计算时间,清除第三数值。
可选的,在本实施例中,关闭定时器停止计数,得到唤醒用时具体包括:关闭定时器停止计数,从定时器寄存器中获取第一数值,根据第一数值得到唤醒用时,清除第一数值。
可选的,在本实施例中,当显示结束时停止计时,得到显示时间,重置定时器具体为:当显示结束时停止计数,从定时器寄存器中获取第四数值,根据第四数值得到显示时长,将显示时长累加保存至第五寄存器中,清除第四数值。
可选的,在本实施例中,步骤M3中还包括:当检测到第一电平时,显示结束,开启定时器开始计数,当检测到第二电平时,关闭定时器停止计数,从定时器寄存器中获取第二数值,根据第二数值得到按键时长,将按键时长累加至第三寄存器中,清除第二数值。
可选的,在本实施例中,当检测到第二电平时关闭定时器停止计数,得到按键时长具体为:当检测到第二电平时,关闭定时器停止计数,从定时器寄存器中获取第二数值,根据第二数值得到按键时长,清除第二数值。
可选的,在本实施例中,步骤M3替换为:开启定时器开始计数,显示口令,当显示结束时停止计数,得到显示时间,将显示时间累加至第五寄存器中,将第一标志位复位,返回步骤S1。
可选的,在本实施例中,步骤M3中还包括:
当检测到第一电平时,开启第二定时器开始计数,当检测到第二电平时关闭第二定时器停止计数,从第二定时器寄存器中获取第五数值,根据第五数值得到按键时长,将按键时长累加至第三寄存器中,清除第五数值,如按键时长大于或等于第五预设值则切换屏幕显示剩余电量;如按键时长小于第五预设值时则关闭定时器停止计数,从定时器寄存器中获取第四数值,根据第四数值得到显示时长,将显示时长累加至第五寄存器中,清除第四数值。
可选的,在本实施例中,步骤M5具体包括:
步骤M5-1:判断总消耗电量是否小于第二预设值,是则将总消耗电量存入电量消耗计数寄存器中,执行步骤M5-2,否则将剩余电量减第三预设值的结果更新为剩余电量,将总消耗电量与第二预设值的差值存入电量消耗计数寄存器中,执行步骤M5-2;
步骤M5-2:判断电量消耗计数寄存器中的数值是否小于第二预设值,是则将第二寄存器中的数值恢复为初始值,将第二标志位复位,返回步骤M1,否则将剩余电量减第三预设值的结果更新为剩余电量,将电量消耗寄存器中的数值与第二预设值的差值更新到电量消耗计数寄存器中,将第二寄存器中的数值恢复为初始值,将第二标志位复位,返回步骤M1。
实施例六
本发明实施例六提供一种设备剩余电量计量方法,应用于蓝牙卡,包括:
步骤301:蓝牙卡上电,初始化定时器的时钟源频率、分频系数、计数初始值;
具体的,蓝牙卡电池设定为满电状态;
步骤302:蓝牙卡进入休眠状态;
步骤303:蓝牙卡判断实时时钟中断是否发生,是则启动定时器开始计数,当实时时钟中断结束时,关闭定时器停止计数,从定时器寄存器中获取第一数值,根据第一数值、定时器的时钟源频率、分频系数、计数初始值得到实时时钟中断时间作为唤醒用时,将唤醒用时累加至第一寄存器中,清除第一数值,执行步骤304,否则执行步骤305;实时时钟中断每隔第一预设时间触发;
具体的,第一预设时间为1秒;
具体的,唤醒用时=(第一数值-计数初始值+1)×(分频系数+1)/时钟源频率;
步骤304:蓝牙卡将第二寄存器中的数值加第一预设时间的结果更新至第二寄存器中,当第二寄存器中的数值等于第一预设值时,执行步骤309;
具体的,第一预设值为86400秒,即每24小时为一个周期;
步骤305:蓝牙卡判断按键是否被用户触发,是则执行步骤306,否则返回步骤303;
步骤306:开启定时器开始计数,当检测到第二电平时关闭定时器停止计数,从定时器寄存器中获取第二数值,根据第二数值、定时器的时钟源频率、分频系数、计数初始值得到按键时长,将按键时长累加保存至第三寄存器中,清除第二数值;
具体的,按键时长=(第二数值-计数初始值+1)×(分频系数+1)/时钟源频率;
步骤307:蓝牙卡开启定时器开始计数,计算口令,当口令计算完成后关闭定时器停止计数,从定时器寄存器中获取第三数值,根据第三数值、定时器的时钟源频率、分频系数、计数初始值得到口令计算时间,将口令计算时间累加至第四寄存器中,清除第三数值,开启定时器开始计数,与上位机进行蓝牙配对,配对成功时关闭定时器停止计数,从定时器寄存器中获取第七数值,根据第七数值、定时器的时钟源频率、分频系数、计数初始值得到蓝牙配对时间,将蓝牙配对时间累加至第八寄存器中,清除第七数值,开启定时器开始计数,将口令通过蓝牙发送给上位机,关闭定时器停止计数,从定时器寄存器中获取第六数值,根据第六数值、定时器的时钟源频率、分频系数、计数初始值得到蓝牙通信时间,将蓝牙通信时间累加至第七寄存器中,清除第六数值;
具体的,口令计算时长=(第三数值-计数初始值+1)×(分频系数+1)/时钟源频率;
具体的,蓝牙配对时间=(第七数值-计数初始值+1)×(分频系数+1)/时钟源频率;
具体的,蓝牙通信时间=(第六数值-计数初始值+1)×(分频系数+1)/时钟源频率;
具体的,显示数据的同时显示剩余电量,例如,设置一个电池符号,设置五格,每格表示百分之二十电量,根据剩余电量的具体数值对应显示电池格;
或者设置一个电池符号,分为满电、半电、低电状态,分别对应显示2格、1格、空框,假设剩余电量在标称容量的1/3之上时,电池符号两格都显示,表示当前状态是满电状态,在1/3-2/3之间时,认为是半电,只显示一格,电量低于1/3时,表示低电,此时显示一个空框,并且闪烁提示用户,电池电量已不足;
或者设置一个电池符号,按比例显示剩余电量,并且显示剩余电量百分比,例如95%;
步骤308:蓝牙卡开启定时器开始计数,显示口令和剩余电量,判断是否接收到用户的按键触发,是则关闭定时器停止计数,从定时器寄存器中获取第四数值,根据第四数值、定时器的时钟源频率、分频系数、计数初始值得到显示时长,将显示时长累加保存至第五寄存器中,清除第四数值,返回步骤303,否则将预设显示时长累加至第五寄存器中,清除定时器寄存器中的数值,返回步骤303;
具体的,当接收到用户的按键触发时,显示时长=(第四数值-计数初始值+1)×(分频系数+1)/时钟源频率;
具体的,步骤308中清除第四数值之后还包括:蓝牙卡开启定时器开始计数,当检测到第二电平时,关闭定时器停止计数,从定时器寄存器中获取第二数值,根据第二数值、定时器的时钟源频率、分频系数、计数初始值得到按键时长,将按键时长累加至第三寄存器中,清除第二数值;
可选的,步骤308可替换为:蓝牙卡开启定时器开始计时,显示口令,当显示口令结束后停止计数,从定时器寄存器中获取第四数值,根据第四数值得到显示时长,将显示时长累加至第五寄存器中,清除第四数值;
可选的,在本实施例中,步骤308还包括:
当检测到第一电平时开启第二定时器开始计时,当检测到第二电平时关闭第二定时器停止计时,从第二定时器寄存器中获取第五数值,根据第五数值得到按键时长,将按键时长累加至第三寄存器中,如按键时长大于或等于第五预设值则切换屏幕显示剩余电量;如按键时长小于第五预设值则关闭定时器停止计数,从定时器寄存器中获取第四数值,根据第四数值得到显示时长,将显示时长累加保存至第五寄存器中,清除第四数值;
具体的,第五预设值为3s;
具体的,当第一电平为高电平时,第二电平为低电平,当第一电平为低电平时,第二电平为高电平;
具体的,按键时长=(第二数值-计数初始值+1)×(分频系数+1)/时钟源频率;
步骤309:蓝牙卡检测电池电压,根据检测到的电池电压查找预先存储的电池电压-电流数据表,确定各个模块对应的电流值,计算总消耗电量,执行步骤310;
具体的,蓝牙卡检测电池电压时为避免因干扰产生的误差,采用均值滤波法连续取多个采样值进行算数平均运算;
预先存储的电池电压-电流数据表如下所示:
模块\电池电压 V>=2.8V 2.8V>V>=2.6V V<2.6V
按键 第一按键电流 第二按键电流 第三按键电流
显示 第一显示电流 第二显示电流 第三显示电流
休眠 第一休眠电流 第二休眠电流 第三休眠电流
唤醒 第一唤醒电流 第二唤醒电流 第三唤醒电流
口令计算 第一口令计算电流 第二口令计算电流 第三口令计算电流
蓝牙通信 第一蓝牙通信电流 第二蓝牙通信电流 第三蓝牙通信电流
蓝牙配对 第一蓝牙配对电流 第二蓝牙配对电流 第三蓝牙配对电流
具体的,读取预先存储的的电池电压-电流数据表,如果电池电压大于或等于2.8V,则按键模块对应的电流值为第一按键电流,显示模块对应的电流值为第一显示电流,休眠模块对应的电流值为第一休眠电流,唤醒模块对应的电流值为第一唤醒电流,口令计算模块对应的电流值为第一口令计算电流,蓝牙通信模块对应的电流值为第一蓝牙通信电流,蓝牙配对模块对应的电流值为第一蓝牙配对电流;
如果电池电压大于或等于2.6V且小于2.8V,则按键模块对应的电流值为第二按键电流,显示模块对应的电流值为第二显示电流,休眠模块对应的电流值为第二休眠电流,唤醒模块对应的电流值为第二唤醒电流,口令计算模块对应的电流值为第二口令计算电流,蓝牙通信模块对应的电流值为第二蓝牙通信电流,蓝牙配对模块对应的电流值为第二蓝牙配对电流;
如果电池电压小于2.6V,则按键模块对应的电流值为第三按键电流,显示模块对应的电流值为第三显示电流,休眠模块对应的电流值为第三休眠电流,唤醒模块对应的电流值为第三唤醒电流,口令计算模块对应的电流值为第三口令计算电流,蓝牙通信模块对应的电流值为第三蓝牙通信电流,蓝牙配对模块对应的电流值为第三蓝牙配对电流;
例如,蓝牙卡检测电池电压为3V,则按键模块对应的电流值为的第一按键电流,显示模块对应的电流值为第一显示电流,休眠模块对应的电流值为第一休眠电流,唤醒模块对应的电流值为第一唤醒电流,口令计算模块对应的电流值为第一口令计算电流,蓝牙通信模块对应的电流值为第一蓝牙通信电流,蓝牙配对模块对应的电流值为第一蓝牙配对电流,分别计算七个功能模块的耗电量;
按键模块耗电量=第一按键电流×按键总时长;
具体的,按键总时长为第三寄存器中的数据;
显示模块耗电量=第一显示电流×显示总时长;
具体的,显示总时长为第五寄存器中的数据;
唤醒模块耗电量=第一唤醒电流 ×唤醒时长;
具体的,唤醒时长为第二寄存器中的数据;
口令计算模块耗电量=第一口令计算电流×口令计算总时长;
具体的,口令计算总时长为第四寄存器中的数据;
蓝牙通信模块耗电量=第一蓝牙通信电流×蓝牙通信时间;
具体的,蓝牙通信时间为第七寄存器中的数据;
蓝牙配对模块耗电量=第一蓝牙配对电流×蓝牙配对时间;
具体的,蓝牙配对时间为第八寄存器中的数据;
休眠模块耗电量=第一休眠电流×(第一预设值- 显示总时长-按键总时长-唤醒时长-口令计算总时长-蓝牙通信时间-蓝牙配对时间);
总消耗电量= 按键模块耗电量+显示模块耗电量+休眠模块耗电量+唤醒模块耗电量+口令计算模块耗电量+蓝牙通信模块耗电量+蓝牙配对模块耗电量;
步骤310:蓝牙卡判断总消耗电量是否小于第二预设值,是则将总消耗电量存入电量消耗计数寄存器中,执行步骤311,否则将剩余电量减第三预设值的结果更新为剩余电量,将总消耗电量与第二预设值的差值存入电量消耗计数寄存器中,执行步骤311;
具体的,第二预设值为2700000uAs,第三预设值为1%;
例如,电池容量75mAh,百分之一的电池容量为0.75mAh,由于各功能模块耗电电流对应的都是uA级,所以将百分之一的电池容量换算成uAs即0.75mAh=2700000uAs;
步骤311:蓝牙卡判断电量消耗计数寄存器中的数值是否小于第二预设值,是则将第二寄存器中的数据清除,返回步骤303,否则将剩余电量减第三预设值的结果更新为剩余电量,将电量消耗计数寄存器中的数值与第二预设值的差值更新到电量消耗计数寄存器中,将第二寄存器中的数据清除,返回步骤303。
实施例七
本发明实施例七提供一种设备剩余电量计量装置,应用于常显型动态令牌,如图4所示,包括:
检测模块11,用于检测标志位状态,当第一标志位置位时触发计算口令模块12,当第二标志位置位时,触发计算总消耗电量模块14;
计算口令模块12,用于开启定时器开始计数,计算口令,当口令计算完成时关闭定时器,停止计数得到口令计算时间,重置定时器,将口令计算时间累加至第四寄存器中,触发显示模块13;
显示模块13,用于显示口令和剩余电量,将第一标志位复位,触发检测模块11;
计算总消耗电量模块14,用于检测电池电压,根据检测到的电池电压和预先存储的第一数据表获取预置的唤醒电流值、口令计算电流值、显示电流值,将唤醒电流值与第一寄存器中的数据的乘积、口令计算电流值与第四寄存器中的数据的乘积、显示电流值与第一预设值减第四寄存器中的数据的结果的乘积相加得到总消耗电量;
更新剩余电量模块15,用于根据总消耗电量与第二预设值更新剩余电量,将第二标志位复位,触发检测模块11;
装置还包括:实时时钟模块,用于计量设备的时间,每隔第一预设时间触发唤醒模块;
唤醒模块,用于开启定时器开始计数,将第二寄存器和第六寄存器中的数据分别加第一预设时间的结果更新至第二寄存器和第六寄存器中,当第六寄存器中的数据等于第四预设值时,将第一标志位置位,清除第六寄存器中的数据,关闭定时器停止计数,得到唤醒用时,将唤醒用时累加至第一寄存器中;当第二寄存器中的数据等于第一预设值时将第二标志位置位,关闭定时器停止计数,得到唤醒用时,将唤醒用时累加至第一寄存器中。
可选的,在本实施例中,计算口令模块12,还用于当口令计算完成时停止计数,从定时器寄存器中获取第三数值,根据第三数值得到口令计算时间,清除第三数值。
可选的,在本实施例中,唤醒模块,还用于关闭定时器停止计数,从定时器寄存器中获取第一数值,根据第一数值得到唤醒用时,清除第一数值。
可选的,在本实施例中,更新剩余电量模块15包括:
第一判断子模块,用于判断总消耗电量是否小于第二预设值,是则将总消耗电量存入电量消耗计数寄存器中,触发第二判断子模块,否则将剩余电量减第三预设值的结果更新为剩余电量,将总消耗电量与第二预设值的差值存入电量消耗计数寄存器中,触发第二判断子模块;
第二判断子模块,用于判断电量消耗计数寄存器中的数值是否小于第二预设值,是则将第二寄存器中的数值恢复为初始值,将第二标志位复位,触发检测模块11,否则将剩余电量减第三预设值的结果更新为剩余电量,将电量消耗寄存器中的数值与第二预设值的差值更新到电量消耗计数寄存器中,将第二寄存器中的数值恢复为初始值,将第二标志位复位,触发检测模块11。
实施例八
本发明实施例八提供一种设备剩余电量计量装置,应用于按键型动态令牌,如图5所示,包括:
检测模块21,用于检测标志位状态,当第一标志位置位时触发计算口令模块22,当第二标志位置位时,触发计算总消耗电量模块24;
计算口令模块22,用于开启定时器开始计数,计算口令,当口令计算完成时关闭定时器,停止计数得到口令计算时间,重置定时器,将口令计算时间累加至第四寄存器中,触发显示模块23;
显示模块23,用于开启定时器开始计数,显示口令和剩余电量,当显示结束时关闭定时器停止计数,得到显示时间,重置定时器,将显示时间累加至第五寄存器中,将第一标志位复位,触发检测模块21;
计算总消耗电量模块24,用于检测电池电压,根据检测到的电池电压和预先存储的第一数据表获取预置的唤醒模块电流值、口令计算电流值、按键电流值、显示电流值和休眠电流值,将唤醒电流值与第一寄存器中的数据的乘积、口令计算电流值与第四寄存器中的数据的乘积、按键电流值与第三寄存器中的数据的乘积、显示电流值与第五寄存器中的数据的乘积、休眠电流值与第一预设值减第一寄存器、第四寄存器、第三寄存器、第五寄存器中的数据的结果的乘积相加得到总消耗电量;
更新剩余电量模块25,用于根据总消耗电量与第二预设值更新剩余电量,将第二标志位复位,触发检测模块21;
装置还包括:
实时时钟模块,用于计量设备的时间,每隔第一预设时间触发唤醒模块;
唤醒模块,具体用于开启定时器开始计数,将第二寄存器中的数据加第一预设时间的结果更新至第二寄存器中,判断第二寄存器中的数据是否等于第一预设值,是则将第二标志位置位,关闭定时器停止计数,得到唤醒用时,将唤醒用时累加至第一寄存器中;否则关闭定时器停止计数,得到唤醒用时,将唤醒用时累加至第一寄存器中;
按键中断模块,用于开启定时器开始计数,将第一标志位置位,当检测到第二电平时关闭定时器停止计数,得到按键时长,将按键时长累加保存至第三寄存器中,退出按键中断。
可选的,在本实施例中,计算口令模块22,还用于当口令计算完成时停止计数,从定时器寄存器中获取第三数值,根据第三数值得到口令计算时间,清除第三数值。
可选的,在本实施例中,唤醒模块,还用于关闭定时器停止计数,从定时器寄存器中获取第一数值,根据第一数值得到唤醒用时,清除第一数值。
可选的,在本实施例中,显示模块23,还用于当显示结束时停止计数,从定时器寄存器中获取第四数值,根据第四数值得到显示时长,将显示时长累加保存至第五寄存器中,清除第四数值。
可选的,在本实施例中,显示模块23,还用于当检测到第一电平时,显示结束,开启定时器开始计数,当检测到第二电平时,关闭定时器停止计数,从定时器寄存器中获取第二数值,根据第二数值得到按键时长,将按键时长累加至第三寄存器中,清除第二数值。
可选的,在本实施例中,按键中断模块,还用于当检测到第二电平时,关闭定时器停止计数,从定时器寄存器中获取第二数值,根据第二数值得到按键时长,清除第二数值。
可选的,在本实施例中,显示模块23替换为第二显示模块,用于开启定时器开始计数,显示口令,当显示结束时停止计数,得到显示时间,将显示时间累加至第五寄存器中,将第一标志位复位,触发检测模块。
可选的,在本实施例中,第二显示模块,还用于当检测到第一电平时,开启第二定时器开始计数,当检测到第二电平时关闭第二定时器停止计数,从第二定时器寄存器中获取第五数值,根据第五数值得到按键时长,将按键时长累加保存至第三寄存器中,清除第五数值,如按键时长大于或等于第五预设值则切换屏幕显示剩余电量;如按键时长小于第五预设值时则关闭定时器停止计数,从定时器寄存器中获取第四数值,根据第四数值得到显示时长,将显示时长累加保存至第五寄存器中,清除第四数值。
可选的,在本实施中,更新剩余电量模块25包括:
第一判断子模块,用于判断总消耗电量是否小于第二预设值,是则将总消耗电量存入电量消耗计数寄存器中,触发第二判断子模块,否则将剩余电量减第三预设值的结果更新为剩余电量,将总消耗电量与第二预设值的差值存入电量消耗计数寄存器中,触发第二判断子模块;
第二判断子模块,用于判断电量消耗计数寄存器中的数值是否小于第二预设值,是则将第二寄存器中的数值恢复为初始值,将第二标志位复位,触发检测模块21,否则将剩余电量减第三预设值的结果更新为剩余电量,将电量消耗寄存器中的数值与第二预设值的差值更新到电量消耗计数寄存器中,将第二寄存器中的数值恢复为初始值,将第二标志位复位,触发检测模块21。
实施例九
本发明实施例九提供一种设备剩余电量计量装置,应用于蓝牙卡,如图6所示,包括:
检测模块31,用于检测标志位状态,当第一标志位置位时触发计算口令模块32,当第二标志位置位时,触发计算总消耗电量模块34;
计算口令模块32,用于开启定时器开始计数,计算口令,当口令计算完成时关闭定时器,停止计数得到口令计算时间,重置定时器,将口令计算时间累加至第四寄存器中,触发蓝牙模块36和显示模块33;
蓝牙模块36,用于开启定时器开始计数,与上位机进行蓝牙配对,配对成功时关闭定时器停止计数得到蓝牙配对时间,重置定时器,将蓝牙配对时间累加至第八寄存器中,开启定时器开始计数,将口令通过蓝牙发送给上位机,关闭定时器停止计数得到蓝牙通信时间并累加至第七寄存器中,重置定时器;
显示模块33,用于开启定时器开始计数,显示口令和剩余电量,当显示结束时关闭定时器停止计数,得到显示时间,重置定时器,将显示时间累加至第五寄存器中,将第一标志位复位,触发检测模块31;
计算总消耗电量模块34,用于检测电池电压,根据检测到的电池电压和预先存储的第一数据表获取预置的唤醒模块电流值、口令计算电流值、按键电流值、显示电流值、蓝牙通信电流值、蓝牙配对电流值、休眠电流值,将唤醒电流值与第一寄存器中的数据的乘积、口令计算电流值与第四寄存器中的数据的乘积、按键电流值与第三寄存器中的数据的乘积、显示电流值与第五寄存器中的数据的乘积、蓝牙通信电流值与第七寄存器中的数据的乘积、蓝牙配对电流值与第八寄存器中的数据的乘积、休眠电流值与第一预设值减第一寄存器、第四寄存器、第三寄存器、第五寄存器、第七寄存器、第八寄存器中的数据的结果的乘积相加计算得到总消耗电量;
更新剩余电量模块35,用于根据总消耗电量与第二预设值更新剩余电量,将第二标志位复位,触发检测模块31;
装置还包括:
实时时钟模块,用于计量设备的时间,每隔第一预设时间触发唤醒模块;
唤醒模块,用于开启定时器开始计数,将第二寄存器中的数据加第一预设时间的结果更新至第二寄存器中,判断第二寄存器中的数据是否等于第一预设值,是则将第二标志位置位,关闭定时器停止计数,得到唤醒用时,将唤醒用时累加至第一寄存器中;否则关闭定时器停止计数,得到唤醒用时,将唤醒用时累加至第一寄存器中;
按键中断模块,用于开启定时器开始计数,将第一标志位置位,当检测到第二电平时关闭定时器停止计数,得到按键时长,将按键时长累加保存至第三寄存器中,退出按键中断。
可选的,在本实施例中,蓝牙模块,还用于从定时器寄存器中获取第七数值,根据第七数值得到蓝牙配对时间;具体还用于从定时器寄存器中获取第六数值,根据第六数值得到蓝牙通信时间。
可选的,在本实施例中,计算口令模块,还用于当口令计算完成时停止计数,从定时器寄存器中获取第三数值,根据第三数值得到口令计算时间,清除第三数值。
可选的,在本实施例中,唤醒模块,还用于关闭定时器停止计数,从定时器寄存器中获取第一数值,根据第一数值得到唤醒用时,清除第一数值。
可选的,在本实施例中,显示模块,还用于当显示结束时停止计数,从定时器寄存器中获取第四数值,根据第四数值得到显示时长,将显示时长累加保存至第五寄存器中,清除第四数值。
可选的,在本实施例中,显示模块,还用于当检测到第一电平时,显示结束,开启定时器开始计数,当检测到第二电平时,关闭定时器停止计数,从定时器寄存器中获取第二数值,根据第二数值得到按键时长,将按键时长累加至第三寄存器中,清除第二数值。
可选的,在本实施例中,按键中断模块,还用于当检测到第二电平时,关闭定时器停止计数,从定时器寄存器中获取第二数值,根据第二数值得到按键时长,清除第二数值。
可选的,在本实施例中,显示模块替换为第二显示模块,用于开启定时器开始计数,显示口令,当显示结束时停止计数,得到显示时间,将显示时间累加至第五寄存器中,将第一标志位复位,触发检测模块。
可选的,在本实施例中,第二显示模块,还用于当检测到第一电平时,开启第二定时器开始计数,当检测到第二电平时关闭第二定时器停止计数,从第二定时器寄存器中获取第五数值,根据第五数值得到按键时长,将按键时长累加保存至第三寄存器中,清除第五数值,如按键时长大于或等于第五预设值则切换屏幕显示剩余电量;如按键时长小于第五预设值时则关闭定时器停止计数,从定时器寄存器中获取第四数值,根据第四数值得到显示时长,将显示时长累加保存至第五寄存器中,清除第四数值。
可选的,在本实施例中,更新剩余电量模块包括:
第一判断子模块,用于判断总消耗电量是否小于第二预设值,是则将总消耗电量存入电量消耗计数寄存器中,触发第二判断子模块,否则将剩余电量减第三预设值的结果更新为剩余电量,将总消耗电量与第二预设值的差值存入电量消耗计数寄存器中,触发第二判断子模块;
第二判断子模块,用于判断电量消耗计数寄存器中的数值是否小于第二预设值,是则将第二寄存器中的数值恢复为初始值,将第二标志位复位,触发检测模块31,否则将剩余电量减第三预设值的结果更新为剩余电量,将电量消耗寄存器中的数值与第二预设值的差值更新到电量消耗计数寄存器中,将第二寄存器中的数值恢复为初始值,将第二标志位复位,触发检测模块31。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明公开的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (26)

1.一种设备剩余电量计量方法,其特征在于,包括:
步骤S1:检测标志位状态,当第一标志位置位时,执行步骤S2,当第二标志位置位时,执行步骤S4;
步骤S2:开启定时器开始计数,计算口令,当口令计算完成时关闭所述定时器,停止计数得到口令计算时间,重置所述定时器,将所述口令计算时间累加至第四寄存器中,执行步骤S3;
步骤S3:显示所述口令和剩余电量,将所述第一标志位复位,返回步骤S1;
步骤S4:检测电池电压,根据检测到的电池电压和预先存储的第一数据表获取预置的唤醒电流值、口令计算电流值、显示电流值,将所述唤醒电流值与第一寄存器中的数据的乘积、所述口令计算电流值与所述第四寄存器中的数据的乘积、所述显示电流值与第一预设值减所述第四寄存器中的数据的结果的乘积相加得到总消耗电量;
步骤S5:根据所述总消耗电量与第二预设值更新剩余电量,将所述第二标志位复位,返回步骤S1;
在执行步骤S1至步骤S5过程中,当检测到实时时钟中断时执行步骤A1至步骤A4,实时时钟中断每隔第一预设时间触发一次;
步骤A1:开启定时器开始计数,将第二寄存器和第六寄存器中的数据分别加所述第一预设时间的结果更新至所述第二寄存器和所述第六寄存器中,当所述第六寄存器中的数据等于第四预设值时,执行步骤A2,当所述第二寄存器中的数据等于所述第一预设值时执行步骤A3;
步骤A2:将所述第一标志位置位,清除所述第六寄存器中的数据,执行步骤A4;
步骤A3:将所述第二标志位置位,执行步骤A4;
步骤A4:关闭定时器停止计数,得到唤醒用时,将所述唤醒用时累加至第一寄存器中。
2.一种设备剩余电量计量方法,其特征在于,包括:
步骤S1:检测标志位状态,当第一标志位置位时,执行步骤S2,当第二标志位置位时,执行步骤S4;
步骤S2:开启定时器开始计数,计算口令,当口令计算完成时关闭所述定时器,停止计数得到口令计算时间,重置所述定时器,将所述口令计算时间累加至第四寄存器中,执行步骤S3;
步骤S3:显示所述口令和剩余电量,将所述第一标志位复位,返回步骤S1;
步骤S4:检测电池电压,根据检测到的电池电压查询预先存储的第一数据表,获取预置的电流值,根据电流值和相应的用时计算总消耗电量;
步骤S5:根据所述总消耗电量与第二预设值更新剩余电量,将所述第二标志位复位,返回步骤S1。
3.如权利要求2所述的方法,其特征在于,
所述显示所述口令和剩余电量之前还包括:开启定时器开始计数;
所述显示所述口令和剩余电量之后还包括:当显示结束时关闭所述定时器停止计数,得到显示时间,重置所述定时器,将所述显示时间累加至第五寄存器中;
所述根据电流值和相应的用时计算总消耗电量具体为:将唤醒电流值与第一寄存器中的数据的乘积、口令计算电流值与第四寄存器中的数据的乘积、按键电流值与第三寄存器中的数据的乘积、显示电流值与第五寄存器中的数据的乘积、休眠电流值与第一预设值减第一寄存器、第四寄存器、第三寄存器、第五寄存器中的数据的结果的乘积相加得到总消耗电量;
在执行步骤S1至步骤S5过程中,还包括:当检测到实时时钟中断时执行步骤B1至步骤B2,实时时钟中断每隔第一预设时间触发一次;
步骤B1:开启定时器开始计数,将第二寄存器中的数据加所述第一预设时间的结果更新至所述第二寄存器中,判断所述第二寄存器中的数据是否等于所述第一预设值,是则将所述第二标志位置位,执行步骤B2,否则执行步骤B2;
步骤B2:关闭定时器停止计数,得到唤醒用时,将所述唤醒用时累加至第一寄存器中;
在执行步骤S1至步骤S5的过程中,还包括:当检测到按键中断时,开启定时器开始计数,将所述第一标志位置位,当检测到第二电平时关闭定时器停止计数,得到按键时长,将所述按键时长累加保存至第三寄存器中,退出按键中断。
4.如权利要求2所述的方法,其特征在于,
所述将所述口令计算时间累加至第四寄存器中之后还包括:开启定时器开始计数,与上位机进行蓝牙配对,配对成功时关闭所述定时器停止计数得到蓝牙配对时间,重置所述定时器,将所述蓝牙配对时间累加至第八寄存器中,开启定时器开始计数,将所述口令通过蓝牙发送给所述上位机,关闭所述定时器停止计数得到蓝牙通信时间并累加至第七寄存器中,重置所述定时器;
所述显示所述口令和剩余电量之前还包括:开启定时器开始计数;
所述显示所述口令和剩余电量之后还包括:当显示结束时关闭所述定时器停止计数,得到显示时间,重置所述定时器,将所述显示时间累加至第五寄存器中;
所述根据电流值和相应的用时计算总消耗电量具体为:将唤醒电流值与第一寄存器中的数据的乘积、口令计算电流值与第四寄存器中的数据的乘积、按键电流值与第三寄存器中的数据的乘积、显示电流值与第五寄存器中的数据的乘积、蓝牙通信电流值与第七寄存器中的数据的乘积、蓝牙配对电流值与第八寄存器中的数据的乘积、休眠电流值与第一预设值减第一寄存器、第四寄存器、第三寄存器、第五寄存器、第七寄存器、第八寄存器中的数据的结果的乘积相加得到总消耗电量;
在执行步骤S1至步骤S5过程中,还包括:当检测到实时时钟中断时执行步骤B1至步骤B2,实时时钟中断每隔第一预设时间触发一次;
步骤B1:开启定时器开始计数,将第二寄存器中的数据加所述第一预设时间的结果更新至所述第二寄存器中,判断所述第二寄存器中的数据是否等于所述第一预设值,是则将所述第二标志位置位,执行步骤B2,否则执行步骤B2;
步骤B2:关闭定时器停止计数,得到唤醒用时,将所述唤醒用时累加至第一寄存器中;
在执行步骤S1至步骤S5的过程中,还包括:当检测到按键中断时,开启定时器开始计数,将所述第一标志位置位,当检测到第二电平时关闭定时器停止计数,得到按键时长,将所述按键时长累加保存至第三寄存器中,退出按键中断。
5.如权利要求4所述的方法,其特征在于,所述得到蓝牙配对时间具体为:从定时器寄存器中获取第七数值,根据所述第七数值得到蓝牙配对时间;
所述得到蓝牙通信时间具体为:从定时器寄存器中获取第六数值,根据所述第六数值得到蓝牙通信时间。
6.如权利要求1或2所述的方法,其特征在于,所述当口令计算完成时关闭所述定时器,停止计数得到口令计算时间,重置所述定时器具体为:当口令计算完成时停止计数,从定时器寄存器中获取第三数值,根据所述第三数值得到口令计算时间,清除所述第三数值。
7.如权利要求1或3或4所述的方法,其特征在于,所述关闭定时器停止计数,得到唤醒用时具体包括:关闭定时器停止计数,从定时器寄存器中获取第一数值,根据所述第一数值得到唤醒用时,清除所述第一数值。
8.如权利要求3或4所述的方法,其特征在于,所述当显示结束时停止计时,得到显示时间,重置所述定时器具体为:当显示结束时停止计数,从定时器寄存器中获取第四数值,根据所述第四数值得到显示时长,清除所述第四数值。
9.如权利要求8所述的方法,其特征在于,所述步骤S3中还包括:当检测到第一电平时,显示结束,开启定时器开始计数,当检测到第二电平时,关闭定时器停止计数,从定时器寄存器中获取第二数值,根据所述第二数值得到按键时长,将所述按键时长累加至第三寄存器中,清除所述第二数值。
10.如权利要求3或4所述的方法,其特征在于,所述当检测到第二电平时关闭定时器停止计数,得到按键时长具体为:当检测到第二电平时,关闭定时器停止计数,从定时器寄存器中获取第二数值,根据所述第二数值得到按键时长,清除所述第二数值。
11.如权利要求3或4所述的方法,其特征在于,
所述步骤S3替换为:开启定时器开始计数,显示口令,当显示结束时停止计数,得到显示时间,将所述显示时间累加至第五寄存器中,将所述第一标志位复位,返回步骤S1。
12.如权利要求11所述的方法,其特征在于,所述步骤S3中还包括:
当检测到第一电平时,开启第二定时器开始计数,当检测到第二电平时关闭第二定时器停止计数,从第二定时器寄存器中获取第五数值,根据所述第五数值得到按键时长,将所述按键时长累加至第三寄存器中,清除所述第五数值,如所述按键时长大于或等于第五预设值则切换屏幕显示剩余电量;如所述按键时长小于第五预设值时则关闭定时器停止计数,从定时器寄存器中获取第四数值,根据所述第四数值得到显示时长,将所述显示时长累加至第五寄存器中,清除所述第四数值。
13.如权利要求1或2所述的方法,其特征在于,所述步骤S5具体包括:
步骤S5-1:判断所述总消耗电量是否小于第二预设值,是则将所述总消耗电量存入电量消耗计数寄存器中,执行步骤S5-2,否则将剩余电量减第三预设值的结果更新为所述剩余电量,将总消耗电量与第二预设值的差值存入电量消耗计数寄存器中,执行步骤S5-2;
步骤S5-2:判断所述电量消耗计数寄存器中的数值是否小于所述第二预设值,是则将所述第二寄存器中的数值恢复为初始值,将第二标志位复位,返回步骤S1,否则将所述剩余电量减第三预设值的结果更新为所述剩余电量,将电量消耗寄存器中的数值与第二预设值的差值更新到所述电量消耗计数寄存器中,将所述第二寄存器中的数值恢复为初始值,将第二标志位复位,返回步骤S1。
14.一种设备剩余电量计量装置,其特征在于,包括:
检测模块,用于检测标志位状态,当第一标志位置位时触发计算口令模块,当第二标志位置位时,触发计算总消耗电量模块;
所述计算口令模块,用于开启定时器开始计数,计算口令,当口令计算完成时关闭所述定时器,停止计数得到口令计算时间,重置所述定时器,将所述口令计算时间累加至第四寄存器中,触发显示模块;
所述显示模块,用于显示所述口令和剩余电量,将所述第一标志位复位,触发所述检测模块;
所述计算总消耗电量模块,用于检测电池电压,根据检测到的电池电压和预先存储的第一数据表获取预置的唤醒电流值、口令计算电流值、显示电流值,将所述唤醒电流值与第一寄存器中的数据的乘积、所述口令计算电流值与所述第四寄存器中的数据的乘积、所述显示电流值与第一预设值减所述第四寄存器中的数据的结果的乘积相加得到总消耗电量;
更新剩余电量模块,用于根据所述总消耗电量与第二预设值更新剩余电量,将所述第二标志位复位,触发所述检测模块;
所述装置还包括:实时时钟模块,用于计量所述设备的时间,每隔第一预设时间触发唤醒模块;
所述唤醒模块,用于开启定时器开始计数,将第二寄存器和第六寄存器中的数据分别加所述第一预设时间的结果更新至所述第二寄存器和所述第六寄存器中,当所述第六寄存器中的数据等于第四预设值时,将所述第一标志位置位,清除所述第六寄存器中的数据,关闭定时器停止计数,得到唤醒用时,将所述唤醒用时累加至第一寄存器中;当所述第二寄存器中的数据等于所述第一预设值时将所述第二标志位置位,关闭定时器停止计数,得到唤醒用时,将所述唤醒用时累加至第一寄存器中。
15.一种设备剩余电量计量装置,其特征在于,包括:
检测模块,用于检测标志位状态,当第一标志位置位时触发计算口令模块,当第二标志位置位时,触发计算总消耗电量模块;
所述计算口令模块,用于开启定时器开始计数,计算口令,当口令计算完成时关闭所述定时器,停止计数得到口令计算时间,重置所述定时器,将所述口令计算时间累加至第四寄存器中,触发显示模块;
所述显示模块,用于显示所述口令和剩余电量,将所述第一标志位复位,触发所述检测模块;
所述计算总消耗电量模块,用于检测电池电压,根据检测到的电池电压查询预先存储的第一数据表,获取预置的电流值,根据电流值和相应的用时计算总消耗电量;
更新剩余电量模块,用于根据所述总消耗电量与第二预设值更新剩余电量,将所述第二标志位复位,触发所述检测模块。
16.如权利要求15所述的装置,其特征在于,
所述显示模块,还用于开启定时器开始计数;还用于当显示结束时关闭所述定时器停止计数,得到显示时间,重置所述定时器,将所述显示时间累加至第五寄存器中;
所述计算总消耗电量模块,还用于将唤醒电流值与第一寄存器中的数据的乘积、口令计算电流值与第四寄存器中的数据的乘积、按键电流值与第三寄存器中的数据的乘积、显示电流值与第五寄存器中的数据的乘积、休眠电流值与第一预设值减第一寄存器、第四寄存器、第三寄存器、第五寄存器中的数据的结果的乘积相加得到总消耗电量;
所述装置还包括:实时时钟模块,用于计量所述设备的时间,每隔第一预设时间触发唤醒模块;
所述唤醒模块,用于开启定时器开始计数,将第二寄存器中的数据加所述第一预设时间的结果更新至所述第二寄存器中,判断所述第二寄存器中的数据是否等于所述第一预设值,是则将所述第二标志位置位,关闭定时器停止计数,得到唤醒用时,将所述唤醒用时累加至第一寄存器中;否则关闭定时器停止计数,得到唤醒用时,将所述唤醒用时累加至第一寄存器中;
按键中断模块,用于开启定时器开始计数,将所述第一标志位置位,当检测到第二电平时关闭定时器停止计数,得到按键时长,将所述按键时长累加保存至第三寄存器中,退出按键中断。
17.如权利要求15所述的装置,其特征在于,
所述计算口令模块,还用于触发蓝牙模块;
所述蓝牙模块,用于开启定时器开始计数,与上位机进行蓝牙配对,配对成功时关闭所述定时器停止计数得到蓝牙配对时间,重置所述定时器,将蓝牙配对时间累加至第八寄存器中,开启定时器开始计数,将所述口令通过蓝牙发送给所述上位机,关闭所述定时器停止计数得到蓝牙通信时间并累加至第七寄存器中,重置所述定时器;
所述显示模块,还用于开启定时器开始计数;还用于当显示结束时关闭所述定时器停止计数,得到显示时间,重置所述定时器,将所述显示时间累加至第五寄存器中;
所述计算总消耗电量模块,还用于将唤醒电流值与第一寄存器中的数据的乘积、口令计算电流值与第四寄存器中的数据的乘积、按键电流值与第三寄存器中的数据的乘积、显示电流值与第五寄存器中的数据的乘积、蓝牙通信电流值与第七寄存器中的数据的乘积、蓝牙配对电流值与第八寄存器中的数据的乘积、休眠电流值与第一预设值减第一寄存器、第四寄存器、第三寄存器、第五寄存器、第七寄存器、第八寄存器中的数据的结果的乘积相加计算得到总消耗电量;
所述装置还包括:实时时钟模块,用于计量所述设备的时间,每隔第一预设时间触发唤醒模块;
所述唤醒模块,用于开启定时器开始计数,将第二寄存器中的数据加所述第一预设时间的结果更新至所述第二寄存器中,判断所述第二寄存器中的数据是否等于所述第一预设值,是则将所述第二标志位置位,关闭定时器停止计数,得到唤醒用时,将所述唤醒用时累加至第一寄存器中;否则关闭定时器停止计数,得到唤醒用时,将所述唤醒用时累加至第一寄存器中;
按键中断模块,用于开启定时器开始计数,将所述第一标志位置位,当检测到第二电平时关闭定时器停止计数,得到按键时长,将所述按键时长累加保存至第三寄存器中,退出按键中断。
18.如权利要求17所述的装置,其特征在于,所述蓝牙模块,还用于从定时器寄存器中获取第七数值,根据所述第七数值得到蓝牙配对时间;还用于从定时器寄存器中获取第六数值,根据所述第六数值得到蓝牙通信时间。
19.如权利要求14或15所述的装置,其特征在于,所述计算口令模块,还用于当口令计算完成时停止计数,从定时器寄存器中获取第三数值,根据所述第三数值得到口令计算时间,清除所述第三数值。
20.如权利要求14或16或17所述的装置,其特征在于,所述唤醒模块,还用于关闭定时器停止计数,从定时器寄存器中获取第一数值,根据所述第一数值得到唤醒用时,清除所述第一数值。
21.如权利要求16或17所述的装置,其特征在于,所述显示模块,还用于当显示结束时停止计数,从定时器寄存器中获取第四数值,根据所述第四数值得到显示时长,将所述显示时长累加保存至第五寄存器中,清除所述第四数值。
22.如权利要求21所述的装置,其特征在于,所述显示模块,还用于当检测到第一电平时,显示结束,开启定时器开始计数,当检测到第二电平时,关闭定时器停止计数,从定时器寄存器中获取第二数值,根据所述第二数值得到按键时长,将所述按键时长累加至第三寄存器中,清除所述第二数值。
23.如权利要求16或17所述的装置,其特征在于,所述按键中断模块,还用于当检测到第二电平时,关闭定时器停止计数,从定时器寄存器中获取第二数值,根据所述第二数值得到按键时长,清除所述第二数值。
24.如权利要求16或17所述的装置,其特征在于,所述显示模块替换为第二显示模块,用于开启定时器开始计数,显示口令,当显示结束时停止计数,得到显示时间,将所述显示时间累加至第五寄存器中,将所述第一标志位复位,触发检测模块。
25.如权利要求24 所述的装置,其特征在于,所述第二显示模块,还用于当检测到第一电平时,开启第二定时器开始计数,当检测到第二电平时关闭第二定时器停止计数,从第二定时器寄存器中获取第五数值,根据所述第五数值得到按键时长,将所述按键时长累加保存至第三寄存器中,清除所述第五数值,如所述按键时长大于或等于第五预设值则切换屏幕显示剩余电量;如所述按键时长小于第五预设值时则关闭定时器停止计数,从定时器寄存器中获取第四数值,根据所述第四数值得到显示时长,将所述显示时长累加保存至第五寄存器中,清除所述第四数值。
26.如权利要求14或15所述的装置,其特征在于,所述更新剩余电量模块包括:
第一判断子模块,用于判断所述总消耗电量是否小于第二预设值,是则将所述总消耗电量存入电量消耗计数寄存器中,触发第二判断子模块,否则将剩余电量减第三预设值的结果更新为所述剩余电量,将总消耗电量与第二预设值的差值存入所述电量消耗计数寄存器中,触发所述第二判断子模块;
所述第二判断子模块,用于判断所述电量消耗计数寄存器中的数值是否小于所述第二预设值,是则将所述第二寄存器中的数值恢复为初始值,将所述第二标志位复位,触发所述检测模块,否则将所述剩余电量减第三预设值的结果更新为所述剩余电量,将电量消耗寄存器中的数值与第二预设值的差值更新到所述电量消耗计数寄存器中,将所述第二寄存器中的数值恢复为初始值,将第二标志位复位,触发所述检测模块。
CN202010683762.1A 2020-07-16 2020-07-16 一种设备剩余电量计量方法及装置 Active CN111562502B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202010683762.1A CN111562502B (zh) 2020-07-16 2020-07-16 一种设备剩余电量计量方法及装置
PCT/CN2021/100762 WO2022012261A1 (zh) 2020-07-16 2021-06-18 一种设备剩余电量的计量方法及装置
US17/799,563 US20230128424A1 (en) 2020-07-16 2021-06-18 Method and apparatus for measuring remaining power level of device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010683762.1A CN111562502B (zh) 2020-07-16 2020-07-16 一种设备剩余电量计量方法及装置

Publications (2)

Publication Number Publication Date
CN111562502A CN111562502A (zh) 2020-08-21
CN111562502B true CN111562502B (zh) 2020-10-13

Family

ID=72075461

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010683762.1A Active CN111562502B (zh) 2020-07-16 2020-07-16 一种设备剩余电量计量方法及装置

Country Status (3)

Country Link
US (1) US20230128424A1 (zh)
CN (1) CN111562502B (zh)
WO (1) WO2022012261A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111562502B (zh) * 2020-07-16 2020-10-13 飞天诚信科技股份有限公司 一种设备剩余电量计量方法及装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8863068B2 (en) * 2012-06-18 2014-10-14 International Business Machines Corporation Current-aware floorplanning to overcome current delivery limitations in integrated circuits
CN103472744B (zh) * 2013-09-23 2016-01-06 天地融科技股份有限公司 动态令牌工作状态的控制方法、装置及动态令牌
CN105158695B (zh) * 2015-08-14 2018-03-16 国网浙江省电力公司丽水供电公司 一种车载蓄电池用电信息的测量和分析方法及分析设备
CN105516901B (zh) * 2015-12-21 2019-01-04 飞天诚信科技股份有限公司 一种低功耗蓝牙设备及其工作方法
CN106556801B (zh) * 2016-10-09 2019-07-19 歌尔科技有限公司 一种获取电池电量的方法、装置和电子设备
CN107544029A (zh) * 2017-08-24 2018-01-05 苏州麦喆思科电子有限公司 一种基于锂电源的智能监测控制方法
CN108061857A (zh) * 2017-10-18 2018-05-22 深圳市沃特玛电池有限公司 中型储能装置的电池包soc估算方法及系统
JP7087799B2 (ja) * 2018-08-02 2022-06-21 株式会社デンソー 劣化状態推定装置及びこれを含む電源装置
CN111413623B (zh) * 2020-04-09 2022-05-31 苏州维伟思医疗科技有限公司 一种剩余电量计算方法、装置及计算机可读存储介质
CN111562502B (zh) * 2020-07-16 2020-10-13 飞天诚信科技股份有限公司 一种设备剩余电量计量方法及装置

Also Published As

Publication number Publication date
CN111562502A (zh) 2020-08-21
WO2022012261A1 (zh) 2022-01-20
US20230128424A1 (en) 2023-04-27

Similar Documents

Publication Publication Date Title
CN109832677A (zh) 电子烟的控制方法及电子烟
US20150276885A1 (en) Method of Computing State of Charge and Battery State of Charge Monitor
CN103364735A (zh) 移动电源电池电量精确显示方法及装置
CN102187298A (zh) 自动化的电容性触摸扫描
CN102144170A (zh) 电池状态检测装置以及内置有该装置的电池包
CN111562502B (zh) 一种设备剩余电量计量方法及装置
CN101581767A (zh) 测量电池剩余电荷的方法及单芯片系统
CN109040467A (zh) 界面电量确定方法、装置、存储介质及移动终端
CN103460063B (zh) 电池电压测量
WO2020042710A1 (zh) 一种提高电量测量准确性的方法
US20130268217A1 (en) Method and apparatus for detecting abnormality of a capacitor
JP2023101509A (ja) 半導体装置、およびバッテリの残量の検出方法
CN114578280A (zh) 智能电表故障确定方法、装置、计算机设备和存储介质
US20140336962A1 (en) Method and Apparatus for Estimating Remaining Operating Time
US20160061910A1 (en) Electronic device and detection method of power capacity
CN104617628A (zh) 一种具有电池电量检测功能的移动电源
CN115241958A (zh) 一种超级电容循环充放电储能监管控制系统
CN112946562B (zh) 双芯智能电表的掉电保护方法、装置和双芯智能电表
JP5028824B2 (ja) 静電容量検出式スイッチ装置及びそれを備えた腕時計
CN110133365B (zh) 一种负载的开关事件的检测方法和装置
CN208334596U (zh) 电池监测装置和电池模组
CN112924875A (zh) 电池检测方法、装置和电子设备
KR100566981B1 (ko) 이동 단말기의 배터리 사용 가능 시간 표시 방법
CN114987368B (zh) 车辆静态电流的控制方法、装置、电子设备和存储介质
US11796381B1 (en) Weight verification and tare process for scale

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant