CN117615367A - 一种固件程序更新方法、装置及系统 - Google Patents
一种固件程序更新方法、装置及系统 Download PDFInfo
- Publication number
- CN117615367A CN117615367A CN202410070407.5A CN202410070407A CN117615367A CN 117615367 A CN117615367 A CN 117615367A CN 202410070407 A CN202410070407 A CN 202410070407A CN 117615367 A CN117615367 A CN 117615367A
- Authority
- CN
- China
- Prior art keywords
- updated
- equipment
- data
- firmware program
- communication address
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000004891 communication Methods 0.000 claims abstract description 89
- 238000001514 detection method Methods 0.000 claims abstract description 21
- 238000012545 processing Methods 0.000 claims description 25
- 238000005192 partition Methods 0.000 claims description 17
- 230000004044 response Effects 0.000 claims description 15
- 238000012795 verification Methods 0.000 claims description 14
- 230000008569 process Effects 0.000 claims description 6
- 238000013524 data verification Methods 0.000 claims description 2
- 230000005540 biological transmission Effects 0.000 abstract description 17
- 238000004590 computer program Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/22—Processing or transfer of terminal data, e.g. status or physical capabilities
- H04W8/24—Transfer of terminal data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/005—Discovery of network devices, e.g. terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0002—Serial port, e.g. RS232C
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/38—Universal adapter
- G06F2213/3814—Wireless link with a computer system port
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种固件程序更新方法、装置及系统,其中方法包括获取固件程序更新数据;在公共频段上发送探测数据,以与待更新设备建立通信,并与待更新设备一同将通信频道切换至空闲的第一工作频道;随后将固件程序更新数据发送至处于第一通信地址的待更新设备,使待更新设备完成更新;退出第一工作频道,重复执行上述步骤,直至完成所有的待更新设备的固件程序更新;在本申请中,实现了对于固件更新数据的无线传输,无需打开待更新设备的外壳即可实现对于待更新设备的固件更新,并且在与待更新设备建立起数据通信时,可以与待更新设备一起切换至一个空闲的工作频道进行通信,保证了数据传输的质量和效率,进而可以高效完成待更新设备的固件更新。
Description
技术领域
本发明涉及无线通信领域,特别是涉及一种固件程序更新方法、装置及系统。
背景技术
对于当前大部分的电子产品,在组装完毕后其内部固件程序往往有更新需求。
但组装完成的电子产品往往带有封闭外壳,现有固件更新方法需要拆开外壳,然后将产品放在专用的烧录夹具上进行烧录,夹具上使用弹簧针与产品的烧录触点进行连接,烧录完毕后再将外壳装好。这样每次升级程序都需要拆装产品外壳,会损坏外壳及内部组件安装精度,夹具使用过程中也会接触不良或者弹簧针损坏,会导致较高的生产成本并且效率很低。
发明内容
基于此,有必要针对上述的问题,提供一种固件程序更新方法、装置及系统。
本发明实施例是这样实现的,一种固件程序更新方法,所述方法包括:
S1:获取固件程序更新数据;
S2:在公共频段上发送探测数据,以探测待更新设备;
S3:接收到待更新设备发送的对应于探测数据的应答后,向待更新设备发送握手指令,以与待更新设备握手,进而触发待更新设备将通信地址切换为第一通信地址并将通信频道切换至空闲的第一工作频道,其中,第一通信地址为待更新设备随机生成的通信地址;
S4:依据待更新设备发送的第一通信地址和第一工作频道调整串口与射频数据转换器的工作参数,以与待更新设备在第一工作频道上通信;
S5:将固件程序更新数据发送至处于第一通信地址的待更新设备,使待更新设备完成更新;
S6:退出第一工作频道,重复执行步骤S2至步骤S6,直至完成所有的待更新设备的固件程序更新。
在其中一个实施例中,本发明提供了一种固件程序更新装置,具体包括:
获取模块,用于获取固件程序更新数据;
第一处理模块,用于在公共频段上发送探测数据,以探测待更新设备;
第二处理模块,用于接收到待更新设备发送的对应于探测数据的应答后,向待更新设备发送握手指令,以与待更新设备握手,进而触发待更新设备将通信地址切换为第一通信地址并将通信频道切换至空闲的第一工作频道,其中,第一通信地址为待更新设备随机生成的通信地址;
第三处理模块,用于依据待更新设备发送的第一通信地址和第一工作频道调整射频发送器的参数,以与待更新设备在第一工作频道上通信;
第四处理模块,用于将固件程序更新数据发送至处于第一通信地址的待更新设备,使待更新设备完成更新;
第五处理模块,用于退出第一工作频道,重复执行步骤S2至步骤S6,直至完成所有的待更新设备的固件程序更新。
在其中一个实施例中,本发明提供了一种固件程序更新系统,所述系统包括:
若干个串口与射频数据转换器,用于将串口数据转换成射频信号并发送;
计算机设备,各个串口与射频数据转换器安装在计算机设备的串口上,计算机设备通过串口与射频数据转换器与待更新设备通信,以执行所述的固件程序更新方法。
本发明提供了一种固件程序更新方法、装置及系统,其中方法包括获取固件程序更新数据;在公共频段上发送探测数据,以探测待更新设备;接收到待更新设备发送的对应于探测数据的应答后,向待更新设备发送握手指令,以与待更新设备握手,进而触发待更新设备将通信地址切换为第一通信地址并将通信频道切换至空闲的第一工作频道;依据待更新设备发送的第一通信地址和第一工作频道调整串口与射频数据转换器的工作参数,以与待更新设备在第一工作频道上通信;将固件程序更新数据发送至处于第一通信地址的待更新设备,使待更新设备完成更新;退出第一工作频道,重复执行上述步骤,直至完成所有的待更新设备的固件程序更新;在本申请中,实现了对于固件更新数据的无线传输,无需打开待更新设备的外壳即可实现对于待更新设备的固件更新,并且在与待更新设备建立起数据通信时,可以与待更新设备一起切换至一个空闲的工作频道进行通信,保证了数据传输的质量和效率,进而可以高效完成待更新设备的固件更新。
附图说明
图1为一个实施例中提供的固件程序更新方法的第一流程图;
图2为一个实施例中提供的固件程序更新方法的第二流程图;
图3为一个实施例中固件程序更新装置的模块流程图;
图4为一个实施例中固件程序更新系统的工作示意图;
图5为一个实施例中计算机设备的内部结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
可以理解,本发明所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但除非特别说明,这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本发明的范围的情况下,可以将第一xx脚本称为第二xx脚本,且类似地,可将第二xx脚本称为第一xx脚本。
如图1所示,在一个实施例中,提出了一种固件程序更新方法,所述方法包括:
S1:获取固件程序更新数据;
S2:在公共频段上发送探测数据,以探测待更新设备;
S3:接收到待更新设备发送的对应于探测数据的应答后,向待更新设备发送握手指令,以与待更新设备握手,进而触发待更新设备将通信地址切换为第一通信地址并将通信频道切换至空闲的第一工作频道,其中,第一通信地址为待更新设备随机生成的通信地址;
S4:依据待更新设备发送的第一通信地址和第一工作频道调整串口与射频数据转换器的工作参数,以与待更新设备在第一工作频道上通信;
S5:将固件程序更新数据发送至处于第一通信地址的待更新设备,使待更新设备完成更新;
S6:退出第一工作频道,重复执行步骤S2至步骤S6,直至完成所有的待更新设备的固件程序更新。
在本实施例中,本方法在计算机设备中执行,计算机设备可以是独立的物理服务器或终端,也可以是多个物理服务器构成的服务器集群,可以是提供云服务器、云数据库、云存储和CDN等基础云计算服务的云服务器;待更新设备可以是工厂中组装好的手机、平板电脑、打印机、路由器等带有封闭外壳的电子产品;公共频段为一个较大的频率范围,绝大部分电子设备可以在公共频段上通信,公共频段中包括若干个较小范围的子频段,待更新设备开机后将其通信频段逐一切换为各个子频段,当其在任意一个子频段接收到探测数据时,即在该子频段向计算机设备回传应答数据,计算机设备接收到应答数据后即完成了探测;进一步,计算机设备探测到待更新设备后,向待更新设备发送握手指令,待更新设备响应握手指令后,两者建立通信,此时待更新设备的通信地址为公共通信地址,并且两者处于公共频段中的一个随机的通道中通信,该通道可能比较拥挤,会对数据传输产生影响,此时待更新设备生成一个随机的第一通信地址替代原来的通信地址,以便于计算机设备识别该待更新设备,再者,待更新设备确定一个空闲的频道作为第一工作频道,并将第一通信地址和第一工作频道的信息发送给计算机设备,使两者工作于该第一工作频道,能够减少传输时的数据干扰、丢包等情况,保证了数据的传输效率和完整性。
在本申请中,实现了对于固件更新数据的无线传输,无需打开待更新设备的外壳即可实现对于待更新设备的固件更新,并且在与待更新设备建立起数据通信时,可以与待更新设备一起切换至一个空闲的工作频道进行通信,保证了数据传输的质量和效率,进而可以高效完成待更新设备的固件更新。
作为一个优选的实施例,件程序更新数据由对应于待更新设备的存储器的每一个分区的分区数据组成,依据用户输入的分区信息确定存储器中的待更新分区,进而从固件程序更新数据中提取与待更新分区对应的分区数据作为第一更新数据。
所述将固件程序更新数据发送至处于第一通信地址的待更新设备包括:
S51:将第一更新数据划分为若干个数据分包;
S52:向待更新设备发送数据大小信息,以使待更新设备预备接收数据,其中,数据大小信息包括第一更新数据的数据总长度,数据分包个数;
S53:接收到待更新设备的应答后,将各个数据分包逐一发送至待更新设备。
在本实施例中,需要更新的固件程序存储在待更新设备的存储器中,比如Flash闪存,Flash闪存中有多个分区,每一次更新可以依据工作人员输入计算机设备的信息确定要进行全局更新还是部分分区更新,如果是部分分区更新的话,确定出需要更新的分区有哪些,进而从固件程序更新数据中把这些分区对应的数据筛选出来,以按照更新需求传输数据,避免了对不必要的数据进行传输,提升了传输效率;进一步,将要传输的第一更新数据划分成若干个数据分包再传输,具有更好的传输灵活性,可以避免因某一个局部数据的错误导致需要重传所有数据的问题;再者,向待更新设备发送数据大小信息,可以使待更新设备及时腾出足够的空间以接收计算机设备发送的数据。
作为一个优选的实施例, 所述将各个数据分包逐一发送至待更新设备包括:
S531:取一个数据分包作为第一数据分包;
S532:将第一数据分包的数据大小信息发送至待更新设备,以使待更新设备预备接收第一数据分包;
S533:接收到待更新设备的应答后,将第一数据分包内的数据划分为若干个数据帧,并在每个数据帧中添加对应于帧内数据的第一校验值;
S534:将各个数据帧发送至待更新设备,以使待更新设备检验每一个数据帧中的第一校验值;
S535:若接收到待更新设备发送的对应于任意一个第一校验值的错误信息,则重发第一数据分包的各个数据帧,直至待更新设备没有发出任何错误信息;
S536:执行步骤S531至S535,直至将每一个数据分包发送至待更新设备。
在本实施例中,将第一数据分包的数据大小信息发送至待更新设备,可以使待更新设备及时腾出足够的空间以接收计算机设备发送的数据;第一校验值为CRC16校验值(CRC16为16位循环冗余校验),CRC16校验值通过CRC16校验算法对数据进行多项式除法计算得到,举例说明,计算机设备对于一个待发送的数据帧中的数据进行CRC16校验计算,得到第一校验值,并将第一校验值随数据帧发送至待更新设备,待更新设备对接收到的数据帧进行CRC16校验计算,得到另一个校验值,并将该校验值与第一校验值比对,若两者相同,则校验成功,若两者不同,则校验失败,待更新设备向计算机设备发送错误信息;本实施例对每一个数据帧进行校验,保证了每一个局部数据的传输准确性。
作为一个优选的实施例,在步骤S53之后还包括:
S54:向待更新设备发送接收总数据校验指令以及对应于第一更新数据的第二校验值,以使待更新设备校验第二校验值,进而完成对接收总数据的校验,其中,接收总数据为接收到的各个数据分包组成的数据;
S55:若校验失败,则重新执行步骤S52至步骤S53;
S56:若校验成功,则向待更新设备发送数据擦写指令,以使待更新设备从存储器中擦除原始数据,将接收总数据写入,并依据第二校验值对写入的接收总数据进行二次校验;
S57:接收到待更新设备回传的更新完成信息,退出第一工作频道。
在本实施例中,第二校验值为CRC32校验值,第二校验值即为通过CRC32校验算法对第一更新数据进行多项式除法计算得到,计算机设备将第二校验值发送至待更新设备,待更新设备对接收到的总数据进行CRC32校验计算,得到另一个校验值,并将该校验值与第二校验值比对,若两者相同,则校验成功;进一步,在擦除原始数据,写入总数据之前可对总数据以第二校验值先进行一次校验,在写入总数据之后待更新设备回读写入的总数据再一次对其以第二校验值进行校验,即二次校验,各次校验总数据的方式相同;本申请中在前面进行数据帧校验的基础上再对最终的总数据进行多次校验,实现了对传输数据的多次的多维度校验,进一步保证了数据传输的准确性。
作为一个优选的实施例,在执行步骤S56的过程中,实时接收待更新设备发送的更新进度信息,并显示更新进度信息;
在执行步骤S57的同时,播放提示音,控制指示灯闪烁。
在本实施例中,更新进度信息包括正在进行的更新步骤,以及更新总进度条,计算机设备可以在设备中的显示器上显示更新进度信息;计算机设备可以在设备中的扬声器播放提示音,并按一定频率控制安装在计算机设备上的指示灯闪烁,以对用户形成多维度的更新进程提示。
如图3所示,在一个实施例中,提供了一种固件程序更新装置,所述固件程序更新装置中的模块用于固件程序更新方法中的步骤,具体包括:
获取模块,用于获取固件程序更新数据;
第一处理模块,用于在公共频段上发送探测数据,以探测待更新设备;
第二处理模块,用于接收到待更新设备发送的对应于探测数据的应答后,向待更新设备发送握手指令,以与待更新设备握手,进而触发待更新设备将通信地址切换为第一通信地址并将通信频道切换至空闲的第一工作频道,其中,第一通信地址为待更新设备随机生成的通信地址;
第三处理模块,用于依据待更新设备发送的第一通信地址和第一工作频道调整射频发送器的参数,以与待更新设备在第一工作频道上通信;
第四处理模块,用于将固件程序更新数据发送至处于第一通信地址的待更新设备,使待更新设备完成更新;
第五处理模块,用于退出第一工作频道,重复执行步骤S2至步骤S6,直至完成所有的待更新设备的固件程序更新。
本申请实施例提供的固件程序更新装置中各模块实现各自功能的过程,具体可参考前述图1所示实施例的描述,此处不再赘述。
如图4所示,本发明提供了一种固件程序更新系统,所述系统包括:
若干个串口与射频数据转换器,用于将串口数据转换成射频信号并发送;
计算机设备,各个串口与射频数据转换器安装在计算机设备的串口上,计算机设备通过串口与射频数据转换器与待更新设备通信,以执行所述的固件程序更新方法。
在本实施例中,计算机设备通过串口与射频数据转换器与待更新设备通信,计算机设备上的每一个串口对应设置一个串口与射频数据转换器,每一个串口与射频数据转换器可以对应与一个待更新设备通信,举例说明,计算机设备有6个串口,如图4中的串口1至串口6,每一个串口对应设置一个串口与射频数据转换器,如图4中的串口与射频数据转换器1至串口与射频数据转换器6,任意一个串口与射频数据转换器通过一个第一工作频道(第一工作频道1至第一工作频道6中与该串口与射频数据转换器序号对应的第一工作频道)与一个待更新设备(待更新设备1与待更新设备6中与该串口与射频数据转换器序号对应的待更新设备)通信,计算机设备可以通过6个串口与射频数据转换器分别独立执行所述的固件程序更新方法,以同时对6个待更新设备进行固件程序更新;其中,固件程序更新方法实现了对于固件更新数据的无线传输,无需打开待更新设备的外壳即可实现对于待更新设备的固件更新,并且在与待更新设备建立起数据通信时,可以与待更新设备一起切换至一个空闲的工作频道进行通信,保证了数据传输的质量和效率,进而可以高效完成待更新设备的固件更新。
作为一个优选的实施例,计算机设备通过串口与射频数据转换器发送数据前,设置串口与射频数据转换器的工作参数,使得串口与射频数据转换器按照工作参数发送数据信号,其中,工作参数包括频段以及通信地址。
在本实施例中,计算机设备能够依据待更新设备发送的通信频段的信息对串口与射频数据转换器的工作参数进行相应的修改,使其能够随着待更新设备的通信频道的切换而切换,保证了两者通信的持续性。
图5示出了一个实施例中计算机设备的内部结构图。如图5所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、串口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现本发明实施例提供的固件程序更新方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行本发明实施例提供的固件程序更新方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等;串口接口是一种用于连接计算机和外部设备的接口标准。它使用串行通信方式传输数据,逐位地发送和接收数据;网络接口是计算机用于连接计算机网络的接口,允许计算机与其他设备通过网络进行通信,网络接口可以是有线接口,例如以太网接口也可以无线接口,例如Wi-Fi接口、蓝牙接口等。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本发明实施例提供的固件程序更新装置可以实现为一种计算机程序的形式,计算机程序可在如图5所示的计算机设备上运行。计算机设备的存储器中可存储组成该固件程序更新装置的各个程序模块,比如,图3所示的获取模块、第一处理模块、第二处理模块、第三处理模块、第四处理模块、第五处理模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本发明各个实施例的固件程序更新方法中的步骤。
例如,图5所示的计算机设备可以通过如图3所示的固件程序更新装置中的获取模块执行步骤S1;计算机设备可通过第一处理模块执行步骤S2;计算机设备可通过第二处理模块执行步骤S3;计算机设备可通过第三处理模块执行步骤S4;计算机设备可通过第四处理模块执行步骤S5;计算机设备可通过第五处理模块执行步骤S6。
在一个实施例中,提出了一种计算机设备,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
S1:获取固件程序更新数据;
S2:在公共频段上发送探测数据,以探测待更新设备;
S3:接收到待更新设备发送的对应于探测数据的应答后,向待更新设备发送握手指令,以与待更新设备握手,进而触发待更新设备将通信地址切换为第一通信地址并将通信频道切换至空闲的第一工作频道,其中,第一通信地址为待更新设备随机生成的通信地址;
S4:依据待更新设备发送的第一通信地址和第一工作频道调整串口与射频数据转换器的工作参数,以与待更新设备在第一工作频道上通信;
S5:将固件程序更新数据发送至处于第一通信地址的待更新设备,使待更新设备完成更新;
S6:退出第一工作频道,重复执行步骤S2至步骤S6,直至完成所有的待更新设备的固件程序更新。
在一个实施例中,提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:
S1:获取固件程序更新数据;
S2:在公共频段上发送探测数据,以探测待更新设备;
S3:接收到待更新设备发送的对应于探测数据的应答后,向待更新设备发送握手指令,以与待更新设备握手,进而触发待更新设备将通信地址切换为第一通信地址并将通信频道切换至空闲的第一工作频道,其中,第一通信地址为待更新设备随机生成的通信地址;
S4:依据待更新设备发送的第一通信地址和第一工作频道调整串口与射频数据转换器的工作参数,以与待更新设备在第一工作频道上通信;
S5:将固件程序更新数据发送至处于第一通信地址的待更新设备,使待更新设备完成更新;
S6:退出第一工作频道,重复执行步骤S2至步骤S6,直至完成所有的待更新设备的固件程序更新。
应该理解的是,虽然本发明各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
Claims (9)
1.一种固件程序更新方法,其特征在于,所述方法包括:
S1:获取固件程序更新数据;
S2:在公共频段上发送探测数据,以探测待更新设备;
S3:接收到待更新设备发送的对应于探测数据的应答后,向待更新设备发送握手指令,以与待更新设备握手,进而触发待更新设备将通信地址切换为第一通信地址并将通信频道切换至空闲的第一工作频道,其中,第一通信地址为待更新设备随机生成的通信地址;
S4:依据待更新设备发送的第一通信地址和第一工作频道调整串口与射频数据转换器的工作参数,以与待更新设备在第一工作频道上通信;
S5:将固件程序更新数据发送至处于第一通信地址的待更新设备,使待更新设备完成更新;
S6:退出第一工作频道,重复执行步骤S2至步骤S6,直至完成所有的待更新设备的固件程序更新。
2.根据权利要求1所述的方法,其特征在于,固件程序更新数据由对应于待更新设备的存储器的每一个分区的分区数据组成,依据用户输入的分区信息确定存储器中的待更新分区,进而从固件程序更新数据中提取与待更新分区对应的分区数据作为第一更新数据。
3.根据权利要求2所述的方法,其特征在于,所述将固件程序更新数据发送至处于第一通信地址的待更新设备包括:
S51:将第一更新数据划分为若干个数据分包;
S52:向待更新设备发送数据大小信息,以使待更新设备预备接收数据,其中,数据大小信息包括第一更新数据的数据总长度,数据分包个数;
S53:接收到待更新设备的应答后,将各个数据分包逐一发送至待更新设备。
4.根据权利要求3所述的方法,其特征在于,所述将各个数据分包逐一发送至待更新设备包括:
S531:取一个数据分包作为第一数据分包;
S532:将第一数据分包的数据大小信息发送至待更新设备,以使待更新设备预备接收第一数据分包;
S533:接收到待更新设备的应答后,将第一数据分包内的数据划分为若干个数据帧,并在每个数据帧中添加对应于帧内数据的第一校验值;
S534:将各个数据帧发送至待更新设备,以使待更新设备检验每一个数据帧中的第一校验值;
S535:若接收到待更新设备发送的对应于任意一个第一校验值的错误信息,则重发第一数据分包的各个数据帧,直至待更新设备没有发出任何错误信息;
S536:执行步骤S531至S535,直至将每一个数据分包发送至待更新设备。
5.根据权利要求3所述的方法,其特征在于,在步骤S53之后还包括:
S54:向待更新设备发送接收总数据校验指令以及对应于第一更新数据的第二校验值,以使待更新设备校验第二校验值,进而完成对接收总数据的校验,其中,接收总数据为接收到的各个数据分包组成的数据;
S55:若校验失败,则重新执行步骤S52至步骤S53;
S56:若校验成功,则向待更新设备发送数据擦写指令,以使待更新设备从存储器中擦除原始数据,将接收总数据写入,并依据第二校验值对写入的接收总数据进行二次校验;
S57:接收到待更新设备回传的更新完成信息,退出第一工作频道。
6.根据权利要求5所述的方法,其特征在于,在执行步骤S56的过程中,实时接收待更新设备发送的更新进度信息,并显示更新进度信息;
在执行步骤S57的同时,播放提示音,控制指示灯闪烁。
7.一种固件程序更新装置,其特征在于,所述固件程序更新装置中的模块用于执行权利要求1中的步骤,具体包括:
获取模块,用于获取固件程序更新数据;
第一处理模块,用于在公共频段上发送探测数据,以探测待更新设备;
第二处理模块,用于接收到待更新设备发送的对应于探测数据的应答后,向待更新设备发送握手指令,以与待更新设备握手,进而触发待更新设备将通信地址切换为第一通信地址并将通信频道切换至空闲的第一工作频道,其中,第一通信地址为待更新设备随机生成的通信地址;
第三处理模块,用于依据待更新设备发送的第一通信地址和第一工作频道调整射频发送器的参数,以与待更新设备在第一工作频道上通信;
第四处理模块,用于将固件程序更新数据发送至处于第一通信地址的待更新设备,使待更新设备完成更新;
第五处理模块,用于退出第一工作频道,重复执行步骤S2至步骤S6,直至完成所有的待更新设备的固件程序更新。
8.一种固件程序更新系统,其特征在于,所述系统包括:
若干个串口与射频数据转换器,用于将串口数据转换成射频信号并发送;
计算机设备,各个串口与射频数据转换器安装在计算机设备的串口上,计算机设备通过串口与射频数据转换器与待更新设备通信,以执行如权利要求1-4任意一项权利要求所述的固件程序更新方法。
9.根据权利要求8所述的系统,其特征在于,计算机设备通过串口与射频数据转换器发送数据前,设置串口与射频数据转换器的工作参数,使得串口与射频数据转换器按照工作参数发送数据信号,其中,工作参数包括频段以及通信地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410070407.5A CN117615367B (zh) | 2024-01-18 | 2024-01-18 | 一种固件程序更新方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410070407.5A CN117615367B (zh) | 2024-01-18 | 2024-01-18 | 一种固件程序更新方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117615367A true CN117615367A (zh) | 2024-02-27 |
CN117615367B CN117615367B (zh) | 2024-04-09 |
Family
ID=89956447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410070407.5A Active CN117615367B (zh) | 2024-01-18 | 2024-01-18 | 一种固件程序更新方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117615367B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112433769A (zh) * | 2020-11-05 | 2021-03-02 | 苏州浪潮智能科技有限公司 | 一种bmc启动方法、装置、计算机设备及存储介质 |
CN113360161A (zh) * | 2020-03-06 | 2021-09-07 | Oppo广东移动通信有限公司 | 资源升级方法及相关产品 |
CN113504932A (zh) * | 2021-08-06 | 2021-10-15 | 恒为科技(上海)股份有限公司 | 一种固件数据更新方法和装置 |
CN113656061A (zh) * | 2021-08-20 | 2021-11-16 | 成都亨通光通信有限公司 | 5g通信电源固件更新方法及更新装置 |
CN116931996A (zh) * | 2023-07-21 | 2023-10-24 | 武汉宝龙达信息技术有限公司 | 一种固件更新方法、装置、设备以及储存介质 |
-
2024
- 2024-01-18 CN CN202410070407.5A patent/CN117615367B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113360161A (zh) * | 2020-03-06 | 2021-09-07 | Oppo广东移动通信有限公司 | 资源升级方法及相关产品 |
CN112433769A (zh) * | 2020-11-05 | 2021-03-02 | 苏州浪潮智能科技有限公司 | 一种bmc启动方法、装置、计算机设备及存储介质 |
CN113504932A (zh) * | 2021-08-06 | 2021-10-15 | 恒为科技(上海)股份有限公司 | 一种固件数据更新方法和装置 |
CN113656061A (zh) * | 2021-08-20 | 2021-11-16 | 成都亨通光通信有限公司 | 5g通信电源固件更新方法及更新装置 |
CN116931996A (zh) * | 2023-07-21 | 2023-10-24 | 武汉宝龙达信息技术有限公司 | 一种固件更新方法、装置、设备以及储存介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117615367B (zh) | 2024-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11974305B2 (en) | Method for transmitting uplink channel via multi-beams, terminal device and network-side device | |
CN112702065B (zh) | Fpga码流数据校验方法及装置 | |
CN108279910B (zh) | 程序代码烧写方法、装置、计算机设备和存储介质 | |
US11321079B2 (en) | Method and device for updating firmware using a modified delta file | |
CN111176702B (zh) | 固件升级方法、装置、计算机设备和存储介质 | |
US11422784B2 (en) | System and method for production readiness verification and monitoring | |
CN112925679A (zh) | 固件升级方法、非易失性存储器、计算机存储介质及终端 | |
CN110381603B (zh) | 一种随机接入方法及终端 | |
CN112615753A (zh) | 一种链路异常追踪方法、第一节点、第二节点以及链路 | |
CN110602672A (zh) | 蓝牙设备回连方法、装置、终端和计算机可读存储介质 | |
CN113411806A (zh) | 移动热点授权检验方法、装置、存储介质和电子设备 | |
CN117615367B (zh) | 一种固件程序更新方法、装置及系统 | |
US11182139B2 (en) | System and method for production readiness verification and monitoring | |
US20220149987A1 (en) | Method for sidelink rate matching and resource mapping, and device | |
CN109683915A (zh) | 参数修改方法、装置、计算机设备和存储介质 | |
CN107505929B (zh) | 车辆控制器的配置方法、装置及车辆 | |
CN114285657B (zh) | 防火墙安全策略变更验证方法及装置 | |
JP2021503250A (ja) | 同期方法および装置 | |
CN113535578A (zh) | 一种cts测试方法、装置及测试设备 | |
CN112448921B (zh) | 检测后门的方法和装置 | |
CN111148102B (zh) | 网络鉴权方法、装置、计算机设备和存储介质 | |
CN113595685A (zh) | 数据传输方法及装置、存储介质、终端 | |
EP3331257A1 (en) | Terminal configuration management method and apparatus | |
CN113535580A (zh) | 一种cts测试方法、装置及测试设备 | |
CN110086574A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |