CN112421712A - 消除指南针充电干扰的方法、装置、存储介质和终端 - Google Patents
消除指南针充电干扰的方法、装置、存储介质和终端 Download PDFInfo
- Publication number
- CN112421712A CN112421712A CN202011202883.6A CN202011202883A CN112421712A CN 112421712 A CN112421712 A CN 112421712A CN 202011202883 A CN202011202883 A CN 202011202883A CN 112421712 A CN112421712 A CN 112421712A
- Authority
- CN
- China
- Prior art keywords
- charging current
- current value
- compass
- terminal
- charging
- 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.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02J—CIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
- H02J7/00—Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries
- H02J7/00032—Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries characterised by data exchange
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C17/00—Compasses; Devices for ascertaining true or magnetic north for navigation or surveying purposes
- G01C17/38—Testing, calibrating, or compensating of compasses
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02J—CIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
- H02J7/00—Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries
- H02J7/007—Regulation of charging or discharging current or voltage
- H02J7/0071—Regulation of charging or discharging current or voltage with a programmable schedule
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02J—CIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
- H02J7/00—Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries
- H02J7/007—Regulation of charging or discharging current or voltage
- H02J7/00712—Regulation of charging or discharging current or voltage the cycle being controlled or terminated in response to electric parameters
Landscapes
- Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Charge And Discharge Circuits For Batteries Or The Like (AREA)
Abstract
本发明公开了一种消除指南针充电干扰的方法、装置、存储介质和终端,方法包括以下步骤:当检测到终端处于充电状态时,获取终端的实际充电电流值;根据实际充电电流值改变对应GPIO接口的电平状态;当调用终端的指南针模块时,查询所有GPIO接口的电平状态,获取对应的实际充电电流值;根据实际充电电流值对指南针模块的指示方向进行校准。本发明通过CPU内部GPIO桥接的方式存储实际充电电流值对应的二进制编码,并采用软件算法对地磁传感器数据进行修正,不仅克服了充电电流对电子指南针的干扰,同时使得地磁传感器在PCB板上的摆放位置更加灵活,且不需要改变硬件结构,降低了研发成本和时间成本。
Description
【技术领域】
本发明涉及电子指南针领域,尤其涉及一种消除指南针充电干扰的方法、装置、存储介质和终端。
【背景技术】
随着智能终端的高速发展,大多数的智能终端都加装了电子指南针的功能。地磁传感器可以实现电子指南针、辅助导航等应用,其核心组件是一个各向异性磁致电阻,该电阻的阻值依据其所在环境的磁场而发生变化,将电流通入这个电阻,通过检测电流的变化就能反应出所在位置的磁场特性。同时,智能终端随着对充电和续航的要求越来越高,充电功率也一再增大。充电过程中电流路径上产生的磁场对指南针的方向影响无法避免,而且电流越大干扰越大,指南针的精度也越差。虽然在智能终端初始设计阶段就关注地磁的布局,让地磁传感器远离各类干扰,尤其是远离充电(大电流)路径,但是充电电流提高到一定程度,智能终端主板上已经没有一块足够安全的地方用来放置地磁传感器,这时候只能降低电流来减小影响。因此,现在急需一种在智能终端进行充电时能够消除充电电流产生影响的方法。
【发明内容】
本发明提供了一种消除指南针充电干扰的方法、装置、存储介质和终端,解决了现有技术的充电电流对地磁传感器存在较大干扰,影响指南针精度的技术问题。
本发明解决上述技术问题的技术方案如下:一种消除指南针充电干扰的方法,基于包含指南针模块的终端,所述终端的中央处理器连接至少一个GPIO接口,所述方法包括:
当检测到终端处于充电状态时,获取终端的实际充电电流值;
根据所述实际充电电流值改变对应GPIO接口的电平状态,以通过所述至少一个GPIO接口保存所述实际充电电流值;
当调用所述终端的指南针模块时,查询所有GPIO接口的电平状态,获取对应的实际充电电流值;
根据所述实际充电电流值对所述指南针模块的指示方向进行校准。
一个优选实施方式中,所述根据实际充电电流值改变至少一个GPIO接口的电平状态包括:
根据充电电流值与二进制编码的对应关系,获取所述实际充电电流值对应的目标二进制编码;
根据所述目标二进制编码改变对应GPIO接口的电平状态,以使所有GPIO接口按照接口顺序形成的电平状态组合与所述目标二进制编码一致。
一个优选实施方式中,获取用于调节充电电流大小的档位数量,并使GPIO接口的数量满足2N>n,其中N为GPIO接口的数量,n为档位数量。
一个优选实施方式中,所述查询所有GPIO接口的电平状态,获取对应的实际充电电流值,并根据所述实际充电电流值对指南针模块的指示方向进行校准包括:
查询所有GPIO接口的电平状态,并按照接口顺序生成对应的电平状态组合;
根据充电电流值与二进制编码的对应关系,将所述电平状态组合对应的二进制编码转换为实际充电电流值;
根据充电电流与地磁补偿数据的映射关系,获取所述实际充电电流值对应的目标地磁补偿值;
获取所述终端中地磁传感器输出的当前磁感应强度;
计算所述当前磁感应强度与所述目标地磁补偿值的差值,生成消除充电干扰后的目标磁感应强度;
根据所述目标磁感应强度计算所述指南针模块的指示角度。
一个优选实施方式中,建立所述充电电流与所述地磁补偿数据的映射关系包括:
获取不存在充电电流时所述地磁传感器输出的第一磁感应强度;
以预设充电电流值为所述终端进行充电,并获取所述地磁传感器输出的第二磁感应强度;
计算所述预设充电电流值对应的地磁补偿数据,所述地磁补偿数据为所述第二磁感应强度与所述第一磁感应强度的差值;
改变所述预设充电电流值,并计算不同强度的预设充电电流值对应的地磁补偿数据,建立所述充电电流与所述地磁补偿数据的映射关系。
一个优选实施方式中,建立所述充电电流与所述地磁补偿数据的映射关系还包括:
改变终端的位置,并获取同一预设充电电流值下地磁传感器在不同位置输出的第二磁感应强度;
计算不同位置的第二磁感应强度的均值;
计算所述预设充电电流值对应的地磁补偿数据,所述地磁补偿数据为所述均值与所述第一磁感应强度的差值。
本发明实施例的第二方面提供了一种消除指南针充电干扰的装置,包括充电模块、中央处理器和指南针模块,所述中央处理器包括充电控制模块、GPIO控制模块和补偿模块,所述补偿模块的输入端连接所述中央处理器的至少一个GPIO接口,所述补偿模块的输出端连接所述指南针模块,
所述充电控制模块用于当检测到终端处于充电状态时,获取所述充电模块的实际充电电流值;
所述GPIO控制模块用于根据所述实际充电电流值改变对应GPIO接口的电平状态,以通过所述至少一个GPIO接口保存所述实际充电电流值;
所述补偿模块用于当调用所述终端的指南针模块时,查询所有GPIO接口的电平状态,获取对应的实际充电电流值,并根据所述实际充电电流值对所述指南针模块的指示方向进行校准。
一个优选实施方式中,所述GPIO控制模块用于根据充电电流值与二进制编码的对应关系,获取所述实际充电电流值对应的目标二进制编码,并根据所述目标二进制编码改变对应GPIO接口的电平状态,以使所有GPIO接口按照接口顺序形成的电平状态组合与所述目标二进制编码一致。
一个优选实施方式中,获取用于调节充电电流大小的档位数量,并使GPIO接口的数量满足2N>n,其中N为GPIO接口的数量,n为档位数量。
一个优选实施方式中,所述补偿模块包括状态查询单元、第一获取单元、第二获取单元、计算单元和转换单元,
所述状态查询单元用于查询所有GPIO接口的电平状态,并按照接口顺序生成对应的电平状态组合;
所述第一获取单元用于根据充电电流值与二进制编码的对应关系,将所述电平状态组合对应的二进制编码转换为实际充电电流值;
所述第二获取单元用于根据充电电流与地磁补偿数据的映射关系,获取所述实际充电电流值对应的目标地磁补偿值;
所述计算单元用于获取终端中地磁传感器输出的当前磁感应强度,并计算所述当前磁感应强度与所述目标地磁补偿值的差值,生成消除充电干扰后的目标磁感应强度;
所述转换单元用于根据所述目标磁感应强度计算所述指南针模块的指示角度。
一个优选实施方式中,所述补偿模块还包括创建单元,所述创建单元包括:
采集单元,用于在不存在充电电流时,采集地磁传感器输出的第一磁感应强度以及在不同强度的预设充电电流下,采集地磁传感器输出的第二磁感应强度;
建立单元,用于计算不同强度的预设充电电流对应的地磁补偿数据,并建立充电电流与地磁补偿数据的映射关系,所述地磁补偿数据为所述第二磁感应强度与所述第一磁感应强度的差值。
一个优选实施方式中,所述采集单元还用于采集同一预设充电电流下,终端在不同位置对应的第二磁感应强度;
所述建立单元还用于计算不同强度的预设充电电流对应的地磁补偿数据,并建立充电电流与地磁补偿数据的映射关系,所述地磁补偿数据为不同位置的第二磁感应强度的均值与所述第一磁感应强度的差值。
本发明实施例的第三方面提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,实现以上所述的消除指南针充电干扰的方法。
本发明实施例的第四方面提供了一种终端,包括所述的计算机可读存储介质和处理器,所述处理器执行所述计算机可读存储介质上的计算机程序时实现以上所述消除指南针充电干扰的方法的步骤。
本发明提出了一种消除指南针充电干扰的方法、装置、存储介质和终端,通过CPU内部GPIO桥接的方式存储实际充电电流值对应的二进制编码,并采用软件算法对地磁传感器数据进行修正,不仅克服了充电电流对电子指南针的干扰,在提高充电电流值时不会降低电子指南针的指示精度,同时使得地磁传感器在PCB板上的摆放位置更加灵活,且不需要改变硬件结构,降低了研发成本和时间成本。
为使发明的上述目的、特征和优点能更明显易懂,下文特举本发明较佳实施例,并配合所附附图,作详细说明如下。
【附图说明】
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为一个实施例中消除指南针充电干扰的方法的应用场景图;
图2是一个实施例中消除指南针充电干扰的方法的流程示意图;
图3是一个实施例中消除指南针充电干扰的装置的结构示意图;
图4是一个实施例中电子设备的内部结构图。
【具体实施方式】
为了使本发明的目的、技术方案和有益技术效果更加清晰明白,以下结合附图和具体实施方式,对本发明进行进一步详细说明。应当理解的是,本说明书中描述的具体实施方式仅仅是为了解释本发明,并不是为了限定本发明。
本申请提供的消除指南针充电干扰的方法,可以应用于如图1所示的应用环境中。该消除指南针充电干扰的方法应用于终端102中,其中,终端102可以但不限于是智能手机、电脑、笔记本电脑、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)、便捷式媒体播放器(Portable Media Player,PMP)、导航终端、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字TV、台式计算机等固定终端。
在一个实施例中,如图2所示,提供了一种消除指南针充电干扰的方法,以该方法应用于图1中的智能手机为例进行说明。智能手机包含指南针模块,且智能手机的中央处理器连接至少一个GPIO接口。方法包括以下步骤:
S1,当检测到智能手机处于充电状态时,智能手机的充电控制模块检测终端的实际充电电流值。在采用充电模块,比如充电器为智能手机充电过程中,根据用户对充电速度和充电时间的选择或者根据充电软件的自动控制,可以采用多种不同的充电模式,比如在不同阶段采用强度不同的充电电流,或者在整个充电阶段采用同一较大(快充)或者同一较小(慢充)的充电电流。而通过智能手机的充电控制单元即获取不同时间的实际充电电流值,并将检测到的实际充电电流值传输给智能手机的中央处理器(central processingunit,简称CPU)。
S2,智能手机的CPU根据实际充电电流值改变对应GPIO接口的电平状态,以通过至少一个GPIO接口保存实际充电电流值。
GPIO接口(General-purpose input/output)是通用型输入输出接口的简称,功能类似于8051芯片的P0—P3,其接脚可以供使用者由程控自由使用,PIN脚依现实考量可作为通用输入(GPI)、通用输出(GPO)或者通用输入与输出(GPIO)。对于输入,可以通过读取寄存器来确定引脚电位的高低;对于输出,也可以通过写入寄存器来让对应引脚输出高电位或者低电位。
当然,也可以利用多个GPIO接口的组合对设备单元进行控制。具体到本实施例中,首先对充电模块比如充电器提供的多个充电电流设定对应的二进制编码,比如4A对应二进制编码为000,3A对应二进制编码为001,从而建立充电电流值与二进制编码的对应关系,然后查询该对应关系即可获取实际充电电流值对应的目标二进制编码,并根据目标二进制编码改变对应GPIO接口的电平状态,低电平表示二进制编码的“0”,高电平表示二进制编码的“1”,以使所有GPIO接口按照接口顺序形成的电平状态组合与目标二进制编码一致。比如检测到实际充电电流值为4A时,对应的二进制编码为000,则需要将与CPU连接的3个GPIO接口的电平状态依次调节为低电平状态。
具体实施例中,根据用于调节充电电流大小的档位数量,确定GPIO接口的数量,并使GPIO接口的数量满足2N>n,其中N为GPIO接口的数量,n为档位数量。这是因为如果智能手机的中央处理器连接可以读取到状态的N个GPIO接口,那么可以存储并输出2N种电流状态,即2N种电流调节档位。以3个GPIO接口为例,通过连接一个8选1的数据选择器,可以最多输出8种电流状态,即8个不同的实际充电电流值,从而设定3个GPIO接口对应的电平状态组合“000”表示4A,电平状态组合“001”表示3A,依次类推。
然后执行S3,当调用智能手机的指南针模块时,智能手机的CPU查询所有GPIO接口的电平状态,并按照接口顺序生成对应的电平状态组合,然后根据充电电流值与二进制编码的对应关系,即可将该电平状态组合对应的二进制编码转换为实际充电电流值。
然后执行S4,智能手机的CPU根据实际充电电流值对指南针模块的指示方向进行校准,包括:
S401,智能手机的CPU根据充电电流与地磁补偿数据的映射关系,获取实际充电电流值对应的目标地磁补偿值。其中智能手机或者其他外部装置建立充电电流与地磁补偿数据的映射关系的步骤包括:
S4011,智能手机或者其他外部装置获取不存在充电电流时地磁传感器输出的第一磁感应强度。
S4012,智能手机或者其他外部装置采用充电器以预设充电电流值为智能手机进行充电,并获取地磁传感器输出的第二磁感应强度。
S4013,智能手机或者其他外部装置计算预设充电电流值对应的地磁补偿数据,该地磁补偿数据为第二磁感应强度与第一磁感应强度的差值,即x、y、z三个方向上的磁变化量,这个差值即会造成充电时指南针相对正常指示方向的偏移。
S4014,智能手机或者其他外部装置改变预设充电电流值,并计算不同强度的预设充电电流值对应的地磁补偿数据,建立该映射关系。这里不同强度的预设充电电流值可以根据充电器提供的多种常规充电电流进行设定,也可以根据历史数据提供的较优充电模式对应的充电电流数据进行设定。
优选实施例中,为了减小不同地理位置的磁感应强度偏差,智能终端或者其他外部装置建立充电电流与地磁补偿数据的映射关系时还包括以下步骤:改变智能手机的位置后,智能手机或者其他外部装置获取同一预设充电电流值下地磁传感器在不同位置输出的第二磁感应强度,计算不同位置下第二磁感应强度的均值。然后计算预设充电电流值对应的地磁补偿数据,并建立映射关系,该地磁补偿数据为均值与第一磁感应强度的差值。
然后执行S402,智能手机的CPU获取地磁传感器输出的当前磁感应强度。
S403,智能手机的CPU计算当前磁感应强度与目标地磁补偿值的差值,从而生成消除充电干扰后的目标磁感应强度。
S404,智能手机的CPU根据目标磁感应强度计算指南针模块的指示角度。
上述实施例提出了一种消除指南针充电干扰的方法,通过CPU内部GPIO桥接的方式存储实际充电电流值对应的二进制编码,并采用软件算法对地磁传感器数据进行修正,不仅克服了充电电流对电子指南针的干扰,在提高充电电流值时不会降低电子指南针的指示精度,同时使得地磁传感器在PCB板上的摆放位置更加灵活,且不需要改变硬件结构,降低了研发成本和时间成本。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
图3是本发明另一实施例提供的一种消除指南针充电干扰的装置的结构示意图,如图3所示,包括充电模块100、中央处理器200和指南针模块300,中央处理器200包括充电控制模块201、GPIO控制模块202和补偿模块203,补偿模块203的输入端连接中央处理器200的至少一个GPIO接口204,补偿模块203的输出端连接指南针模块300,
充电控制模块201用于当检测到终端处于充电状态时,获取充电模块200的实际充电电流值;
GPIO控制模块202用于根据实际充电电流值改变对应GPIO接口204的电平状态,以通过至少一个GPIO接口204保存实际充电电流值;
补偿模块203用于当调用终端的指南针模块时,查询所有GPIO接口204的电平状态,获取对应的实际充电电流值,并根据实际充电电流值对指南针模块300的指示方向进行校准。
一个优选实施方式中,GPIO控制模块202用于根据充电电流值与二进制编码的对应关系,获取实际充电电流值对应的目标二进制编码,并根据目标二进制编码改变对应GPIO接口204的电平状态,以使所有GPIO接口204按照接口顺序形成的电平状态组合与目标二进制编码一致。
一个优选实施方式中,获取用于调节充电电流大小的档位数量,并使GPIO接口204的数量满足2N>n,其中N为GPIO接口的数量,n为档位数量。
一个优选实施方式中,补偿模块203包括状态查询单元、第一获取单元、第二获取单元、计算单元和转换单元,
状态查询单元用于查询所有GPIO接口的电平状态,并按照接口顺序生成对应的电平状态组合;
第一获取单元用于根据充电电流值与二进制编码的对应关系,将电平状态组合对应的二进制编码转换为实际充电电流值;
第二获取单元用于根据充电电流与地磁补偿数据的映射关系,获取实际充电电流值对应的目标地磁补偿值;
计算单元用于获取终端中地磁传感器输出的当前磁感应强度,并计算当前磁感应强度与目标地磁补偿值的差值,生成消除充电干扰后的目标磁感应强度;
转换单元用于根据目标磁感应强度计算指南针模块的指示角度。
一个优选实施方式中,补偿模块203还包括创建单元,创建单元包括:
采集单元,用于在不存在充电电流时,采集地磁传感器输出的第一磁感应强度以及在不同强度的预设充电电流下,采集地磁传感器输出的第二磁感应强度;
建立单元,用于计算不同强度的预设充电电流对应的地磁补偿数据,并建立充电电流与地磁补偿数据的映射关系,地磁补偿数据为第二磁感应强度与第一磁感应强度的差值。
一个优选实施方式中,采集单元还用于采集同一预设充电电流下,终端在不同位置对应的第二磁感应强度;
建立单元还用于计算不同强度的预设充电电流对应的地磁补偿数据,并建立充电电流与地磁补偿数据的映射关系,地磁补偿数据为不同位置的第二磁感应强度的均值与第一磁感应强度的差值。
以上实施例提出了一种消除指南针充电干扰的装置,通过CPU内部GPIO桥接的方式存储实际充电电流值对应的二进制编码,并采用软件算法对地磁传感器数据进行修正,不仅克服了充电电流对电子指南针的干扰,在提高充电电流值时不会降低电子指南针的指示精度,同时使得地磁传感器在PCB板上的摆放位置更加灵活,且不需要改变硬件结构,降低了研发成本和时间成本。
在一个实施例中,本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
S1,当检测到终端处于充电状态时,获取终端的实际充电电流值;
S2,根据实际充电电流值改变对应GPIO接口的电平状态,以通过至少一个GPIO接口保存实际充电电流值;
S3,当调用终端的指南针模块时,查询所有GPIO接口的电平状态,获取对应的实际充电电流值;
S4,根据实际充电电流值对指南针模块的指示方向进行校准。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据充电电流值与二进制编码的对应关系,获取实际充电电流值对应的目标二进制编码;根据目标二进制编码改变对应GPIO接口的电平状态,以使所有GPIO接口按照接口顺序形成的电平状态组合与目标二进制编码一致。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取用于调节充电电流大小的档位数量,并使GPIO接口的数量满足2N>n,其中N为GPIO接口的数量,n为档位数量。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:查询所有GPIO接口的电平状态,并按照接口顺序生成对应的电平状态组合;根据充电电流值与二进制编码的对应关系,将电平状态组合对应的二进制编码转换为实际充电电流值;
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
S401,根据充电电流与地磁补偿数据的映射关系,获取实际充电电流值对应的目标地磁补偿值;
S402,获取终端中地磁传感器输出的当前磁感应强度;
S403,计算当前磁感应强度与目标地磁补偿值的差值,生成消除充电干扰后的目标磁感应强度;
S404,根据目标磁感应强度计算指南针模块的指示角度。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取不存在充电电流时地磁传感器输出的第一磁感应强度;
以预设充电电流值为终端进行充电,并获取地磁传感器输出的第二磁感应强度;
计算预设充电电流值对应的地磁补偿数据,地磁补偿数据为第二磁感应强度与第一磁感应强度的差值;
改变预设充电电流值,并计算不同强度的预设充电电流值对应的地磁补偿数据,建立充电电流与地磁补偿数据的映射关系。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
改变终端的位置,并获取同一预设充电电流值下地磁传感器在不同位置输出的第二磁感应强度;
计算不同位置的第二磁感应强度的均值;
计算预设充电电流值对应的地磁补偿数据,地磁补偿数据为均值与第一磁感应强度的差值。
以上实施例提出了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时执行消除指南针充电干扰的方法,因此通过CPU内部GPIO桥接的方式存储实际充电电流值对应的二进制编码,并采用软件算法对地磁传感器数据进行修正,不仅克服了充电电流对电子指南针的干扰,在提高充电电流值时不会降低电子指南针的指示精度,同时使得地磁传感器在PCB板上的摆放位置更加灵活,且不需要改变硬件结构,降低了研发成本和时间成本。
图4是一个实施例中电子设备的内部结构图,该电子设备可以是智能手机、笔记本电脑,也可以是其他的移动终端或固定终端。如图4所示,包括存储器81和处理器80,该存储器81存储有计算机程序82,该处理器80执行计算机程序82时实现以下步骤:
S1,当检测到终端处于充电状态时,获取终端的实际充电电流值;
S2,根据实际充电电流值改变对应GPIO接口的电平状态,以通过至少一个GPIO接口保存实际充电电流值;
S3,当调用终端的指南针模块时,查询所有GPIO接口的电平状态,获取对应的实际充电电流值;
S4,根据实际充电电流值对指南针模块的指示方向进行校准。
在一个实施例中,处理器80执行计算机程序82时还实现以下步骤:根据充电电流值与二进制编码的对应关系,获取实际充电电流值对应的目标二进制编码;根据目标二进制编码改变每个GPIO接口的电平状态,以使所有GPIO接口按照接口顺序形成的电平状态组合与目标二进制编码一致。
在一个实施例中,处理器80执行计算机程序82时还实现以下步骤:获取用于调节充电电流大小的档位数量,并使GPIO接口的数量满足2N>n,其中N为GPIO接口的数量,n为档位数量。
在一个实施例中,处理器80执行计算机程序82时还实现以下步骤:
S401,根据充电电流与地磁补偿数据的映射关系,获取实际充电电流值对应的目标地磁补偿值;
S402,获取终端中地磁传感器输出的当前磁感应强度;
S403,计算当前磁感应强度与目标地磁补偿值的差值,生成消除充电干扰后的目标磁感应强度;
S404,根据目标磁感应强度计算指南针模块的指示角度。
在一个实施例中,处理器80执行计算机程序82时还实现以下步骤:
获取不存在充电电流时地磁传感器输出的第一磁感应强度;
以预设充电电流值为终端进行充电,并获取地磁传感器输出的第二磁感应强度;
计算预设充电电流值对应的地磁补偿数据,地磁补偿数据为第二磁感应强度与第一磁感应强度的差值;
改变预设充电电流值,并计算不同强度的预设充电电流值对应的地磁补偿数据,建立充电电流与地磁补偿数据的映射关系。
在一个实施例中,处理器80执行计算机程序82时还实现以下步骤:
改变终端的位置,并获取同一预设充电电流值下地磁传感器在不同位置输出的第二磁感应强度;
计算不同位置的第二磁感应强度的均值;
计算预设充电电流值对应的地磁补偿数据,地磁补偿数据为均值与第一磁感应强度的差值。
以上实施例通过CPU内部GPIO桥接的方式存储实际充电电流值对应的二进制编码,并采用软件算法对地磁传感器数据进行修正,不仅克服了充电电流对电子指南针的干扰,在提高充电电流值时不会降低电子指南针的指示精度,同时使得地磁传感器在PCB板上的摆放位置更加灵活,且不需要改变硬件结构,降低了研发成本和时间成本。
本领域技术人员可以理解,图4仅仅是本发明终端的一个示例,并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如终端还可以包括电源管理模块、运算处理模块、输入输出设备、网络接入设备、总线等。
所称处理器80可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器81可以是终端的内部存储单元,例如硬盘或内存。存储器81也可以是终端的外部存储设备,例如指南针校准终端上配备的插接式硬盘,智能存储卡(Smart MediaCard,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器81还可以既包括指南针校准终端的内部存储单元也包括外部存储设备。存储器81用于存储计算机程序以及指南针校准终端所需的其他程序和数据。存储器81还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将终端的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述装置中单元、模块的具体工作过程参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的终端/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的终端/终端设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,终端或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
本发明并不仅仅限于说明书和实施方式中所描述,因此对于熟悉领域的人员而言可容易地实现另外的优点和修改,故在不背离权利要求及等同范围所限定的一般概念的精神和范围的情况下,本发明并不限于特定的细节、代表性的设备和这里示出与描述的图示示例。
Claims (10)
1.一种消除指南针充电干扰的方法,基于包含指南针模块的终端,所述终端的中央处理器连接至少一个GPIO接口,所述方法包括:
当检测到终端处于充电状态时,获取终端的实际充电电流值;
根据所述实际充电电流值改变对应GPIO接口的电平状态,以通过所述至少一个GPIO接口保存所述实际充电电流值;
当调用所述终端的指南针模块时,查询所有GPIO接口的电平状态,获取对应的实际充电电流值;
根据所述实际充电电流值对所述指南针模块的指示方向进行校准。
2.根据权利要求1所述消除指南针充电干扰的方法,其特征在于,所述根据实际充电电流值改变对应GPIO接口的电平状态包括:
根据充电电流值与二进制编码的对应关系,获取所述实际充电电流值对应的目标二进制编码;
根据所述目标二进制编码改变对应GPIO接口的电平状态,以使所有GPIO接口按照接口顺序形成的电平状态组合与所述目标二进制编码一致。
3.根据权利要求2所述消除指南针充电干扰的方法,其特征在于,获取用于调节充电电流大小的档位数量,并使所述GPIO接口的数量满足2N>n,其中N为所述GPIO接口的数量,n为档位数量。
4.根据权利要求1-3任一所述消除指南针充电干扰的方法,其特征在于,所述查询所有GPIO接口的电平状态,获取对应的实际充电电流值包括:
查询所有GPIO接口的电平状态,并按照接口顺序生成对应的电平状态组合;
根据充电电流值与二进制编码的对应关系,将所述电平状态组合对应的二进制编码转换为实际充电电流值。
5.根据权利要求4所述消除指南针充电干扰的方法,其特征在于,所述根据实际充电电流值对指南针模块的指示方向进行校准包括:
根据充电电流与地磁补偿数据的映射关系,获取所述实际充电电流值对应的目标地磁补偿值;
获取所述终端中地磁传感器输出的当前磁感应强度;
计算所述当前磁感应强度与所述目标地磁补偿值的差值,生成消除充电干扰后的目标磁感应强度;
根据所述目标磁感应强度计算所述指南针模块的指示角度。
6.根据权利要求5所述消除指南针充电干扰的方法,其特征在于,建立所述充电电流与所述地磁补偿数据的映射关系包括:
获取不存在充电电流时所述地磁传感器输出的第一磁感应强度;
以预设充电电流值为所述终端进行充电,并获取所述地磁传感器输出的第二磁感应强度;
计算所述预设充电电流值对应的地磁补偿数据,所述地磁补偿数据为所述第二磁感应强度与所述第一磁感应强度的差值;
改变所述预设充电电流值,并计算不同强度的预设充电电流值对应的地磁补偿数据,建立所述充电电流与所述地磁补偿数据的映射关系。
7.根据权利要求6所述消除指南针充电干扰的方法,其特征在于,建立所述充电电流与所述地磁补偿数据的映射关系还包括:
改变终端的位置,并获取同一预设充电电流值下地磁传感器在不同位置输出的第二磁感应强度;
计算不同位置的第二磁感应强度的均值;
计算所述预设充电电流值对应的地磁补偿数据,所述地磁补偿数据为所述均值与所述第一磁感应强度的差值。
8.一种消除指南针充电干扰的装置,其特征在于,包括充电模块、中央处理器和指南针模块,所述中央处理器包括充电控制模块、GPIO控制模块和补偿模块,所述补偿模块的输入端连接所述中央处理器的至少一个GPIO接口,所述补偿模块的输出端连接所述指南针模块,
所述充电控制模块用于当检测到终端处于充电状态时,获取所述充电模块的实际充电电流值;
所述GPIO控制模块用于根据所述实际充电电流值改变对应GPIO接口的电平状态,以通过所述至少一个GPIO接口保存所述实际充电电流值;
所述补偿模块用于当调用所述终端的指南针模块时,查询所有GPIO接口的电平状态,获取对应的实际充电电流值,并根据所述实际充电电流值对所述指南针模块的指示方向进行校准。
9.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被处理器执行时,实现权利要求1-7任一项所述消除指南针充电干扰的方法。
10.一种终端,其特征在于,包括权利要求9所述的计算机可读存储介质和处理器,所述处理器执行所述计算机可读存储介质上的计算机程序时实现如权利要求1-7任一项所述消除指南针充电干扰的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011202883.6A CN112421712A (zh) | 2020-11-02 | 2020-11-02 | 消除指南针充电干扰的方法、装置、存储介质和终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011202883.6A CN112421712A (zh) | 2020-11-02 | 2020-11-02 | 消除指南针充电干扰的方法、装置、存储介质和终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112421712A true CN112421712A (zh) | 2021-02-26 |
Family
ID=74827795
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011202883.6A Withdrawn CN112421712A (zh) | 2020-11-02 | 2020-11-02 | 消除指南针充电干扰的方法、装置、存储介质和终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112421712A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023169422A1 (zh) * | 2022-03-08 | 2023-09-14 | 维沃移动通信有限公司 | 电子罗盘校准方法、装置、电子设备及存储介质 |
-
2020
- 2020-11-02 CN CN202011202883.6A patent/CN112421712A/zh not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023169422A1 (zh) * | 2022-03-08 | 2023-09-14 | 维沃移动通信有限公司 | 电子罗盘校准方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3349323A1 (en) | Terminal and method for charging the same | |
CN105681562B (zh) | 触控力度获取方法、触控压力校准方法及移动终端 | |
CN104914999A (zh) | 一种控制设备的方法及可穿戴设备 | |
CN112421712A (zh) | 消除指南针充电干扰的方法、装置、存储介质和终端 | |
CN105571614A (zh) | 磁传感器校准方法及装置 | |
CN102364354B (zh) | 磁性传感器装置和电子罗盘设备 | |
CN102457310B (zh) | 多天线运用系统及方法 | |
US6567007B1 (en) | Identifiable electric component, method of identification and evaluation device | |
CN114166312A (zh) | 一种车辆油量测量方法、装置、计算机设备及存储介质 | |
CN109696250B (zh) | 温度感测电路和具有该温度感测电路的半导体设备 | |
US11392222B2 (en) | Electronic device, and method for controlling external electronic device on basis of usage state of electronic device | |
CN112762915A (zh) | 指南针精度优化方法、装置、存储介质及电子设备 | |
US20220376686A1 (en) | Pin state configuration circuit and configuration method, and electronic device | |
US11360752B2 (en) | Electronic device performing restoration on basis of comparison of constant value and control method thereof | |
CN108444466A (zh) | 一种定位导航方法、装置及终端设备 | |
CN106374569A (zh) | 一种充电电路、电子设备和充电方法 | |
CN113155113A (zh) | 一种消除电子罗盘充电干扰的系统、方法及电子设备 | |
CN112306213A (zh) | 基于终端的显卡模式切换方法、装置、存储介质及终端 | |
CN111552617A (zh) | NAND Flash的温度获取方法、装置、计算机设备及存储介质 | |
US20210117501A1 (en) | System and method for performing vector rotation | |
CN112054741A (zh) | 电机控制方法、装置、终端设备及存储介质 | |
JP6432815B2 (ja) | 表示装置、表示装置の表示方法及びプログラム | |
CN117872250A (zh) | Bms采样电流校准方法、装置、电子设备及存储介质 | |
CN114115013B (zh) | 机器人电机的控制方法、终端设备以及存储介质 | |
CN116227392B (zh) | 比特特征位置的查找方法、存储介质和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210226 |
|
WW01 | Invention patent application withdrawn after publication |