CN113572808A - 一种数据传输方法、装置及存储介质 - Google Patents
一种数据传输方法、装置及存储介质 Download PDFInfo
- Publication number
- CN113572808A CN113572808A CN202110633486.2A CN202110633486A CN113572808A CN 113572808 A CN113572808 A CN 113572808A CN 202110633486 A CN202110633486 A CN 202110633486A CN 113572808 A CN113572808 A CN 113572808A
- Authority
- CN
- China
- Prior art keywords
- wireless communication
- communication module
- instruction
- thread
- data packet
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请实施例提供了一种数据传输方法、装置及存储介质,其中,上述方法包括:接收升级指令,上述升级指令为对无线通信模块进行升级的指令,以及根据上述升级指令建立第一线程;基于上述第一线程向上述无线通信模块发送数据包,上述数据包包括待传输文件中的部分文件,上述部分文件的字节数小于或等于第一字节数;在上述待传输文件传输完毕的情况下,向上述无线通信模块发送数据传输结束指令。本申请提供的方法,在需要对无线通信模块进行升级的情况下,不需要将整个无线通信模块重新生产,只需要无线通信模块与终端进行数据通信即可完成数据传输,从而完成升级,节约无线通信模块的升级时间以及升级成本。
Description
技术领域
本申请实施例涉及通信技术领域,具体涉及一种数据传输方法、装置及存储介质。
背景技术
无线通信模块可以让终端拥有数据传输的能力,是各类终端接入物联网(theinternet of things,IoT)的入口。在无线通讯模块制造出厂之后,一般会被焊接在终端设备的硬件板上,如果客户的需求发生变化,可以通过通用标准的开放移动联盟终端管理(open mobile alliance device manage,OMA DM)协议,采用空中固件升级(firmwareover-the-air,FOTA)服务器传输升级文件对无线通讯模块进行空中升级。
但是,如果在无线通信模块制造出厂之前客户的需求发生变化,此时则不能通过上述方法对无线通信模块进行升级,而只能按照客户的需求重新生产,重新生产无线通信模块的耗时长,成本高。
发明内容
本申请实施例公开了数据传输方法、装置及存储介质,在需要对无线通信模块进行升级的情况下,不需要将整个无线通信模块重新生产,只需要无线通信模块与终端进行数据通信即可完成数据传输,从而完成升级,节约无线通信模块的升级时间以及升级成本。
第一方面,本申请实施例公开了数据传输方法,应用于终端,无线通信模块与所述终端相连接,所述终端包含待传输文件,所述待传输文件为用于对所述无线通信模块进行升级的文件,所述方法包括:
所述终端接收升级指令,所述升级指令为对所述无线通信模块进行升级的指令,以及根据所述升级指令建立第一线程;
所述终端基于所述第一线程向所述无线通信模块发送数据包,所述数据包包括所述待传输文件中的部分文件,所述部分文件的字节数小于或等于第一字节数;
在所述待传输文件传输完毕的情况下,所述终端向所述无线通信模块发送数据传输结束指令。
在一种可能的实施方式中,所述终端基于所述第一线程向所述无线通信模块发送数据包之前,所述方法还包括:
所述终端基于所述第一线程向所述无线通信模块发送第一指令,所述第一指令携带波特率,所述波特率包括57600,115200,230400以及460800中的任意一种;
所述终端基于所述第一线程向所述无线通信模块发送数据包,包括:
基于所述第一线程以及所述波特率,所述终端向所述无线通信模块发送所述数据包。
在一种可能的实施方式中,所述终端基于所述第一线程向所述无线通信模块发送第一指令之前,所述方法还包括:
所述终端根据所述升级指令建立第二线程;
所述终端基于所述第二线程向所述无线通信模块发送第二指令,并接收针对所述第二指令的应答指令;所述第二指令用于指示所述无线通信模块进入下载模式,所述下载模式用于指示所述无线通信模块接收所述数据包;
所述终端基于所述第一线程向所述无线通信模块发送第一指令,包括:
基于所述第一线程以及所述针对所述第二指令的应答指令,所述终端向所述无线通信模块发送第一指令。
在一种可能的实施方式中,所述终端基于所述第二线程向所述无线通信模块发送第二指令之后,所述方法还包括:
所述终端删除所述第二线程。
在一种可能的实施方式中,所述终端基于所述第一线程接收所述无线通信模块针对所述第二指令的应答指令之后,所述方法还包括:
所述终端基于所述第一线程向所述无线通信模块发送指示信息,所述指示信息用于指示开始发送所述待传输文件;
所述指示信息至少包括以下任一项或多项:
所述指示信息的类型、所述指示信息的字节数、所述待传输文件的字节数、所述待传输文件的版本号。
所述终端基于所述第一线程接收所述无线通信模块发送的针对所述指示信息的应答信息;
所述基于所述第一线程以及所述波特率,所述终端向所述无线通信模块发送所述数据包,包括:
基于所述第一线程,所述波特率以及所述针对所述指示信息的应答信息,所述终端向所述无线通信模块发送所述数据包。
在一种可能的实施方式中,所述数据包包括以下任一项或多项:
所述数据包的类型,所述数据包的字节数、所述数据包在所述待传输文件中的位置、所述部分文件的字节数。
在一种可能的实施方式中,所述数据传输结束指令包括以下任一项或多项:
所述数据传输指令的类型、所述数据传输结束指令的字节数;
所述终端向所述无线通信模块发送数据传输结束指令之后,所述方法还包括:
所述终端接收针对所述数据传输结束指令的应答指令,所述应答指令包括以下任一项或多项:
所述应答指令的类型、所述应答指令的字节数、所述无线通信模块对所述数据传输指令的处理结果。
在一种可能的实施方式中,所述终端基于所述第一线程向所述无线通信模块发送数据包之后,所述终端向所述无线通信模块发送数据传输结束指令之前,所述方法还包括:
所述终端基于所述第一线程接收针对所述数据包的应答指令;
所述应答指令至少包括以下任一项或多项:
所述应答指令的类型、所述无线通信模块接收到的所述数据包的字节数、所述无线通信模块接收到的部分文件的字节数、所述数据包在所述待传输文件中的位置,所述无线通信模块对接收到的所述数据包的处理结果。
在一种可能的实施方式中,所述终端基于第一线程向所述无线通信模块发送数据包,包括:
基于所述第一线程,所述终端调用接口向所述无线通信模块发送数据包。
在一种可能的实施方式中,基于所述第一线程,所述终端调用接口向所述无线通信模块发送数据包之前,所述方法还包括:
所述终端基于所述第一线程向所述无线通信模块发送第三指令,所述第三指令用于指示所述无线通信模块进入下载模式,所述下载模式用于指示所述无线通信模块接收所述数据包;
所述终端基于所述第一线程接收针对所述第三指令的应答指令;
所述基于所述第一线程,所述终端调用接口向所述无线通信模块发送数据包,包括:
基于所述第一线程和所述针对所述第三指令的应答指令,所述终端调用接口向所述无线通信模块发送数据包。
第二方面,本申请实施例公开了数据传输装置,无线通信模块与所述数据传输装置相连接,所述数据传输装置包含待传输文件,所述待传输文件为用于对所述无线通信模块进行升级的文件,所述装置包括:
接收单元,用于接收升级指令,所述升级指令为对所述无线通信模块进行升级的指令;
建立单元,用于根据所述升级指令建立第一线程;
发送单元,用于基于所述第一线程向所述无线通信模块发送数据包,所述数据包包括所述待传输文件中的部分文件,所述部分文件的字节数小于或等于第一字节数;在所述待传输文件传输完毕的情况下,向所述无线通信模块发送数据传输结束指令。
在一种可能的实施方式中,所述发送单元,还用于基于所述第一线程向所述无线通信模块发送第一指令,所述第一指令携带波特率,所述波特率包括57600,115200,230400以及460800中的任意一种;
所述发送单元,具体用于基于所述第一线程以及所述波特率,向所述无线通信模块发送所述数据包。
在一种可能的实施方式中,所述建立单元,还用于根据所述升级指令建立第二线程;
所述发送单元,还用于基于所述第二线程向所述无线通信模块发送第二指令,所述第二指令用于指示所述无线通信模块进入下载模式,所述下载模式用于指示所述无线通信模块接收所述数据包;
所述接收单元,还用于接收针对所述第二指令的应答指令;
所述发送单元,具体用于基于所述第一线程以及所述针对所述第二指令的应答指令,向所述无线通信模块发送第一指令。
在一种可能的实施方式中,所述装置还包括删除单元,用于删除所述第二线程。
在一种可能的实施方式中,所述发送单元,还用于基于所述第一线程向所述无线通信模块发送指示信息,所述指示信息用于指示开始发送所述待传输文件;
所述指示信息至少包括以下任一项或多项:所述指示信息的类型、所述指示信息的字节数、所述待传输文件的字节数、所述待传输文件的版本号;
所述接收单元,具体用于基于所述第一线程接收所述无线通信模块发送的针对所述指示信息的应答信息;
所述发送单元,具体用于基于所述第一线程,所述波特率以及所述针对所述指示信息的应答信息,向所述无线通信模块发送所述数据包。
在一种可能的实施方式中,所述数据包包括以下任一项或多项:所述数据包的类型,所述数据包的字节数、所述数据包在所述待传输文件中的位置、所述部分文件的字节数。
在一种可能的实施方式中,所述数据传输结束指令包括以下任一项或多项:所述数据传输指令的类型、所述数据传输结束指令的字节数;
所述接收单元,还用于接收针对所述数据传输结束指令的应答指令,所述应答指令包括以下任一项或多项:所述应答指令的类型、所述应答指令的字节数、所述无线通信模块对所述数据传输指令的处理结果。
在一种可能的实施方式中,所述接收单元,还用于基于所述第一线程接收针对所述数据包的应答指令;
所述应答指令至少包括以下任一项或多项:所述无线通信模块接收到的所述数据包的字节数、所述无线通信模块接收到的部分文件的字节数、所述数据包在所述待传输文件中的位置,所述无线通信模块对接收到的所述数据包的处理结果。
在一种可能的实施方式中,所述发送单元,具体用于基于所述第一线程,调用接口向所述无线通信模块发送数据包。
在一种可能的实施方式中,所述发送单元,还用于基于所述第一线程向所述无线通信模块发送第三指令,所述第三指令用于指示所述无线通信模块进入下载模式,所述下载模式用于指示所述无线通信模块接收所述数据包;
所述发送单元,具体用于基于所述第一线程和所述针对所述第三指令的应答指令,调用接口向所述无线通信模块发送数据包。
第三方面,本申请实施例公开了一种数据传输装置,包括:处理器和存储器,其中,所述存储器中存储有计算机程序,所述处理器调用所述存储器中存储的计算机程序,用于执行如第一方面或者第一方面的任意一种可能的实施方式中的方法。
第四方面,本申请实施例公开了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序在一个或多个处理器上运行时,使得如第一方面或者第一方面的任意一种可能的实施方式中的方法被执行。
第五方面,本申请实施例公开了一种计算机程序产品,所述计算机程序产品包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如第一方面或者第一方面的任意一种可能的实施方式中的方法。
本申请实施例公开了数据传输方法、装置及存储介质,升级文件存储于终端,终端与无线通信模块之间进行连接,在需要对无线通信模块进行升级的情况下,首先接收升级指令,再依据所述升级指令建立线程,通过上述线程将升级文件以数据包的形式传输到无线通信模块中,而不需要将整个无线通信模块重新生产,节约无线通信模块的升级时间以及升级成本。
附图说明
为了更清楚地说明本申请实施例或背景技术中的技术方案,下面将对本申请实施例或背景技术中所需要使用的附图作简单的介绍。
图1是本申请实施例提供的一种网络架构的示意图;
图2是本申请实施例提供的一种数据传输系统的示意图;
图3是本申请实施例提供的一种数据传输方法的流程示意图;
图4是本申请实施例提供的另一种数据传输方法的流程示意图;
图5是本申请实施例提供的又一种数据传输方法的流程示意图;
图6是本申请实施例提供的一种数据传输装置的结构示意图;
图7为本申请实施例提供的一种数据传输装置的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地描述。
按照传输链路的不同,通信可以分为有线通信和无线通信,采用有线通信的方式必须架设电缆或挖掘电缆沟;而采用无线通信的方式则不需要架设电缆或挖掘电缆沟,只需要无线通信模块以及天线等无线网络设备的支持,就可以进行设备之间的通信。应用于物联网的设备需要支持至少一种无线通信协议,才能实现与物联网中其他设备、网络以及云端的互相连接。无线通信模块是芯片加上芯片所需的外围电路组成的集合,其主要功能是进行电磁信号与设备能够进行处理的信号之间的转换,即电磁信号与数字信号之间的转换。请参阅图1,图1是本申请实施例提供的一种网络架构的示意图。如图1所示,网络可以提供网络管理、数据库存储、云计算以及应用平台等网络服务,网络管理指监测、控制和记录网络资源的性能和使用情况,以使网络有效运行;数据库是长期存储在计算机内的、有组织的、可共享的、进行统一管理的大量数据的集合;云计算指通过网络将巨大的数据计算处理程序分解成无数个小程序,然后通过多部服务器组成的系统进行处理和分析这些小程序得到结果并返回给用户;应用平台是基于用户上网需求的变化以及软件的发展趋势,为合作伙伴和广大第三方开发者提供的互联网应用接入平台。在安防监控、平板电脑、手机支付以及车载领域需要进行以上网络服务时,通过设备内部的无线通信模块与网络之间进行通信,无线通信模块与移动设备接入互联网的接口设备(例如基站)之间建立无线通信,物联网中的设备就可以通过无线网络设备访问网络并获得以上网络服务。
由于设备之间的通信需求不同,无线通信模块的功能必须满足不同的客户以及不同应用场景的特定需求,即无线通信模块会根据需求的变化进行升级。无线通信模块里面有储存文件的闪存分区,不同的闪存分区有自己独立的内存大小,无线通信模块中的固件是指无线通信模块中可编程芯片中的软件,需经常根据实际的发展要求进行升级。无线通信模块中的升级分为整包升级和差分升级,整包升级指在更新分区时更新整个分区的镜像,差分升级指在更新分区时只更新差异部分。例如,一般情况下,无线通信模块中的固件升级采用整包升级的方式,音频、图片以及字库等程序文件的升级采用差分升级的方式。无线通信模块中的文件进行升级时,可以采用的升级方式有open CPU(一个开放式计算机系统,此系统可以允许用户进行部分的结构设计、模块设计、I/O操作等);或者AT命令,即终端与无线通信模块端之间发送的指令。也就是说,不同类型的文件进行升级时,终端与无线通信模块之间有不同的交互方式。
无线通信模块制造出厂之后,一般被安装在设备的硬件板上,如果需要对无线通信模块进行升级,可以通过OMADM协议以及FOTA服务器对无线通讯模块进行空中升级。OMADM是一种通过远程服务器对网络内终端进行管理的协议,通过OMA DM协议,服务器可以对设备进行固件升级、参数配置以及数据采集等各种管理功能。FOTA提供了一种通过无线网络进行软件空中升级的方法,拥有如复杂的OMADM协议规范,一般用户会使用统一的FOTA服务器为具有连网功能的设备,如手机、平板电脑、便携式媒体播放器、移动互联网设备等提供固件升级服务,用户使用网络以按需、易扩展的方式获取智能终端系统升级包,并通过FOTA进行云端升级,完成系统修复和优化。
无线通信模块制造出厂之前的生产流程中,一般会用到开发板和夹具两种工具,开发板简洁轻便,一般用于研发;夹具大而笨重,一般用于工厂生产。如果客户的需求发生变化,并不能采用上述空中升级的方法对无线通信模块进行升级,一般只能对无线通信模块进行刷机,再利用上述工具重新采取生产流程来升级。上述升级方式耗时长,成本高,本申请实施例提供了一种数据传输方法,在需要对无线通信模块进行升级的情况下,不需要将整个无线通信模块重新生产,只需要无线通信模块与终端进行数据通信即可完成数据传输,从而完成升级,节约无线通信模块的升级时间以及升级成本。
请参阅图2,图2是本申请实施例提供的一种数据传输系统的示意图。无线通信模块放置在开发板上,上述开发板可以是应用程序下载协议(application downloadprotocol,ADP)开发板,本申请不作任何限制。开发板上有用于设备之间进行通信的串口,通过上述串口,无线通信模块与终端进行有线连接,可以理解的是,本申请实施例中的终端与无线通信模块之间的通信属于短距离通信;上述终端可以是台式电脑、便携笔记本、32位微处理器或64位微处理器等,本申请不作任何限制。上述终端中包括无线通信模块进行升级所需要的升级文件以及用于上述终端与无线通信模块之间进行交互的软件,无线通信模块中包含主固件程序,上述主固件程序属于闪存分区里的一个分区(例如.lod分区),主要是控制接口和数据结构,用于响应上述终端发送的命令。上述软件通过串口给无线通信模块发送命令时,主固件程序将响应并处理该命令。
请参阅图3,图3是本申请实施例提供的一种数据传输方法的流程示意图,上述数据传输方法应用于终端,同时,本申请实施例提供的数据传输方法可以适用于无线通信模块制造出厂并安装到设备硬件板之前的升级,即适用于无线通信模块制造出厂之前的升级过程。
本申请实施例中,无线通信模块与上述终端相连接,终端包含待传输文件,上述待传输文件为用于对上述无线通信模块进行升级的文件,或者,上述待传输文件称为升级文件。可理解的,上述终端可以为用于执行程序代码的微处理器或计算机等,也可以是本申请实施例所示的数据传输装置。示例性的,可以用于执行本发明实施例所提供的方法的终端均属于本申请实施例的保护范围。例如,上述终端可以为台式电脑、便携笔记本、32位微处理器或64位微处理器等,本申请实施例对此不作限定。需要说明的是,本申请的说明书、权利要求书及附图中的术语“第一”和“第二”等仅用于区别不同对象,而不是用于描述特定顺序。如图3所示,上述数据传输方法包括:
步骤301:接收升级指令,以及根据上述升级指令建立第一线程。
在需要对无线通信模块中的程序文件进行升级的情况下,接收上述升级指令,即上述升级指令为对无线通信模块进行升级的指令。示例性的,上述升级指令可以是针对无线通信模块中固件程序文件的升级指令;或者,上述升级指令可以是针对无线通信模块中音频文件的升级指令;本申请对接收到的升级指令的类型不作任何限定。示例性的,终端可以包括显示屏,由此,终端通过显示屏接收针对无线通信模块进行升级的点击操作(即上述升级指令),上述升级指令可以理解为一个触发指令,上述升级指令可以用于触发终端来处理与无线通信模块进行交互的方式并传输升级文件。
可理解,本发明实施例是以终端为例示出的,上述终端也可以理解为是本申请实施例所示的执行数据传输的装置。
接收到上述升级指令之后,终端建立第一线程。线程是操作系统能够进行运算调度的最小单位,是进程中的实际运作单位;一个进程中可以并发多个线程,不同的线程可以并行执行不同的任务。
步骤302:基于上述第一线程向无线通信模块发送数据包。
具体地,终端向无线通信模块传输升级文件时,以数据包为单位进行数据传输。本申请实施例中,上述数据包包括上述待传输文件中的部分文件,其中,上述部分文件包含于上述待传输文件,并且,上述部分文件的字节数小于或等于第一字节数,即终端每次向无线通信模块发送的数据包中包含的升级文件的大小由用户决定,本申请不作限制。示例性的,对于升级文件较大的固件程序升级,升级文件的大小为50KB,那么用户可以将上述部分文件设定为10KB,也就是说,上述第一字节数为10KB,每个数据包中携带的升级文件的字节数小于或等于10KB。根据升级文件的大小确定上述数据包中携带的升级文件数据的数据量,可以灵活控制两者之间的数据传输,例如,在终端与无线通信模块之间的连接状况良好的情况下,可以设定较大的上述第一字节数以提高升级速率。
步骤303:在待传输文件传输完毕的情况下,向上述无线通信模块发送数据传输结束指令。
具体地,终端向无线通信模块传输数据包时,依次从待传输文件中读取小于或等于上述第一字节数的数据,作为上述部分文件进行发送。示例性的,升级文件的大小为55KB,用户将上述第一字节数设定为10KB,由于升级文件的字节数不是上述第一字节数的整数倍,终端向无线通信模块发送数据包时,从升级文件的头部开始读取文件户数据,前5次均读取10KB大小的文件数据,第6次则读取5KB大小的文件数据,分别作为数据包的部分文件向无线通信模块进行发送,直到上述6个数据包发送完毕,终端向无线通信模块发送数据传输结束指令,再删除上述第一线程,以节约终端的硬件资源。
本申请实施例提供的数据传输方法,在需要对无线通信模块进行升级的情况下,不需要将整个无线通信模块重新生产,只需要无线通信模块与终端进行数据通信即可完成数据传输,从而完成升级,节约无线通信模块的升级时间以及升级成本。
根据前文的描述可以理解,采用open CPU的升级方式与采用AT命令的升级方式时终端与无线通信模块之间的交互不同。
本申请实施例中,若采用open CPU的升级方式,终端基于上述第一线程向上述无线通信模块发送数据包之前,上述方法还包括:终端基于上述第一线程向上述无线通信模块发送第一指令,上述第一指令携带波特率,上述波特率包括57600,115200,230400以及460800中的任意一种;终端基于上述第一线程向上述无线通信模块发送数据包,包括:基于上述第一线程以及上述波特率,终端向上述无线通信模块发送上述数据包。
具体地,终端向无线通信模块发送数据包之前,先与无线通信模块协商波特率。波特率表示每秒钟传送的码元符号的个数,只有在终端与无线通信模块使用相同的波特率的情况下,两者才能进行通信。终端与无线通信模块进行波特率协商时,在上述第一指令中携带57600,115200,230400以及460800中的任意一种,上述4种波特率在本申请的短距离通信中使用可以提高数据传输的速率,节约升级时间。
特别地,在终端基于上述第一线程向上述无线通信模块发送第一指令之后,终端接收无线通信模块发送的针对上述第一指令的应答指令。具体地,在无线通信模块支持上述第一指令携带的波特率的情况下,上述应答指令为无线通信模块的确认信息,示例性的,无线通信模块将确认的波特率最为应答指令发送给终端。于是,在终端接收到上述应答指令之后,终端基于上述第一线程以及上述波特率向无线通信模块发送上述数据包。
特别地,上述第一指令中携带57600,115200,230400以及460800中的至少两种。由于每个设备支持的波特率不同,终端向无线通信模块发送上述第一指令时,携带至少两种大小的波特率供无线通信模块进行选择,可以提高两者波特率协商的效率。
特别地,在无线通信模块不支持接收到终端发送的波特率的情况下,无线通信模块向终端返回应答指令,上述应答指令携带无线通信模块支持的波特率。无线通信模块将自身支持的波特率作为应答向终端进行反馈,同样可以提高两者波特率协商的效率。
本申请实施例中,若采用open CPU的升级方式,终端基于上述第一线程向上述无线通信模块发送第一指令之前,还包括:终端根据上述升级指令建立第二线程;终端基于上述第二线程向上述无线通信模块发送第二指令,并接收针对上述第二指令的应答指令;上述第二指令用于指示上述无线通信模块进入下载模式,上述下载模式用于指示上述无线通信模块接收上述数据包;终端基于上述第一线程向上述无线通信模块发送第一指令,包括:基于上述第一线程以及上述针对上述第二指令的应答指令,终端向上述无线通信模块发送第一指令。
具体地,在终端接收到升级指令之后,无线通信模块进行波特率协商之前,终端建立第二线程。此时,终端具有上述第一线程和上述第二线程,其中,上述第一线程作为监听,等待接收无线通信模块发送的指令,上述第二线程作为数据发送的线程,用于终端向无线通信模块发送第二指令。无线通信模块被放置到开发板上之后,会进入上电模式,在接收到上述第二指令之后,无线通信模块才会进入下载模式,即无线通信模块可以接收终端发送的数据包。为了让无线通信模块进入下载模式,终端建立两条线程,两条线程分别用于数据发送和数据接收,在代码实现上更加简单且有利于代码维护。
特别地,在无线通信模块进入下载模式之后,终端已经不需要对无线通信模块进行监听,终端删除上述第二线程,保留上述第一线程用于数据的发送和接收,可以节约终端中的硬件资源,且数据处理更方便。于是,终端接收到上述针对上述第二指令的应答指令之后,终端基于上述第一线程与无线通信模块进行波特率协商。
本申请实施例中,终端基于上述第一线程接收上述无线通信模块针对上述第二指令的应答指令之后,还包括:终端基于上述第一线程向上述无线通信模块发送指示信息,上述指示信息用于指示开始发送上述待传输文件;上述指示信息至少包括以下任一项或多项:上述指示信息的类型、上述指示信息的字节数、上述待传输文件的字节数、上述待传输文件的版本号。
终端基于上述第一线程接收上述无线通信模块发送的针对上述指示信息的应答信息;上述应答信息包括以下任一项或多项:上述应答信息的类型、上述应答信息的字节数、无线通信模块对上述指示信息的处理结果。
上述基于上述第一线程以及上述波特率,终端向上述无线通信模块发送上述数据包,包括:基于上述第一线程,上述波特率以及上述针对上述指示信息的应答信息,终端向上述无线通信模块发送上述数据包。
具体地,在终端向无线通信模块发送数据包之前,通过一次交互告知无线通信模块即将开始发送升级文件,即终端向无线通信模块发送指示信息,无线通信模块针对上述指示信息进行应答,终端接收到无线通信模块的应答之后,才向无线通信模块发送数据包。
其中,上述指示信息中的类型用于表示该指示信息为终端发送的用于指示开始升级的信息,无线通信模块解析出上述类型之后,将按照该类型的要求作出应答;同样的,无线通信模块发送的上述应答信息携带上述应答信息的类型,终端接收到上述应答信息之后,通过解析出类型,就知道该应答信息为针对上述指示信息的应答。
本申请实施例中,若采用open CPU的升级方式,终端基于上述第一线程向上述无线通信模块发送数据包之后,终端向上述无线通信模块发送数据传输结束指令之前,还包括:终端基于上述第一线程接收针对上述数据包的应答指令;上述应答指令至少包括以下任一项或多项:上述应答指令的类型、上述无线通信模块接收到的上述数据包的字节数、上述无线通信模块接收到的部分文件的字节数、上述数据包在上述待传输文件中的位置,上述无线通信模块对接收到的上述数据包的处理结果。
本申请实施例中,若采用open CPU的升级方式,上述数据包还包括以及以下任一项或多项:上述数据包的类型,上述数据包的字节数、上述部分文件在上述待传输文件中的位置、上述部分文件的字节数。
具体地,终端每次向无线通信模块发送携带升级文件数据的数据包之后,接收无线通信模块发送的应答指令。其中,上述数据包的类型用于表示该数据包为终端向无线通信模块发送的携带升级文件数据的数据包,与终端发送的其他指令或其他数据包进行区分;无线通信模块接收到上述数据包之后,将根据数据包的类型对数据包进行处理。上述部分文件在上述待传输文件中的位置用于无线通信模块接收到上述数据包之后,按照位置的前后顺序进行存储,以便于组合成完整的升级文件。
本申请实施例中,若采用AT命令的升级方式,上述数据传输方法包括:
接收升级指令,上述升级指令为对上述无线通信模块进行升级的指令,以及根据上述升级指令建立第一线程;基于上述第一线程,终端调用接口向上述无线通信模块发送数据包;在上述待传输文件传输完毕的情况下,终端向上述无线通信模块发送数据传输结束指令。
具体地,终端接收升级指令之后,建立第一线程;在终端建立上述第一线程之后,通过上述第一线程调用控制串口的接口,上述接口可以是自定义封装的接口,以函数的形式进行调用。终端向无线通信模块发送数据包时,直接在函数中输入需要发送的升级文件的字节数即可,例如sendFile(256),其中sendFile表示函数名,256表示256字节的数据,从升级文件的头部开始,每次读取256字节的升级文件数据作为数据包向无线通信模块进行发送,直到升级文件发送完毕,终端向无线通信模块发送数据传输结束指令,再删除上述第一线程,以节约终端的硬件资源。
采用AT命令的方式进行升级与采用open CPU方式存在不同:采用AT命令方式进行升级时的升级文件小于采用open CPU方式进行升级的升级文件,所以,在AT命令方式中,数据包中部分文件的字节数的最大值小于open CPU方式中部分文件的字节数的最大值;不同于open CPU方式中,采用AT命令方式进行升级时,终端向无线通信模块发送指令或数据包之后不需要接收相应的应答信息,在数据包中只携带升级文件数据即可。
本申请实施例中,基于上述第一线程,终端调用接口向上述无线通信模块发送数据包之前,上述方法还包括:终端基于上述第一线程向上述无线通信模块发送第三指令,上述第三指令用于指示上述无线通信模块进入下载模式,上述下载模式用于指示上述无线通信模块接收上述数据包;终端基于上述第一线程接收针对上述第三指令的应答指令;
上述基于上述第一线程,终端调用接口向上述无线通信模块发送数据包,包括:
基于上述第一线程和上述针对上述第三指令的应答指令,终端调用接口向上述无线通信模块发送数据包。
具体地,终端向无线通信模块发送上述第三指令时,不需要上述第二线程,直接通过上述第一线程进行发送和接收,在接收到无线通信模块发送的应答指令之后,终端就可以通过上述第一线程来传输数据包。
如前文的描述,无线通信模块内部存在不同的分区,不同分区的内存空间大小不同,校准数据是储存在其中某一个分区里面的数据。在工厂生产无线通信模块时,在下载工位会对无线通信模块先删除校准数据,在进行下载,也就是格式化下载,本申请实施例提供的数据传输方法,终端与无线通信模块之间进行连接,通过上述连接将升级文件以数据包的形式传输给无线通信模块,进而完成无线通信模块的升级,无需在下载工位对无线通信模块进行升级,也就是对于无线通信模块来说,可以在不擦除上述校准数据的情况下进行下载,完成升级过程;并且无需返工,避免了校准功能测试(calibration function test,CFT),从而提升升级效率。
进一步地,终端与无线通信模块之间的连接为串口连接,通过串口进行升级可以发送AT指令,进而查询和比对升级文件版本和文件列表,用户体验好;本申请实施提供的数据传输方法,可以同时完成对无线通信模块的整包升级和差分升级,升级更加方便。
请参阅图4,图4是本申请实施例提供的另一种数据传输方法的流程示意图。如图4所示,终端在接收到升级指令之后,如果上述升级指令对应的升级方式为open CPU的升级方式,终端将建立两个线程,如图4中的A线程和B线程,上述A线程用于终端向无线通信模块发送指令,上述B线程用于监听无线通信模块的应答指令,需要说明的是,上述A线成和B线程可以同时建立,也可以先建立B线程,再建立A线程,让终端向无线通信模块发送指令之前就开始监听,从而防止无线通信模块对终端发送的指令作出应答之后终端无法接收的情况,另外,通过上述A线程和上述B线程分别进行发送和接收指令,相较于只使用一个线程更容易实现和进行代码维护。
如图4中步骤401(可参阅前文图3对应的实施例中,终端接收到升级指令之后,与无线通信模块进行波特率协商之前的相关描述),终端与无线通信模块之间进行同步。终端基于A线程向无线通信模块发送0xb5,再通过B线程接收无线通信模块发送的0x5b。无线通信模块接收到上述0xb5之后进入下载模式,即无线通信模块可以接收终端发送的数据包。
后续与无线通信模块之间的交互通过B线程完成,终端删除上述A线程,从而节约终端的硬件资源,简化交互流程。
如图4中步骤402(可参阅前文图3对应的实施例中协商波特率的相关描述),终端与无线通信模块之间进行波特率协商。终端基于B线程向无线通信模块发送0xb5 0x08,再基于B线程接收无线通信模块发送的0xb5 0x08;其中,上述0x08为十六进制的数,表示两者协商的波特率为115200波特。
如图4中步骤403(可参阅对应全文图3中终端向无线通信模块发送数据包之前,通过一次交互告知无线通信模块即将开始发送升级文件的相关描述),终端告知无线通信模块开始升级。终端基于B线程向无线通信模块发送开始升级指令0xaa 01 00 08 33 22 0401 00 39 0000 00 0d,其中,0xaa表示包头,不计入指令的总字节数中,之后每两个数表示一个字节,一共13个字节,被分成5个部分,每个部分均为十六进制的数。第1部分为第1个字节01,用于表示该指令的类型,例如,上述01表示终端发送的用于告知无线通信模块开始升级的指令;第3部分为第4至第7字节33 22 04 01,用于表示升级文件的版本号;第4部分为第8至第11字节00 39 00 00,用于表示需要下载的升级文件的长度;第2部分为第2和第3字节00 08,用于表示该指令中记录升级文件版本号和记录需要下载的升级文件的长度的字节数,例如,该指令中第4至第7字节记录升级文件版本号,第8至第11字节记录需要下载的升级文件的长度,一共8个字节,故上述第2和第3字节为十六进制数00 08;第5部分为第12和第13字节00 0d,用于表示该指令的总字节数,该指令中,一种13个字节,故最后第12和第13字节为十六进制数00 0d。
用特定的字节来表示数据包或指令的类型,终端和无线通信模块针对不同类型的指令和书包进行特定的处理,而不是按照收发的先后顺序来执行,可以减少终端处理数据包或指令的错误率,提高两个交互的效率。
无线通信模块接收到上述指令0xaa 01 00 08 33 22 04 01 00 39 00 00 00 0d之后,对上述指令进行解析,由于指令中类型为01,即终端告知无线通信模块开始升级,无线通信模块发送应答指令0xaa 02 00 03 00 00 06,其中,0xaa表示包头,不计入指令的总字节数中,之后每两个数表示一个字节,一共6个字节,被分成4个部分,每个部分均为十六进制的数。第1部分为第1个字节02,用于表示该指令的类型,在终端接收到类型为02的指令,就能够知道该指令为无线通信模块对开始升级指令的应答;第3部分为第4字节00,用于表示无线通信模块对终端发送的指令的处理结果,示例性的,以00表示成功、以01表示校验错误、以02表示Flash错误、以03表示无线通信模块正处于下载状态、以04表示数据包错误、以0x21表示长度错误等,一般正常及情况下都是返回00;第4部分为第5至第6字节00 06,用于表示该指令的总字节数,该指令中,一种6个字节,故最后第4和第5字节为十六进制数0006;第2部分为第2至第3字节00 01,用于表示记录无线通信模块对终端发送的指令的处理结果的字节数,上述指令中,第4字节用于记录无线通信模块对终端发送的指令的处理结果,故第2至第3字节为00 01。
如图4中步骤404(可参阅前文图3对应的实施例中步骤302),终端向无线通信模块传输数据包,数据包中携带升级文件数据,并且,终端每发送一个数据包就接收无线通信模块针对数据包的应答。终端向无线通信模块发送数据包的格式为0xaa 03 04 04 00 00 0001升级文件数据04 07,无线通信模块向终端发送的应答指令的格式为发送0xaa 04 00 0500 00 00 0001 00 0a。其中,0xaa表示包头,不计入数据包的总字节数中,之后每两个数表示一个字节,上述数据包被分成5个部分,上述应答指令被分成5个部分,每个部分均为十六进制的数。上述数据包的第1部分为第1字节03,用于表示该数据包的类型,上述应答指令的第1部分为第1字节04,即以03作为类型的数据包为终端向无线通信模块发送的携带升级文件数据的数据包,以04作为类型的指令为无线通信模块发送的针对数据包的应答,在终端传输升级文件的过程中,终端发送的数据包均以03作为类型,无线通信模块发送的应答指令均以04作为类型;上述数据包的第3部分为第4至第第7字节00 00 00 01,用于表示上述数据包在升级文件中的位置,例如,如果上述数据包是第1次从升级文件中读取数据,那么上述数据包为终端向无线通信模块发送升级文件的第1个数据包,故上述第4至第第7字节为00 00 0001;上述数据包的第4部分为升级文件数据,如果用户设定每个数据包携带1024字节的升级文件数据,那么上述第4部分为1024字节;上述数据包的第2部分为第2至第3字节04 04,用于表示记录数据包在升级文件中的位置和数据包携带的升级文件数据的字节数,即上述数据包的第3部分和第4部分,故上述数据包的第2部分为十六进制数04 04;上述数据包的第5部分为最后两个字节,用于表示数据包的总字节数,上述数据包的升级文件数据部分为1024字节,其他部分一共9个字节,故最后两个字节为十六进制的04 07。
同理,在上述应答指令中,第1部分为第1字节04;第2部分为第2至第3字节00 05;第3部分为第4至第7字节00 00 00 00;第4部分为第8字节,第5部分为第9至第10字节000a。其中,第1部分表示上述应答指令的类型;上述第2部分表示第3部分和第4部分的总字节数,上述第3部分表示无线通信模块接收到的数据包中携带的数据包在升级文件中的位置,即上述数据包中的第3部分;上述第4部分为无线通信模块对接收到的数据包的处理结果,与前文中步骤403的描述相同,这里不再赘述;上述第5部分用于表示应答指令的总字节数。
无线通信模块接收到终端发送的数据包,解析出数据包中的升级文件数据,并按照数据包在升级文件中的位置存储升级文件数据,直到终端将升级文件发送完毕。如图4中步骤405,终端发送数据传输结束指令0xaa 05 00 05告知无线通信模块升级文件发送完毕,无线通信模块以0xaa 06 00 03 00 00 06最为应答指令,整个升级过程完成(可参阅前文图3对应的实施例中步骤303)。
与前文对指令的描述类似,上述0xaa表示包头,不计入指令的总字节数中,每两个数表示一个字节。上述数据传输结束指令中,第1字节05用于表示上述数据传输结束指令的类型;第2至第3字节表示上述数据传输结束指令的总字节数。上述应答指令中,第1字节06用于表示上述应答指令的类型;第4字节表示上述第4部分为无线通信模块对接收到的数据传输结束指令的处理结果,与前文中步骤403的描述相同,这里不再赘述;第5至第6字节表示上述应答指令的总字节数;第2至第3字节用于表示记录无线通信模块对接收到的数据传输结束指令的处理结果和记录总字节数部分的字节数。
请参阅图5,图5是本申请实施例提供的又一种数据传输方法的流程示意图。如图5所示,终端在接收到升级指令之后,如果上述升级指令对应的升级方式为AT命令的升级方式,终端只建立一个线程即可,如图5中的C线程,需要说明的是,上述C线程可以理解为图3所述的第一线程,之所以图4中第一线程用B线程表示,图5中第一线程用C线程表示,是为了方便描述两种不同的升级方式。
为了与前文实施例相关联,可参阅前文图3对应的实施例中,采用AT命令的升级方式时的数据传输方法相关描述。
如图5中步骤501,终端向无线通信模块发送指令AT+UPDATA=FILE SIZE,使无线通信模块进入透传模式,透传即不管传输的业务内容,只负责将传输的内容由源地址传输到目的地址,而不对业务数据内容做任何改变,由于采用AT命令的方式进行升级时,终端向无线通信模块发送指令或数据包之后,不必要接收无线模块的应答,故,终端不需要单独建立线程对无线通信模块进行监听,故,在步骤501中,终端基于C线程接收无线通信模块发送的应答指令即可,如图5所示,上述应答指令为特殊字符“<”。
如图5中步骤502,终端向无线通信模块发送数据包,通过上述C线程,调用接口函数,直接在函数的参数中设置每个数据包需要传输的升级文件的字节数,上述接口函数就从升级文件的头部开始读取数据,向无线通信模块进行发送。例如,每个数据包以256字节的升级文件数据进行发送;无线通信模块不需要返回应答,直接将接收到的数据包分配到指定的地址进行储存,并且每收到一个数据包都以追加的方式进行储存,直到升级文件传输完毕。
如图5中步骤503,终端向无线通信模块发送DOTA_UPDATE_SUCCESS,升级完成。
上述详细阐述了本申请实施例的方法,下面提供本申请实施例的装置。
请参阅图6,图6是本申请实施例提供的一种数据传输装置的结构示意图。无线通信模块与上述数据传输装置60相连接,上述数据传输装置60包含待传输文件,上述待传输文件为用于对上述无线通信模块进行升级的文件(具体可参阅图2),上述数据传输装置60用于执行上述数据传输方法,可以为台式电脑、便携笔记本、32位微处理器或64位微处理器等,如图6所述,上述数据传输装置60包括接收单元601、建立单元602、发送单元603,其中,各个单元的描述如下:
接收单元601,用于接收升级指令,上述升级指令为对上述无线通信模块进行升级的指令;
建立单元602,用于根据上述升级指令建立第一线程;
发送单元603,用于基于上述第一线程向上述无线通信模块发送数据包,上述数据包包括上述待传输文件中的部分文件,上述部分文件的字节数小于或等于第一字节数;在上述待传输文件传输完毕的情况下,向上述无线通信模块发送数据传输结束指令。
在一种可能的实施方式中,上述发送单元603,还用于基于上述第一线程向上述无线通信模块发送第一指令,上述第一指令携带波特率,上述波特率包括57600,115200,230400以及460800中的任意一种;基于上述第一线程以及上述波特率,向上述无线通信模块发送上述数据包。
在一种可能的实施方式中,上述建立单元602,还用于根据上述升级指令建立第二线程;
上述发送单元603,还用于基于上述第二线程向上述无线通信模块发送第二指令,上述第二指令用于指示上述无线通信模块进入下载模式,上述下载模式用于指示上述无线通信模块接收上述数据包;
上述接收单元601,还用于接收针对上述第二指令的应答指令;
上述发送单元603,还用于基于上述第一线程以及上述针对上述第二指令的应答指令,向上述无线通信模块发送第一指令。
在一种可能的实施方式中,上述装置还包括删除单元604,用于删除上述第二线程。
在一种可能的实施方式中,上述发送单元603,还用于基于上述第一线程向上述无线通信模块发送指示信息,上述指示信息用于指示开始发送上述待传输文件;
上述指示信息至少包括以下任一项或多项:上述指示信息的类型、上述指示信息的字节数、上述待传输文件的字节数、上述待传输文件的版本号;
上述接收单元601,还用于基于上述第一线程接收上述无线通信模块发送的针对上述指示信息的应答信息;
上述发送单元603,还用于基于上述第一线程,上述波特率以及上述针对上述指示信息的应答信息,向上述无线通信模块发送上述数据包。
在一种可能的实施方式中,上述数据包包括以下任一项或多项:上述数据包的类型,上述数据包的字节数、上述数据包在上述待传输文件中的位置、上述部分文件的字节数。
在一种可能的实施方式中,上述数据传输结束指令包括以下任一项或多项:上述数据传输指令的类型、上述数据传输结束指令的字节数;
上述接收单元601,还用于接收针对上述数据传输结束指令的应答指令,上述应答指令包括以下任一项或多项:上述应答指令的类型、上述应答指令的字节数、上述无线通信模块对上述数据传输指令的处理结果。
在一种可能的实施方式中,上述接收单元601,还用于基于上述第一线程接收针对上述数据包的应答指令;
上述应答指令至少包括以下任一项或多项:上述无线通信模块接收到的上述数据包的字节数、上述无线通信模块接收到的部分文件的字节数、上述数据包在上述待传输文件中的位置,上述无线通信模块对接收到的上述数据包的处理结果。
在一种可能的实施方式中,上述发送单元603,还用于基于上述第一线程,调用接口向上述无线通信模块发送数据包。
在一种可能的实施方式中,上述发送单元603,还用于基于上述第一线程向上述无线通信模块发送第三指令,上述第三指令用于指示上述无线通信模块进入下载模式,上述下载模式用于指示上述无线通信模块接收上述数据包;
上述发送单元603,还用于基于上述第一线程和上述针对上述第三指令的应答指令,调用接口向上述无线通信模块发送数据包。
请参阅图7,图7是本申请实施例提供的一种数据传输装置的结构示意图,上述数据传输装置70可以是电子设备,如可以为台式电脑、便携笔记本、32位微处理器或64位微处理器等。无线通信模块与上述数据传输装置70相连接,上述数据传输装置70包含待传输文件,上述待传输文件为用于对上述无线通信模块进行升级的文件(具体可参阅图2)。
上述数据传输装置70包括存储器701、处理器702。进一步可选的,还可以包含通信接口703以及总线704,其中,存储器701、处理器702以及通信接口703通过总线704实现彼此之间的通信连接。
其中,存储器701用于提供存储空间,存储空间中可以存储操作系统和计算机程序等数据。存储器701包括但不限于是随机存储记忆体(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmable readonly memory,EPROM)、或便携式只读存储器(compact disc read-only memory,CD-ROM)。
处理器702是进行算术运算和逻辑运算的模块,可以是中央处理器(centralprocessing unit,CPU)、显卡处理器(graphics processing unit,GPU)或微处理器(microprocessor unit,MPU)等处理模块中的一种或者多种的组合。
存储器701中存储有计算机程序,处理器702调用存储器701中存储的计算机程序,以执行以下操作:
接收升级指令,上述升级指令为对上述无线通信模块进行升级的指令,以及根据上述升级指令建立第一线程;
基于上述第一线程向上述无线通信模块发送数据包,上述数据包包括上述待传输文件中的部分文件,上述部分文件的字节数小于或等于第一字节数;
在上述待传输文件传输完毕的情况下,向上述无线通信模块发送数据传输结束指令。
需要说明的是,上述数据传输装置70的具体实现还可以参照图3至图5所示的方法实施例的相应描述。
本申请实施例还提供一种计算机可读存储介质,上述计算机可读存储介质中存储有计算机程序,当上述计算机程序在一个或多个处理器上运行时,可以实现图3至图5所示的方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,上述流程可以由计算机程序相关的硬件完成,上述计算机程序可存储于计算机可读取存储介质中,上述计算机程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:只读存储器ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储计算机程序代码的介质。
Claims (10)
1.一种数据传输方法,其特征在于,应用于终端,无线通信模块与所述终端相连接,所述终端包含待传输文件,所述待传输文件为用于对所述无线通信模块进行升级的文件,所述方法包括:
所述终端接收升级指令,所述升级指令为对所述无线通信模块进行升级的指令,以及根据所述升级指令建立第一线程;
所述终端基于所述第一线程向所述无线通信模块发送数据包,所述数据包包括所述待传输文件中的部分文件,所述部分文件的字节数小于或等于第一字节数;
在所述待传输文件传输完毕的情况下,所述终端向所述无线通信模块发送数据传输结束指令。
2.根据权利要求1所述的方法,其特征在于,所述终端基于所述第一线程向所述无线通信模块发送数据包之前,所述方法还包括:
所述终端基于所述第一线程向所述无线通信模块发送第一指令,所述第一指令携带波特率,所述波特率包括57600,115200,230400以及460800中的任意一种;
所述终端基于所述第一线程向所述无线通信模块发送数据包,包括:
基于所述第一线程以及所述波特率,所述终端向所述无线通信模块发送所述数据包。
3.根据权利要求2所述的方法,其特征在于,所述终端基于所述第一线程向所述无线通信模块发送第一指令之前,所述方法还包括:
所述终端根据所述升级指令建立第二线程;
所述终端基于所述第二线程向所述无线通信模块发送第二指令,并接收针对所述第二指令的应答指令;所述第二指令用于指示所述无线通信模块进入下载模式,所述下载模式用于指示所述无线通信模块接收所述数据包;
所述终端基于所述第一线程向所述无线通信模块发送第一指令,包括:
基于所述第一线程以及所述针对所述第二指令的应答指令,所述终端向所述无线通信模块发送第一指令。
4.根据权利要求3所述的方法,其特征在于,所述数据包包括以下任一项或多项:
所述数据包的类型,所述数据包的字节数、所述部分文件在所述待传输文件中的位置、所述部分文件的字节数。
5.根据权利要求4所述的方法,其特征在于,所述终端基于所述第一线程向所述无线通信模块发送数据包之后,所述终端向所述无线通信模块发送数据传输结束指令之前,所述方法还包括:
所述终端基于所述第一线程接收针对所述数据包的应答指令;
所述应答指令至少包括以下任一项或多项:
所述无线通信模块接收到的所述数据包的字节数、所述无线通信模块接收到的所述部分文件的字节数、所述无线通信模块对接收到的所述数据包的处理结果。
6.根据权利要求1所述的方法,其特征在于,所述终端基于第一线程向所述无线通信模块发送数据包,包括:
基于所述第一线程,所述终端调用接口向所述无线通信模块发送数据包。
7.根据权利要求6所述的方法,其特征在于,所述基于所述第一线程,所述终端调用接口向所述无线通信模块发送数据包之前,所述方法还包括:
所述终端基于所述第一线程向所述无线通信模块发送第三指令,所述第三指令用于指示所述无线通信模块进入下载模式,所述下载模式用于指示所述无线通信模块接收所述数据包;
所述终端基于所述第一线程接收针对所述第三指令的应答指令;
所述基于所述第一线程,所述终端调用接口向所述无线通信模块发送数据包,包括:
基于所述第一线程和所述针对所述第三指令的应答指令,所述终端调用接口向所述无线通信模块发送数据包。
8.一种数据传输装置,其特征在于,无线通信模块与所述数据传输装置相连接,所述数据传输装置包含待传输文件,所述待传输文件为用于对所述无线通信模块进行升级的文件,所述装置包括:
接收单元,用于接收升级指令,所述升级指令为对所述无线通信模块进行升级的指令;
建立单元,用于根据所述升级指令建立第一线程;
发送单元,用于基于所述第一线程向所述无线通信模块发送数据包,所述数据包包括所述待传输文件中的部分文件,所述部分文件的字节数小于或等于第一字节数;在所述待传输文件传输完毕的情况下,向所述无线通信模块发送数据传输结束指令。
9.一种数据传输装置,其特征在于,包括:处理器和存储器,其中,所述存储器中存储有计算机程序,所述处理器调用所述存储器中存储的计算机程序,用于执行如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序在一个或多个处理器上运行时,使得如权利要求1-7中任一项所述的方法被执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110633486.2A CN113572808A (zh) | 2021-06-07 | 2021-06-07 | 一种数据传输方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110633486.2A CN113572808A (zh) | 2021-06-07 | 2021-06-07 | 一种数据传输方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113572808A true CN113572808A (zh) | 2021-10-29 |
Family
ID=78161817
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110633486.2A Pending CN113572808A (zh) | 2021-06-07 | 2021-06-07 | 一种数据传输方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113572808A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103051674A (zh) * | 2012-11-23 | 2013-04-17 | 深圳市航天泰瑞捷电子有限公司 | 一种远程升级无线通信模块的方法、装置及手持单元 |
CN103530159A (zh) * | 2013-10-21 | 2014-01-22 | 深圳市中兴物联科技有限公司 | 无线通信模块的升级方法和系统 |
CN111327454A (zh) * | 2020-01-20 | 2020-06-23 | 深圳市广和通无线股份有限公司 | 文件升级方法、装置、计算机设备和存储介质 |
WO2020211016A1 (zh) * | 2019-04-17 | 2020-10-22 | 华为技术有限公司 | 一种设备升级方法及相关设备 |
-
2021
- 2021-06-07 CN CN202110633486.2A patent/CN113572808A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103051674A (zh) * | 2012-11-23 | 2013-04-17 | 深圳市航天泰瑞捷电子有限公司 | 一种远程升级无线通信模块的方法、装置及手持单元 |
CN103530159A (zh) * | 2013-10-21 | 2014-01-22 | 深圳市中兴物联科技有限公司 | 无线通信模块的升级方法和系统 |
WO2020211016A1 (zh) * | 2019-04-17 | 2020-10-22 | 华为技术有限公司 | 一种设备升级方法及相关设备 |
CN111327454A (zh) * | 2020-01-20 | 2020-06-23 | 深圳市广和通无线股份有限公司 | 文件升级方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110324169B (zh) | 一种接口管理的方法和装置 | |
CN108205442B (zh) | 边缘计算平台 | |
US7747683B2 (en) | Method and system for operating applications for remote terminal devices | |
US7155639B2 (en) | Compliance testing communication protocols implemented on resource-constrained computing devices | |
CN110875850B (zh) | 一种固件升级方法、系统、可读存储介质及终端设备 | |
CN112073994A (zh) | 用于空中升级的方法、装置、电子设备及可读存储介质 | |
CN102904959A (zh) | 网络加速方法和网关 | |
CN114124917B (zh) | 一种地锁固件远程升级方法、设备、系统和介质 | |
US20170033980A1 (en) | Agent manager for distributed transaction monitoring system | |
CN103729189A (zh) | 基于lua的播放协议转换方法、系统、终端 | |
CN113821352A (zh) | 一种远程服务的调用方法和装置 | |
CN110221840B (zh) | 应用程序的功能实现方法及装置、设备及存储介质 | |
EP3091435A1 (en) | Resource management method and device for terminal system | |
CN114064091A (zh) | Ota升级控制方法、装置、电子设备及自动驾驶车辆 | |
CN116418791A (zh) | 固件升级方法、固件升级系统、服务器及存储介质 | |
CN104570967A (zh) | 基于Android系统的远程控制方法及系统 | |
CN113572808A (zh) | 一种数据传输方法、装置及存储介质 | |
CN113468067B (zh) | 应用程序的调试方法、装置、电子设备和计算机可读介质 | |
WO2021243665A1 (zh) | 编译方法、编译装置、编译系统、存储介质与电子设备 | |
CN112905273A (zh) | 一种服务调用方法和装置 | |
CN114064065A (zh) | 程序升级方法和程序升级系统 | |
CN111193717A (zh) | Ftp黑白名单控制方法、装置及电子设备 | |
CN109669699A (zh) | 应用程序分发方法、ac、ap及无线网络系统 | |
CN113821248B (zh) | 车机端软件的服务方法、车机端软件及其相关设备 | |
CN110569069A (zh) | 一种配置管理方法、配置管理系统及具有存储功能的装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |