掌桥专利:专业的专利平台
掌桥专利
首页

用于数据传输的方法及装置、无线通信模块、存储介质

文献发布时间:2023-06-29 06:30:04


用于数据传输的方法及装置、无线通信模块、存储介质

技术领域

本申请涉及智能家电技术领域,例如涉及一种用于数据传输的方法及装置、无线通信模块、存储介质。

背景技术

现有的电子设备联网进行数据传输一般是通过直接将无线通信模块或网络芯片集成在设备底板上,通过SPI(Serial Peripheral Interface,串行外设接口)或IIC(Inter-Integrated Circuit,集成电路总线)等高速接口进行数据的交互,在设备底板不具备联网功能且只有TTL(Transistor-Transistor Logic,晶体管到晶体管逻辑)等低速传输接口对外开放的情况下,上述进行联网传输数据的方案无法应用,需要重新进行硬件电路设计,且成本高。

相关技术公开了一种WiFi(无线网络通信技术)模块,可以将串口或TTL电平转为符合WiFi无线网络通信标准的嵌入式模块,内置无线网络协议IEEE802.11b.g.n协议栈以及TCP/IP(Transmission Control Protocol/Inter net Protocol,传输控制协议/网际协议)协议栈。传统的硬件设备嵌入WiFi模块可以直接利用WiFi联入互联网,是实现无线智能家居等物联网应用的重要组成部分。

在实现本公开实施例的过程中,发现相关技术中至少存在如下问题:

该技术虽然能够实现将设备的串口转换为连接网络进行数据传输,但是由于设备和无线通信模块的自身内存和处理能力有限的情况下,在进行联网数据传输过程中容易出现数据堵塞,使传输数据响应速度变慢。

需要说明的是,在上述背景技术部分公开的信息仅用于加强对本申请的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。

发明内容

为了对披露的实施例的一些方面有基本的理解,下面给出了简单的概括。所述概括不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围,而是作为后面的详细说明的序言。

本公开实施例提供了一种用于数据传输的方法及装置、无线通信模块、存储介质,在串口设备联网进行数据传输的过程中,能够提高传输数据的响应速度。

在一些实施例中,用于数据传输的方法,应用于无线通信模块,前述方法包括:在第一设备向第二设备传输数据的情况下,向第一设备发送请求信息;其中,请求信息用于使第一设备将传输的数据进行分解;接收第一设备发送的一段或多段分解数据;将一段或多段分解数据发送至第二设备。

可选地,每段分解数据的长度小于或等于第一数据长度阈值。

可选地,在第一设备与无线通信模块有线连接,第二设备与无线通信模块无线连接的情况下,请求信息包括用于确定分解数据起始位置的请求起始位置和用于确定分解数据长度的请求长度。

可选地,在向第一设备发送请求信息前,前述方法还包括:根据接收的前一段分解数据的请求起始位置和请求长度,确定本次发送的请求信息中的请求起始位置。

可选地,根据接收的前一段分解数据的请求起始位置和请求长度,确定本次发送的请求信息中的请求起始位置,包括:将接收的前一段分解数据的请求起始位置和请求长度相加,获得结束位置值;将结束位置值的后一位置确定为本次发送的请求信息中的请求起始位置。

可选地,在接收第一设备发送的分解数据时,前述方法还包括:接收每段分解数据的实际起始位置和实际长度。

可选地,在接收第一设备发送的每段分解数据后,前述方法还包括:对接收的分解数据的实际起始位置和请求起始位置进行对比;根据对比结果,确定后一次发送的请求信息中的请求起始位置。

可选地,根据对比结果,确定后一次发送的请求信息中的请求起始位置,包括:在接收的分解数据的实际起始位置大于请求起始位置的情况下,将本次发送的请求信息中的请求起始位置确定为后一次发送的请求信息中的请求起始位置;在接收的分解数据的实际起始位置小于或等于请求起始位置的情况下,将本次发送的请求信息中的请求起始位置和接收的分解数据的结束位置的后一位置中的最大值确定为后一次发送的请求信息中的请求起始位置。

可选地,将一段或多段分解数据发送至第二设备,包括:在接收保存的分解数据的总长度大于或等于第二数据长度阈值的情况下,将分解数据进行合并处理,获得合并数据;将合并数据发送至第二设备;删除已发送的合并数据。

可选地,在向第一设备发送请求信息前,前述方法还包括:接收第一设备发送的联网请求;其中,联网请求包括联网信息的参数数量;按参数数量向第一设备发送获取联网信息的请求,获得一个或多个联网子信息;将一个或多个联网子信息重组,获得完整的联网信息;通过完整的联网信息与第二设备建立无线连接。

可选地,前述方法还包括:在第一预设时长内未接收到新的分解数据且数据长度接收不完整的情况下,向第一设备发送错误通知;和/或,在数据长度接收完整的情况下,向第一设备发送完成通知;和/或,接收第一设备发送的完成通知或错误通知。

可选地,在第一设备与无线通信模块无线连接,第二设备与无线通信模块有线连接的情况下,请求信息包括用于确定分解数据起始位置的请求起始位置和用于确定分解数据长度的请求长度。

可选地,在向第一设备发送请求信息前,前述方法还包括:根据接收的前一段分解数据的请求起始位置和请求长度,确定本次发送的请求信息中的请求起始位置。

可选地,根据接收的前一段分解数据的请求起始位置和请求长度,确定本次发送的请求信息中的请求起始位置,包括:将接收的前一段分解数据的请求起始位置和请求长度相加,获得结束位置值;将结束位置值的后一位置确定为本次发送的请求信息中的请求起始位置。

可选地,将一段或多段分解数据发送至第二设备,包括:在每接收到一段分解数据的情况下,将分解数据进行二次分解,获得二次分解数据;依次将二次分解数据发送至第二设备。

可选地,每段二次分解数据的长度小于或等于第二数据长度阈值。

可选地,在每次将一段二次分解数据发送至第二设备后,前述方法还包括:接收第二设备发送的应答信息;根据已发送的本段二次分解数据和应答信息,确定后一次发送的二次分解数据。

可选地,应答信息包括二次分解数据的接收起始位置和二次分解数据的接收长度。

可选地,根据已发送的本段二次分解数据和应答信息,确定后一次发送的二次分解数据,包括:在二次分解数据的接收起始位置大于发送起始位置的情况下,将发送起始位置确定为后一次发送的二次分解数据的发送起始位置;在二次分解数据的接收起始位置小于或等于发送起始位置的情况下,将发送起始位置和第二设备接收的二次分解数据的结束位置的后一位置中的最大值确定为后一次发送的二次分解数据的发送起始位置。

可选地,在每接收到一段分解数据并发送至第二设备的情况下,删除本次接收的分解数据。

可选地,前述方法还包括:在第二预设时长内未接收到新的分解数据且数据长度接收不完整的情况下,向第二设备发送错误通知;和/或,在数据长度接收完整的情况下,向第二设备发送完成通知;和/或,接收第二设备发送的完成通知或错误通知。

在一些实施例中,用于数据传输的装置包括处理器和存储有程序指令的存储器,处理器被配置为在运行程序指令时,执行上述的用于数据传输的方法。

在一些实施例中,无线通信模块包括无线通信模块主体;和,上述的用于数据传输的装置,被安装于无线通信模块主体。

在一些实施例中,存储介质,存储有程序指令,程序指令在运行时,执行上述的用于数据传输的方法。

本公开实施例提供的用于数据传输的方法及装置、无线通信模块、存储介质,可以实现以下技术效果:

在第一设备向第二设备传输数据的情况下,第一设备按请求信息将数据进行分解后发送至无线通信模块,无线通信模块再将接收到的分解数据发送至第二设备。这样,在设备和无线通信模块的自身内存和处理能力有限的情况下,通过将较大的数据分解发送,降低每次发送的数据长度。从而,在串口设备联网进行数据传输的过程中,可以减少数据堵塞的出现。进而,能够提高传输数据的响应速度。

以上的总体描述和下文中的描述仅是示例性和解释性的,不用于限制本申请。

附图说明

一个或多个实施例通过与之对应的附图进行示例性说明,这些示例性说明和附图并不构成对实施例的限定,附图中具有相同参考数字标号的元件示为类似的元件,附图不构成比例限制,并且其中:

图1是本公开实施例提供的一个应用场景的示意图;

图2是本公开实施例提供的另一个应用场景的示意图;

图3是本公开实施例提供的一个用于数据传输的方法的示意图;

图4是本公开实施例提供的另一个用于数据传输的方法的示意图;

图5是本公开实施例提供的另一个用于数据传输的方法的示意图;

图6是本公开实施例提供的另一个用于数据传输的方法的示意图;

图7是本公开实施例提供的另一个用于数据传输的方法的示意图;

图8是本公开实施例提供的另一个用于数据传输的方法的示意图;

图9是本公开实施例提供的一个用于数据传输的装置的示意图。

具体实施方式

为了能够更加详尽地了解本公开实施例的特点与技术内容,下面结合附图对本公开实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本公开实施例。在以下的技术描述中,为方便解释起见,通过多个细节以提供对所披露实施例的充分理解。然而,在没有这些细节的情况下,一个或多个实施例仍然可以实施。在其它情况下,为简化附图,熟知的结构和装置可以简化展示。

本公开实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开实施例的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。

本公开实施例中,术语“上”、“下”、“内”、“中”、“外”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系。这些术语主要是为了更好地描述本公开实施例及其实施例,并非用于限定所指示的装置、元件或组成部分必须具有特定方位,或以特定方位进行构造和操作。并且,上述部分术语除了可以用于表示方位或位置关系以外,还可能用于表示其他含义,例如术语“上”在某些情况下也可能用于表示某种依附关系或连接关系。对于本领域普通技术人员而言,可以根据具体情况理解这些术语在本公开实施例中的具体含义。

除非另有说明,术语“多个”表示两个或两个以上。

本公开实施例中,字符“/”表示前后对象是一种“或”的关系。例如,A/B表示:A或B。

术语“和/或”是一种描述对象的关联关系,表示可以存在三种关系。例如,A和/或B,表示:A或B,或,A和B这三种关系。

术语“对应”可以指的是一种关联关系或绑定关系,A与B相对应指的是A与B之间是一种关联关系或绑定关系。

另外,术语“设置”应做广义理解。

需要说明的是,在不冲突的情况下,本公开实施例中的实施例及实施例中的特征可以相互组合。

图1是本公开实施例的一个应用场景的示意图。如图1所示,该应用场景包括第一设备11、第二设备12和无线通信模块13。

第一设备11可以为不具备联网功能且对外具有TTL、RS232等传输接口的家电设备、检测设备、工业设备等。第二设备12可以为服务器、个人计算机等。无线通信模块13可以是WiFi模块,也可以是带有WiFi模块的设备。本公开实施例对此不作限制。第一设备11和无线通信模块13通过有线连接,第二设备12和无线通信模块13通过无线连接。

图2是本公开实施例的另一个应用场景的示意图。如图2所示,该应用场景包括第一设备11、第二设备12和无线通信模块13。

第一设备11可以为服务器、个人计算机等。第二设备12可以为不具备联网功能且对外具有TTL、RS232等传输接口的家电设备、检测设备、工业设备等。无线通信模块13可以是WiFi模块,也可以是带有WiFi模块的设备。本公开实施例对此不作限制。第一设备11和无线通信模块13通过无线连接,第二设备12和无线通信模块13通过有线连接。

结合上述的应用场景,本公开实施例提供一种用于数据传输的方法。

如图3所示,该方法包括:

S101,在第一设备向第二设备传输数据的情况下,无线通信模块向第一设备发送请求信息;其中,请求信息用于使第一设备将传输的数据进行分解。

第一设备将传输的数据进行分解获得分解数据。

S102,无线通信模块接收第一设备发送的一段或多段分解数据。

在传输的数据长度较小的情况下,只通过一段分解数据即可发送完毕。在传输的数据长度较大的情况下,需要分解成多段分解数据进行发送。

S103,无线通信模块将一段或多段分解数据发送至第二设备。

本公开实施例中,在第一设备向第二设备传输数据的情况下,第一设备按请求信息将数据进行分解后发送至无线通信模块,无线通信模块再将接收到的分解数据发送至第二设备。这样,在设备和无线通信模块的自身内存和处理能力有限的情况下,通过将较大的数据分解发送,降低每次发送的数据长度。从而,在串口设备联网进行数据传输的过程中,可以减少数据堵塞的出现。进而,能够提高传输数据的响应速度。

可选地,每段分解数据的长度小于或等于第一数据长度阈值。根据需要可以将每段分解数据确定为相同的数据长度,也可以确定为不同的数据长度。根据不同设备的处理能力,第一数据长度阈值是可以根据需要设定的。这样,在规定每段分解数据的长度小于或等于第一数据长度阈值的情况下,在串口设备联网进行数据传输的过程中,可以减少数据堵塞的出现。从而,能够提高传输数据的响应速度。

可选地,在第一设备与无线通信模块有线连接,第二设备与无线通信模块无线连接的情况下,请求信息包括用于确定分解数据起始位置的请求起始位置和用于确定分解数据长度的请求长度。这样,第一设备可以根据请求起始位置和请求长度对发送的数据进行精确分解。从而,保证了数据传输的准确性。

可选地,在无线通信模块向第一设备发送请求信息前,前述方法还包括:无线通信模块根据接收的前一段分解数据的请求起始位置和请求长度,确定本次发送的请求信息中的请求起始位置。请求长度可以为第一数据长度阈值。在发送至最后剩余的分解数据长度不足第一数据长度阈值的情况下,请求长度为剩余的分解数据的长度。这样,通过根据接收的前一段分解数据的请求起始位置和请求长度确定本次发送的请求信息中的请求起始位置,可以使请求起始位置与已接收的分解数据连接,避免出现遗漏数据。从而,保证了数据传输的完整性。

结合图4所示,本公开实施例提供另一种用于数据传输的方法,包括:

S201,在第一设备向第二设备传输数据的情况下,无线通信模块根据接收的前一段分解数据的请求起始位置和请求长度,确定本次发送的请求信息中的请求起始位置;其中,请求信息用于使第一设备将传输的数据进行分解。

S202,无线通信模块向第一设备发送请求信息。

S203,无线通信模块接收第一设备发送的一段或多段分解数据。

S204,无线通信模块将一段或多段分解数据发送至第二设备。

本公开实施例中,通过根据接收的前一段分解数据的请求起始位置和请求长度确定本次发送的请求信息中的请求起始位置,可以使请求起始位置与已接收的分解数据连接,避免出现遗漏数据。从而,保证了数据传输的完整性。

可选地,无线通信模块根据接收的前一段分解数据的请求起始位置和请求长度,确定本次发送的请求信息中的请求起始位置,包括:无线通信模块将接收的前一段分解数据的请求起始位置和请求长度相加,获得结束位置值;无线通信模块将结束位置值的后一位置确定为本次发送的请求信息中的请求起始位置。例如,接收的前一段分解数据的请求起始位置为260,请求长度为256字节,则结束位置值为516。那么,无线通信模块将517确定为本次发送的请求信息中的请求起始位置。这样,本次发送的请求信息中的请求起始位置可以与已接收的分解数据连接,避免出现遗漏数据。从而,保证了数据传输的完整性。

可选地,在无线通信模块接收第一设备发送的分解数据时,前述方法还包括:无线通信模块接收每段分解数据的实际起始位置和实际长度。由于在实际数据的发送过程中,可能会出现数据发送错误的情况,在第一设备向无线通信模块发送分解数据的同时,将分解数据的实际起始位置和实际长度一并发送。这样,可以通过将实际起始位置、实际长度和请求起始位置、请求长度进行对比,确定后一次发送的请求信息。从而,保证数据传输的完整性。

可选地,在无线通信模块接收第一设备发送的每段分解数据后,前述方法还包括:无线通信模块对接收的分解数据的实际起始位置和请求起始位置进行对比;无线通信模块根据对比结果,确定后一次发送的请求信息中的请求起始位置。这样,通过实际起始位置和请求起始位置对比确定后一次发送的请求信息中的请求起始位置,避免出现遗漏数据。从而,保证了数据传输的完整性。

可选地,无线通信模块根据对比结果,确定后一次发送的请求信息中的请求起始位置,包括:在接收的分解数据的实际起始位置大于请求起始位置的情况下,无线通信模块将本次发送的请求信息中的请求起始位置确定为后一次发送的请求信息中的请求起始位置;在接收的分解数据的实际起始位置小于或等于请求起始位置的情况下,无线通信模块将本次发送的请求信息中的请求起始位置和接收的分解数据的结束位置的后一位置中的最大值确定为后一次发送的请求信息中的请求起始位置。请求长度根据需求进行设定。例如,接收的分解数据的请求起始位置为260,请求长度为256字节,实际起始位置265,实际长度为256字节。则判断为实际起始位置大于请求起始位置,中间缺少了部分数据。因此,将260确定为后一次发送的请求信息中的请求起始位置,进行分解数据的重新获取。例如,接收的分解数据的请求起始位置为260,请求长度为256字节,实际起始位置250,实际长度为256字节。则判断为实际起始位置小于请求起始位置,部分数据重复,但不影响数据的连续性。接收的分解数据的结束位置为250+256=506。因此,将507确定为后一次发送的请求信息中的请求起始位置。例如,接收的分解数据的请求起始位置为560,请求长度为256字节,实际起始位置250,实际长度为256字节。则判断为实际起始位置小于请求起始位置,接收的分解数据包含在已接收到的数据中。接收的分解数据的结束位置为250+256=506。因此,将560确定为后一次发送的请求信息中的请求起始位置。这样,通过实际起始位置和请求起始位置对比确定后一次发送的请求信息中的请求起始位置,避免出现遗漏数据。从而,可以保证数据传输的完整性、可靠性。

可选地,无线通信模块将一段或多段分解数据发送至第二设备,包括:在接收保存的分解数据的总长度大于或等于第二数据长度阈值的情况下,无线通信模块将分解数据进行合并处理,获得合并数据;无线通信模块将合并数据发送至第二设备;无线通信模块删除已发送的合并数据。在接收保存的分解数据的总长度大于或等于第二数据长度阈值的情况下,暂停向第一设备发送请求信息,并对保存的多段分解数据按接收的顺序进行合并至第二数据长度阈值。其中,在多段分解数据合并至第二数据长度阈值后剩余数据的情况下,对剩余的数据作为一段分解数据继续保存。在保存的多段分解数据的总长度小于第二数据长度阈值且全部数据已接收完毕的情况下,对保存的多段分解数据按接收的顺序进行合并。由于无线通信模块的内存低、处理能力受限,如果保存的数据过多,会影响无线通信模块的处理能力。这样,通过兼容无线通信模块的处理能力,确定一个使数据传输更顺畅的第二数据长度阈值。将接收的分解数据合并至第二数据长度阈值进行发送并删除,减少了数据对无线通信模块的存储空间占用。从而,可以保证数据传输更快,传输错误率更低。

可选地,在无线通信模块向第一设备发送请求信息前,前述方法还包括:无线通信模块接收第一设备发送的联网请求;其中,联网请求包括联网信息的参数数量;无线通信模块按参数数量向第一设备发送获取联网信息的请求,获得一个或多个联网子信息;无线通信模块将一个或多个联网子信息重组,获得完整的联网信息;无线通信模块通过完整的联网信息与第二设备建立无线连接。

联网信息的参数数量包括URL参数数量和/或标头数量。联网请求还包括传输数据请求类型、URL(Uniform Resource Locator,统一资源定位符)信息、传输数据长度和内容类型等。在URL数据较长的情况下,URL信息为URL前端部分。URL前端部分包括协议、域名、端口、查找路径等。在URL数据较短的情况下,URL信息为URL完整信息。在URL信息为UR L完整信息的情况下,URL参数数量为0。例如,第一设备需要通过如下URL进行联网:https://cn.bing.com/search?q=URL%e5%8f%82%e6%95%b0&qs=n&sp=-1&pq=url%e5%8f%82%e6%95%b0&sc=10-5&sk=&cvid=D206B769C2984C00825A438BE19A8A0A&ghsh=0&ghacc=0&ghpl=&first=21&FORM=PORE,该URL中URL参数数量为12。第一设备将https://cn.bing.com/se arch?和URL参数数量12加入联网请求发送至无线通信模块。无线通信模块按URL参数数量12向第一设备发送获取URL参数的请求,每次获取一个URL参数,直至获取12个URL参数。将https://cn.bing.com/search?和12个URL参数进行重组,获得完整的URL。

由于第一设备的数据处理能力低、内存小,无线通信模块通过将数据较长的联网信息按参数数量依次请求。这样,可以避免第一设备一次发送大量的数据造成通信堵塞,响应时间长。从而,能够提高传输数据的响应速度,减少传输错误。

结合图5所示,本公开实施例提供另一种用于数据传输的方法,包括:

S301,无线通信模块接收第一设备发送的联网请求;其中,联网请求包括联网信息的参数数量。

S302,无线通信模块按参数数量向第一设备发送获取联网信息的请求,获得一个或多个联网子信息。

S303,无线通信模块将一个或多个联网子信息重组,获得完整的联网信息。

S304,无线通信模块通过完整的联网信息与第二设备建立无线连接。

S305,在第一设备向第二设备传输数据的情况下,无线通信模块向第一设备发送请求信息;其中,请求信息用于使第一设备将传输的数据进行分解。

S306,无线通信模块接收第一设备发送的一段或多段分解数据。

S307,无线通信模块将一段或多段分解数据发送至第二设备。

本公开实施例中,由于第一设备的数据处理能力低、内存小,无线通信模块通过将数据较长的联网信息按参数数量依次请求。这样,可以避免第一设备一次发送大量的数据造成通信堵塞,响应时间长。从而,能够提高传输数据的响应速度,减少传输错误。

可选地,前述方法还包括:在第一预设时长内未接收到新的分解数据且数据长度接收不完整的情况下,无线通信模块向第一设备发送错误通知;和/或,在数据长度接收完整的情况下,无线通信模块向第一设备发送完成通知;和/或,无线通信模块接收第一设备发送的完成通知或错误通知。第一预设时长可以根据需要进行设定。这样,第一设备和无线通信模块可以互相对数据传输进行检查,互相通知。在任何一方传输出错的情况下,均可以得知数据传输出现错误,可以进行数据重新传输和/或通知用户。从而,提高了数据传输的准确率。

可选地,在第一设备与无线通信模块无线连接,第二设备与无线通信模块有线连接的情况下,请求信息包括用于确定分解数据起始位置的请求起始位置和用于确定分解数据长度的请求长度。这样,第一设备可以根据请求起始位置和请求长度对发送的数据进行精确分解。从而,保证了数据传输的准确性。

可选地,在无线通信模块向第一设备发送请求信息前,前述方法还包括:无线通信模块根据接收的前一段分解数据的请求起始位置和请求长度,确定本次发送的请求信息中的请求起始位置。这样,本次发送的请求信息中的请求起始位置可以与已接收的分解数据连接,避免出现遗漏数据。从而,保证了数据传输的完整性。

可选地,无线通信模块根据接收的前一段分解数据的请求起始位置和请求长度,确定本次发送的请求信息中的请求起始位置,包括:将接收的前一段分解数据的请求起始位置和请求长度相加,获得结束位置值;将结束位置值的后一位置确定为本次发送的请求信息中的请求起始位置。例如,接收的前一段分解数据的请求起始位置为2049,请求长度为1k,则结束位置值为3072。那么,无线通信模块将3073确定为本次发送的请求信息中的请求起始位置。这样,本次发送的请求信息中的请求起始位置可以与已接收的分解数据连接,避免出现遗漏数据。从而,保证了数据传输的完整性。

可选地,无线通信模块将一段或多段分解数据发送至第二设备,包括:在每接收到一段分解数据的情况下,无线通信模块将分解数据进行二次分解,获得二次分解数据;无线通信模块依次将二次分解数据发送至第二设备。由于第二设备的处理能力更低,为了兼容第二设备的处理能力,在无线通信模块处将分解数据进行二次分解。这样,可以减少出现传输数据堵塞。从而,能够提高传输数据的响应速度。

可选地,每段二次分解数据的长度小于或等于第二数据长度阈值。这样,根据需求将每段二次分解数据的长度控制在一定的大小,可以在减少出现传输数据堵塞的情况下,保证传输数据的效率。从而,提高数据传输的可靠性。

可选地,在无线通信模块每次将一段二次分解数据发送至第二设备后,前述方法还包括:无线通信模块接收第二设备发送的应答信息;无线通信模块根据已发送的本段二次分解数据和应答信息,确定后一次发送的二次分解数据。由于在实际数据的发送过程中,可能会出现数据发送错误的情况。在第二设备接收到无线通信模块发送的二次分解数据的同时,第二设备对二次分解数据进行检查,生成应答信息。将应答信息发送回无线通信模块。这样,根据已发送的本段二次分解数据和应答信息来确定后一次发送的二次分解数据,可以确定传输数据过程中是否出错。从而,保证数据传输的完整性。

结合图6所示,本公开实施例提供另一种用于数据传输的方法,包括:

S401,在第一设备向第二设备传输数据的情况下,无线通信模块向第一设备发送请求信息;其中,请求信息用于使第一设备将传输的数据进行分解。

S402,无线通信模块接收第一设备发送的一段或多段分解数据。

S403,在每接收到一段分解数据的情况下,无线通信模块将分解数据进行二次分解,获得二次分解数据。

S404,无线通信模块将二次分解数据发送至第二设备。

S405,无线通信模块接收第二设备发送的应答信息。

S406,无线通信模块根据已发送的本段二次分解数据和应答信息,确定后一次发送的二次分解数据。

本公开实施例中,由于在实际数据的发送过程中,可能会出现数据发送错误的情况。在第二设备接收到无线通信模块发送的二次分解数据的同时,第二设备对二次分解数据进行检查,生成应答信息。将应答信息发送回无线通信模块。这样,根据已发送的本段二次分解数据和应答信息来确定后一次发送的二次分解数据,可以确定传输数据过程中是否出错。从而,保证数据传输的完整性。

可选地,应答信息包括二次分解数据的接收起始位置和二次分解数据的接收长度。这样,通过将无线通信模块发送的二次分解数据的起始位置和发送长度与二次分解数据的接收起始位置和接收长度进行比较,可以确定传输数据过程中是否出错。从而,保证数据传输的完整性。

可选地,根据已发送的本段二次分解数据和应答信息,确定后一次发送的二次分解数据,包括:在二次分解数据的接收起始位置大于发送起始位置的情况下,将发送起始位置确定为后一次发送的二次分解数据的发送起始位置;在二次分解数据的接收起始位置小于或等于发送起始位置的情况下,将发送起始位置和第二设备接收的二次分解数据的结束位置的后一位置中的最大值确定为后一次发送的二次分解数据的发送起始位置。二次分解数据的发送长度可以根据需要进行设定。例如,根据第二设备的数据处理能力进行设定。这样,通过接收起始位置和发送起始位置对比确定后一次发送的请求信息中的请求起始位置,避免出现遗漏数据。从而,可以保证数据传输的完整性、可靠性。

可选地,在每接收到一段分解数据并发送至第二设备的情况下,删除本次接收的分解数据。这样,将发送完毕的分解数据删除,减少了数据对无线通信模块的存储空间占用。从而,可以保证数据传输更快,传输错误率更低。

可选地,前述方法还包括:在第二预设时长内未接收到新的分解数据且数据长度接收不完整的情况下,向第二设备发送错误通知;和/或,在数据长度接收完整的情况下,向第二设备发送完成通知;和/或,接收第二设备发送的完成通知或错误通知。第二预设时长可以根据需要进行设定。这样,第二设备和无线通信模块可以互相对数据传输进行检查,互相通知。在任何一方传输出错的情况下,均可以得知数据传输出现错误,可以进行数据重新传输和/或通知用户。从而,提高了数据传输的准确率。

结合图1所示的应用场景,在无线通信模块实际传输数据的过程中,另一种用于数据传输的方法如图7所示,包括:

S501,第一设备向无线通信模块发送联网请求。其中,联网请求包括URL参数数量、标头数量、传输数据请求类型、URL信息、传输数据长度和内容类型等。

S502,无线通信模块按URL参数数量向第一设备发送获取URL参数的请求。无线通信模块每发送一次请求第一设备对应发送一个URL参数。

S503,第一设备根据请求向无线通信模块发送URL参数。

S504,无线通信模块对URL参数进行检查验证。检查验证URL参数的name部分和value部分的长度是否符合要求,name部分的长度应不超过32字节,value部分的长度应不超过128字节。在验证错误的情况下,重新发起请求。

S505,无线通信模块缓存URL参数。

S506,无线通信模块按标头数量向第一设备发送获取标头的请求。无线通信模块每发送一次请求第一设备对应发送一个标头参数。

S507,第一设备根据请求向无线通信模块发送标头。

S508,无线通信模块缓存标头。

S509,无线通信模块将URL信息与所有URL参数进行重组,获得完整的URL。

S510,无线通信模块将所有标头进行重组,获得http请求头。

S511,无线通信模块通过完整的URL与第二设备建立TCP连接。

S512,无线通信模块将http请求头通过TCP连接发送至第二设备。

S513,在第一设备向第二设备传输数据的情况下,无线通信模块向第一设备发送请求信息;其中,请求信息用于使第一设备将传输的数据进行分解。请求信息包括分解数据的请求起始位置和请求长度。每段分解数据的长度小于或等于第一数据长度阈值。

S514,第一设备向无线通信模块发送分解数据。同时向无线通信模块发送每段分解数据的实际起始位置和实际长度。

S515,无线通信模块对分解数据进行检查,确定后一次的请求信息。在接收的分解数据的实际起始位置大于请求起始位置的情况下,无线通信模块将本次发送的请求信息中的请求起始位置确定为后一次发送的请求信息中的请求起始位置;在接收的分解数据的实际起始位置小于或等于请求起始位置的情况下,无线通信模块将本次发送的请求信息中的请求起始位置和接收的分解数据的结束位置的后一位置中的最大值确定为后一次发送的请求信息中的请求起始位置。

S516,在接收保存的分解数据的总长度大于或等于第二数据长度阈值的情况下,无线通信模块将分解数据进行合并处理,获得合并数据。

S517,无线通信模块将合并数据发送至第二设备。

S518,无线通信模块删除已发送的合并数据。

步骤S513至S515为循环获取分解数据,在获取的分解数据满足一定条件的情况下,暂停获取分解数据,对已获取的分解数据进行合并处理并发送至第二设备。

结合图2所示的应用场景,在无线通信模块实际传输数据的过程中,另一种用于数据传输的方法如图8所示,包括:

S601,在第一设备向第二设备传输数据的情况下,第一设备向无线通信模块发送传输数据的信息。传输数据的信息包括传输方式、传输数据的长度、内容类型等信息。

S602,无线通信模块向第一设备发送请求信息;其中,请求信息用于使第一设备将传输的数据进行分解。请求信息包括分解数据的请求起始位置和请求长度。每段分解数据的长度小于或等于第一数据长度阈值。

S603,第一设备按请求信息将数据进行分解,向无线通信模块发送分解数据。

S604,在无线通信模块每接收到一段分解数据的情况下,无线通信模块暂停向第一设备发送请求信息,将分解数据进行二次分解,获得二次分解数据。每段二次分解数据的长度小于或等于第二数据长度阈值。

S605,无线通信模块将二次分解数据发送至第二设备。

S606,第二设备向无线通信模块发送应答信息。其中,应答信息包括二次分解数据的接收起始位置和二次分解数据的接收长度。

S607,无线通信模块对应答信息进行检查,确定后一次发送的二次分解数据。在二次分解数据的接收起始位置大于发送起始位置的情况下,将发送起始位置确定为后一次发送的二次分解数据的发送起始位置;在二次分解数据的接收起始位置小于或等于发送起始位置的情况下,将发送起始位置和第二设备接收的二次分解数据的结束位置的后一位置中的最大值确定为后一次发送的二次分解数据的发送起始位置。二次分解数据的发送长度可以根据需要进行设定。

S608,删除发送完毕的分解数据。在删除发送完毕的分解数据后,无线通信模块继续向第一设备发送请求信息获取分解数据,直至将所有的分解数据发送至第二设备。

结合图9所示,本公开实施例提供另一种用于数据传输的装置300,包括处理器(processor)100和存储有程序指令的存储器(memory)101。可选地,该装置还可以包括通信接口(Communication Interface)102和总线103。其中,处理器100、通信接口102、存储器101可以通过总线103完成相互间的通信。通信接口102可以用于信息传输。处理器100可以调用存储器101中的逻辑指令,以执行上述实施例的用于数据传输的方法。

此外,上述的存储器101中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。

存储器101作为一种存储介质,可用于存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令/模块。处理器100通过运行存储在存储器101中的程序指令/模块,从而执行功能应用以及数据处理,即实现上述实施例中用于数据传输的方法。

存储器101可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器101可以包括高速随机存取存储器,还可以包括非易失性存储器。

本公开实施例提供了一种无线通信模块,包括无线通信模块主体,以及上述的用于数据传输的装置300。用于数据传输的装置300被安装于无线通信模块主体。这里所表述的安装关系,并不仅限于在产品内部放置,还包括了与产品的其他元器件的安装连接,包括但不限于物理连接、电性连接或者信号传输连接等。本领域技术人员可以理解的是,用于数据传输的装置300可以适配于可行的产品主体,进而实现其他可行的实施例。

本公开实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,计算机可执行指令设置为执行上述用于数据传输的方法。

上述的计算机可读存储介质可以是暂态计算机可读存储介质,也可以是非暂态计算机可读存储介质。

本公开实施例的技术方案可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括一个或多个指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开实施例方法的全部或部分步骤。而前述的存储介质可以是非暂态存储介质,包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。

以上描述和附图充分地示出了本公开的实施例,以使本领域的技术人员能够实践它们。其他实施例可以包括结构的、逻辑的、电气的、过程的以及其他的改变。实施例仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选的,并且操作的顺序可以变化。一些实施例的部分和特征可以被包括在或替换其他实施例的部分和特征。而且,本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“所述”(the)旨在同样包括复数形式。类似地,如在本申请中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本申请中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的特征、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。在没有更多限制的情况下,由语句“包括一个...”限定的要素,并不排除在包括所述要素的过程、方法或者设备中还存在另外的相同要素。本文中,每个实施例重点说明的可以是与其他实施例的不同之处,各个实施例之间相同相似部分可以互相参见。对于实施例公开的方法、产品等而言,如果其与实施例公开的方法部分相对应,那么相关之处可以参见方法部分的描述。

本领域技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,可以取决于技术方案的特定应用和设计约束条件。所述技术人员可以对每个特定的应用来使用不同方法以实现所描述的功能,但是这种实现不应认为超出本公开实施例的范围。所述技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

本文所披露的实施例中,所揭露的方法、产品(包括但不限于装置、设备等),可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,可以仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例。另外,在本公开实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

附图中的流程图和框图显示了根据本公开实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。在附图中的流程图和框图所对应的描述中,不同的方框所对应的操作或步骤也可以以不同于描述中所披露的顺序发生,有时不同的操作或步骤之间不存在特定的顺序。例如,两个连续的操作或步骤实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

相关技术
  • 用于汽车通讯模块的通讯方法、装置、模块及存储介质
  • 数据传输方法、数据传输装置及计算机可读存储介质
  • 数据传输方法、系统、装置和存储介质
  • 一种数据传输方法及装置、计算机可读存储介质
  • 数据传输方法、装置及存储介质
  • 无线通信模块通用性的实现方法、装置、无线通信设备及存储介质
  • 数据传输方法及装置、无线通信系统、存储介质
技术分类

06120116020204