本申请涉及移动终端,特别是涉及一种启动固件的控制方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
背景技术:
1、传统技术中,电子设备的bios等启动固件不支持在启动阶段使用手柄设备,用户通常需要进入操作系统并加载相应的手柄驱动程序后,才能正常使用手柄的功能,因而需要电子设备连接外部键盘,才能对启动固件进行配置。
2、然而,掌机等小型设备的屏幕相对较小,使用键盘进入启动固件的控制界面较为不便,操作复杂性较高,控制效率低。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种能够提高控制效率的启动固件的控制方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
2、第一方面,本申请提供了一种启动固件的控制方法,所述方法包括:
3、在启动固件检测到手柄的情况下,获取所述手柄传输的原始数据;所述手柄设有手柄按键;
4、按照所述手柄按键与键盘扫描码之间的对应关系,对所述原始数据中位于预设字节位置的数值进行映射,得到映射后键盘扫描码与所述映射后键盘扫描码匹配的编码值;
5、根据所述映射后键盘扫描码和所述编码值对应的操作指令,对所述启动固件进行控制。
6、在其中一个实施例中,所述按照所述手柄按键与键盘扫描码之间的对应关系,对所述原始数据中位于预设字节位置的数值进行映射,得到映射后键盘扫描码与所述映射后键盘扫描码匹配的编码值,包括:
7、对所述原始数据中位于所述预设字节位置的数值进行解析,得到手柄键值;所述手柄键值是存在按压事件的所述手柄按键对应的键值;
8、按照所述手柄按键与键盘扫描码之间的对应关系,对所述手柄键值进行映射,得到映射后键盘扫描码与所述映射后键盘扫描码匹配的编码值;所述映射后键盘扫描码是与键盘按键对应的扫描码。
9、在其中一个实施例中,所述原始数据包括第一原始数据和第二原始数据,所述第一原始数据先于所述第二原始数据传输的;
10、所述对所述原始数据中位于所述预设字节位置的数值进行解析,得到手柄键值,包括:
11、判断所述第二原始数据中位于预设字节位置的数值与所述第一原始数据中位于预设字节位置的数值是否相同;
12、若相同,则继续获取新的所述第二原始数据;
13、若不相同,则基于所述第二原始数据中位于预设字节位置的数值与所述第一原始数据中位于预设字节位置的数值,确定变化后数值;根据所述变化后数值确定所述第二原始数据对应的手柄键值。
14、在其中一个实施例中,所述根据所述变化后数值确定所述第二原始数据对应的手柄键值,包括:
15、将所述变化后数值存储到所述手柄按键对应的队列中;
16、按照预设时间间隔,从所述手柄键值对应的队列获取待定手柄键值;
17、在所述待定手柄键值中,根据数值与预设数值匹配的位,确定第二原始数据对应的手柄键值。
18、在其中一个实施例中,所述方法还包括:
19、通过所述启动固件加载手柄驱动程序;所述手柄驱动是基于uefi协议创建的,所述手柄驱动具有所述uefi协议下的键盘值读取接口;
20、所述键盘值读取接口用于获取所述映射后键盘扫描码与所述编码值。
21、在其中一个实施例中,所述启动固件检测到手柄之前,还包括:
22、在待检测部件接入的情况下,通过数据传输协议获取所述待检测部件的设备描述符与接口描述符;
23、所述启动固件检测到手柄,包括:
24、在所述设备描述符表示手柄,且所述接口描述符对应于所述手柄的接口时,确定启动固件检测到手柄。
25、第二方面,本申请还提供了一种启动固件的控制装置,包括:
26、获取模块,用于在启动固件检测到手柄的情况下,获取所述手柄传输的原始数据;所述手柄设有手柄按键;
27、转换模块,用于按照所述手柄按键与键盘扫描码之间的对应关系,对所述原始数据中位于预设字节位置的数值进行映射,得到映射后键盘扫描码与所述映射后键盘扫描码匹配的编码值;
28、控制模块,用于根据所述映射后键盘扫描码和所述编码值对应的操作指令,对所述启动固件进行控制。
29、第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任意实施例中启动固件的控制方法的步骤。
30、第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意实施例中启动固件的控制方法的步骤。
31、第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述任意实施例中启动固件的控制方法的步骤。
32、上述启动固件的控制方法、装置、计算机设备、计算机可读存储介质和计算机程序产品,该方法包括:在启动固件检测到手柄的情况下,获取所述手柄传输的原始数据,使得启动阶段运行的启动固件能够与手柄之间形成数据传输过程,奠定启动固件的控制基础。在此基础上,由于手柄每次传输的原始数据含有多个字节,每个字节的用途及含义可能有所区别,因而为了减少这一过程所使用的数据量,按照所述手柄按键与键盘扫描码之间的对应关系,对所述原始数据中位于预设字节位置的数值进行映射,得到映射后键盘扫描码,并通过该对应关系确定所述映射后键盘扫描码匹配的编码值,形成两个维度的控制信息。进而,根据所述映射后键盘扫描码与该编码值对应的操作指令,对所述启动固件进行控制,以通过两个维度下的操作指令,更准确地控制启动固件。由此,使用尺寸更小的手柄进入启动固件的控制界面,且操作按键相对较少,无需接入键盘,操作便捷,控制效率高。
1.一种启动固件的控制方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述按照所述手柄按键与键盘扫描码之间的对应关系,对所述原始数据中位于预设字节位置的数值进行映射,得到映射后键盘扫描码与所述映射后键盘扫描码匹配的编码值,包括:
3.根据权利要求2所述的方法,其特征在于,所述原始数据包括第一原始数据和第二原始数据,所述第一原始数据先于所述第二原始数据传输的;
4.根据权利要求3所述的方法,其特征在于,所述根据所述变化后数值确定所述第二原始数据对应的手柄键值,包括:
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,所述启动固件检测到手柄之前,还包括:
7.一种启动固件的控制装置,其特征在于,所述装置包括:
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。