具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明第一实施例提供的模组识别方法流程图。如图1所示,本实施例模组识别方法包括:
步骤11、终端的GPIO与待识别模组上用于标识模组类型的管脚ID PIN连接,ID PIN预配置为接电源状态、接地状态或悬空状态,不同的预配置状态对应不同的模组类型。
本发明实施例中的终端例如:笔记本、手机或其他移动终端。模组例如:LCD模组或摄像模组等。不同模组类型可通过ID PIN的不同预配置状态区分。GPIO与ID PIN一一对应连接。
步骤12、读取GPIO在预设的内部电阻的上下拉状态下的输入电位,根据输入电位确定所述ID PIN的预配置状态。
GPIO的内部电阻的上下拉状态可设置为:内部电阻下拉至低电位状态或内部电阻上拉至高电位状态。ID PIN的预配置状态为接电源状态、接地状态或悬空状态。当GPIO设置好内部电阻的上下拉状态之后读取GPIO的输入电位,根据该输入电位,可获取ID PIN预配置的状态与GPIO设置的内部电阻的上下拉状态之间的相对关系,从而确定ID PIN的预配置状态。
步骤13、确定ID PIN的预配置状态对应的模组类型,并初始化模组。
不同类型的模组的驱动信息和性能参数等初始化配置信息,可预先存储在终端中。终端确定模组类型之后,采用相应的初始化配置信息对模组进行初始化配置,以便建立与模组之间的通信。
本实施例模组识别方法根据模组类型将模组的ID PIN预先配置为接电源状态、接地状态或悬空状态,终端通过一个GPIO可区分三种不同类型的模组,相对于一个GPIO可区分二种不同类型的模组的现有技术,本实施例模组识别方法提高了终端用于识别模组类型的GPIO的利用率。
图2为本发明第二实施例提供的模组识别方法流程图。本实施例以手机识别LCD模组的具体应用场景为例,说明本发明模组识别方法的技术方案。
本实施例应用场景中假设:某一手机识别三个LCD模组,三个LCD模组分别为不同类型的LCD模组(如:A类、B类和C类),三者各自的ID PIN的预配置状态分别为内置电阻上拉电源状态、内置电阻置地状态和悬空状态。不同LCD模组初始化时所需的初始配置信息不同,手机中预先存储了LCD模组类型与初始配置信息之间的映射关系。
步骤21、手机的GPIO与待识别的LCD模组连接。
步骤22、手机将GPIO的属性设置为输入,并将GPIO的内部电阻的上下拉状态设置为内部电阻下拉至低电位状态。
步骤23、手机读取GPIO的输入电位,如果GPIO的输入电位为高电平“1”,执行步骤24;如果ID PIN的输入电位为低电平“0”,执行步骤25。
步骤24、由于GPIO内部电阻的上下拉状态为内部电阻下拉至低电位状态,ID PIN的输入电位为高电位“1”,则说明与LCD模组的预配置状态与GPIO内部电阻的上下拉状态相反,LCD模组的预配置状态为接电源状态,该LCD模组的模组类型为类型A;根据类型A对应的初始配置信息对该LCD模组进行初始化配置,该初始配置信息可包括驱动IC的驱动程序等驱动信息,还可包括色彩、对比度等显示性能配置参数;结束本流程。
步骤25、手机将GPIO的内部电阻的上下拉状态设置为内部电阻上拉至高电位状态。
步骤26、手机读取GPIO的输入电位,如果GPIO的输入电位为高电平“1”,执行步骤27;如果ID PIN的输入电位为低电平“0”,执行步骤28。
步骤27、由于GPIO内部电阻的上下拉状态为内部电阻上拉至高电位状态,ID PIN的输入电位为高电位“1”,则说明与LCD模组的预配置状态与GPIO内部电阻的上下拉状态相同,LCD模组的预配置状态为悬空状态,该LCD模组的模组类型为类型C;根据类型C所需的初始配置信息对该LCD模组进行初始化配置,该初始配置信息可包括驱动IC的驱动程序等驱动信息,还可包括色彩、对比度等显示性能配置参数;结束本流程。
步骤28、由于GPIO内部电阻的上下拉状态为内置电阻上拉电源状态,ID PIN的输入电位为低电位“0”,则说明与LCD模组的预配置状态与GPIO内部电阻的上下拉状态相反,LCD模组的预配置状态为接地状态,该LCD模组的模组类型为类型B;根据类型B所需的初始配置信息对该LCD模组进行初始化配置,该初始配置信息可包括驱动IC的驱动程序等驱动信息,还可包括色彩、对比度等显示性能配置参数;结束本流程。
本实施例模组识别方法中,通过将手机与LCD模组连接的GPIO内部电阻的上下拉状态分别设置成内部电阻下拉至低电位状态和内部电阻上拉至高电位状态,并分别读取GPIO的输入电位,根据GPIO的输入电位识别三种不同类型的LCD模组,从而提高了GPIO的利用率。
本实施例是将GPIO的内部电阻的上下拉状态首先设置为内部电阻下拉至低电位状态,在确定一种LCD模组的类型之后,再将GPIO的内部电阻的上下拉状态设置为内部电阻上拉至高电位状态并读取GPIO的输入电位,根据GPIO的输入电位确定出其他两种LCD模组的类型。本领域技术人员可以理解,在本实施例技术方案的基础上,还可得到变形实施例。例如:
首先设置GPIO的内部电阻的上下拉状态为内部电阻上拉至高电位状态并读取GPIO的输入电位,如果GPIO的输入电位为高电位,确定ID PIN的预配置状态为悬空状态;否则,设置GPIO的内部电阻的上下拉状态为内部电阻下拉至低电位状态并读取GPIO的输入电位,如果GPIO的输入电位为高电位,确定ID PIN的预配置状态为接电源状态,如果GPIO输入电位为低电位,确定ID PIN的预配置状态为接地状态,从而实现一个GPIO根据ID PIN的三种不同的预配置状态,识别三种不同类型的LCD模组。
举例说明:预留n个用于识别模组的GPIO的终端而言,采用现有的模组识别方法,一个GPIO支持2个模组类型的识别,该终端共可支持2n个模组类型的识别,而采用本实施例模组识别方法,一个GPIO支持3个模组类型的识别,该终端可支持3n个模组类型的识别,支持识别模组类型的数量增加了。
通过上述分析可知,本实施例模组识别方法根据模组类型将模组的IDPIN预先配置为接电源状态、接地状态或悬空状态,终端通过一个GPIO可区分三种不同类型的模组,相对于一个GPIO可区分二种不同类型的模组的现有技术,本实施例模组识别方法提高了终端用于识别模组类型的GPIO的利用率。如果终端支持的模组类型数量较大,采用本实施例提供的方法识别相同模组类型所需的GPIO数量,相对于现有技术识别相同模组类型所需的GPIO数量将明显减少,节约出来的GPIO可提供终端其他业务所需的连接,从而有利于进一步提高GPIO的利用率。
图3为本发明第三实施例提供的终端的结构示意图。如图3所示,本实施例终端包括:连接模块31、预配置状态确定模块32和识别模块33。
连接模块31用于将终端的GPIO与待识别模组上用于标识模组类型的管脚ID PIN连接,ID PIN预配置为接电源状态、接地状态或悬空状态,不同的预配置状态对应不同的模组类型。
预配置状态确定模块32用于读取GPIO在预设的内部电阻的上下拉状态下的输入电位,根据输入电位确定ID PIN的预配置状态。
识别模块33用于确定ID PIN的预配置状态对应的模组类型,并初始化模组。
在上述技术方案的基础上,GPIO的内部电阻的上下拉状态可设置为:内部电阻下拉至低电位状态或内部电阻上拉至高电位状态。相应的,预配置状态确定模块32还可用于读取GPIO在预设的内部电阻的上下拉状态为内部电阻下拉至低电位状态下的输入电位,如果输入电位为高电位,确定ID PIN的预配置状态为接电源状态;否则,读取GPIO在预设的内部电阻的上下拉状态为内部电阻上拉至高电位状态下的输入电位,如果输入电位为高电位,确定ID PIN的预配置状态为悬空状态,如果输入电位为低电位,确定ID PIN的预配置状态为接地状态。或者,预配置状态确定模块32还可用于读取GPIO在预设的内部电阻的上下拉状态为内部电阻上拉至高电位状态下的输入电位,如果输入电位为高电位,确定ID PIN的预配置状态为悬空状态;否则,读取GPIO在预设的内部电阻的上下拉状态为内部电阻下拉至低电位状态下的输入电位,如果输入电位为高电位,确定ID PIN的预配置状态为接电源状态,如果输入电位为低电位,确定ID PIN的预配置状态为接地状态。
本发明实施例根据模组类型将模组的ID PIN预先配置为接电源状态、接地状态或悬空状态,终端通过一个GPIO可区分三种不同类型的模组,提高了终端用于识别模组类型的GPIO的利用率。
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域普通技术人员可以理解:实施例中的装置中的模块可以按照实施例描述分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。