CN113094058B - 一种应用于无线烧录的点对点无线协议控制方法 - Google Patents

一种应用于无线烧录的点对点无线协议控制方法 Download PDF

Info

Publication number
CN113094058B
CN113094058B CN202110388674.3A CN202110388674A CN113094058B CN 113094058 B CN113094058 B CN 113094058B CN 202110388674 A CN202110388674 A CN 202110388674A CN 113094058 B CN113094058 B CN 113094058B
Authority
CN
China
Prior art keywords
burner
burning
packet
burnt
sending
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.)
Active
Application number
CN202110388674.3A
Other languages
English (en)
Other versions
CN113094058A (zh
Inventor
肖国林
李智
李泽民
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Panchip Microelectronics Co ltd
Original Assignee
Shanghai Panchip Microelectronics Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Panchip Microelectronics Co ltd filed Critical Shanghai Panchip Microelectronics Co ltd
Priority to CN202110388674.3A priority Critical patent/CN113094058B/zh
Publication of CN113094058A publication Critical patent/CN113094058A/zh
Application granted granted Critical
Publication of CN113094058B publication Critical patent/CN113094058B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Selective Calling Equipment (AREA)

Abstract

本发明公开了一种应用于无线烧录的点对点无线协议控制方法,涉及烧录技术领域。烧录前,烧录器准备发送表,待烧录***准备接收表,两张表的大小一致,表项位置和大小也一致,表的大小不超过RF(Radio Frequency射频)的一个Payload(有效载荷);烧录器依据发送表发送烧录数据包,修改发送表;待烧录***接收烧录数据包,同步修改接收表;烧录过程中,待烧录***可以将自己的接收表发给烧录器替换发送表让烧录器知道需要重发哪些数据包。本发明移植性强,可靠稳定,可运行于低端MCU加RF的***,实现无线烧录功能。

Description

一种应用于无线烧录的点对点无线协议控制方法
技术领域
本发明涉及烧录技术领域,尤其涉及一种应用于无线烧录的点对点无线协议控制方法。
背景技术
目前实现无线烧录的方法主要是基于蓝牙,WiFi等现有协议进行,这些协议对MCU和RF的要求都比较高,在低端的MCU和RF中资源不足,难以实现;另一种方法是不使用任何协议,这种方式烧录又不具有可靠性。
因此,本领域的技术人员致力于开发一种应用于无线烧录的点对点无线协议控制方法,移植性强,可靠稳定,可以运行于低端MCU和RF的无线烧录。
发明内容
有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是提供一种移植性强,可靠稳定的,可以运行于低端MCU和RF的无线烧录的无线协议控制方法。
为实现上述目的,本发明提供了一种应用于无线烧录的点对点无线协议控制方法,包括以下步骤:
步骤一、烧录器发送请求烧录包,表明要进行烧录;
步骤二、待烧录***检测到所述请求烧录包,进入准备烧录状态,同时对所述烧录器回复允许烧录包;
步骤三、所述烧录器接收到所述允许烧录包,进入烧录状态;
步骤四、所述烧录器向所述待烧录***发送擦除信息包;
步骤五、所述待烧录***接收到所述擦除信息包执行擦除操作,同时回复擦除状态包;
步骤六、所述烧录器判断到擦除完成则准备烧录;
步骤七、烧录前,所述烧录器和所述待烧录***各自准备一张记录表,两张表的大小一致,表项位置和大小也一致,表的大小不超过RF的一个Payload;所述烧录器中的表为发送表,所述待烧录***的表为接收表;表项包括bit表示的BREC区以及BREC区首个bit代表的数据包的包号PIDX;
步骤八、所述烧录器依据所述发送表发送烧录数据包:从前向后查找所述发送表BREC区,依次发送bit为0位置的数据包,并标记为1;
步骤九、所述待烧录***接收所述烧录器的所述烧录数据包,到所述接收表的BREC区查找接收到的包的状态,如果为0则将数据写入ROM,同时标记1,如有校验,更新接收表校验信息;如果为1表示为重复包,则忽略;
步骤十、一旦所述记录表BREC区首部有字节bit全1,则丢弃首部字节,其余部分前移,尾部补0,PIDX也对应变化;
步骤十一、烧录过程中,所述烧录器可以向所述待烧录***发起记录表同步请求,所述待烧录***收到带有请求的数据包后将所述接收表发送给所述烧录器,所述烧录器发起请求后应当立即进入接收状态等候所述待烧录***返回所述接收表,并替换所述发送表,之后的发送便又从所述发送表的开始进行;
步骤十二、所述烧录器和所述待烧录***可以从所述接收表的内容判断出烧录是否结束;所述烧录器在烧录完成时向所述待烧录***发送完成数据包。
进一步地,所述步骤四、所述烧录器向所述待烧录***发送的信息包括烧录程序的地址和大小。
进一步地,所述步骤五、所述烧录器根据所述擦除状态包显示进度信息。
进一步地,所述记录表包括校验信息。
进一步地,所述发送表中0表示未发送,1表示已发送。
进一步地,所述接收表中0表示未收到,1表示已收到。
0表示未发送/收到,1表示已发送/收到;在实际操作中也可以反过来进行:1表示未发送/收到,0表示已发送/收到;
进一步地,所述烧录器在发送的数据包中保留一个bit或是使用不同的ID用于告知所述待烧录***是否要同步所述记录表。
进一步地,所述烧录器在发送到所述发送表BREC区尾部时向所述待烧录***发起记录表同步请求。
进一步地,所述烧录器在发起同步记录表的请求后设置超时判定。
进一步地,所述待烧录***向所述烧录器发送所述接收表时携带错误信息,所述烧录器判断是否继续进行烧录和提示用户。
本发明与现有技术相比较,具有如下显而易见的实质性特点和显著优点:
1.本协议控制过程对***的要求低,可以用于低成本***;
2.对于一些需要装机才能测试的开发,使用无线烧录,避免重复麻烦的拆装机操作;
3.对于已经生产装机的产品,避免拆机即可以更新升级程序。
以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。
附图说明
图1是本发明的一个较佳实施例的烧录器端工作控制流程;
图2是本发明的一个较佳实施例的待烧录***端工作控制流程。
具体实施方式
以下参考说明书附图介绍本发明的多个优选实施例,使其技术内容更加清楚和便于理解。本发明可以通过许多不同形式的实施例来得以体现,本发明的保护范围并非仅限于文中提到的实施例。
在附图中,结构相同的部件以相同数字标号表示,各处结构或功能相似的组件以相似数字标号表示。附图所示的每一组件的尺寸和厚度是任意示出的,本发明并没有限定每个组件的尺寸和厚度。为了使图示更清晰,附图中有些地方适当夸大了部件的厚度。
本发明提供了一种移植性强,可靠稳定的,可以运行于低端MCU和RF的无线烧录的无线协议控制方法。
在8位8051单片机实现本控制协议(假定RF Payload为31字节):
1.设计数据包和记录表
A.请求烧录包:烧录器最先向外发送的信号
SL Bytes (30-SL)Bytes 1Byte
待烧录***编号 无效 ID=请求烧录包
B.允许烧录包:待烧录***接收到请求烧录包并且编号正确时反馈给烧录器的数据包
SL Bytes (30-SL)Bytes 1Byte
待烧录***编号 无效 ID=允许烧录包
C.擦除信息包
D.擦除状态包
2 Bytes 28Bytes 1Byte
当前擦除地址 无效 ID=擦除状态包
E.烧录数据包/带同步请求的烧录数据包
F.同步数据包
30 Bytes 1Byte
接收表内容(见H) ID=同步数据包
G.完成数据包
30 Bytes 1Byte
无效 ID=完成数据包
H.记录表(发送表/接收表)
2.烧录协议控制流程
整个烧录过程需要烧录器和待烧录***两部分参与;
待烧录***中需要有MCU(或CPU)和与之连接可控的RF;MCU应当支持IAP(InApplication Program)功能,其ROM被划分为BootLoader和Application两部分,启动时先运行BootLoader程序,BootLoader再跳转到Application中运行;烧录过程中,BootLoader控制RF接收控制命令和数据,对Application区进行擦除写入等操作,同时通过RF向烧录器反馈状态;
烧录器中同样需要MCU和与之连接可控的RF;MCU控制RF向待烧录***发送控制命令和数据,同时接收待烧录***反馈的状态信息;
本发明的重点是烧录器与待烧录***之间的无线通信协议和控制方法,使得烧录过程稳定可靠;图1是烧录器端工作控制流程;图2是待烧录***端工作控制流程。烧录的过程如下:
1.烧录器发送特定的数据信号(请求烧录包),表明要对某个待烧录***进行烧录;
2.待烧录***上电/复位进入BootLoader程序,检测是否有特定的烧录信号(特定的数据包),无则进入Application,有则进入准备烧录状态,同时对烧录器进行相应的数据回复(允许烧录包);
3.烧录器接收到待烧录***的回复数据,进入烧录状态;
4.烧录器向待烧录***发送擦除命令(擦除信息包),同时发送的还可以有烧录程序的地址和大小等信息;
5.待烧录***接收到擦除命令执行擦除操作,保存其它有用信息,同时回复烧录器擦除状态信息(擦除状态包);烧录器可据此显示进度信息;
6.烧录器判断到待烧录***出错则提示错误,判断到擦除完成则准备烧录;
7.烧录前,烧录器和待烧录***各自都需要准备一张记录表,两张表的大小应当一致,表项位置和大小也应当一致,表的大小应不超过RF的一个Payload;把烧录器中的表称之为发送表,把待烧录***的表称为接收表;表项应当至少包括bit表示的包记录区BREC(发送表中0表示未发送,1表示已发送;接收表中0表示未收到,1表示已收到)以及记录区首个bit代表的数据包的包号PIDX(地址亦可),还可以视情况加入校验信息;
8.烧录器依据发送表发送烧录数据包:从前向后查找发送表BREC区域,依次发送bit为0位置的数据包,并把其标记为1;
9.待烧录***接收烧录器的烧录数据包,到接收表的BREC区查找接收到的包的状态,如果为0则将数据写入ROM,同时标记1,并更新接收表数据校验值BSUM;如果为1表示为重复包,则忽略;
10.记录表的BREC区域是有限的,因此在烧录过程中,一旦记录表BREC区首部有字节(也可以是字等)bit全1,则可以丢弃首部字节,其余部分前移,尾部补0,PIDX也随之变化;
11.烧录过程中,可能会丢包,这就需要重发丢失的包;让待烧录***将自己的接收表发给烧录器替换发送表即可以让烧录器知道需要重发哪些包;为了节省带宽,可以让烧录器在发送的数据包中保留一个bit用于告知待烧录***是否要同步记录表;例如烧录器可以在发送到发送表BREC区域尾部时向待烧录***发起记录表同步请求,待烧录***收到带有请求的数据包后将自己的接收表(同步数据包)发送给烧录器,烧录器发起请求后应当立即进入接收状态等候待烧录***返回的接收表并用其替换自己的发送表,之后的发送便又从发送表的开始进行;
12.烧录器和待烧录***均可以从接收表的内容判断出烧录是否结束;烧录器也应当在烧录完成时向待烧录***发送完成数据包;
13.烧录过程中,烧录器在发起同步记录表的请求后应当设置超时,多次超时后判定为整个烧录过程超时;
14.待烧录***向烧录器发送接收表时可以通过不同ID携带错误信息,烧录器依据此信息来判断烧录是否要继续进行和如何提示用户。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。

Claims (10)

1.一种应用于无线烧录的点对点无线协议控制方法,其特征在于,包括以下步骤:
步骤一、烧录器发送请求烧录包,表明要进行烧录;
步骤二、待烧录***检测到所述请求烧录包,进入准备烧录状态,同时对所述烧录器回复允许烧录包;
步骤三、所述烧录器接收到所述允许烧录包,进入烧录状态;
步骤四、所述烧录器向所述待烧录***发送擦除信息包;
步骤五、所述待烧录***接收到所述擦除信息包执行擦除操作,同时回复擦除状态包;
步骤六、所述烧录器判断到擦除完成则准备烧录;
步骤七、烧录前,所述烧录器和所述待烧录***各自准备一张记录表,两张表的大小一致,表项位置和大小也一致,表的大小不超过RF的一个Payload;所述烧录器中的表为发送表,所述待烧录***的表为接收表;表项包括bit表示的BREC区以及BREC区首个bit代表的数据包的包号PIDX;BREC区为包记录区,发送表中0表示未发送,1表示已发送;接收表中0表示未收到,1表示已收到;
步骤八、所述烧录器依据所述发送表发送烧录数据包:以一个bit代表一个数据包,从前向后查找所述发送表BREC区,依次发送bit为0位置的数据包,并标记为1;
步骤九、所述待烧录***接收所述烧录器的所述烧录数据包,到所述接收表的BREC区查找接收到的包的状态,如果为0则将数据写入ROM,同时标记1;如果为1表示为重复包,则忽略;
步骤十、一旦所述记录表BREC区首部有字节bit全1,则丢弃首部字节,其余部分前移,尾部补0,PIDX也对应变化;
步骤十一、烧录过程中,所述烧录器向所述待烧录***发起记录表同步请求,所述待烧录***收到带有请求的数据包后将所述接收表发送给所述烧录器,所述烧录器发起请求后应当立即进入接收状态等候所述待烧录***返回所述接收表,并替换所述发送表,之后的发送便又从所述发送表的开始进行;
步骤十二、所述烧录器在烧录完成时向所述待烧录***发送完成数据包。
2.如权利要求1所述的应用于无线烧录的点对点无线协议控制方法,其特征在于,所述步骤四、所述烧录器向所述待烧录***发送的信息包括烧录程序的地址和大小。
3.如权利要求1所述的应用于无线烧录的点对点无线协议控制方法,其特征在于,所述步骤五、所述烧录器根据所述擦除状态包显示进度信息。
4.如权利要求1所述的应用于无线烧录的点对点无线协议控制方法,其特征在于,所述记录表包括校验信息。
5.如权利要求1所述的应用于无线烧录的点对点无线协议控制方法,其特征在于,所述发送表中0表示未发送,1表示已发送。
6.如权利要求1所述的应用于无线烧录的点对点无线协议控制方法,其特征在于,所述接收表中0表示未收到,1表示已收到。
7.如权利要求1所述的应用于无线烧录的点对点无线协议控制方法,其特征在于,所述烧录器在发送的数据包中保留一个bit用于告知所述待烧录***是否要同步所述记录表。
8.如权利要求1所述的应用于无线烧录的点对点无线协议控制方法,其特征在于,所述烧录器在发送到所述发送表BREC区尾部时向所述待烧录***发起记录表同步请求。
9.如权利要求1所述的应用于无线烧录的点对点无线协议控制方法,其特征在于,所述烧录器在发起同步记录表的请求后设置超时判定。
10.如权利要求1所述的应用于无线烧录的点对点无线协议控制方法,其特征在于,所述待烧录***向所述烧录器发送所述接收表时携带错误信息,所述烧录器判断是否继续进行烧录和提示用户。
CN202110388674.3A 2021-04-12 2021-04-12 一种应用于无线烧录的点对点无线协议控制方法 Active CN113094058B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110388674.3A CN113094058B (zh) 2021-04-12 2021-04-12 一种应用于无线烧录的点对点无线协议控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110388674.3A CN113094058B (zh) 2021-04-12 2021-04-12 一种应用于无线烧录的点对点无线协议控制方法

Publications (2)

Publication Number Publication Date
CN113094058A CN113094058A (zh) 2021-07-09
CN113094058B true CN113094058B (zh) 2023-10-31

Family

ID=76676423

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110388674.3A Active CN113094058B (zh) 2021-04-12 2021-04-12 一种应用于无线烧录的点对点无线协议控制方法

Country Status (1)

Country Link
CN (1) CN113094058B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106572149A (zh) * 2016-10-13 2017-04-19 芯海科技(深圳)股份有限公司 一种基于p2p网络技术的烧录器远程控制装置及方法
CN107608692A (zh) * 2017-09-01 2018-01-19 江苏钜芯集成电路技术股份有限公司 无线烧录装置
CN110609690A (zh) * 2019-08-30 2019-12-24 珠海泰芯半导体有限公司 一种烧录器的烧录加速方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10231303B2 (en) * 2014-10-22 2019-03-12 Semisilicon Technology Corp. Light emitting diode lamp receiving contactless burning signal and system for the same and burning address method for the same

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106572149A (zh) * 2016-10-13 2017-04-19 芯海科技(深圳)股份有限公司 一种基于p2p网络技术的烧录器远程控制装置及方法
CN107608692A (zh) * 2017-09-01 2018-01-19 江苏钜芯集成电路技术股份有限公司 无线烧录装置
CN110609690A (zh) * 2019-08-30 2019-12-24 珠海泰芯半导体有限公司 一种烧录器的烧录加速方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于MC9S12系列单片机的程序下载器设计;孙璐;姜久春;尹航;;微计算机信息(第11期);第64-66页 *

Also Published As

Publication number Publication date
CN113094058A (zh) 2021-07-09

Similar Documents

Publication Publication Date Title
JP3888130B2 (ja) 無線ネットワークのステーション
JP4459905B2 (ja) 無線機器の無線伝送によるソフトウェアのダウンロードと更新
US11546932B2 (en) Data transmission method, terminal and network side device
CN108882214B (zh) 一种蓝牙遥控快速配对方法
US11102371B2 (en) Terminal device configured to initiate printing based on distance from printing device
CN108279910B (zh) 程序代码烧写方法、装置、计算机设备和存储介质
CN102439881B (zh) 冲突检测的方法和设备
CN103580942B (zh) 一种模拟串口测试方法和装置
WO2007052709A1 (ja) 時刻同期方法及びそれに用いる通信装置及びノード
US11770212B2 (en) Data transmission methods, data transmission device, and data transmission apparatuses
CN111324567B (zh) 一种实现串口通讯的方法及单片机***
JP2016187088A (ja) 通信機器
CN113094058B (zh) 一种应用于无线烧录的点对点无线协议控制方法
CN112055315B (zh) 蓝牙广播通信方法、***及其主设备、从设备
CN106814751A (zh) 一种飞行控制协议自动适配方法、装置及***
CN112217610B (zh) 数据处理方法、装置、消费机、终端及可读存储介质
CN110519817B (zh) 一种煤矿井下通信用无线Mesh网络协议设计方法
EP3930375A1 (en) Method and device for data transmission
KR102398992B1 (ko) 통신 장치, 통신 방법, 및 기억 매체에 저장된 프로그램
US20050249184A1 (en) PHS terminal device and method of receiving PHS data
CN104615573A (zh) 一种通信方法及装置
JP4215073B2 (ja) 無線ネットワークに接続されるステーション、無線ネットワークにステーションを参加させる方法、およびプログラム
CN110187891B (zh) 一种用于多核可编程控制器的程序开发方法及***
CN109660976B (zh) 设备搜索的方法、装置、***及存储介质
JP2022131582A (ja) 無線通信装置、無線通信装置のためのコンピュータプログラム、及び、無線通信装置によって実行される方法

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