CN116662096A - 故障调试方法和电子设备 - Google Patents
故障调试方法和电子设备 Download PDFInfo
- Publication number
- CN116662096A CN116662096A CN202211596704.0A CN202211596704A CN116662096A CN 116662096 A CN116662096 A CN 116662096A CN 202211596704 A CN202211596704 A CN 202211596704A CN 116662096 A CN116662096 A CN 116662096A
- Authority
- CN
- China
- Prior art keywords
- electronic device
- information
- target data
- electronic equipment
- register
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 140
- 238000012545 processing Methods 0.000 claims abstract description 52
- 230000015654 memory Effects 0.000 claims description 58
- 230000008569 process Effects 0.000 claims description 34
- 238000004590 computer program Methods 0.000 claims description 16
- 238000012544 monitoring process Methods 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 claims description 6
- 230000008878 coupling Effects 0.000 claims description 4
- 238000010168 coupling process Methods 0.000 claims description 4
- 238000005859 coupling reaction Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 description 29
- 238000004891 communication Methods 0.000 description 16
- 238000012360 testing method Methods 0.000 description 16
- 238000007726 management method Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 12
- 210000000988 bone and bone Anatomy 0.000 description 9
- 230000005236 sound signal Effects 0.000 description 9
- 230000000694 effects Effects 0.000 description 6
- 238000013024 troubleshooting Methods 0.000 description 5
- 230000002159 abnormal effect Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000036772 blood pressure Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- CBENFWSGALASAD-UHFFFAOYSA-N Ozone Chemical compound [O-][O+]=O CBENFWSGALASAD-UHFFFAOYSA-N 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 239000010985 leather Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000002138 osteoinductive effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000010349 pulsation Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003238 somatosensory effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例适用于数据处理技术领域,提供一种故障调试方法和电子设备,第二电子设备向第一电子设备发送第一信息,第一电子设备存储地址信息到寄存器,并在运行到地址信息指示的地址时,获取目标数据,然后向第二电子设备发送目标数据,第二电子设备基于目标数据调试第一电子设备的故障,通过本申请实施例提供的故障调试方法,无需向第一电子设备发送新的***版本即可处理第一电子设备的故障,进而避免了第一电子设备安装新的***版本之后,由于重启导致的运行环境被破坏,进而导致的故障无法复现而无法处理故障的情况。
Description
技术领域
本申请涉及数据处理领域,并且更具体地,涉及一种故障调试方法和电子设备。
背景技术
电子设备在使用的过程,常常会由于电子设备中安装的程序运行出错产生故障。为了解决这些故障,通常需要获取程序运行时的相关信息,对这些信息进行分析,来解决故障。现阶段,对于一些处理能力较弱的终端设备(例如,蓝牙耳机或者智能手环),无法在出现故障时获取故障的相关信息,因此需要从服务器获取新的***版本,并在运行新的***版本之后,若再次出现相同的故障才能获取故障的相关信息。其中,新的***版本是为了获取电子设备中出现故障时故障的相关信息的***版本。
但是,在终端设备运行新的***版本之后,可能并未出现相同的故障,导致无法获取故障的相关信息,进而导致无法解决这类型的故障。
基于此,在终端设备运行新的***版本之后未出现相同故障的情况下,如何解决终端设备中出现的故障成为了一个亟待解决的问题。
发明内容
本申请提供了一种故障调试方法,能够在终端设备运行新的***版本之后未出现相同故障的情况下,如何解决终端设备中出现的故障。
第一方面,提供了一种故障调试方法,该方法应用于第一电子设备,第一电子设备与第二电子设备连接,该方法包括:
接收第二电子设备发送的第一信息,第一信息包括待处理故障对应的地址信息;
存储地址信息到第一电子设备中的寄存器;
在第一电子设备运行到地址信息指示的地址时,获取目标数据,目标数据包括第一电子设备在预设时段的***日志,预设时段是以第一电子设备运行到地址信息的时刻为终点的时段;
向第二电子设备发送目标数据,以使第二电子设备基于目标数据处理第一电子设备的故障。
本申请的实施例中提供的故障调试方法,应用于第一电子设备中,第一电子设备和第二电子设备连接,第一电子设备接收第二电子设备发送第一信息,存储地址信息到寄存器,并在运行到地址信息指示的地址时,获取目标数据,然后向第二电子设备发送目标数据,以使第二电子设备基于目标数据调试第一电子设备的故障,其中,第一信息包括待调试故障对应的地址信息,目标数据包括第一电子设备在预设时段的***日志,预设时段是以第一电子设备运行到地址信息指示的地址的时刻为终点的时段,由于地址信息是待调试故障对应的地址信息,因此,在第一电子设备运行到地址信息指示的地址时,待调试故障的出现概率较高,第一电子设备在这个时间段的***日志(目标数据)能够反映出待调试故障的故障情况,因此第二电子设备可以根据目标数据处理第一电子设备的故障。通过本申请实施例提供的故障调试方法,无需向第一电子设备发送新的***版本即可处理第一电子设备的故障,进而避免了第一电子设备安装新的***版本之后,由于重启导致的运行环境被破坏,进而导致的故障无法复现而无法处理故障的情况。
结合第一方面,在第一方面的一个实施例中,在第一电子设备运行到地址信息指示的地址时,获取目标数据,包括:在第一电子设备运行到地址信息指示的地址时,根据寄存器的类型,获取目标数据。
结合第一方面,在第一方面的一个实施例中,目标寄存器包括闪存补丁和中断FPB模块对应的FPB寄存器,在第一电子设备运行到地址信息指示的地址时,根据寄存器的类型,获取目标数据,包括:
在第一电子设备运行的地址信息指示的地址,且寄存器为FPB寄存器的情况下,停止第一电子设备正在运行的程序,获取目标数据。
本申请的实施例中,在第一电子设备运行到地址信息指示的地址,且地址信息存储在FPB寄存器的情况下,停止第一电子设备正在运行的程序,获取目标数据,这样可以使得获取目标数据时,第一电子设备中没有其他运行的程序,进而使得所获取的目标数据能够更加准确的指示待调试故障的现场信息,进而提高了基于目标数据对故障进行调试的准确性。
结合第一方面,在第一方面的一个实施例中,目标寄存器包括数据监视点和跟踪DWT模块对应的DWT寄存器,在第一电子设备运行到地址信息指示的地址时,根据寄存器的类型,获取目标数据,包括:
在第一电子设备运行的地址信息指示的地址,且目标寄存器为DWT寄存器的情况下,运行第一电子设备正在运行的程序,并获取目标数据。
本申请的实施例中,在第一电子设备运行到地址信息指示的地址,且地址信息存储在DWT寄存器的情况下,运行第一电子设备正在运行的程序,获取目标数据,这样可以使得在获取目标数据的过程中,不会影响第一电子设备正在运行的程序的正常运行,第一电子设备仍能够继续执行当前正在执行的功能,这样使得用户正在使用的功能不受获取目标数据的影响,仍然能够正常使用,提高了用户体验。
结合第一方面,在第一方面的一个实施例中,第一信息还包括寄存器信息,寄存器信息用于指示第一信息对应的寄存器。
本申请的实施例中,第一信息中还包括寄存器信息,其中寄存器信息用于第一信息对应的寄存器。也即是说,将第一信息存储在DWT寄存器还是FPB寄存器中,是第二电子设备确定的,并且,第二电子设备将寄存器信息打包在第一信息中发送给第一电子设备。应理解,第一电子设备通常是指处理能力较弱的电子设备,第二电子设备的处理能力相对较强。因此,处理能力相对较强的第二电子设备确定了将第一信息存在寄存器,无需处理能力较弱的第一电子设备去确定存储第一信息的寄存器,避免了第一电子设备无法进行类似处理的情况。另外,寄存器的类型是与获取目标数据的方式相关的,通过第二电子设备确定获取目标数据的方式,能够进一步地减轻第一电子设备的处理负担,避免了第一电子设备无法进行类似处理的情况。
结合第一方面,在第一方面的一个实施例中,第一信息还包括返回信息,返回信息用于指示向第二电子设备发送目标数据的时刻。
本申请的实施例中,第一电子设备向第二电子设备发送目标数据的时刻,可以根据第一信息中包括返回信息来确定,使得向第二电子设备返回目标数据的时刻更加灵活。另外,返回信息指示向第二电子设备发送目标数据的时刻不是当前时刻的情况下,还可以将目标数据与第一电子设备向第二电子设备上报其他数据一起发送给第二电子设备,无需单独向第二电子设备发送目标数据,提高了向第二电子设备发送目标数据的便捷性。
结合第一方面,在第一方面的一个实施例中,第一信息还包括日志信息,日志信息用于指示目标数据的数据量。
结合第一方面,在第一方面的一个实施例中,第一电子设备包括蓝牙耳机和智能手环。
第二方面,提供了一种故障调试方法,该方法应用于第二电子设备,第一电子设备与第二电子设备连接,该方法包括:
向第一电子设备发送第一信息,第一信息包括待处理故障对应的地址信息;
接收目标数据,目标数据包括第一电子设备在预设时段的***日志,预设时段是以第一电子设备运行到地址信息指示的地址的时刻为终点的时段;
基于目标数据处理第一电子设备的故障。
本申请的实施例中提供的故障调试方法,应用于第二电子设备中,第二电子设备和第一电子设备连接,第二电子设备向第一电子设备发送第一信息,其中,第一信息包括待调试故障对应的地址信息,并接收目标数据,其中,目标数据包括第一电子设备在预设时段的***日志,预设时段是以第一电子设备运行到地址信息指示的地址的时刻为终点的时段,并基于目标数据处理第一电子设备的故障。由于目标数据是第一电子设备运行到地址信息指示的地址的时刻的***日志,且地址信息是待调试故障对应的地址信息,因此,目标数据能够反映出待调试故障的故障情况,第二电子设备可以根据目标数据处理第一电子设备的故障。通过本申请实施例提供的故障调试方法,无需向第一电子设备发送新的***版本即可处理第一电子设备的故障,进而避免了第一电子设备安装新的***版本之后,由于重启导致的运行环境被破坏,进而导致的故障无法复现而无法处理故障的情况。
结合第二方面,在第二方面的一个实施例中,第一信息还包括寄存器信息,寄存器信息用于指示第一信息对应的寄存器。
结合第二方面,在第二方面的一个实施例中,第一信息还包括返回信息,返回信息用于指示向第二电子设备发送目标数据的时刻。
结合第二方面,在第二方面的一个实施例中,第一信息还包括日志信息,日志信息用于指示目标数据的数据量。
结合第二方面,在第二方面的一个实施例中,第二电子设备包括云服务器。
第三方面,提供了一种故障调试***,该***包括第一电子设备和第二电子设备,第一电子设备和第二电子设备连接;
第二电子设备向第一电子设备发送第一信息,第一信息包括待调试故障对应的地址信息;
第一电子设备存储地址信息到寄存器;
第一电子设备在第一电子设备运行到地址信息指示的地址时,获取目标数据,目标数据包括第一电子设备在预设时段的***日志,预设时段是以第一电子设备运行到地址信息指示的地址的时刻为终点的时段;
第一电子设备向第二电子设备发送目标数据;
第二电子设备基于目标数据调试第一电子设备的故障。
本申请的实施例中提供的故障调试***,第二电子设备向第一电子设备发送第一信息,第一电子设备存储地址信息到寄存器,并在运行到地址信息指示的地址时,获取目标数据,然后向第二电子设备发送目标数据,第二电子设备基于目标数据调试第一电子设备的故障,其中,第一信息包括待调试故障对应的地址信息,目标数据包括第一电子设备在预设时段的***日志,预设时段是以第一电子设备运行到地址信息指示的地址的时刻为终点的时段,由于地址信息是待调试故障对应的地址信息,因此,在第一电子设备运行到地址信息指示的地址时,待调试故障的出现概率较高,第一电子设备在这个时间段的***日志(目标数据)能够反映出待调试故障的故障情况,因此第二电子设备可以根据目标数据处理第一电子设备的故障。通过本申请实施例提供的故障调试方法,无需向第一电子设备发送新的***版本即可处理第一电子设备的故障,进而避免了第一电子设备安装新的***版本之后,由于重启导致的运行环境被破坏,进而导致的故障无法复现而无法处理故障的情况。
结合第三方面,在第三方面的一个实施例中,该***还包括第三电子设备,第一电子设备通过第三电子设备与第二电子设备连接,
第二电子设备向第一电子设备发送第一信息,包括:
第二电子设备向第三电子设备发送第一信息;
第三电子设备向第一电子设备发送第一信息;
第一电子设备向第二电子设备发送目标数据,包括:
第一电子设备向第三电子设备发送目标数据;
第三电子设备向第二电子设备发送目标数据。
本申请的实施例中提供的故障调试方法,在第一电子设备和第二电子设备之间无法直接连接的情况下,第二电子设备先向第三电子设备发送第一信息,通过第三电子设备将第一信息发送给第一电子设备,然后第一电子设备存储地址信息到寄存器,并在运行到地址信息指示的地址时,获取目标数据,然后再将目标数据发送给第三电子设备,通过第三电子设备将目标数据发送给第二电子设备,以使第二电子设备基于目标数据处理第一电子设备的故障。在本申请的实施例中,在第一电子设备和第二电子设备之间无法直接连接的情况下,可以通过在第二电子设备确定了待调试故障对应的地址信息之后,通过第三电子设备将包括待调试故障对应的地址信息的第一信息发送给第一电子设备,然后在第一电子设备获取了目标数据之后,通过第三电子设备将目标数据发送给第二电子设备,以使第二电子设备基于目标数据处理第一电子设备的故障,相当于通过第三电子设备,使得第一电子设备能够在不重启的情况下,能够通过第二电子设备处理第一电子设备的故障,进而避免了由于重启导致的运行环境被破坏,进而导致的故障无法复现而无法处理故障的情况。
结合第三方面,在第三方面的一个实施例中,第三电子设备包括终端设备。
第四方面,提供了一种故障调试装置,包括用于执行第一方面或第二方面中任一种方法的单元。该装置可以是服务器,也可以是终端设备,还可以是终端设备内的芯片。该装置可以包括获取单元和处理单元。
当该装置是终端设备时,该处理单元可以是处理器,该获取单元可以是通信接口;该终端设备还可以包括存储器,该存储器用于存储计算机程序代码,当该处理器执行该存储器所存储的计算机程序代码时,使得该终端设备执行第一方面或第二方面中的任一种方法。
当该装置是终端设备内的芯片时,该处理单元可以是芯片内部的处理单元,该获取单元可以是输出接口、管脚或电路等;该芯片还可以包括存储器,该存储器可以是该芯片内的存储器(例如,寄存器、缓存等),也可以是位于该芯片外部的存储器(例如,只读存储器、随机存取存储器等);该存储器用于存储计算机程序代码,当该处理器执行该存储器所存储的计算机程序代码时,使得该芯片执行第一方面或第二方面中的任一种方法。
在一种可能的实现方式中,存储器用于存储计算机程序代码;处理器,处理器执行该存储器所存储的计算机程序代码,当该存储器存储的计算机程序代码被执行时,该处理器用于执行:接收第二电子设备发送的第一信息,第一信息包括待处理故障对应的地址信息;存储地址信息到第一电子设备中的寄存器;在第一电子设备运行到地址信息指示的地址时,获取目标数据,目标数据包括第一电子设备在预设时段的***日志,预设时段是以第一电子设备运行到地址信息的时刻为终点的时段;向第二电子设备发送目标数据,以使第二电子设备基于目标数据处理第一电子设备的故障。
在一种可能的实现方式中,存储器用于存储计算机程序代码;处理器,处理器执行该存储器所存储的计算机程序代码,当该存储器存储的计算机程序代码被执行时,该处理器用于执行:向第一电子设备发送第一信息,第一信息包括待处理故障对应的地址信息;接收目标数据,目标数据包括第一电子设备在预设时段的***日志,预设时段是以第一电子设备运行到地址信息指示的地址的时刻为终点的时段;基于目标数据处理第一电子设备的故障。
第五方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序代码,当所述计算机程序代码被故障调试装置运行时,使得该故障调试装置执行第一方面或第二方面中的任一种故障调试方法。
第六方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被故障调试装置运行时,使得该故障调试装置执行第一方面或第二方面中的任一种装置方法。
本申请的实施例中提供的故障调试方法和电子设备,第二电子设备向第一电子设备发送第一信息,第一电子设备存储地址信息到寄存器,并在运行到地址信息指示的地址时,获取目标数据,然后向第二电子设备发送目标数据,第二电子设备基于目标数据调试第一电子设备的故障,其中,第一信息包括待调试故障对应的地址信息,目标数据包括第一电子设备在预设时段的***日志,预设时段是以第一电子设备运行到地址信息指示的地址的时刻为终点的时段,由于地址信息是待调试故障对应的地址信息,因此,在第一电子设备运行到地址信息指示的地址时,待调试故障的出现概率较高,第一电子设备在这个时间段的***日志(目标数据)能够反映出待调试故障的故障情况,因此第二电子设备可以根据目标数据处理第一电子设备的故障。通过本申请实施例提供的故障调试方法,无需向第一电子设备发送新的***版本即可处理第一电子设备的故障,进而避免了第一电子设备安装新的***版本之后,由于重启导致的运行环境被破坏,进而导致的故障无法复现而无法处理故障的情况。
附图说明
图1是一种适用于本申请的电子设备的硬件***的示意图;
图2是本申请实施例提供的一种应用场景的示意图;
图3是本申请实施例提供的一种应用场景的示意图;
图4为本申请实施例提供的一种故障调试方法的流程示意图;
图5为本申请实施例提供的一种电子设备的软件结构示意图;
图6为本申请实施例提供的一种故障调试方法的流程示意图;
图7为本申请实施例提供的一种故障调试方法的流程示意图;
图8为本申请实施例提供的一种故障调试方法的流程示意图;
图9是本申请提供的一种故障调试装置的示意图;
图10是本申请提供的一种故障调试装置的示意图;
图11是本申请提供的一种故障调试的电子设备的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
以下,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括一个或者更多个该特征。
现阶段,电子设备在使用的过程,常常会由于电子设备中安装的程序运行出错产生故障。为了解决这些故障,通常需要获取程序运行时的相关信息,对这些信息进行分析,来解决故障。在一种可能的情况下,一些电子设备的处理能力较弱,无法分析故障。其中,这些电子设备包括蓝牙耳机、智能手环等。
在一种可能的情况下,在蓝牙耳机的开发过程中,可以从蓝牙耳机中单独引出一根调试线,与测试机连接,通过测试机上的调试软件来确定故障。其中,调试软件包括Jlink调试仿真器、IAR、Keil、Ozone等。然而采用有线连接方式进行调试可能存在以下问题:
1、有线连接的方法进行故障调试会破坏蓝牙耳机原有的时序逻辑,蓝牙耳机正常运行时出现故障,连接上测试机进行调试,故障不复现。
2、有线连接的方法进行故障调试会将蓝牙耳机CPU暂停,因此使得CPU无法响应外部的蓝牙消息,导致蓝牙耳机的外接设备中断,因此不能真实的模拟故障现场。
3、故障的蓝牙耳机是已经被用户使用的电子设备,因此无法从蓝牙耳机中引出调试线来进行调试。
为了解决电子设备出现的故障,例如,验证程序运行的分支是否跑错,或者,在异常场景中一个变量的取值,通常需要新生成一个***版本,使得电子设备在运行新的***版本时,能够在***日志中记录程序运行的分值是否跑错,或者,异常场景中一个变量的取值。这样通常需要通过无线传输的方式向电子设备推送新的***版本,电子设备安装新的***版本之后,记录在故障复现时的相关信息到***日志中,再导出***日志,将导出的***日志发送给测试机。整个流程较为复杂,需要的时间较长。
另外,通常电子设备安装新的***版本之后,需要重启才能使新的***版本生效。然而电子设备重启之后,会改变了电子设备的运行环境。这样使得一些出现概率较低的故障可能不会复现,因此导致电子设备无法获取该故障对应的相关信息,进而导致无法解决这类型的故障。
有鉴于此,本申请实施例提供了一种故障调试方法,第二电子设备向第一电子设备发送第一信息,第一电子设备存储地址信息到寄存器,并在运行到地址信息指示的地址时,获取目标数据,然后向第二电子设备发送目标数据,第二电子设备基于目标数据调试第一电子设备的故障,其中,第一信息包括待调试故障对应的地址信息,目标数据包括第一电子设备在预设时段的***日志,预设时段是以第一电子设备运行到地址信息指示的地址的时刻为终点的时段,由于地址信息是待调试故障对应的地址信息,因此,在第一电子设备运行到地址信息指示的地址时,待调试故障的出现概率较高,第一电子设备在这个时间段的***日志(目标数据)能够反映出待调试故障的故障情况,因此第二电子设备可以根据目标数据处理第一电子设备的故障。通过本申请实施例提供的故障调试方法,无需向第一电子设备发送新的***版本即可处理第一电子设备的故障,进而避免了第一电子设备安装新的***版本之后,由于重启导致的运行环境被破坏,进而导致的故障无法复现而无法处理故障的情况。
本申请实施例提供的故障调试方法,可以应用于电子设备。可选的,电子设备包括终端设备,终端设备也可以称为终端(terminal)、用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等。终端设备可以是手机(mobilephone)、智能电视、穿戴式设备、平板电脑(Pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self-driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。本申请的实施例对终端设备所采用的具体技术和具体设备形态不做限定。
示例性的,图1示出了电子设备100的结构示意图。电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了***的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备100供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断地自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作***,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。电子设备100可以设置至少一个麦克风170C。在另一些实施例中,电子设备100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备100根据压力传感器180A检测所述触摸操作强度。电子设备100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器180B可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定电子设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。
气压传感器180C用于测量气压。在一些实施例中,电子设备100通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器180D包括霍尔传感器。电子设备100可以利用磁传感器180D检测翻盖皮套的开合。在一些实施例中,当电子设备100是翻盖机时,电子设备100可以根据磁传感器180D检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
距离传感器180F,用于测量距离。电子设备100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备100可以利用距离传感器180F测距以实现快速对焦。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。电子设备100通过发光二极管向外发射红外光。电子设备100使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子设备100附近有物体。当检测到不充分的反射光时,电子设备100可以确定电子设备100附近没有物体。电子设备100可以利用接近光传感器180G检测用户手持电子设备100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式,口袋模式自动解锁与锁屏。
环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测电子设备100是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器180J用于检测温度。在一些实施例中,电子设备100利用温度传感器180J检测的温度,执行温度处理策略。例如,当温度传感器180J上报的温度超过阈值,电子设备100执行降低位于温度传感器180J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,电子设备100对电池142加热,以避免低温导致电子设备100异常关机。在其他一些实施例中,当温度低于又一阈值时,电子设备100对电池142的输出电压执行升压,以避免低温导致的异常关机。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。骨传导传感器180M也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器180M也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于所述骨传导传感器180M获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器180M获取的血压跳动信号解析心率信息,实现心率检测功能。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过***SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口195可以同时***多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口195也可以兼容不同类型的SIM卡。SIM卡接口195也可以兼容外部存储卡。电子设备100通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备100采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备100中,不能和电子设备100分离。
需要说明的是,本申请实施例提到的任一电子设备可以包括电子设备100中更多或者更少的模块。
电子设备100的软件***可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。
下面结合附图对本申请实施例提供的应用场景进行说明。
图2为本申请一个实施例中提供的故障调试方法的应用场景示意图,如图2所示,蓝牙耳机和测试机之间通过蓝牙连接。当蓝牙耳机出现故障之后,向测试机发送***日志,测试机基于***日志对蓝牙耳机出现的故障进行处理。与传统的方法相比,在处理蓝牙耳机的故障的过程中,蓝牙耳机无需重新启动。
应理解,本申请实施例还适用于对智能手环的故障调试。例如,智能手环与测试机之间通过蓝牙连接。当智能手环出现故障之后,向测试机发送***日志。测试机基于***日志对智能手环出现的故障进行处理。
以上对故障的处理过程,并不限于蓝牙耳机或者智能手环。蓝牙耳机(或者智能手环)与测试机之间并不限于通过蓝牙连接,也可以通过其他无线传输的方式连接。
图3为本申请一个实施例中提供的故障调试方法的应用场景示意图。在一种可能的情况下,当蓝牙耳机被用户使用。通常,当蓝牙耳机出现故障时,用户并不希望将蓝牙耳机返厂维修。因此,如图3所示,蓝牙耳机可以将***日志发送给与蓝牙耳机连接的手机,并通过手机将***日志发送给服务器,以使服务器基于***日志对蓝牙耳机的故障进行处理。同样的,在处理蓝牙耳机的故障的过程中,蓝牙耳机无需重新启动。
应理解,本申请实施例还适用于对智能手环的故障调试。例如,智能手环与服务器之间通过手机进行蓝牙连接。当智能手环出现故障之后,向手机发送***日志,并通过手机将***日志发送给服务器。服务器基于***日志对智能手环出现的故障进行处理。
以上对故障的处理过程,并不限于蓝牙耳机或者智能手环。蓝牙耳机(或者智能手环)与手机之间并不限于通过蓝牙连接,也可以通过其他无线传输的方式连接。
应理解,上述为对应用场景的举例说明,并不对本申请的应用场景作任何限定。
下面结合图4至图8对本申请实施例提供的故障调试方法进行详细描述。
图4为本申请实施例提供的故障调试方法的流程示意图,如图4所示,第一电子设备与第二电子设备连接,其中,第一电子设备可以是蓝牙耳机,也可以是智能手环,本申请实施例对此不作限制。第二电子设备可以是测试机,也可以是终端设备(例如手机),本申请实施例对此不作限制。第一电子设备和第二电子设备之间可以通过蓝牙连接,也可以通过其他无线通信的方式连接,本申请实施例对此不作限制。如图4所示,该方法包括:
S101、第二电子设备向第一电子设备发送第一信息。其中,第一信息包括待调试故障对应的地址信息。
为了便于理解,以下以第一电子设备为蓝牙耳机,第二电子设备为测试机(终端设备)为例进行说明。
在蓝牙耳机的软件工程构建的过程中,可以将调试信息编译进去,其中,调试信息是指代码行信息和指令信息的对应关系。构建软件工程生成的lst文件中,包括上述调试信息。应理解,蓝牙耳机的故障通常是由于程序运行的分支跑错,或者某一个变量的取值异常导致的。因此,蓝牙耳机的故障对应会对应一个代码行信息。也即是说,用户可以基于故障现象和lst文件,确定出蓝牙耳机的故障对应的代码行信息。其中,每个代码行有其对应的地址。
基于此,测试机可以基于代码行信息获取对应的地址信息,也即是待调试故障对应的地址信息,并将该地址信息通过第一信息发送给第一电子设备。
在一种可能的情况下,构建的软件工程中lst文件部分内容可以如下所示:
/>
其中,484行对应的地址信息为“c0190cc”,494行对应的地址信息为“c1090d0”,495行对应的地址信息为“c1090d4”。测试机可以将这些地址信息通过第一信息发送给第一电子设备。
在一种可能的情况下,地址信息还可以通过map文件获取。通过查找map文件中待调试故障的全局变量符号对应的内存地址,也即是待调试故障对应的地址信息。然后将地址信息通过第一信息发送给蓝牙耳机。示例性的,map文件的部分内容如下所示:
/>
全局变量“g_record_set_a2dp_volume_ind”对应的地址为“0x0000000020075ca4”;全局变量“g_record_set_device_reconnect_allow”对应的地址为“0x0000000020075ca8”;全局变量“g_record_set_device_reconnect_reason”对应的地址为“0x0000000020075cac”;全局变量“g_record_set_hfp_volume_ind”对应的地址为“0x0000000020075cb0”。
测试机在获取到待调试故障对应的地址信息时,可以将地址信息打包在第一信息中,并将第一信息发送给蓝牙耳机。
S102、第一电子设备存储地址信息到寄存器。
其中,蓝牙耳机(第一电子设备)中可以包括采用arm架构的芯片,arm架构可以如图5所示,包括外部调试器External debugger、闪存补丁和中断单元(Flash Patch andBreak unit,FPB)、N个FPB寄存器、数据监视点和跟踪单元(Data Watchpoint and Traceunit,DWT)、N个DWT寄存器和异常调试监视器(DebugMonitor exception)。应理解,FPB寄存器的数量和DWT寄存器的数量可以相同,也可以不同,本申请实施例对此不作限制。
蓝牙耳机在接收到第一信息之后,可以将第一信息中的地址信息存储到FPB寄存器,也可以存储到DWT寄存器,本申请实施例对此不作限制。
S103、第一电子设备在运行到地址信息指示的地址时,获取目标数据。
其中,目标数据包括第一电子设备在预设时段的***日志,预设时段是以第一电子设备运行到地址信息指示的地址的时刻为终点的时段。
当蓝牙耳机运行到地址信息指示的地址时,获取目标数据。
应理解,在蓝牙耳机运行的程序过程,通常将正在运行的地址与寄存器(包括FPB寄存器和DWT寄存器)中存储的地址进行比较,若相同,则蓝牙耳机运行到了地址信息指示的地址。当蓝牙耳机运行到地址信息指示的地址时,可以通过External debugger调用DebugMonitor exception搜集、保存现场信息,存储到***日志。相当于通过DebugMonitorexception获取了目标数据。
可选地,蓝牙耳机可以根据寄存器类型,选择如何获取目标数据。
示例性的,若地址信息存储在FPB寄存器中,则蓝牙耳机可以停止运行当前正在运行的程序,获取目标数据。相当于蓝牙耳机中断当前运行的程序,来获取目标数据。
本申请的实施例中,在第一电子设备运行到地址信息指示的地址,且地址信息存储在FPB寄存器的情况下,停止第一电子设备正在运行的程序,获取目标数据,这样可以使得获取目标数据时,第一电子设备中没有其他运行的程序,进而使得所获取的目标数据能够更加准确的指示待调试故障的现场信息,进而提高了基于目标数据对故障进行调试的准确性。
示例性的,若地址信息存储在DWT寄存器中,则蓝牙耳机运行当前正在运行的程序,获取目标数据。相当于蓝牙耳机继续运行当前运行的程序来获取目标数据。
本申请的实施例中,在第一电子设备运行到地址信息指示的地址,且地址信息存储在DWT寄存器的情况下,运行第一电子设备正在运行的程序,获取目标数据,这样可以使得在获取目标数据的过程中,不会影响第一电子设备正在运行的程序的正常运行,第一电子设备仍能够继续执行当前正在执行的功能,这样使得用户正在使用的功能不受获取目标数据的影响,仍然能够正常使用,提高了用户体验。
在一种可能的情况下,第二电子设备可以将使用哪种类型的寄存器的指示打包在第一信息中,发送给第一电子设备,以使第一电子设备基于寄存器类型选择将地址信息存储在对应的寄存器中。
可选地,第一信息中还包括寄存器信息,寄存器信息用于指示第一信息对应的寄存器。
示例性的,第一信息中包括的寄存器信息指示第一信息对应的寄存器为FPB寄存器,则蓝牙耳机将地址信息存储在FPB寄存器中。当蓝牙耳机运行的地址为FPB寄存器中存储的地址信息指示的地址时,蓝牙耳机可以停止运行当前正在运行的程序,获取目标数据。
示例性的,第一信息中包括的寄存器信息指示第一信息对应的寄存器为DWT寄存器,则蓝牙耳机将地址信息存储在DWT寄存器中。当蓝牙耳机运行的地址为DWT寄存器中存储的地址信息指示的地址时,蓝牙耳机可以继续运行当前正在运行的程序,获取目标数据。
本申请的实施例中,第一信息中还包括寄存器信息,其中寄存器信息用于第一信息对应的寄存器。也即是说,将第一信息存储在DWT寄存器还是FPB寄存器中,是第二电子设备确定的,并且,第二电子设备将寄存器信息打包在第一信息中发送给第一电子设备。应理解,第一电子设备通常是指处理能力较弱的电子设备,第二电子设备的处理能力相对较强。因此,处理能力相对较强的第二电子设备确定了将第一信息存在寄存器,无需处理能力较弱的第一电子设备去确定存储第一信息的寄存器,避免了第一电子设备无法进行类似处理的情况。另外,寄存器的类型是与获取目标数据的方式相关的,通过第二电子设备确定获取目标数据的方式,能够进一步地减轻第一电子设备的处理负担,避免了第一电子设备无法进行类似处理的情况。
在一种可能的情况下,第二电子设备还可以将所需获取的目标数据的数据量的大小打包在第一信息中,发送给第一电子设备,以使第一电子设备基于数据量的大小确定所获取的目标数据的大小。
可选地,第一信息包括日志信息,日志信息用于指示目标数据的数据量。
示例性的,测试机将需要获取的目标数据的数据量打包到第一信息中,发送给蓝牙耳机。蓝牙耳机基于目标数据的数据量,获取预设时长内的***日志,作为目标数据。其中,预设时长与目标数据的数据量相对应。例如。目标数据的数据量为100KB,对应的,10S的***日志的数据量为100KB,也即是说,与目标数据的数据量100KB相对应的预设时长为10S。蓝牙耳机获取以当前时刻为终点的10S的***日志作为目标数据。
S104、第一电子设备向第二电子设备发送目标数据。
其中,第一电子设备可以在获取到目标数据时,向第二电子设备发送目标数据,也可以在预设时刻向第二电子设备发送目标数据,本申请实施例对此不作限制。
在一种可能的情况下,第二电子设备向第一电子设备发送的第一信息还指示了向第二电子设备返回目标数据的时刻,以使第一电子设备在指定的时刻向第二电子设备发送目标数据。
可选地,第一信息还包括返回信息,返回信息用于指示向第二电子设备发送目标数据的时刻。
其中,返回信息可以指示在获取了目标数据之后立即向第二电子设备发送目标数据,也可以指在预设时刻向第二电子设备发送目标数据,本申请实施例对此不作限制。
本申请的实施例中,第一电子设备向第二电子设备发送目标数据的时刻,可以根据第一信息中包括返回信息来确定,使得向第二电子设备返回目标数据的时刻更加灵活。另外,返回信息指示向第二电子设备发送目标数据的时刻不是当前时刻的情况下,还可以将目标数据与第一电子设备向第二电子设备上报其他数据一起发送给第二电子设备,无需单独向第二电子设备发送目标数据,提高了向第二电子设备发送目标数据的便捷性。
其中,第一信息中可以包括如表1所示的信息。
表1
Type0x01为寄存器信息,在Type0x01取值为0时,下发断点,相当于指示的寄存器类型为FPB寄存器;在Type0x01取值为1时,下发监视点,相当于指示的寄存器类型为DWT寄存器。
Type0x02为待处理故障对应的地址信息。
Type0x03为返回信息,包括立即回传和稍后回传。如果选择稍后回传,则会将快照信息保存到日志文件中,通过日志上传的方式向测试机发送目标数据。这种情况适用于蓝牙耳机已经被用户使用,无法实时向测试机返回目标数据。
Type0x04为日志信息,用于表示返回给测试机的目标数据的数据量。在一种可能的情况下,Type0x04的取值为0,则表示无需发送最近的***日志。
可选地,Type0x05为地址信息,可以用于指示在第一电子设备运行到待调试故障对应的地址时,搜集的快照信息对应的地址范围。示例性的,地址范围可以是:[addr1~addr2,addr3,addr4~addr5,……]。
在第一信息包括如表1所示的信息的情况下,第一电子设备在存储第一信息时,可以按照如下的数据结构进行存储:
在第一信息可以包括如表1所示的信息的情况下,对应的,向第二电子设备发送的目标数据可以包括如表2所示的信息。其中包括:
表2
Type0x01指示该目标数据是通过断点触发得到的,或者,该目标信息是通过监视点触发得到的。示例性的,在Type0x01取值为0时,指示该目标数据是通过断点触发得到,在Type0x01取值为1时,指示该目标数据是通过监视点触发得到。
Type0x02用于指示所获取的目标数据的时刻。
Type0x03是指目标数据。
可选地,Type0x04是指与目标数据之间相差时间最小的***日志信息。
S105、第二电子设备基于目标数据调试第一电子设备的故障。
本申请的实施例中提供的故障调试方法,第二电子设备向第一电子设备发送第一信息,第一电子设备存储地址信息到寄存器,并在运行到地址信息指示的地址时,获取目标数据,然后向第二电子设备发送目标数据,第二电子设备基于目标数据调试第一电子设备的故障,其中,第一信息包括待调试故障对应的地址信息,目标数据包括第一电子设备在预设时段的***日志,预设时段是以第一电子设备运行到地址信息指示的地址的时刻为终点的时段,由于地址信息是待调试故障对应的地址信息,因此,在第一电子设备运行到地址信息指示的地址时,待调试故障的出现概率较高,第一电子设备在这个时间段的***日志(目标数据)能够反映出待调试故障的故障情况,因此第二电子设备可以根据目标数据处理第一电子设备的故障。通过本申请实施例提供的故障调试方法,无需向第一电子设备发送新的***版本即可处理第一电子设备的故障,进而避免了第一电子设备安装新的***版本之后,由于重启导致的运行环境被破坏,进而导致的故障无法复现而无法处理故障的情况。
在一种可能的情况下,第一电子设备无法直接和第二电子设备连接。在这种情况下,还可以通过第三电子设备来实现第一电子设备和第二电子设备的连接,从而使得第二电子设备基于目标数据处理第一电子设备的故障。
示例性的,如图3所示,第一电子设备为蓝牙耳机,第二电子设备为服务器,第三电子设备为手机。蓝牙耳机无法直接与服务器连接,需要先与手机连接,通过手机与服务器连接。下面通过图6所示实施例来详细描述。
图6为本申请实施例提供的一种故障调试方法的流程示意图,如图6所示,该方法应用于如图3所示的应用环境中,其中,手机分别与蓝牙耳机、服务器连接。该方法包括:
S201、服务器向手机发送第一信息。
其中,第一信息包括待调试故障对应的地址信息。第一信息中还可以包括如表1所示的信息。
示例性的,第一信息中包括的寄存器信息指示将地址信息存储在FPB寄存器中,日志信息指示所获取的***日志的数据量为100kB,对应的时长为10s,返回信息指示立即返回目标数据。
示例性的,第一信息中包括的寄存器信息指示将地址信息存储在DWT寄存器中,日志信息指示所获取的***日志的数据量为10kB,对应的时长为1s,返回信息指示稍后返回目标数据。
S202、手机向蓝牙耳机发送第一信息。
S203、蓝牙耳机存储地址信息到寄存器。
蓝牙耳机在存储第一信息时,可以按照如下的数据结构进行存储:
S204、蓝牙耳机在运行到地址信息指示的地址时,获取目标数据。
其中,目标数据包括蓝牙耳机在预设时段的***日志,预设时段是以蓝牙耳机运行到地址信息指示的地址的时刻为终点的时段。
S205、蓝牙耳机向手机发送目标数据。
S206、手机向服务器发送目标数据。
S207、服务器基于目标数据调试蓝牙耳机的故障。
本申请的实施例中提供的故障调试方法,在第一电子设备和第二电子设备之间无法直接连接的情况下,第二电子设备先向第三电子设备发送第一信息,通过第三电子设备将第一信息发送给第一电子设备,然后第一电子设备存储地址信息到寄存器,并在运行到地址信息指示的地址时,获取目标数据,然后再将目标数据发送给第三电子设备,通过第三电子设备将目标数据发送给第二电子设备,以使第二电子设备基于目标数据处理第一电子设备的故障。在本申请的实施例中,在第一电子设备和第二电子设备之间无法直接连接的情况下,可以通过在第二电子设备确定了待调试故障对应的地址信息之后,通过第三电子设备将包括待调试故障对应的地址信息的第一信息发送给第一电子设备,然后在第一电子设备获取了目标数据之后,通过第三电子设备将目标数据发送给第二电子设备,以使第二电子设备基于目标数据处理第一电子设备的故障,相当于通过第三电子设备,使得第一电子设备能够在不重启的情况下,能够通过第二电子设备处理第一电子设备的故障,进而避免了由于重启导致的运行环境被破坏,进而导致的故障无法复现而无法处理故障的情况。
在一个实施例中提供的故障调试方法,应用在第一电子设备,示例性的,第一电子设备可以是蓝牙耳机,也可以是智能手环,本申请实施例对此不作限制。第一电子设备和第二电子设备连接。其中,第二电子设备可以是测试机,也可以是服务器,本申请实施例对此不作限制。如图7所示,该方法包括:
S301、接收第二电子设备发送的第一信息。
其中,第一信息包括待处理故障对应的地址信息。
S302、存储地址信息到第一电子设备中的寄存器。
S303、在第一电子设备运行到地址信息指示的地址时,获取目标数据。
其中,目标数据包括第一电子设备在预设时段的***日志,预设时段是以第一电子设备运行到地址信息的时刻为终点的时段;
S304、向第二电子设备发送目标数据,以使第二电子设备基于目标数据处理第一电子设备的故障。
上述实施例的实现原理和有益效果与图4至图6所示实施例类似,此处不再赘述。
在一个实施例中提供的故障调试方法,应用在第二电子设备,示例性的,第二电子设备可以是测试机,也可以是服务器,本申请实施例对此不作限制。第一电子设备和第二电子设备连接。其中,第一电子设备可以是蓝牙耳机,也可以是智能手环,本申请实施例对此不作限制。如图8所示,该方法包括:
S401、向第一电子设备发送第一信息。
其中,第一信息包括待处理故障对应的地址信息。
S402、接收目标数据。
其中,目标数据包括第一电子设备在预设时段的***日志,预设时段是以第一电子设备运行到地址信息指示的地址的时刻为终点的时段;
S403、基于目标数据处理第一电子设备的故障。
上述实施例的实现原理和有益效果与图4至图6所示实施例类似,此处不再赘述。
应该理解的是,虽然上述实施例中的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
可以理解的是,为了实现上述功能,电子设备包含了执行各个功能相应的硬件和/或软件模块。结合本文中所公开的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对电子设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个模块中。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。需要说明的是,本申请实施例中模块的名称是示意性的,实际实现时对模块的名称不做限定。
图9为本申请实施例提供的故障调试装置的一种结构示意图。
应理解,故障调试装置500可以执行图7所示的故障调试方法;故障调试装置500包括:获取单元510和处理单元520。
获取单元510用于接收第二电子设备发送的第一信息,第一信息包括待处理故障对应的地址信息;
处理单元520用于存储地址信息到第一电子设备中的寄存器;
获取单元510用于在第一电子设备运行到地址信息指示的地址时,获取目标数据,目标数据包括第一电子设备在预设时段的***日志,预设时段是以第一电子设备运行到地址信息的时刻为终点的时段;
处理单元520用于向第二电子设备发送目标数据,以使第二电子设备基于目标数据处理第一电子设备的故障。
在所述第一电子设备运行到所述地址信息指示的地址时,根据所述寄存器的类型,获取所述目标数据。
在一个实施例中,目标寄存器包括闪存补丁和中断FPB模块对应的FPB寄存器,获取单元510具体用于在第一电子设备运行的地址信息指示的地址,且寄存器为FPB寄存器的情况下,停止第一电子设备正在运行的程序,获取目标数据。
在一个实施例中,目标寄存器包括数据监视点和跟踪DWT模块对应的DWT寄存器,获取单元510具体用于在第一电子设备运行的地址信息指示的地址,且目标寄存器为DWT寄存器的情况下,运行第一电子设备正在运行的程序,并获取目标数据。
在一个实施例中,第一信息还包括寄存器信息,寄存器信息用于指示第一信息对应的寄存器。
在一个实施例中,第一信息还包括返回信息,返回信息用于指示向第二电子设备发送目标数据的时刻。
在一个实施例中,第一信息还包括日志信息,日志信息用于指示目标数据的数据量。
在一个实施例中,第一电子设备包括蓝牙耳机和智能手环。
本实施例提供的故障调试装置,用于执行上述实施例的故障调试方法,技术原理和技术效果相似,此处不再赘述。
需要说明的是,上述故障调试装置500以功能单元的形式体现。这里的术语“单元”可以通过软件和/或硬件形式实现,对此不作具体限定。
图10为本申请实施例提供的故障调试装置的一种结构示意图。
应理解,故障调试装置600可以执行图8所示的故障调试方法;故障调试装置600包括:获取单元610和处理单元620。
处理单元620用于向第一电子设备发送第一信息,第一信息包括待处理故障对应的地址信息;
获取单元610用于接收目标数据,目标数据包括第一电子设备在预设时段的***日志,预设时段是以第一电子设备运行到地址信息指示的地址的时刻为终点的时段;
处理单元620用于基于目标数据处理第一电子设备的故障。
在一个实施例中,第一信息还包括寄存器信息,寄存器信息用于指示第一信息对应的寄存器。
在一个实施例中,第一信息还包括返回信息,返回信息用于指示向第二电子设备发送目标数据的时刻。
在一个实施例中,第一信息还包括日志信息,日志信息用于指示目标数据的数据量。
在一个实施例中第二电子设备包括云服务器。
本实施例提供的故障调试装置,用于执行上述实施例的故障调试方法,技术原理和技术效果相似,此处不再赘述。
需要说明的是,上述故障调试装置600以功能单元的形式体现。这里的术语“单元”可以通过软件和/或硬件形式实现,对此不作具体限定。
例如,“单元”可以是实现上述功能的软件程序、硬件电路或二者结合。所述硬件电路可能包括应用特有集成电路(application specific integrated circuit,ASIC)、电子电路、用于执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、合并逻辑电路和/或其它支持所描述的功能的合适组件。
因此,在本申请的实施例中描述的各示例的单元,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
图11示出了本申请提供的一种电子设备的结构示意图。图11中的虚线表示该单元或该模块为可选的。电子设备700可用于实现上述方法实施例中描述的故障调试方法。
电子设备700包括一个或多个处理器701,该一个或多个处理器701可支持电子设备700实现方法实施例中的故障调试方法。处理器701可以是通用处理器或者专用处理器。例如,处理器701可以是中央处理器(central processing unit,CPU)、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integratedcircuit,ASIC)、现场可编程门阵列(field programmable gate array,FPGA)或者其它可编程逻辑器件,如分立门、晶体管逻辑器件或分立硬件组件。
处理器701可以用于对电子设备700进行控制,执行软件程序,处理软件程序的数据。电子设备700还可以包括通信单元705,用以实现信号的输入(接收)和输出(发送)。
例如,电子设备700可以是芯片,通信单元705可以是该芯片的输入和/或输出电路,或者,通信单元705可以是该芯片的通信接口,该芯片可以作为终端设备或其它电子设备的组成部分。
又例如,电子设备700可以是终端设备,通信单元705可以是该终端设备的收发器,或者,通信单元705可以是该终端设备的收发电路。
电子设备700中可以包括一个或多个存储器702,其上存有程序704,程序704可被处理器701运行,生成指令703,使得处理器701根据指令703执行上述方法实施例中描述的阻抗匹配方法。
可选地,存储器702中还可以存储有数据。可选地,处理器701还可以读取存储器702中存储的数据,该数据可以与程序704存储在相同的存储地址,该数据也可以与程序704存储在不同的存储地址。
处理器701和存储器702可以单独设置,也可以集成在一起;例如,集成在终端设备的***级芯片(system on chip,SOC)上。
示例性地,存储器702可以用于存储本申请实施例中提供的故障调试方法的相关程序704,处理器701可以用于在进行故障调试时调用存储器702中存储的故障调试方法的相关程序704,执行本申请实施例的故障调试方法;包括:接收所述第二电子设备发送的第一信息,所述第一信息包括待处理故障对应的地址信息;存储所述地址信息到所述第一电子设备中的寄存器;在所述第一电子设备运行到所述地址信息指示的地址时,获取目标数据,所述目标数据包括所述第一电子设备在预设时段的***日志,所述预设时段是以所述第一电子设备运行到所述地址信息的时刻为终点的时段;向所述第二电子设备发送所述目标数据,以使所述第二电子设备基于所述目标数据处理所述第一电子设备的故障。
示例性地,存储器702可以用于存储本申请实施例中提供的故障调试方法的相关程序704,处理器701可以用于在进行故障调试时调用存储器702中存储的故障调试方法的相关程序704,执行本申请实施例的故障调试方法;包括:向所述第一电子设备发送第一信息,所述第一信息包括待处理故障对应的地址信息;接收目标数据,所述目标数据包括所述第一电子设备在预设时段的***日志,所述预设时段是以所述第一电子设备运行到所述地址信息指示的地址的时刻为终点的时段;基于所述目标数据处理所述第一电子设备的故障。
本申请还提供了一种计算机程序产品,该计算机程序产品被处理器701执行时实现本申请中任一方法实施例所述的故障调试方法。
该计算机程序产品可以存储在存储器702中,例如是程序704,程序704经过预处理、编译、汇编和链接等处理过程最终被转换为能够被处理器701执行的可执行目标文件。
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被计算机执行时实现本申请中任一方法实施例所述的故障调试方法。该计算机程序可以是高级语言程序,也可以是可执行目标程序。
该计算机可读存储介质例如是存储器702。存储器702可以是易失性存储器或非易失性存储器,或者,存储器702可以同时包括易失性存储器和非易失性存储器。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmableROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(randomaccess memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamicRAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的;例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式;例如,多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (20)
1.一种故障调试方法,其特征在于,所述方法应用于第一电子设备,所述第一电子设备与第二电子设备连接,所述方法包括:
接收所述第二电子设备发送的第一信息,所述第一信息包括待处理故障对应的地址信息;
存储所述地址信息到所述第一电子设备中的寄存器;
在所述第一电子设备运行到所述地址信息指示的地址时,获取目标数据,所述目标数据包括所述第一电子设备在预设时段的***日志,所述预设时段是以所述第一电子设备运行到所述地址信息的时刻为终点的时段;
向所述第二电子设备发送所述目标数据,以使所述第二电子设备基于所述目标数据处理所述第一电子设备的故障。
2.根据权利要求1所述的方法,其特征在于,所述在所述第一电子设备运行到所述地址信息指示的地址时,获取目标数据,包括:
在所述第一电子设备运行到所述地址信息指示的地址时,根据所述寄存器的类型,获取所述目标数据。
3.根据权利要求2所述的方法,其特征在于,所述目标寄存器包括闪存补丁和中断FPB模块对应的FPB寄存器,所述在所述第一电子设备运行到所述地址信息指示的地址时,根据所述寄存器的类型,获取所述目标数据,包括:
在所述第一电子设备运行的所述地址信息指示的地址,且所述寄存器为所述FPB寄存器的情况下,停止所述第一电子设备正在运行的程序,获取所述目标数据。
4.根据权利要求2所述的方法,其特征在于,所述目标寄存器包括数据监视点和跟踪DWT模块对应的DWT寄存器,所述在所述第一电子设备运行到所述地址信息指示的地址时,根据所述寄存器的类型,获取所述目标数据,包括:
在所述第一电子设备运行的所述地址信息指示的地址,且所述目标寄存器为所述DWT寄存器的情况下,运行所述第一电子设备正在运行的程序,并获取所述目标数据。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述第一信息还包括寄存器信息,所述寄存器信息用于指示所述第一信息对应的寄存器。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述第一信息还包括返回信息,所述返回信息用于指示向所述第二电子设备发送所述目标数据的时刻。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述第一信息还包括日志信息,所述日志信息用于指示所述目标数据的数据量。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述第一电子设备包括蓝牙耳机和智能手环。
9.一种故障调试方法,其特征在于,所述方法应用于第二电子设备,所述第二电子设备与第一电子设备连接,所述方法包括:
向所述第一电子设备发送第一信息,所述第一信息包括待处理故障对应的地址信息;
接收目标数据,所述目标数据包括所述第一电子设备在预设时段的***日志,所述预设时段是以所述第一电子设备运行到所述地址信息指示的地址的时刻为终点的时段;
基于所述目标数据处理所述第一电子设备的故障。
10.根据权利要求9所述的方法,其特征在于,所述第一信息还包括寄存器信息,所述寄存器信息用于指示所述第一信息对应的寄存器。
11.根据权利要求9或10所述的方法,其特征在于,所述第一信息还包括返回信息,所述返回信息用于指示向所述第二电子设备发送所述目标数据的时刻。
12.根据权利要求9至11任一项所述的方法,其特征在于,所述第一信息还包括日志信息,所述日志信息用于指示所述目标数据的数据量。
13.根据权利要求9至12任一项所述的方法,其特征在于,所述第二电子设备包括云服务器。
14.一种调试***,其特征在于,所述***包括第一电子设备和第二电子设备,所述第一电子设备和所述第二电子设备连接;
所述第二电子设备向所述第一电子设备发送第一信息,所述第一信息包括待调试故障对应的地址信息;
所述第一电子设备存储所述地址信息到寄存器;
所述第一电子设备在所述第一电子设备运行到所述地址信息指示的地址时,获取目标数据,所述目标数据包括所述第一电子设备在预设时段的***日志,所述预设时段是以所述第一电子设备运行到所述地址信息指示的地址的时刻为终点的时段;
所述第一电子设备向所述第二电子设备发送所述目标数据;
所述第二电子设备基于所述目标数据调试所述第一电子设备的故障。
15.根据权利要求14所述的***,其特征在于,所述***还包括第三电子设备,所述第一电子设备通过所述第三电子设备与所述第二电子设备连接,
所述第二电子设备向所述第一电子设备发送第一信息,包括:
所述第二电子设备向所述第三电子设备发送所述第一信息;
所述第三电子设备向所述第一电子设备发送所述第一信息;
所述第一电子设备向所述第二电子设备发送所述目标数据,包括:
所述第一电子设备向所述第三电子设备发送所述目标数据;
所述第三电子设备向所述第二电子设备发送所述目标数据。
16.根据权利要求15所述的***,其特征在于,所述第三电子设备包括终端设备。
17.一种调试装置,其特征在于,所述装置包括处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于从所述存储器中调用并运行所述计算机程序,使得所述装置执行权利要求1至8中任一项所述的方法,或者,使得所述装置执行权利要求9至13中任一项所述的方法。
18.一种芯片,其特征在于,包括处理器,当所述处理器执行指令时,所述处理器执行如权利要求1至8中任一项所述的方法,或者,所述处理器执行如权利要求9至13中任一项所述的方法。
19.一种电子设备,其特征在于,所述电子设备包括处理器,所述处理器用于与存储器耦合,并读取存储器中的指令,并根据所述指令使得所述电子设备执行如权利要求1至8中任一项所述的方法,或者,根据所述指令使得所述电子设备执行如权利要求9至13中任一项所述的方法。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储了计算机程序,当所述计算机程序被处理器执行时,使得处理器执行权利要求1至8中任一项所述的方法,或者,使得处理器执行权利要求9至13中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211596704.0A CN116662096B (zh) | 2022-12-12 | 2022-12-12 | 故障调试方法和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211596704.0A CN116662096B (zh) | 2022-12-12 | 2022-12-12 | 故障调试方法和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116662096A true CN116662096A (zh) | 2023-08-29 |
CN116662096B CN116662096B (zh) | 2024-04-23 |
Family
ID=87710580
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211596704.0A Active CN116662096B (zh) | 2022-12-12 | 2022-12-12 | 故障调试方法和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116662096B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004272679A (ja) * | 2003-03-10 | 2004-09-30 | Seiko Epson Corp | デバッグ装置およびデバッグ方法 |
US20070083792A1 (en) * | 2005-10-11 | 2007-04-12 | Mcdermott Andrew | System and method for error detection and reporting |
US20120272206A1 (en) * | 2011-04-21 | 2012-10-25 | Accenture Global Services Limited | Analysis system for test artifact generation |
JP2013182445A (ja) * | 2012-03-02 | 2013-09-12 | Ricoh Co Ltd | 障害対応支援装置、障害対応支援システム、障害対応支援方法、及び障害対応支援プログラム |
CN108052412A (zh) * | 2017-12-28 | 2018-05-18 | 努比亚技术有限公司 | 重启故障定位方法、移动终端及计算机可读存储介质 |
CN108132850A (zh) * | 2017-12-22 | 2018-06-08 | 北京比特大陆科技有限公司 | 代码定位方法、装置及电子设备 |
CN109445971A (zh) * | 2018-09-11 | 2019-03-08 | 珠海格力电器股份有限公司 | 异常信息检测方法、装置、终端及存储介质 |
CN113986599A (zh) * | 2021-11-01 | 2022-01-28 | 北京字节跳动网络技术有限公司 | 一种应用处理方法、终端、服务器、设备及存储介质 |
-
2022
- 2022-12-12 CN CN202211596704.0A patent/CN116662096B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004272679A (ja) * | 2003-03-10 | 2004-09-30 | Seiko Epson Corp | デバッグ装置およびデバッグ方法 |
US20070083792A1 (en) * | 2005-10-11 | 2007-04-12 | Mcdermott Andrew | System and method for error detection and reporting |
US20120272206A1 (en) * | 2011-04-21 | 2012-10-25 | Accenture Global Services Limited | Analysis system for test artifact generation |
JP2013182445A (ja) * | 2012-03-02 | 2013-09-12 | Ricoh Co Ltd | 障害対応支援装置、障害対応支援システム、障害対応支援方法、及び障害対応支援プログラム |
CN108132850A (zh) * | 2017-12-22 | 2018-06-08 | 北京比特大陆科技有限公司 | 代码定位方法、装置及电子设备 |
CN108052412A (zh) * | 2017-12-28 | 2018-05-18 | 努比亚技术有限公司 | 重启故障定位方法、移动终端及计算机可读存储介质 |
CN109445971A (zh) * | 2018-09-11 | 2019-03-08 | 珠海格力电器股份有限公司 | 异常信息检测方法、装置、终端及存储介质 |
CN113986599A (zh) * | 2021-11-01 | 2022-01-28 | 北京字节跳动网络技术有限公司 | 一种应用处理方法、终端、服务器、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116662096B (zh) | 2024-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110515646B (zh) | 一种差分升级方法及相关设备 | |
CN113452542A (zh) | 故障检测方法及设备 | |
CN113704205B (zh) | 日志存储的方法、芯片、电子设备和可读存储介质 | |
CN110780929B (zh) | 调用硬件接口的方法及电子设备 | |
CN112087649B (zh) | 一种设备搜寻方法以及电子设备 | |
CN113596242A (zh) | 传感器调整方法、装置和电子设备 | |
CN115589051B (zh) | 充电方法和终端设备 | |
CN111104295A (zh) | 一种页面加载过程的测试方法及设备 | |
CN113656089B (zh) | 应用程序中的类验证方法和装置 | |
CN113496477B (zh) | 屏幕检测方法及电子设备 | |
CN116049122B (zh) | 日志信息传输控制方法、电子设备和存储介质 | |
CN116662096B (zh) | 故障调试方法和电子设备 | |
EP4220478A1 (en) | Gesture misrecognition prevention method, and electronic device | |
WO2021052489A1 (zh) | 一种确定多核处理器中故障计算核的方法及电子设备 | |
CN114816973A (zh) | 调试代码的方法、装置、电子设备和可读存储介质 | |
CN114780029A (zh) | 器件识别方法和相关装置 | |
CN113467821A (zh) | 应用程序的修复方法、装置、设备及可读存储介质 | |
CN114153638A (zh) | 应用异常退出的修复方法、装置与电子设备 | |
CN115792431B (zh) | 一种异常位置检测方法和电子设备 | |
CN115827207B (zh) | 应用程序的切换方法和电子设备 | |
CN116048681B (zh) | 图标显示方法、电子设备和计算机可读存储介质 | |
CN115016666B (zh) | 触控处理方法、终端设备以及存储介质 | |
CN114077323B (zh) | 电子设备的触摸屏防误触方法、电子设备及芯片*** | |
CN112583651B (zh) | 一种用于对小程序通信接口进行测试的方法、装置及介质 | |
CN116775345B (zh) | 一种数据传输方法及电子设备 |
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 |