CN118057191A - 通信模组的管脚测试方法、装置、设备、介质及产品 - Google Patents

通信模组的管脚测试方法、装置、设备、介质及产品 Download PDF

Info

Publication number
CN118057191A
CN118057191A CN202211459655.6A CN202211459655A CN118057191A CN 118057191 A CN118057191 A CN 118057191A CN 202211459655 A CN202211459655 A CN 202211459655A CN 118057191 A CN118057191 A CN 118057191A
Authority
CN
China
Prior art keywords
target
test
test type
communication module
pin
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.)
Pending
Application number
CN202211459655.6A
Other languages
English (en)
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.)
Chengdu TD Tech Ltd
Original Assignee
Chengdu TD Tech 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 Chengdu TD Tech Ltd filed Critical Chengdu TD Tech Ltd
Priority to CN202211459655.6A priority Critical patent/CN118057191A/zh
Publication of CN118057191A publication Critical patent/CN118057191A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本申请提供一种通信模组的管脚测试方法、装置、设备、介质及产品,该方法包括:响应于接收到的对目标通信模组中非GPIO管脚的管脚测试请求,从目标通信模组对应的闪存中读取预置的标志位取值;根据预置的标志位取值确定对非GPIO管脚进行测试的目标测试类型;若确定非GPIO管脚的目标受控信息与目标测试类型匹配,则在归一化版本软件中获取与目标测试类型对应的目标测试软件并执行目标测试软件,以对非GPIO管脚进行目标测试类型对应的测试。无论进行哪种测试类型的测试,都能够从归一化版本软件中获取对应的目标测试软件完成测试,所以可有效提高对非GPIO管脚进行测试时的效率。

Description

通信模组的管脚测试方法、装置、设备、介质及产品
技术领域
本发明实施例涉及测试技术领域,尤其涉及一种通信模组的管脚测试方法、装置、设备、介质及产品。
背景技术
通信模组通常是指在设备上承担通信功能的模组。需要在通信模组生产完后进行全面的测试。其中包括对管脚进行测试。在通信模组中的管脚包括通用输入/输出(英文为:General-purpose input/output,简称为:GPIO)管脚及非GPIO管脚。为了能够尽早确定管脚是否存在硬件通路风险,在对非GPIO管脚进行测试时,要先对非GPIO管脚进行硬件通路测试,再进行功能性测试。
目前在对非GPIO管脚进行硬件通路及功能测试时,所需的软件版本是不同的。所以在对非GPIO管脚进行测试时,需要获取不同版本的软件进行测试,导致对非GPIO管脚进行测试时的效率较低。
发明内容
本发明实施例提供一种通信模组的管脚测试方法、装置、设备、介质及产品,解决了现有技术中在对非GPIO管脚进行测试时,需要在不同版本的软件之间进行切换,导致对非GPIO管脚进行测试时的效率较低的技术问题。
第一方面,本发明实施例提供一种通信模组的管脚测试方法,包括:
响应于接收到的对目标通信模组中非GPIO管脚的管脚测试请求,从目标通信模组对应的闪存中读取预置的标志位取值;
根据所述预置的标志位取值确定对所述非GPIO管脚进行测试的目标测试类型;
若确定所述非GPIO管脚的目标受控信息与所述目标测试类型匹配,则在归一化版本软件中获取与所述目标测试类型对应的目标测试软件并执行所述目标测试软件,以对所述非GPIO管脚进行目标测试类型对应的测试。
可选地,如上所述的方法,所述响应于接收到的对目标通信模组中非GPIO管脚的管脚测试请求,从目标通信模组对应的闪存中读取预置的标志位取值,包括:
响应于接收到的对目标通信模组中非GPIO管脚的管脚测试请求,控制所述目标通信模组进行上电启动;
在所述目标通信模组上电启动过程中执行通用引导加载程序;
采用通用引导加载程序从目标通信模组对应的闪存中读取所述预置的标志位取值。
可选地,如上所述的方法,判断非GPIO管脚的目标受控信息与所述目标测试类型是否匹配,包括:
采用所述通用引导加载程序获取非GPIO管脚的目标受控信息及预先存储的非GPIO管脚的受控信息与测试类型的映射关系;
根据所述映射关系确定与目标受控信息具有映射关系的测试类型;
若确定具有映射关系的测试类型与所述目标测试类型一致,则确定目标受控信息与所述目标测试类型相匹配;
若确定具有映射关系的测试类型与所述目标测试类型不一致,则确定目标受控信息与所述目标测试类型不匹配。
可选地,如上所述的方法,若确定目标受控信息与所述目标测试类型不匹配,则还包括:
采用通用引导加载程序调整所述目标受控信息,以使调整后的受控信息与所述目标测试类型匹配。
可选地,如上所述的方法,所述根据所述预置的标志位取值确定对所述非GPIO管脚进行测试的目标测试类型,包括:
若确定所述预置的标志位取值为第一预设数值,则确定目标测试类型为硬件通用测试;
若确定所述预置的标志位取值为第二预设数值,则确定目标测试类型为功能测试。
可选地,如上所述的方法,所述在归一化版本软件中获取与所述目标测试类型对应的目标测试软件,包括:
根据所述目标测试类型确定目标测试软件在归一化版本软件中的起始位置及终止位置;
根据所述起始位置及终止位置获取对应的目标测试软件。
可选地,如上所述的方法,所述执行所述目标测试软件,以对所述非GPIO管脚进行目标测试类型对应的测试之后,还包括:
对所述预置的标志位取值进行复位,以改变非GPIO管脚对应的目标测试类型;
采用通用引导加载程序调整非GPIO管脚的目标受控信息,以使调整后的受控信息与所述目标测试类型匹配。
可选地,如上所述的方法,从目标通信模组对应的闪存中读取预置的标志位取值之前,还包括:
将预置的标志位取值动态存储在闪存中;
配置所述预置的标志位具有备份恢复特性。
可选地,如上所述的方法,所述将预置的标志位取值动态存储在闪存中,包括:
获取闪存的分区中不是坏块且空闲的目标存储地址;
将所述预置的标志位取值以键值对的方式存储在所述目标存储地址中。
第二方面,本发明实施例提供一种通信模组的管脚测试装置,包括:
读取模块,用于响应于接收到的对目标通信模组中非GPIO管脚的管脚测试请求,从目标通信模组对应的闪存中读取预置的标志位取值;
确定模块,用于根据所述预置的标志位取值确定对所述非GPIO管脚进行测试的目标测试类型;
获取模块,用于若确定所述非GPIO管脚的目标受控信息与所述目标测试类型匹配,则在归一化版本软件中获取与所述目标测试类型对应的目标测试软件并执行所述目标测试软件,以对所述非GPIO管脚进行目标测试类型对应的测试。
第三方面,本发明实施例提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面中任一项所述的方法。
第四方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现如第一方面中任一项所述的方法。
第五方面,本发明实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如第一方面中任一项所述的方法。
本发明实施例提供一种通信模组的管脚测试方法、装置、设备、介质及产品,通过响应于接收到的对目标通信模组中非GPIO管脚的管脚测试请求,从目标通信模组对应的闪存中读取预置的标志位取值;根据所述预置的标志位取值确定对所述非GPIO管脚进行测试的目标测试类型;若确定所述非GPIO管脚的目标受控信息与所述目标测试类型匹配,则在归一化版本软件中获取与所述目标测试类型对应的目标测试软件并执行所述目标测试软件,以对所述非GPIO管脚进行目标测试类型对应的测试。由于预先将非GPIO管脚的不同测试类型的测试软件集成到了归一化版本软件中,所以接收到非GPIO管脚的管脚测试请求后,基于预置的标志位取值确定本次对非GPIO管脚进行测试的目标测试类型,在目标受控信息与目标测试类型匹配的情况下,采用归一化版本软件中目标测试类型对应的测试软件对非GPIO管脚进行测试。所以若要进行另一种测试类型的测试,仍然能够从归一化版本软件中获取另一种测试类型对应的测试软件,进行另一种测试类型的测试。无需获取不同版本的软件进行测试,所以可有效提高对非GPIO管脚进行测试时的效率。
应当理解,上述发明内容部分中所描述的内容并非旨在限定本发明的实施例的关键或重要特征,亦非用于限制本发明的范围。本发明的其它特征将通过以下的描述变得容易理解。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的通信模组的管脚测试方法的一种应用场景示意图;
图2为本发明一实施例提供的通信模组的管脚测试方法的流程图;
图3为本发明另一实施例提供的通信模组的管脚测试方法的流程图;
图4为本发明一实施例提供的通信模组的管脚测试装置的结构示意图;
图5为本发明一实施例提供的电子设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的实施例。虽然附图中显示了本发明的某些实施例,然而应当理解的是,本发明可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本发明。应当理解的是,本发明的附图及实施例仅用于示例性作用,并非用于限制本发明的保护范围。
本发明实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明实施例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为了清楚理解本申请的技术方案,首先对现有技术的方案进行详细介绍。
在通信模组中的管脚包括GPIO管脚及非GPIO管脚。其中,非GPIO管脚可具体存在于通信模组中的至少一个功能模块中。如在通信模组中具有射频功能模块、音频功能模块、高精度授时功能模块等。这些功能模块均存在非GPIO管脚。为了尽早确定管脚是否存在硬件通路风险。对于GPIO管脚,可采用传统的两两管脚之间拉高拉低换回测试的方式进行测试。而对于非GPIO管脚进行测试时,要先对对非GPIO管脚进行硬件通路测试,以确定非GPIO管脚是否存在焊接错误、分板时切割等原因造成的硬件通路问题。再进行功能测试,以确定非GPIO管脚所在的功能模块本身是否存在硬件故障问题。
目前在对非GPIO管脚进行硬件通路及功能测试时,所需的软件版本是不同的。可以理解的是不同的软件版本中所具有的执行代码也是不同的。具体地,在对非GPIO管脚进行硬件通路测试时,采用硬件通路测试的软件版本。在对非GPIO管脚进行功能测试时,采用功能测试的软件版本。这就造成了在对非GPIO管脚进行测试时,需要获取不同版本的软件进行测试,导致对非GPIO管脚进行测试时的效率较低。
所以为了解决现有技术中对非GPIO管脚进行测试时的效率较低的技术问题,需要减少获取不同版本软件的时间,所以可将硬件通路测试的软件与功能测试的软件进行归一化处理,获得归一化版本软件。而为了在对非GPIO管脚进行测试时,在归一化版本软件中准确获取硬件通路测试对应的软件及功能测试对应的软件,需要存储一个预置的标志位,通过对预置的标志位赋予不同的取值来表示是进行硬件通路测试还是进行功能测试,进而能够在非GPIO管脚的目标受控信息与硬件通路测试匹配的情况下,在归一化版本软件中获取与硬件通路测试对应的目标测试软件并执行目标测试软件,以对非GPIO管脚进行硬件通路测试。在GPIO管脚的目标受控信息与功能测试匹配的情况下,在归一化版本软件中获取与功能测试对应的目标测试软件并执行目标测试软件,以对非GPIO管脚进行功能测试。
下面对本发明实施例的应用场景进行介绍。
图1为本发明实施例提供的通信模组的管脚测试方法的一种应用场景示意图,如图1所示,本发明实施例的一种应用场景中包括通信模组的管脚测试装置11及通信模组12。在通信模组的管脚测试装置11中存储有归一化版本软件。在归一化版本软件中包括硬件通路测试对应的软件及功能测试对应的软件。在通信模组12中具有至少一个功能模块,各功能模块包括非GPIO管脚121。示例性的,如图1所示,通信模组中可以包括:射频功能模块、音频功能模块、高精度授时功能模块。在通信模组中还可以包括闪存122(英文为:flash),在闪存中预先存储有预置的标志位取值。在一个具体的应用场景中,在通信模组12完成生产后,需要对通信模组的非GPIO管脚121进行测试时,用户可通过通信模组的管脚测试装置提供的测试操作界面上触发对目标通信模组中非GPIO管脚的管脚测试请求,通信模组的管脚测试装置11接收到该管脚测试请求后,从通信模组的闪存中读取预置的标志位取值,根据预置的标志位取值确定对非GPIO管脚进行测试的目标测试类型;若确定非GPIO管脚的目标受控信息与目标测试类型匹配,则在归一化版本软件中获取与目标测试类型对应的目标测试软件并执行目标测试软件,以对非GPIO管脚进行目标测试类型对应的测试。
以下参考附图来具体描述本发明的实施例。
实施例一
图2为本发明一实施例提供的通信模组的管脚测试方法的流程图,如图2所示,本发明实施例提供的通信模组的管脚测试方法的执行主体为通信模组的管脚测试装置,该通信模组的管脚测试装置可集成在电子设备中,则本实施例提供的通信模组的管脚测试方法包括以下几个步骤。
步骤201,响应于接收到的对目标通信模组中非GPIO管脚的管脚测试请求,从目标通信模组对应的闪存中读取预置的标志位取值。
其中,目标通信模组为需要进行管脚测试的通信模组。通信模组的类型不做限定,如可以为Wi-Fi模组、4G/5G模组、蓝牙模组等。
其中,非GPIO管脚指的是受控于调制解调器(英文为:Modem)的管脚。
本实施例中,管脚测试装置可向用户提供测试操作界面。在目标通信模组生产完后,用户可通过测试操作界面输入待测试的对象及待测试的对象的相关信息,并可触发非GPIO管脚的管脚测试请求的操作,使通信模组的管脚测试装置接收到对目标通信模组中非GPIO管脚的管脚测试请求。
本实施例中,待测试对象包括所有功能模块或功能部件的非GPIO管脚或者为其中至少一个功能模块或功能部件的非GPIO管脚。
其中,待测试的对象的相关信息可以包括:待测试对象目前在通信模组的硬件连接关系中所满足的测试类型。本实施例中,非GPIO管脚的相关信息可以包括:非GPIO管脚目前在通信模组的硬件连接关系中所满足的测试类型。示例性的,非GPIO管脚为射频功能模块中的管脚,非GPIO管脚与IO模块相连,受控于IO模块,则确定满足的测试类型为硬件通路测试。非GPIO管脚与键盘相连,则确定满足的测试类型为功能测试。
具体地,本实施例中,可提前将预置的标志位取值存储到目标通信模组对应的闪存中。那么在通信模组的管脚测试装置接收到非GPIO管脚的管脚测试请求后,可从目标通信模组对应的闪存中读取预置的标志位取值。
其中,在从目标通信模组对应的闪存中读取预置的标志位取值时,与存储预置的标志位取值的方式相关。
可选地,若将预置的标志位取值按照固定的存储地址存储到目标通信模组对应的闪存中的,则可通过该固定的存储地址从闪存中读取预置的标志位取值。若预置的标志位取值动态存储到目标通信模组对应的闪存中的,则可通过动态存储时预置的标志位的标识信息对闪存中的各存储信息进行遍历,获得预置的标志位取值。
步骤202,根据预置的标志位取值确定对非GPIO管脚进行测试的目标测试类型。
本实施例中,预置的标志位取值可以为第一预设数值或第二预设数值,预置的标志位取值不同,表示要对非GPIO管脚进行测试的测试类型不同。示例性地,预置的标志位取值为1,则表示要对非GPIO管脚进行功能测试。预置的标志位取值为0,则表示要对非GPIO管脚进行硬件通路测试。
所以本实施例中,可将预置的标志位取值与测试类型的映射关系进行存储,在读取到预置的标志位取值后,根据映射关系确定出具有映射关系的测试类型,将具有映射关系的测试类型确定为目标测试类型。
步骤203,若确定非GPIO管脚的目标受控信息与目标测试类型匹配,则在归一化版本软件中获取与目标测试类型对应的目标测试软件并执行目标测试软件,以对非GPIO管脚进行目标测试类型对应的测试。
本实施例中,非GPIO管脚的目标受控信息是指非GPIO管脚在进行本次测试时受控部件或受控模块的信息。
本实施例中,在对非GPIO管脚进行测试时,需要保证目标测试类型与目标受控信息匹配。即在对GPIO管脚进行硬件通路测试时,需要非GPIO管脚受控于IO模块,才能使非GPIO管脚在通信模组的硬件连接关系中满足硬件通路测试。而在对非GPIO管脚进行功能测试时,需要非GPIO管脚受控于对应的功能部件或功能部件,才能使非GPIO管脚在通信模组的硬件连接关系中满足功能测试。
具体地,本实施例中,若确定目标测试类型为硬件通路测试,并且非GPIO管脚受控于IO模块,则在归一化版本软件中获取硬件通路测试的测试软件,执行硬件通路测试的测试软件,以完成对非GPIO管脚的硬件通路测试。若确定目标测试类型为功能测试,并且非GPIO管脚受控于功能模块或功能部件,则在归一化版本软件中获取功能测试的测试软件,执行功能测试的测试软件,以完成对非GPIO管脚的功能测试。
其中,硬件通路测试的测试软件在对非GPIO管脚的硬件通路测试时,可采用两两管脚之间拉高拉低环回测试的方式进行测试。具体地,在多个非GPIO管脚中,控制一个非GPIO管脚输入高电平,查看另一个非GPIO管脚是否输出高电平。并且控制一个非GPIO管脚输入低电平,查看另一个非GPIO管脚是否输出低电平,若输出的电平与输入的电平均为高电平,或均为低电平,则确定通过硬件通路测试。若输出的电平与输入的电平一个为高电平,另一个为低电平,则确定未通过硬件通路测试。
其中,功能测试的测试软件在对非GPIO管脚的功能测试时,首先要确定进行测试的非GPIO管脚是属于哪个功能模块或功能部件的管脚,然后基于这个功能模块或功能部件的具体实现功能采用对应的功能测试的测试软件完成对应的功能测试。
示例性地,若非GPIO管脚为音频模块的管脚,则对音频模块进行功能测试时,可预置音频文件,外接数字信号编解码器,对音频文件进行播放,并采用数字信号编解码器进行接收,查看播放的音频与接收的音频是否一致。可以理解的是,还可以对音频模块进行其他相关功能的测试。
本实施例提供的通信模组的管脚测试方法,通过响应于接收到的对目标通信模组中非GPIO管脚的管脚测试请求,从目标通信模组对应的闪存中读取预置的标志位取值;根据预置的标志位取值确定对非GPIO管脚进行测试的目标测试类型;若确定非GPIO管脚的目标受控信息与目标测试类型匹配,则在归一化版本软件中获取与目标测试类型对应的目标测试软件并执行目标测试软件,以对非GPIO管脚进行目标测试类型对应的测试。由于预先将非GPIO管脚的不同测试类型的测试软件集成到了归一化版本软件中,所以接收到非GPIO管脚的管脚测试请求后,基于预置的标志位取值确定本次对非GPIO管脚进行测试的目标测试类型,在目标受控信息与目标测试类型匹配的情况下,采用归一化版本软件中目标测试类型对应的测试软件对非GPIO管脚进行测试。所以若要进行另一种测试类型的测试,仍然能够从归一化版本软件中获取另一种测试类型对应的测试软件,进行另一种测试类型的测试。无需获取不同版本的软件进行测试,所以可有效提高对非GPIO管脚进行测试时的效率。
实施例二
图3为本发明另一实施例提供的通信模组的管脚测试方法的流程图,如图3所示,本实施例提供的通信模组的管脚测试方法,在实施例一提供的通信模组的管脚测试方法的基础上,是对步骤201-步骤203的进行了进一步的细化,并且还包括了其他步骤,则本实施例提供的通信模组的管脚测试方法包括以下步骤:
步骤301,将预置的标志位取值动态存储在闪存中。
本实施例中,在闪存中存在多个分区,在分区中会存在一定概率的坏块,所以需要对预置的标志位取值采用动态方式进行存储,将预置的标志位取值存储到不是坏块且是空闲的存储地址中。
作为一种可选实施方式,本实施例中,步骤301包括以下步骤:
步骤301a,获取闪存的分区中不是坏块且空闲的目标存储地址。
步骤301b,将预置的标志位取值以键值对的方式存储在目标存储地址中。
本实施例中,可对闪存的某个分区进行访问,确定出不是坏块且是空闲的存储地址作为存储预置标志位的取值的目标存储地址。并可将预置标识位作为键,将预置标志位的取值作为值存储到目标存储地址中。若预置标志位的取值为1,则对应的键值对为key=1。若预置标志位的取值为0,则对应的键值对为key=0。
本实施例提供的通信模组的管脚测试方法,在将预置的标志位取值动态存储在闪存中时,获取闪存的分区中不是坏块且空闲的目标存储地址,将预置的标志位取值以键值对的方式存储在目标存储地址中。能够将预置的标志位取值存储到不是坏块的存储地址中,能够从闪存中读取预置的标志位取值时,顺利读取出预置的标志位取值。并且采用键值对进行存储时,能够通过预置的标志位的键快速读取出预置的标志位取值。
步骤302,配置预置的标志位具有备份恢复特性。
本实施例中,在配置预置的标志位具有备份恢复特性时,可在闪存中动态存储预置的标志位取值后,将预置的标志位取值进行备份存储。并在归一化版本软件中,在读取预置的标志位取值的代码之后添加再次读取备份存储的预置标志位取值的代码,以使用备份中的预置标志位取值覆盖掉前面读取的预置的标志位的取值。通过配置预置的标志位具有备份恢复特性,能够在归一化版本软件进行升级后,可能由于一些误操作导致升级后的软件中预置的标志位取值错误后,仍然能够获取到正确的取值,不会因为对软件的升级操作影响对非GPIO管脚的测试。
步骤303,响应于接收到的对目标通信模组中非GPIO管脚的管脚测试请求,从目标通信模组对应的闪存中读取预置的标志位取值。
作为一种可选实施方式,本实施例中,步骤303包括以下步骤:
步骤303a,响应于接收到的对目标通信模组中非GPIO管脚的管脚测试请求,控制目标通信模组进行上电启动。
本实施例中,在接收到的对目标通信模组中非GPIO管脚的管脚测试请求之前,用户已经建立了非GPIO管脚在某种测试类型下在目标通信模组中的硬件连接关系,为了实现对目标通信模组的非GPIO管脚进行测试,在接收到对目标通信模组中非GPIO管脚的管脚测试请求后,首先控制目标通信模组进行上电启动。
其中,在控制目标通信模组进行上电启动时,可向目标通信模组发送启动指令,目标通信模组在接收到启动指令后,进行上电启动。
步骤303b,在目标通信模组上电启动过程中执行通用引导加载程序。
步骤303c,采用通用引导加载程序从目标通信模组对应的闪存中读取预置的标志位取值。
其中,通用引导加载程序(英文为:Universal Boot Loader,简称为:Uboot)用于引导归一化版本软件执行的程序。
本实施例中,在目标通信模组上电启动过程中首先启动通用引导加载程序,在执行通用引导加载程序时,引导归一化版本软件执行。在引导归一化版本软件执行过程中,通用引导加载程序从目标通信模组对应的闪存中读取预置的标志位取值。
可以理解的是,引导加载程序从目标通信模组对应的闪存中读取预置的标志位取值时,获取预置的标志位的键,并基于预置的标志位的键从闪存的存储地址中获取对应的值。
步骤304,根据预置的标志位取值确定对非GPIO管脚进行测试的目标测试类型。
作为一种可选实施方式,本实施例中,步骤304包括以下步骤:
步骤304a,若确定预置的标志位取值为第一预设数值,则确定目标测试类型为硬件通用测试。
步骤304b,若确定预置的标志位取值为第二预设数值,则确定目标测试类型为功能测试。
本实施例中,第一预设数值与第二预设数值不同。示例性地,第一预设数值可以为0,第二预设数值可以为1。
本实施例中,可在读取到预置的标志位取值后,基于预先存储的预置标志位的取值与测试类型的映射关系确定对非GPIO管脚进行测试的目标测试类型。在映射关系中,预置的标志位取值为第一预设数值,对应的目标测试类型为硬件通用测试。预置的标志位取值为第二预设数值,对应的目标测试类型为功能测试。所以若读取到预置的标志位取值为第一预设数值,则基于映射关系确定目标测试类型为硬件通用测试。若确定预置的标志位取值为第二预设数值,则基于映射关系确定目标测试类型为功能测试。
需要说明的是,在配置标志位取值时,默认情况下配置标志位的取值为第二预设数值。以能够在通信模组生产完并且硬件通路没有问题后,在供用户使用时,优先进行功能测试。
本实施例提供的通信模组的管脚测试方法,在根据预置的标志位取值确定对非GPIO管脚进行测试的目标测试类型时,若确定预置的标志位取值为第一预设数值,则确定目标测试类型为硬件通用测试;若确定预置的标志位取值为第二预设数值,则确定目标测试类型为功能测试,由于第一预设数值与第二预设数值是不同的,所以能够根据预置的标志位取值对目标测试类型进行更加准确地区分,所以能够更加准确地确定出目标测试类型。
步骤305,判断非GPIO管脚的目标受控信息与目标测试类型是否匹配,若是,则执行步骤306,否则执行步骤308。
其中,目标受控信息为非GPIO管脚当前受控于哪个模块或部件的信息。
本实施例中,在用户通过测试操作界面输入待测试对象为非GPIO管脚及非GPIO管脚的相关信息,触发非GPIO管脚的管脚测试请求的操作时,在非GPIO管脚的相关信息中可包括目标受控信息。所以可通过对管脚测试请求进行解析获取到非GPIO管脚的目标受控信息。
作为一种可选实施方式,本实施例中,步骤305包括以下步骤:
步骤305a,采用通用引导加载程序获取非GPIO管脚的目标受控信息及预先存储的非GPIO管脚的受控信息与测试类型的映射关系。
其中,预先存储的非GPIO管脚的受控信息与测试类型的映射关系为:受控信息为IO模块,对应的测试类型为硬件通路测试。受控信息为某功能模块或功能部件,对应的测试类型为功能测试。
本实施例中,预先存储的非GPIO管脚的受控信息与测试类型的映射关系可存储在某固定存储区域,通用引导加载程序通过访问该固定存储区域,读取到该非GPIO管脚的受控信息与测试类型的映射关系。
步骤305b,根据映射关系确定与目标受控信息具有映射关系的测试类型。
本实施例中,在该映射关系中查询与目标受控信息一致的受控信息,并获取到与目标受控信息一致的受控信息具有映射关系的测试类型。
其中,与目标受控信息一致的受控信息具有映射关系的测试类型可以为硬件通路测试或功能测试。
步骤305c,若确定具有映射关系的测试类型与目标测试类型一致,则确定目标受控信息与目标测试类型相匹配。
步骤305d,若确定具有映射关系的测试类型与目标测试类型不一致,则确定目标受控信息与目标测试类型不匹配。
本实施例中,对比具有映射关系的测试类型与目标测试类型是否一致。在具有映射关系的测试类型与目标测试类型一致时,确定目标受控信息与目标测试类型相匹配。在具有映射关系的测试类型与目标测试类型不一致时,确定目标受控信息与目标测试类型不匹配。
具体地,若确定目标受控信息为受控于IO模块,目标测试类型为硬件通路测试,则确定目标受控信息与目标测试类型匹配。若确定目标受控信息为受控于功能模块或功能部件,目标测试类型为功能测试,则确定目标受控信息与目标测试类型匹配。反之,若确定目标受控信息为受控于IO模块,目标测试类型为功能模块或功能部件,则确定目标受控信息与目标测试类型不匹配。若确定目标受控信息为受控于功能模块或功能部件,目标测试类型为硬件通路测试,也确定目标受控信息与目标测试类型不匹配。
步骤306,在归一化版本软件中获取与目标测试类型对应的目标测试软件并执行目标测试软件,以对非GPIO管脚进行目标测试类型对应的测试。
作为一种可选实施方式,本实施例中,步骤306中在归一化版本软件中获取与目标测试类型对应的目标测试软件包括以下步骤:
步骤306a,根据目标测试类型确定目标测试软件在归一化版本软件中的起始位置及终止位置。
步骤306b,根据起始位置及终止位置获取对应的目标测试软件。
本实施例中,在将硬件通用测试对应的软件与功能测试对应的软件形成归一化版本软件时,可将硬件通用测试对应的软件与功能测试对应的软件分先后顺序放入归一化版本软件中,并可存储在归一化版本软件中硬件通用测试对应的软件的位置以及功能测试对应的软件的位置。为了节省空间,则直接存储硬件通用测试对应的软件的起始位置及终止位置,以及直接存储功能测试对应的软件的起始位置及终止位置。
所以本实施例中,在归一化版本软件中获取与目标测试类型对应的目标测试软件时,可先根据目标测试类型确定该目标测试类型对应的目标测试软件在归一化版本软件中所存放的位置,该位置包括起始位置和终止位置。然后从起始位置开始获取软件代码直到获取到终止位置的软件代码为止,从起始位置到终止位置获取到的软件代码就为目标测试软件对应的代码。
本实施例提供的通信模组的管脚测试方法,在归一化版本软件中获取与目标测试类型对应的目标测试软件时,根据目标测试类型确定目标测试软件在归一化版本软件中的起始位置及终止位置;根据起始位置及终止位置获取对应的目标测试软件。通过目标测试软件在归一化版本软件中的起始位置及终止位置能够准确确定出目标测试软件在归一化版本软件中的位置,基于准确的存放位置能够准确获取到目标测试软件。
步骤307,对预置的标志位取值进行复位,以改变非GPIO管脚对应的目标测试类型。
本实施例中,在步骤306完成了非GPIO管脚进行目标测试类型对应的测试后,还要对非GPIO管脚进行另一种测试类型的测试,所以将预置的标志位取值进行复位。即若在步骤306时预置的标志位取值为第一预设数值,则对预置的标志位取值进行复位后,预置的标志位取值为第二预设数值。若在步骤306时预置的标志位取值为第二预设数值,则对预置的标志位取值进行复位后,预置的标志位取值为第一预设数值。
可以理解的是,在对预置的标志位取值进行复位后,非GPIO管脚的目标受控信息与复位后的目标测试类型是不匹配的,所以需要执行步骤308,使调整后的受控信息与目标测试类型匹配,以对非GPIO管脚进行另一种测试类型的测试。
步骤308,采用通用引导加载程序调整非GPIO管脚的目标受控信息,以使调整后的受控信息与目标测试类型匹配。
本实施例中,若确定目标受控信息与目标测试类型不匹配,则说明非GPIO管脚在通信模组中的硬件连接关系不能进行目标测试类型的测试,为了能够使非GPIO管脚在通信模组中的硬件连接关系能够进行目标测试类型的测试,采用通用引导加载程序调整目标受控信息,在调整目标受控信息时,控制非GPIO管脚调整在通信模组中的硬件连接关系,使非GPIO管脚受控于与目标测试类型匹配的模块或部件,进而使调整后的受控信息与目标测试类型匹配,就可对非GPIO管脚进行目标测试类型的测试。
本实施例中提供的通信模组的管脚测试方法,在执行目标测试软件,以对非GPIO管脚进行目标测试类型对应的测试之后,对预置的标志位取值进行复位,以改变非GPIO管脚对应的目标测试类型;采用通用引导加载程序调整非GPIO管脚的目标受控信息,以使调整后的受控信息与目标测试类型匹配。通过对预置的标志位取值进行复位的方式,即可触发对非GPIO管脚进行另一种测试类型的测试,并在调整后的受控信息与另一种目标测试类型匹配时,就可从归一化版本软件中获取与另一种目标测试类型对应的测试软件并执行测试软件,以对非GPIO管脚进行另一种目标测试类型对应的测试,无需获取不同版本的软件进行测试,有效提高了对非GPIO管脚进行测试时的效率。
实施例三
图4为本发明一实施例提供的通信模组的管脚测试装置的结构示意图,如图4所示,本实施例提供的通信模组的管脚测试装置40包括:读取模块41,确定模块42及获取模块43。
其中,读取模块41,用于响应于接收到的对目标通信模组中非GPIO管脚的管脚测试请求,从目标通信模组对应的闪存中读取预置的标志位取值。确定模块42,用于根据预置的标志位取值确定对非GPIO管脚进行测试的目标测试类型。获取模块43,用于若确定非GPIO管脚的目标受控信息与目标测试类型匹配,则在归一化版本软件中获取与目标测试类型对应的目标测试软件并执行目标测试软件,以对非GPIO管脚进行目标测试类型对应的测试。
本实施例提供的通信模组的管脚测试装置可以执行图2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
可选地,读取模块41,具体用于:
响应于接收到的对目标通信模组中非GPIO管脚的管脚测试请求,控制目标通信模组进行上电启动;在目标通信模组上电启动过程中执行通用引导加载程序;采用通用引导加载程序从目标通信模组对应的闪存中读取预置的标志位取值。
可选地,本实施例提供的通信模组的管脚测试装置还包括:判断模块。
其中,判断模块,在判断非GPIO管脚的目标受控信息与目标测试类型是否匹配时,具体用于:
采用通用引导加载程序获取非GPIO管脚的目标受控信息及预先存储的非GPIO管脚的受控信息与测试类型的映射关系;根据映射关系确定与目标受控信息具有映射关系的测试类型;若确定具有映射关系的测试类型与目标测试类型一致,则确定目标受控信息与目标测试类型相匹配;若确定具有映射关系的测试类型与目标测试类型不一致,则确定目标受控信息与目标测试类型不匹配。
可选地,本实施例提供的通信模组的管脚测试装置还包括:调整模块。
调整模块,在判断模块确定目标受控信息与目标测试类型不匹配时,用于采用通用引导加载程序调整目标受控信息,以使调整后的受控信息与目标测试类型匹配。
可选地,确定模块42,具体用于:
若确定预置的标志位取值为第一预设数值,则确定目标测试类型为硬件通用测试;若确定预置的标志位取值为第二预设数值,则确定目标测试类型为功能测试。
可选地,获取模块43,在归一化版本软件中获取与目标测试类型对应的目标测试软件时,具体用于:
根据目标测试类型确定目标测试软件在归一化版本软件中的起始位置及终止位置;根据起始位置及终止位置获取对应的目标测试软件。
可选地,本实施例提供的通信模组的管脚测试装置还包括:复位模块,用于执行目标测试软件,以对非GPIO管脚进行目标测试类型对应的测试之后,对预置的标志位取值进行复位,以改变非GPIO管脚对应的目标测试类型。
相应地,调整模块,还用于采用通用引导加载程序调整非GPIO管脚的目标受控信息,以使调整后的受控信息与目标测试类型匹配。
可选地,本实施例提供的通信模组的管脚测试装置还包括:存储模块和配置模块。
其中,存储模块,用于将预置的标志位取值动态存储在闪存中。配置模块,用于配置预置的标志位具有备份恢复特性。
可选地,存储模块,具体用于:
获取闪存的分区中不是坏块且空闲的目标存储地址;将预置的标志位取值以键值对的方式存储在目标存储地址中。
本实施例提供的通信模组的管脚测试装置还可以执行图3所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
实施例四
图5为本发明一实施例提供的电子设备的结构示意图,如图5所示,该电子设备500包括:处理器502以及与处理器通信连接的存储器501。
其中,存储器501,存储计算机执行指令。处理器502处理器执行存储器存储的计算机执行指令,以实现对应实施例提供的通信模组的管脚测试方法。
相关说明可以对应参见附图中的步骤所对应的相关描述和效果进行理解,此处不做过多赘述。
在图5对应的实施例中,程序可以包括程序代码,程序代码包括计算机执行指令。存储器可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
其中,存储器、收发器和处理器通过总线连接。总线可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(PeripheralComponent Interconnect,简称为PCI)总线或扩展工业标准体系结构(Extended IndustryStandard Architecture,简称为EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行以实现本发明任一个实施例提供的通信模组的管脚测试方法。
本发明实施例还提供一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现上述任意一个实施例提供的通信模组的管脚测试方法。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
用于实施本发明的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

Claims (13)

1.一种通信模组的管脚测试方法,其特征在于,包括:
响应于接收到的对目标通信模组中非GPIO管脚的管脚测试请求,从目标通信模组对应的闪存中读取预置的标志位取值;
根据所述预置的标志位取值确定对所述非GPIO管脚进行测试的目标测试类型;
若确定所述非GPIO管脚的目标受控信息与所述目标测试类型匹配,则在归一化版本软件中获取与所述目标测试类型对应的目标测试软件并执行所述目标测试软件,以对所述非GPIO管脚进行目标测试类型对应的测试。
2.根据权利要求1所述的方法,其特征在于,所述响应于接收到的对目标通信模组中非GPIO管脚的管脚测试请求,从目标通信模组对应的闪存中读取预置的标志位取值,包括:
响应于接收到的对目标通信模组中非GPIO管脚的管脚测试请求,控制所述目标通信模组进行上电启动;
在所述目标通信模组上电启动过程中执行通用引导加载程序;
采用通用引导加载程序从目标通信模组对应的闪存中读取所述预置的标志位取值。
3.根据权利要求2所述的方法,其特征在于,判断非GPIO管脚的目标受控信息与所述目标测试类型是否匹配,包括:
采用所述通用引导加载程序获取非GPIO管脚的目标受控信息及预先存储的非GPIO管脚的受控信息与测试类型的映射关系;
根据所述映射关系确定与目标受控信息具有映射关系的测试类型;
若确定具有映射关系的测试类型与所述目标测试类型一致,则确定目标受控信息与所述目标测试类型相匹配;
若确定具有映射关系的测试类型与所述目标测试类型不一致,则确定目标受控信息与所述目标测试类型不匹配。
4.根据权利要求3所述的方法,其特征在于,若确定目标受控信息与所述目标测试类型不匹配,则还包括:
采用通用引导加载程序调整所述目标受控信息,以使调整后的受控信息与所述目标测试类型匹配。
5.根据权利要求1所述的方法,其特征在于,所述根据所述预置的标志位取值确定对所述非GPIO管脚进行测试的目标测试类型,包括:
若确定所述预置的标志位取值为第一预设数值,则确定目标测试类型为硬件通用测试;
若确定所述预置的标志位取值为第二预设数值,则确定目标测试类型为功能测试。
6.根据权利要求1所述的方法,其特征在于,所述在归一化版本软件中获取与所述目标测试类型对应的目标测试软件,包括:
根据所述目标测试类型确定目标测试软件在归一化版本软件中的起始位置及终止位置;
根据所述起始位置及终止位置获取对应的目标测试软件。
7.根据权利要求2所述的方法,其特征在于,所述执行所述目标测试软件,以对所述非GPIO管脚进行目标测试类型对应的测试之后,还包括:
对所述预置的标志位取值进行复位,以改变非GPIO管脚对应的目标测试类型;
采用通用引导加载程序调整非GPIO管脚的目标受控信息,以使调整后的受控信息与所述目标测试类型匹配。
8.根据权利要求1-7任一项所述的方法,其特征在于,从目标通信模组对应的闪存中读取预置的标志位取值之前,还包括:
将预置的标志位取值动态存储在闪存中;
配置所述预置的标志位具有备份恢复特性。
9.根据权利要求8所述的方法,其特征在于,所述将预置的标志位取值动态存储在闪存中,包括:
获取闪存的分区中不是坏块且空闲的目标存储地址;
将所述预置的标志位取值以键值对的方式存储在所述目标存储地址中。
10.一种通信模组的管脚测试装置,其特征在于,包括:
读取模块,用于响应于接收到的对目标通信模组中非GPIO管脚的管脚测试请求,从目标通信模组对应的闪存中读取预置的标志位取值;
确定模块,用于根据所述预置的标志位取值确定对所述非GPIO管脚进行测试的目标测试类型;
获取模块,用于若确定所述非GPIO管脚的目标受控信息与所述目标测试类型匹配,则在归一化版本软件中获取与所述目标测试类型对应的目标测试软件并执行所述目标测试软件,以对所述非GPIO管脚进行目标测试类型对应的测试。
11.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1-9中任一项所述的方法。
12.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行以实现如权利要求1-9中任一项所述的方法。
13.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-9中所述的方法。
CN202211459655.6A 2022-11-21 2022-11-21 通信模组的管脚测试方法、装置、设备、介质及产品 Pending CN118057191A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211459655.6A CN118057191A (zh) 2022-11-21 2022-11-21 通信模组的管脚测试方法、装置、设备、介质及产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211459655.6A CN118057191A (zh) 2022-11-21 2022-11-21 通信模组的管脚测试方法、装置、设备、介质及产品

Publications (1)

Publication Number Publication Date
CN118057191A true CN118057191A (zh) 2024-05-21

Family

ID=91069468

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211459655.6A Pending CN118057191A (zh) 2022-11-21 2022-11-21 通信模组的管脚测试方法、装置、设备、介质及产品

Country Status (1)

Country Link
CN (1) CN118057191A (zh)

Similar Documents

Publication Publication Date Title
US20050177709A1 (en) Apparatus and method for updating firmware
CN108647140B (zh) 一种移动终端的测试方法及测试系统
CN103309693A (zh) 复杂可编程逻辑器件更新方法及系统
CN104572387A (zh) 一种工程模式下调试终端的方法及装置
US5819108A (en) Programming of software into programmable memory within a peripheral device
CN112269584A (zh) 一种PCIe Switch固件更新方法、装置、电子设备及介质
CN113315675B (zh) 一种白盒交换机U-Boot自动化测试方法、系统和存储介质
CN115510804A (zh) 全芯片管脚复用自动化验证方法、装置、设备及存储介质
CN114816491A (zh) 用于多系统移动终端的系统升级方法、装置及终端
CN112015587B (zh) 一种增强操作系统可靠性的方法及装置
CN112199272A (zh) 一种智能终端的测试方法、装置、终端设备及介质
CN118057191A (zh) 通信模组的管脚测试方法、装置、设备、介质及产品
US7047444B2 (en) Address selection for testing of a microprocessor
CN106444730B (zh) 一种防软件僵死的电子控制单元的诊断方法
CN114496053A (zh) 数据异常检测方法、装置、设备及计算机可读存储介质
US10922023B2 (en) Method for accessing code SRAM and electronic device
US20010052114A1 (en) Data processing apparatus
CN111858198A (zh) 一种多方案内存插拔测试方法、系统、终端及存储介质
CN109426506B (zh) 选用只读存储器的加载方法
CN112256338B (zh) Soc启动方法、装置、计算机设备及存储介质
US11714744B2 (en) System and method for diagnosing a computing device in safe mode
CN113127281B (zh) 一种aspm测试方法、系统、设备以及存储介质
US20240176887A1 (en) Method for Running Startup Program of Electronic Device, and Electronic Device
CN114911651A (zh) 执行工厂测试的服务器测试方法及其系统
CN115408287A (zh) 板卡中基础软件的检测方法、装置、设备及存储介质

Legal Events

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