一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

读写器快速输出标签数据的方法、读写器、接收终端与流程

2022-07-17 00:18:27 来源:中国专利 TAG:


1.本发明涉及射频识别技术领域,具体涉及一种读写器快速输出标签数据的方法、读写器、接收终端。


背景技术:

2.射频识别(radio frequency identification,rfid)是一种自动识别技术,是构建物联网的关键技术。rfid系统主要由读写器和应答器构成。应答器主要由天线、耦合元件及芯片组成,一般来说用标签作为应答器,每个标签具有唯一的电子产品代码,附着在物体上标识目标对象。读写器,或称为阅读器,主要由天线、耦合元件及芯片组成,是读取和/或写入标签信息的设备,可设计为可移动的手持设备或固定设备。
3.在读写器的一些应用场景中,需要将读写器读取到的标签或者条码的数据传输至另一数据接收设备,例如传输至手机、电脑,服务器等。在条码或者标签数据的录入过程中,为了替代手动输入,通常的做法是在该数据接收设备上模拟虚拟键盘。该读写器可以在识别到标签之后,通过该虚拟键盘获取到数据接收设备的输入光标,然后采用该数据接收设备的虚拟键盘实现数据的输入。
4.读写器可以采用通用串行总线(universal serial bus,usb)等有线连接的方式与该数据接收设备进行连接。但是在实际应用场景中为了移动便利,大多会采用蓝牙等无线的方式进行通信连接。出于对于无线设备自身省电的角度考虑,目前采用无线通信的方式均对于数据传输的速度有一定限制。而这样会造成读写器的数据传输速度较为缓慢。


技术实现要素:

5.本技术实施例提供一种读写器快速输出标签数据的方法、读写器、接收终端。能够提高读写器输出标签数据的传输速度。
6.有鉴于此,本技术第一方面提供了一种读写器快速输出标签数据的方法,该方法包括:根据标签数据获取目标字符串,其中,所述目标字符串的长度不超过设定字节长度;将所述目标字符串中的字符对应的键值设置在n个数据包的键值区,在所述n个数据包中,从第一个数据包至第n个数据包的键值区中包含的不为零的键值数依次减一,其中,n≥2,且n为整数;向接收终端发送n 1个数据包,其中,前n个数据包按照所述n个数据包中第一个数据包至第n个数据包的次序依次发送,第n 1个数据包的键值区中所有键值均为零,以指示所述接收终端根据第一个数据包至第n 1个数据包键值区中的键值依次获取所述目标字符串的每个字符。
7.这样将目标字符串中的字符对应的键值设置在该n个数据包的键值区中,然后向接收终端发送n 1个数据包,该接收终端可以根据接收到的该n 1个数据包依次确定目标字符串的每个字符。而传统的输出标签数据的方法需要每一个字符发送一个按下按键的数据包,以及一个释放按键的数据包,从而使得接收终端获取到一个字符。然后读写器才能发送下一个按下按键的数据包
……
本方案相较于传统方法能够一次性地发送多个数据包,而接
收终端也不会产生混乱的情况,能够按顺序地获取到多个字符,可以显著地提高标签数据输出效率。
8.可选的,结合第一方面,在一种可能的实现方式中,所述目标字符串具有n个字符,所述指示所述接收终端根据第一个数据包至第n 1个数据包键值区中的键值依次获取所述目标字符串的每个字符具体包括:指示所述接收终端根据第i个数据包与第i 1个数据包键值区中的键值确定所述目标字符串中的第i个字符,其中,1≤i≤n。这样该接收终端可以根据该n个数据包中每相连的两个数据包可以确定一个具体的字符,能够在不造成字符串中字符顺序错乱的情况下,依次获取到每个字符。
9.可选的,结合第一方面,在一种可能的实现方式中,所述指示所述接收终端根据所述第一数据包与所述第二数据包键值区中的键值确定所述目标字符串的第一个字符具体包括:指示所述接收终端确定第一目标键值区,所述第i个数据包的第一目标键值区上的键值不为零,且所述第i 1个数据包的第一目标键值区上的键值为零;指示所述接收终端根据所述第i个数据包的第一目标键值区上的键值确定所述目标字符串的第i个字符。通过这样的方法能够查找到每个数据包的第一目标键值区上的键值,并能够根据该第一目标键值区上的键值确定对应的字符。
10.可选的,结合第一方面,在一种可能的实现方式中,所述n个数据包中的每个数据包还包含功能键状态标识,所述指示所述接收终端根据第一个数据包至第n 1个数据包键值区中的键值依次获取所述目标字符串的每个字符具体包括:指示所述接收终端获取第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识;指示所述接收终端根据所述第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识确定所述目标字符串的每个字符。这样能够扩展本方案的应用场景,能够使得读写器用于传输功能键状态标识加上字符的一些应用场景。
11.可选的,结合第一方面,在一种可能的实现方式中,所述指示所述接收终端根据所述第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识确定所述目标字符串的每个字符具体包括:指示所述接收终端确定所述第j个数据包与第j 1个数据包的第二目标键值区,并根据所述第j个数据包的第二目标键值区的键值与所述第j个数据包中包含的功能键状态标识确定所述目标字符串的第j个字符,所述第j个数据包的第二目标键值区上的键值不为零,且所述第j 1个数据包的第二目标键值区上的键值为零。这样该接收终端可以根据每个数据包中的功能键状态标识进一步确定目标字符串,能够提高标签数据的传输范围。能够增加可传输的字符种类。
12.可选的,结合第一方面,在一种可能的实现方式中,所述根据标签数据获取目标字符串具体包括:将所述标签的数据分割成至少两个目标字符串,所述至少两个目标字符串中的每个字符串不同时具有大写字母与小写字母。这样可以免于每一次采用功能键状态标识中大写锁定键,能够减少数据包中功能键状态标识的使用,以及可以避免当一个字符需要既采用大写锁定键与其他功能键来标识时,无法通过一个功能键状态来标识的冲突。
13.可选的,结合第一方面,在一种可能的实现方式中,所述向接收终端发送n 1个数据包具体包括:在一个最小扫描间隔内向接收终端发送n 1个数据包。这样能够显著的提高数据传输效率。
14.本技术第二方面提供了一种读写器快速输出标签数据的方法,所述方法包括:从
读写器依次接收n 1个数据包,其中,前n个数据包的键值区设置有目标字符串中的字符对应的键值,且所述n个数据包中,第一个数据包至第n个数据包键值区中包含的不为零的键值数依次减一,第n 1个数据包中所有键值均为零,n≥2,且n为整数;根据第一个数据包至第n 1个数据包键值区中的键值依次获取所述目标字符串的每个字符。
15.可选的,结合第二方面,在一种可能的实现方式中,所述目标字符串具有n个字符,所述根据第一个数据包至第n 1个数据包中的键值依次获取所述目标字符串的每个字符具体包括:根据第i个数据包与第i 1个数据包键值区中的键值确定所述目标字符串中的第i个字符,其中,1≤i≤n。
16.可选的,结合第二方面,在一种可能的实现方式中,所述方法具体包括:确定第一目标键值区,所述第i个数据包的第一目标键值区上的键值不为零,且所述第i 1个数据包的第一目标键值区上的键值为零;根据所述第i个数据包的第一目标键值区上的键值确定所述目标字符串的第i个字符。
17.可选的,结合第二方面,在一种可能的实现方式中,所述n个数据包中的每个数据包还包含功能键状态标识,所述根据第一个数据包至第n 1个数据包键值区中的键值依次获取所述目标字符串的每个字符具体包括:获取第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识;根据所述第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识确定所述目标字符串的每个字符。
18.可选的,结合第二方面,在一种可能的实现方式中,所述根据所述第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识确定所述目标字符串的每个字符具体包括:确定所述第j个数据包与第j 1个数据包的第二目标键值区,并根据所述第j个数据包的第二目标键值区的键值与所述第j个数据包中包含的功能键状态标识确定所述目标字符串的第j个字符,所述第j个数据包的第二目标键值区上的键值不为零,且所述第j 1个数据包的第二目标键值区上的键值为零。
19.可选的,结合第二方面,在一种可能的实现方式中,所述目标字符串是所述读写器根据标签数据获取的,其中,所述目标字符串不同时具有大写字母与小写字母。
20.可选的,结合第二方面,在一种可能的实现方式中,所述n 1个数据包是所述读写器在一个最小扫描间隔内发送的。
21.本身第三方面提供了一种读写器,所述读写器包括:获取模块,用于获取目标字符串,其中,所述目标字符串的长度不超过设定字节长度;设置模块,用于将所述目标字符串中的字符对应的键值设置在n个数据包的键值区,在所述n个数据包中,从第一个数据包至第n个数据包的键值区中包含的不为零的键值数依次减一,其中,n≥2,且n为整数;发送模块,用于向接收终端发送n 1个数据包,其中,前n个数据包按照所述n个数据包中第一个数据包至第n个数据包的次序依次发送,第n 1个数据包的键值区中所有键值均为零,以指示所述接收终端根据第一个数据包至第n 1个数据包中键值区中的键值依次获取所述目标字符串的每个字节。
22.可选的,结合第三方面,在一种可能的实现方式中,所述目标字符串具有n个字符,所述发送模块,具体用于指示所述接收终端根据第一个数据包至第n 1个数据包键值区中的键值依次获取所述目标字符串的每个字符具体包括:指示所述接收终端根据第i个数据包与第i 1个数据包键值区中的键值确定所述目标字符串中的第i个字符,其中,1≤i≤n。
23.可选的,结合第三方面,在一种可能的实现方式中,所述发送模块,具体用于:指示所述接收终端确定第一目标键值区,所述第i个数据包的第一目标键值区上的键值不为零,且所述第i 1个数据包的第一目标键值区上的键值为零;指示所述接收终端根据所述第i个数据包的第一目标键值区上的键值确定所述目标字符串的第i个字符。
24.可选的,结合第三方面,在一种可能的实现方式中,所述n个数据包中的每个数据包还包含功能键状态标识,所述发送模块,具体用于指示所述接收终端获取第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识;指示所述接收终端根据所述第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识确定所述目标字符串的每个字符。
25.可选的,结合第三方面,在一种可能的实现方式中,所述指示所述接收终端根据所述第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识确定所述目标字符串的每个字符具体包括:指示所述接收终端确定所述第j个数据包与第j 1个数据包的第二目标键值区,并根据所述第j个数据包的第二目标键值区的键值与所述第j个数据包中包含的功能键状态标识确定所述目标字符串的第j个字符,所述第j个数据包的第二目标键值区上的键值不为零,且所述第j 1个数据包的第二目标键值区上的键值为零。
26.可选的,结合第三方面,在一种可能的实现方式中,所述获取模块,具体用于:将所述标签的数据分割成至少两个目标字符串,所述至少两个目标字符串中的每个字符串不同时具有大写字母与小写字母。
27.可选的,结合第三方面,在一种可能的实现方式中,所述发送模块,具体用于,在一个最小扫描间隔内向接收终端发送n 1个数据包。
28.本技术第四方面提供了一种接收终端,该接收终端包括:接收模块,用于从读写器依次接收n 1个数据包,所述n 1个数据包中的前n个数据包的键值区设置有目标字符串中的字符对应的键值,且所述前n个数据包中,第一个数据包至第n个数据包键值区中包含的不为零的键值数依次减一,第n 1个数据包中所有键值均为零,n≥2,且n为整数,所述目标字符串是所述读写器根据标签数据获取的;处理模块,用于根据第一个数据包至第n 1个数据包中的键值依次获取所述目标字符串的每个字节。
29.可选的,结合第四方面,在一种可能的实现方式中,所述目标字符串具有n个字符,所述处理模块,具体用于根据第i个数据包与第i 1个数据包键值区中的键值确定所述目标字符串中的第i个字符,其中,1≤i≤n。
30.可选的,结合第四方面,在一种可能的实现方式中,所述处理模块具体用于:确定第一目标键值区,所述第i个数据包的第一目标键值区上的键值不为零,且所述第i 1个数据包的第一目标键值区上的键值为零;根据所述第i个数据包的第一目标键值区上的键值确定所述目标字符串的第i个字符。
31.可选的,结合第四方面,在一种可能的实现方式中,所述n个数据包中的每个数据包还包含功能键状态标识,所述处理模块,具体用于:获取第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识;根据所述第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识确定所述目标字符串的每个字符。
32.可选的,结合第四方面,在一种可能的实现方式中,所述处理模块,具体用于:确定所述第j个数据包与第j 1个数据包的第二目标键值区,并根据所述第j个数据包的第二目
标键值区的键值与所述第j个数据包中包含的功能键状态标识确定所述目标字符串的第j个字符,所述第j个数据包的第二目标键值区上的键值不为零,且所述第j 1个数据包的第二目标键值区上的键值为零。
33.可选的,结合第四方面,在一种可能的实现方式中,所述目标字符串是所述读写器根据标签数据获取的,其中,所述目标字符串不同时具有大写字母与小写字母。
34.可选的,结合第四方面,在一种可能的实现方式中,所述n 1个数据包是所述读写器在一个最小扫描间隔内发送的。
35.本技术第五方面提供了一种读写器,该读写器包括处理器、存储器、通信接口,所述存储器中存储有程序指令,当所述程序指令被所述处理器执行时,以实现如本技术第一方面至第一方面中任意一种实现方式中所述的读写器快速输出标签数据的方法。
36.本技术第六方面提供了一种接收终端,该接收终端包括处理器、存储器、通信接口,所述存储器中存储有程序指令,当所述程序指令被所述处理器执行时,以实现如本技术第二方面至第二方面中任意一种实现方式中所述的读写器快速输出标签数据的方法。
37.本技术第七方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有程序指令,所述程序指令在计算机上执行时,使得所述计算机执行如本技术第一方面至第一方面中任意一种实现方式中所述的读写器快速输出标签数据的方法。
38.本技术第八方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有程序指令,所述程序指令在计算机上执行时,使得所述计算机执行如本技术第二方面至第二方面中任意一种实现方式中所述的读写器快速输出标签数据的方法。
39.本技术提供了一种读写器快速输出标签数据的方法、读写器、接收终端。该方法包括:根据标签数据获取目标字符串,其中,所述目标字符串的长度不超过设定字节长度;将所述目标字符串中的字符对应的键值设置在n个数据包的键值区,在所述n个数据包中,从第一个数据包至第n个数据包的键值区中包含的不为零的键值数依次减一,其中,n≥2,且n为整数;向接收终端发送n 1个数据包,其中,前n个数据包按照所述n个数据包中第一个数据包至第n个数据包的次序依次发送,第n 1个数据包的键值区中所有键值均为零,以指示所述接收终端根据第一个数据包至第n 1个数据包键值区中的键值依次获取所述目标字符串的每个字符。
40.这样将目标字符串中的字符对应的键值设置在该n个数据包的键值区中,然后向接收终端发送n 1个数据包,该接收终端可以根据接收到的该n 1个数据包依次确定目标字符串的每个字符。而传统的输出标签数据的方法需要每一个字符发送一个按下按键的数据包,以及一个释放按键的数据包,从而使得接收终端获取到一个字符。然后读写器才能发送下一个按下按键的数据包
……
本方案相较于传统方法能够一次性地发送多个数据包,而接收终端也不会产生混乱的情况,能够按顺序地获取到多个字符,可以显著地提高标签数据输出效率。
附图说明
41.为了更清楚地说明申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
42.图1是本技术实施例提供的一种读写器盘点标签的场景图;图2是本技术实施例提供的一种读写器快速输出标签数据的方法流程图;图3是本技术实施例提供的一种读写器快速输出标签数据的方法流程图;图4是本技术实施例提供的一种读写器的模块结构示意图;图5是本技术实施例提供的一种接收终端的模块结构示意图;图6是本技术实施例提供的一种读写器的结构示意图。
具体实施方式
43.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
44.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
45.本技术中出现的术语“和/或”,可以是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本技术中字符“/”,一般表示前后关联对象是一种“或”的关系。
46.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块。
47.本文中的标签,是指rfid标签、射频标签或电子标签,简称为标签(tag)。本文中的读写器,也称为阅读器(reader),可以是uhf读写器。本文中的标签盘点系统,是一种rfid系统。本技术实施例技术可用于物流、零售、服装等各种领域。
48.请参见图1,图1提供了一个读写器盘点标签并实现数据传输的场景图。图1中该读写器10可能有大量的标签需要盘点,如图1所示,该读写器带读写的标签可以包括标签20-1,标签20-2,标签20-3
……
,标签20-n等一个或多个标签。在一个物流盘点系统中,可能存在一个或多个多个读写器10,多个读写器10各自盘点标签。当读写器10盘点到标签之后,将标签打包成为数据包,进而向数据接收器30发送数据包,从而使得该数据接收器30作为一个数据汇总中心,能够接收所有读写器10盘点到的标签数据,从而能够使得管理人员能够清楚地了解到整个物流系统中盘点到的标签及货物。
49.读写器在进行条码或者标签识别过程中,为了替代手动输入,可以在接收终端处模拟虚拟键盘,这样可以很快地通过读写器识别到标签之后,通过虚拟键盘快速地打印在
接收终端,如电脑、手机等终端的输入光标处。再使用usb设备模拟的键盘可以快速地打印。但是,在实际应用场景中,为了移动便利,部分采用蓝牙设备虚拟键盘,由于蓝牙设备大多是自身供电,蓝牙标准多为低功耗蓝牙,将蓝牙模拟成通用串行总线人体输入设备(universal serial bus-human interface device,usb-hid)键盘之后,出于对功耗的考虑,低功耗蓝牙协议对于传输的速度有限制。例如,android系统或者windows系统数据传输的时间间隔不能小于12毫秒,ios系统数据传输的时间间隔不能小于20毫秒。这就导致android系统或者windows系统理论上一个按键的输出时间至少为12毫秒。而12毫秒还只是理论上的值,实际传输中还可能会大于理论值。所以通常的读写器在将标签或条码数据输出至接收终端的过程中普遍存在传输速度比较慢的情况。
50.所以本技术提供了一种读写器快速输出标签数据的方法,请参见图2,该方法包括:s110、根据标签数据获取目标字符串。
51.根据标签数据获取目标字符串。其中,该目标字符串的长度不超过设定的字节长度。具体的,由于通信协议,如蓝牙协议等数据包的长度具有一定的限制。示例性的,在一种可能的实现方式中,数据包的有效数据总长度包括8个键值区。则该设定的字节长度不超过数据包的有效数据总长度。
52.在一些传统的读写器输出标签数据的方法中,读写器通常会向接收终端发送一个按下数据包,再发送一个释放数据包。其中,该按下数据包中仅有一个键值区包含一个有效的键值,其他键值区的键值均为0。该释放数据包中每个键值区包含的键值均为0。由于接收终端实体按键在使用过程中每一次只能按下一个按键,所以,通过无线方式模拟按键的时候,该按下数据包中一次也只能仅包含一个有效的键值,以模拟每一次只按下一个按键的过程。当该接收终端在接收到该按下数据包之后,根据该按下数据包中包含的有效键值确定需要按下的按键。在当该接收终端在接收到该释放数据包之后,释放掉该被按下的按键(实际上是释放掉所有的按键)。至此,该读写器完成一个字符的输出,该接收终端完成一个字符的输入。所以,该传统的读写器输出标签数据的方法中,读写器一次只能一个字符一个字符的输出,接收终端一个字符一个字符地输入。这样数据传输的效率较低。
53.s120、将目标字符串中的字符对应的键值设置在n个数据包的键值区。
54.将目标字符串中的字符对应的键值设置在n个数据包的键值区中。具体的,在该n个数据包中,从第一个数据包至第n个数据包的键值区中包含的不为零的键值数依次减一,其中,n≥2,且n为整数。
55.示例性的,以n=6为例,那么该n个数据包中包含有效数据的键值区可以如下表所示:
如上表,该第一数据包,六个键值区中包含六个有效键值(key1~key6)。该第二数据包,六个键值区中包含五个有效键值(key2~key6)。该第三数据包,六个键值区中包含四个有效键值(key3~key6)。该第四数据包,六个键值区中包含三个有效键值(key4~key6)。该第五数据包,六个键值区中包含两个有效键值(key5、key6)。该第六数据包,六个键值区中包含一个有效键值(key6)。从该第一数据包至第六数据包的键值区中包含的不为零的键值数依次减一。需要说明的是,n=6仅为一个示例,但并不能作为本技术的限制,n还可以为其他值,本技术对n的取值不做限制。
56.需要指出的是,该数据包中除了有效数据的键值区以外,还可以包含其他的键值区,此处不做限制。
57.s130、读写器向接收终端发送n 1个数据包。
58.读写器向接收终端发送n 1个数据包。其中,前n个数据包按照该n个数据包中第一个数据包至第n个数据包的次序依次发送。
59.第n 1个数据包的键值区中所有键值均为零,从而指示接收终端根据该第一个数据包至第n 1个数据包键值区中的键值依次获取该目标字符串中的每个字符。示例性的,以前述n=6为例,那么第七个数据包的键值区中所有键值区(6个键值区)中的键值均为零。
60.相对应的,该接收终端从该读写器接收到该n 1个数据包。可以理解的是,在实际应用过程中,n也可以为1,即该读写器可以只向接收终端发送一个具有有效键值的数据包,再发送一个键值区中所有键值均为0的数据包。
61.s140、接收终端根据第一个数据包至第n 1个数据包键值区中的键值依次获取目标字符串中的每个字符。
62.接收终端根据该第一个数据包至第n 1个数据包键值区中的键值依次获取目标字符串中的每个字符。
63.具体的,该目标字符串具有n个字符。该只是接收终端根据第一个数据包至第n 1个数据包键值区中的键值依次获取该目标字符串的每个字符可以包括:指示该接收终端根据第i个数据包与第i 1个数据包键值区中的键值确定该目标字符串中的第i个字符。其中,1≤i≤n。
64.可以理解的是,该接收终端可以根据相连的两个数据包确定目标字符串的一个字符。例如,该接收终端可以根据该第一个数据包与第二个数据包键值区中的键值确定该目
标字符串中的第一个字符。需要说明的是,该读写器是按照从第一个数据包至第n 1个数据包的顺序发送至该接收终端。但是实际上该接收终端接收到该n 1个数据包的顺序不一定是按照从第一个数据包至第n 1个数据包的顺序的。所以,该接收终端还可以根据接收到的多个数据包确定数据包是否为相连的两个数据包。具体的,如果该接收终端可以判断如果两个数据包的键值区中包含的非零的键值数量是否相差1,若两个数据包的键值区中包含的非零的键值数量相差1,则可以确定该两个数据包为相连的两个数据包。
65.更进一步的,该接收终端根据第i个数据包与第i 1个数据包键值区中的键值确定该目标字符串中的第i个字符具体包括:确定第一目标键值区,其中,该第i个数据包的第一目标键值区上的键值不为零,且该第i 1个数据包的第一目标键值区上的键值为零。该接收终端根据该第i个数据包的第一目标键值区上的键值确定目标字符串的第i个字符。在一种可能的实现方式中,该接收终端确定该第i个数据包的第一目标键值区上的键值为该目标字符串的第i个字符。
66.需要说明的是,该第一目标键值区是数据包中一个特定的键值区,该第一目标键值区是根据该第i个数据包与第i 1个数据包确定的。例如,步骤s120中表的第二键值区、第三键值区等。前文所述的第i个数据包的第一目标键值区与该第i 1个数据包的第一目标键值区即表示,该第i个数据包与该第i 1个数据包一个相同的特定键值区。例如,该第i个数据包的第二键值区与第i 1个数据包的第二键值区。
67.通过这样的方式,则该接收终端可以根据从读写器接收的n 1个数据包中相连的两个数据包分别获取到该目标字符串的每个字符。例如,参见步骤s120,该接收终端可以先通过该第一数据包的键值区具有6个非零键值,该第二数据包的键值区具有5个非零键值,从而确定该第一数据包与第二数据包是相连的数据包。再通过该第一数据包的第一键值区键值非零,而第二数据包的第一键值区键值为零,可以确定该第一键值区为第一目标键值区。进一步将该第一数据包的第一键值区中的键值确定目标字符串的第一个字符。同理,可以根据第二个数据包与第三个数据包确定目标字符串的第二个字符
……
直至确定完整的目标字符串。
68.需要说明的是,该n个数据包中的每个数据包还包含功能键状态标识。某一个字符可能单独用一个按键是无法表示的。类似于需要一个字母按键或者一个数字按键,加上一个功能按键。从而组成一个组合键。这个组合键才能够表示一个具体的字符。所以,为了扩大本技术提供的这种读写器快速输出标签数据的方法的适用范围,在本技术传输的数据包中还包含一个功能按键的键值区。该功能按键的键值区可以指示一些具体的实体功能键。例如键盘上的windows键、shift键、home键、caps lock键等。针对于此,请参见图3,前述实施例中步骤s140具体可以包括:s210、接收终端获取第一个数据包至第n个数据包的每个数据包中包含功能键状态标识。
69.指示接收终端获取第一数据包至第n个数据包的每个数据包中包含的功能键状态标识,该功能键状态标识可以在该数据包中的一个特定的位置。可以理解的是,参考前述步骤s120中的表格,例如在六个键值区之前。具体请参见下表:
当该接收终端在接收到数据包之后,可以在特定的位置查询数据包中是否含有功能按键。需要说明的是,有一些数据包中不包含功能按键,则在该特定的位置上为0。
70.s220、接收终端根据第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识确定目标字符串中的每个字符。
71.接收终端根据第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识确定目标字符串中的每个字符。
72.具体的,该接收终端可以确定第j个数据包与第j 1个数据包的第二目标键值区,并根据第j个数据包的第二目标键值区的键值与第j个数据包中包含的功能键状态标识确定目标字符串的第j个字符。其中,第j个数据包的第二目标键值区上的键值不为零,且该第j 1个数据包的第二目标键值区上的键值为零。示例性的,若该第j个数据包的第二目标键值区的键值指示的字符为“q”,而该功能键状态标识指示的功能键为“caps lock键”。那么该接收终端最终确定的字符为“q”。
73.需要说明的是,在传统的数据传输中,每一个数据包中仅传输一个有效的键值。那么该功能键状态标识毫无疑义的是用来标识该有效的键值的。但是,在本技术提供的这种方案中,每一个数据包中可能存在多个有效的键值。这样可能会造成无法判断该功能键状态标识是用于标识哪一个键值的,或者是用于标识哪几个键值的。所以,本技术中,确定该第j个数据包的第二目标键值区的键值与第j个数据包中包含的功能键状态标识确定目标字符串的第j个字符。其中,第j个数据包的第二目标键值区上的键值不为零,且该第j 1个数据包的第二目标键值区上的键值为零。相当于每一个数据包中的功能键状态标识仅仅只是用于标识该第第二目标键值区上的键值的,从而不会产生混乱,能够准确地将该功能将状态标识与键值相匹配。
74.在一种具体的实现方式中,该读写器需要传输给接收终端的标签数据中,可能既
包含了大写字母,又包含了小写字母。如果把大写字母和小写字母都一起传输,那么大写字母均需要在功能键状态标识上采用“caps lock”标识大小写。但是,如果某一个字符,既需要标识大小写,又需要采用如shift按键等标识的,那在一个数据包中采用一个功能键状态标识就不足以表示该字符了。因此,本技术中,若该读写器确定标签数据中同时具有大写字母与小写字母时,该读写器可以将该标签的数据分割成至少两个目标字符串,以使得该至少两个目标串不同时具有大写字母与小写字母。而需要说明的是,该至少两个目标字符串是在该标签的数据中是按照次序依次相连的。该读写器也按照次序依次发送由该至少两个字符串设置的数据包,以使得该接收终端能够根据获取到的数据包按照顺序获取到该至少两个目标字符串,从而能够获得该完整的标签的数据。
75.值得注意的是,该读写器向接收终端发送n 1个数据包具体可以包括:在一个最小扫描间隔内向接收终端发送n 1个数据包。
76.在常规的做法中,需要发送一个按下数据包之后,再发送一个释放数据包。该按下数据包仅包含一个有效键值。这样如果采用传统方案发送6个键值需要12次数据包输出。但是采用本方案,相当于多个按键同时按下,只需要7次数据包输出。直观提升输出速度71%。
77.这种提升能够适用于usb hid键盘。在实践中,对于蓝牙,最小间隔时间为12ms可以发送一次数据,但是发送的数据最多可以包含n个包。例如:ble蓝牙5.0协议,n最大为10,在对蓝牙键盘定义中一次数据通讯只能传输处理一次按键操作,比如:要发送两个按键,按正常模式需要发送4个数据包,但是作为ble蓝牙键盘,由于任何系统对按键的扫描都存在时间间隔,并且目前就android、linux、windows、ios的按键扫描均在1ms以上,有的甚至要5ms,这就要求在最小扫描间隔内只能处理一次按键事件,一次按键事件可以包含两个数据包,分别是按下、弹开。这样发送m个键值就需要m*12ms,这样若通过通过蓝牙输出100个字符就需要1200ms,显然降低了usb hid键盘输出的体验感,若使用以上多按键输出方式,可以在一个蓝牙输出间隔内发送7个包数据代表6个按键依次被按下释放,平均每个键值只占用2ms,输出100字节仅需200ms,能够大大提升使用体验。
78.需要说明的是,传统的方案不能在一个最小扫描间隔内发送多个释放数据包。例如,需要发送abcde,5个键值,刚好占用10个数据包,是因为系统对按键的底层扫描逻辑是,单个扫描周期(1~nms)内,检测到所有按键都释放后就会结束数据包处理,也就是接收终端在扫描到”a”按下并弹开后,剩余的按键包数据将会被丢弃。所以在该接收终端在接收到一个释放数据包之后就会将剩余的按下数据包全部丢弃。故而无法完成在一个最小扫描间隔内发送多个释放数据包,所以传输速度较慢。
79.上面介绍了一种读写器快速输出标签数据的方法,下面从功能模块角度介绍本技术提供的一种读写器。请参见图4。本技术提供了一种读写器的功能模块示意图。该读写器300包括:获取模块310,用于获取目标字符串,其中,所述目标字符串的长度不超过设定字节长度;设置模块320,用于将所述目标字符串中的字符对应的键值设置在n个数据包的键值区,在所述n个数据包中,从第一个数据包至第n个数据包的键值区中包含的不为零的键值数依次减一,其中,n≥2,且n为整数;发送模块330,用于向接收终端发送n 1个数据包,其中,前n个数据包按照所述n个
数据包中第一个数据包至第n个数据包的次序依次发送,第n 1个数据包的键值区中所有键值均为零,以指示所述接收终端根据第一个数据包至第n 1个数据包中键值区中的键值依次获取所述目标字符串的每个字节。
80.优选的,所述目标字符串具有n个字符,所述发送模块330,具体用于指示所述接收终端根据第一个数据包至第n 1个数据包键值区中的键值依次获取所述目标字符串的每个字符具体包括:指示所述接收终端根据第i个数据包与第i 1个数据包键值区中的键值确定所述目标字符串中的第i个字符,其中,1≤i≤n。
81.优选的,所述发送模块330,具体用于:指示所述接收终端确定第一目标键值区,所述第i个数据包的第一目标键值区上的键值不为零,且所述第i 1个数据包的第一目标键值区上的键值为零;指示所述接收终端根据所述第i个数据包的第一目标键值区上的键值确定所述目标字符串的第i个字符。
82.优选的,所述n个数据包中的每个数据包还包含功能键状态标识,所述发送模块330,具体用于指示所述接收终端获取第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识;指示所述接收终端根据所述第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识确定所述目标字符串的每个字符。
83.优选的,所述指示所述接收终端根据所述第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识确定所述目标字符串的每个字符具体包括:指示所述接收终端确定所述第j个数据包与第j 1个数据包的第二目标键值区,并根据所述第j个数据包的第二目标键值区的键值与所述第j个数据包中包含的功能键状态标识确定所述目标字符串的第j个字符,所述第j个数据包的第二目标键值区上的键值不为零,且所述第j 1个数据包的第二目标键值区上的键值为零。
84.优选的,所述获取模块310,具体用于:将所述标签的数据分割成至少两个目标字符串,所述至少两个目标字符串中的每个字符串不同时具有大写字母与小写字母。
85.优选的,所述发送模块330,具体用于,在一个最小扫描间隔内向接收终端发送n 1个数据包。
86.下面从功能模块角度介绍本技术提供的一种接收终端400。请参见图5。本技术提供了一种接收终端400的功能模块示意图。该接收终端400包括:接收模块410,用于从读写器依次接收n 1个数据包,所述n 1个数据包中的前n个数据包的键值区设置有目标字符串中的字符对应的键值,且所述前n个数据包中,第一个数据包至第n个数据包键值区中包含的不为零的键值数依次减一,第n 1个数据包中所有键值均为零,n≥2,且n为整数,所述目标字符串是所述读写器根据标签数据获取的;处理模块420,用于根据第一个数据包至第n 1个数据包中的键值依次获取所述目标字符串的每个字节。
87.优选的,所述目标字符串具有n个字符,所述处理模块420,具体用于根据第i个数据包与第i 1个数据包键值区中的键值确定所述目标字符串中的第i个字符,其中,1≤i≤n。
88.优选的,所述处理模块420具体用于:确定第一目标键值区,所述第i个数据包的第一目标键值区上的键值不为零,且所述第i 1个数据包的第一目标键值区上的键值为零;根据所述第i个数据包的第一目标键值区上的键值确定所述目标字符串的第i个字符。
89.优选的,所述n个数据包中的每个数据包还包含功能键状态标识,所述处理模块420,具体用于:获取第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识;根据所述第一个数据包至第n个数据包中的每个数据包中包含的功能键状态标识确定所述目标字符串的每个字符。
90.优选的,所述处理模块420,具体用于:确定所述第j个数据包与第j 1个数据包的第二目标键值区,并根据所述第j个数据包的第二目标键值区的键值与所述第j个数据包中包含的功能键状态标识确定所述目标字符串的第j个字符,所述第j个数据包的第二目标键值区上的键值不为零,且所述第j 1个数据包的第二目标键值区上的键值为零。
91.优选的,所述目标字符串是所述读写器根据标签数据获取的,其中,所述目标字符串不同时具有大写字母与小写字母。
92.优选的,所述n 1个数据包是所述读写器在一个最小扫描间隔内发送的。
93.上面图5从模块化实体的角度对本技术实施例提供的接收终端进行了详细描述,下面从硬件处理的角度对本技术实施例中读写器进行详细描述。
94.图6为本技术提供的一种读写器结构示意图。如图6所示,该读写器500包括处理器510、存储器520和通信接口530,处理器510、存储器520和通信接口530可以通过总线540相连。
95.该读写器500是一种硬件结构的装置,可以用于如图4所示的读写器300中的各个功能模块的功能。
96.可选的,上述处理器510可以是一个或多个中央处理器(central processing unit,cpu),微处理器,特定应用集成电路(application-specific integrated circuit,asic),或一个或多个用于控制本技术方案程序执行的集成电路。
97.该处理器510,用于执行存储器520中的指令,执行上述应用于图2或图3所示的读写器快速输出标签数据的方法。该通信接口530,可以包含输入/输出(i/o)接口。
98.存储器520、处理器510和通信接口530可以通过总线540相互连接,但不限于只能通过总线540连接;总线540可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。
99.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
100.所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
101.本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序指令指示相关的硬件来完成,该程序可以存储于计算机可读存储介质中,存储介质可以包括:rom、ram、磁盘或光盘等。
102.本技术还提供了一种计算机可读存储介质,包括指令,当该指令在读写器上运行时,使得该读写器执行如本技术任意一个实施例提供的读写器快速输出标签数据的方法。
103.本技术还提供了一种芯片,该芯片包括处理单元和存储单元,该存储单元用于存储计算机操作指令;该处理单元用于通过调用存储单元中存储的计算机操作指令,以执行如本技术任意一个实施例提供的读写器快速输出标签数据的方法。
104.以上对本技术实施例所提供的一种读写器快速输出标签数据的方法、读写器、接收终端进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献