一种在RS485组网模式下批量升级程序的方法与流程

文档序号:32392197发布日期:2022-11-30 08:45阅读:31来源:国知局
一种在RS485组网模式下批量升级程序的方法与流程
一种在rs485组网模式下批量升级程序的方法
技术领域
1.本发明涉及计算机通信技术领域,尤其涉及一种在rs485组网模式下批量升级程序的方法。


背景技术:

2.iap即为in application programming(在应用中编程),iap是通过外设来实现程序升级的一个统称,可以通过的外设有串口、wifi、蓝牙、网口、无线模块等,只要可以和芯片通讯的都能作为iap的升级方式。
3.现有的iap升级方式一般为单表升级,遇到需要通过rs485组网使用的产品时,需要先将组网连接断开,再依次对各个分模块升级程序,这样操作非常繁琐且耗费时间。另外,如果一个组网内有多个不同的程序需要升级,还需要操作人员人工去对应相应的模块和程序,容易造成程序升级错误的问题,进而造成模块宕机,影响程序的升级进程。


技术实现要素:

4.本发明的目的在于克服上述不足,提供一种在rs485组网模式下批量升级程序的方法,满足在rs485组网模式下不需要断开组网连接就可以对整个组网内的模块进行iap批量程序升级,可大大提升升级效率,且无需区分模块和对应的程序,可降低出错率。
5.本发明的目的是这样实现的:一种在rs485组网模式下批量升级程序的方法,它包括以下内容:步骤s1、将若干个从机模块通过rs485总线分别连接至上位机,每个从机模块均设有独有的地址和程序自带的软件编号;步骤s2、将所有需要升级的程序bin文件全部导入;步骤s3、输入m个需要升级的设备地址;步骤s4、上位机通过第n个地址读取软件编号识别相对应的bin文件;步骤s5、识别该软件编号是否有对应的bin文件;步骤s6.1、若该软件编号有对应的bin文件,则广播该地址;步骤s6.2、若该软件编号没有对应的bin文件,则标红处理;步骤s7.1、步骤s6.1后收到广播地址的回复;步骤s7.2、步骤s6.1后没有收到广播地址的回复,则标红处理;步骤s8、步骤s7.1后锁定需要升级的从机,进入升级模式;步骤s9.1、若升级成功,则判断n是否等于m;步骤s9.2、若升级不成功,则标红处理;步骤s10.1、步骤s9.1中若n不等于m,则n=n+1,转步骤s4;步骤s10.2、步骤s9.1中若n等于m,则升级结束。
6.进一步地,没有识别到相对应的bin文件,或者没有收到广播地址的回复报文,或者升级过程失败,都会对该从机进行标红处理,并跳过该从机模块,执行下一个从机模块的
升级流程。
7.与现有技术相比,本发明的有益效果是:本发明使用一种在rs485组网模式下批量升级程序的方法,该方法操作简便,免去了拆装组网线的繁杂操作,在rs485组网模式下不需要断开组网连接就可以对整个组网内的模块进行iap批量程序升级;当一个组网内有多个不同的程序需要升级时,无需人为的去区分判断相应的从机设备对应的升级程序,只需要将所有需要升级的程序全部导入,整个流程会自动区分,避免程序升级错误且避免了设备宕机,提高了批量升级程序的效率;一旦升级失败也会对相应模块进行标红处理,方便现场运维人员精准定位问题模块并排查问题。
附图说明
8.图1为本发明的组网结构示意图。
9.图2为本发明的原理流程图。
具体实施方式
10.为更好地理解本发明的技术方案,以下将结合相关图示作详细说明。应理解,以下具体实施例并非用以限制本发明的技术方案的具体实施态样,其仅为本发明技术方案可采用的实施态样。
11.实施例1:参见图1-图2,图1绘制了本发明的组网结构示意图。如图所示,本发明涉及的一种在rs485组网模式下批量升级程序的方法,它包括以下内容:步骤一、在下位机开发阶段,将iap子程序的可执行代码以文本的形式复制到应用子程序源代码的一个全局常量数组中,并对包含了iap子程序可执行代码的应用子程序源代码进行编译生成一个下位机程序的烧录bin文件;步骤二、mcu在下载烧录文件时,将应用子程序的可执行代码作为程序代码放置到mcu内部flash的程序代码区中;同时,将iap子程序的可执行代码作为只读数据放置到与程序代码区相邻的常量数据区中;步骤三、通过上位机向iap发送升级命令;步骤四、在mcu接收到上位机发送的升级命令后,应用子程序将存放在全局常量数组中的iap子程序的可执行代码复制到一个全局变量数组中,且令mcu跳转至运行iap子程序,以接收升级代码并实现对应用子程序进行覆盖升级;上述步骤三具体包括以下内容:步骤s1、首先将若干个从机模块通过rs485总线分别连接至上位机,每个从机模块均设有独有的地址和程序自带的软件编号;步骤s2、然后将所有需要升级的程序bin文件(该文件由相对应的软件编号命名)全部导入;步骤s3、输入m个需要升级的设备地址;步骤s4、上位机通过第n个地址读取软件编号识别相对应的bin文件;步骤s5、识别该软件编号是否有对应的bin文件;
步骤s6.1、若该软件编号有对应的bin文件,则广播该地址;步骤s6.2、若该软件编号没有对应的bin文件,则标红处理;步骤s7.1、步骤s6.1后收到广播地址的回复;步骤s7.2、步骤s6.1后没有收到广播地址的回复,则标红处理;步骤s8、步骤s7.1后锁定需要升级的从机,进入升级模式;步骤s9.1、若升级成功,则判断n是否等于m;步骤s9.2、若升级不成功,则标红处理;步骤s10.1、步骤s9.1中若n不等于m,则n=n+1,转步骤s4;步骤s10.2、步骤s9.1中若n等于m,则升级结束。
12.工作原理:一种在rs485组网模式下批量升级程序的方法包括若干个从机模块通过rs485总线连接至上位机,每个从机模块都有自己独有的addr(地址)以及一个程序自带的软件编号。
13.操作人员只需要将所有需要升级的程序bin文件(该文件由相对应的软件编号命名)全部导入,并且输入所有需要升级的设备addr,上位机会通过addr读取软件编号识别相对应的bin文件,然后通过广播addr锁定需要升级的从机设备,最后进入升级模式,升级成功后执行下一个从机的升级流程。一旦没有识别到相对应的bin文件,或者没有收到广播地址的回复报文,或者升级过程失败,都会对该从机进行标红处理,并跳过该从机,执行下一个从机的升级流程。 操作人员最后可以通过上位机界面了解到是否有升级异常的从机设备。
14.以上仅是本发明的具体应用范例,对本发明的保护范围不构成任何限制。凡采用等同变换或者等效替换而形成的技术方案,均落在本发明权利保护范围之内。


技术特征:
1.一种在rs485组网模式下批量升级程序的方法,其特征在于,它包括以下内容:步骤s1、将若干个从机模块通过rs485总线分别连接至上位机,每个从机模块均设有独有的地址和程序自带的软件编号;步骤s2、将所有需要升级的程序bin文件全部导入;步骤s3、输入m个需要升级的设备地址;步骤s4、上位机通过第n个地址读取软件编号识别相对应的bin文件;步骤s5、识别该软件编号是否有对应的bin文件;步骤s6.1、若该软件编号有对应的bin文件,则广播该地址;步骤s6.2、若该软件编号没有对应的bin文件,则标红处理;步骤s7.1、步骤s6.1后收到广播地址的回复;步骤s7.2、步骤s6.1后没有收到广播地址的回复,则标红处理;步骤s8、步骤s7.1后锁定需要升级的从机,进入升级模式;步骤s9.1、若升级成功,则判断n是否等于m;步骤s9.2、若升级不成功,则标红处理;步骤s10.1、步骤s9.1中若n不等于m,则n=n+1,转步骤s4;步骤s10.2、步骤s9.1中若n等于m,则升级结束。2.根据权利要求1所述的一种在rs485组网模式下批量升级程序的方法,其特征在于:没有识别到相对应的bin文件,或者没有收到广播地址的回复报文,或者升级过程失败,都会对该从机进行标红处理,并跳过该从机模块,执行下一个从机模块的升级流程。

技术总结
本发明涉及的一种在RS485组网模式下批量升级程序的方法,将所有需要升级的程序bin文件全部导入,并且输入所有需要升级的设备地址,上位机会通过地址读取软件编号识别相对应的bin文件,然后通过广播地址锁定需要升级的从机设备,最后进入升级模式,升级成功后执行下一个从机的升级流程。一旦没有识别到相对应的bin文件,或者没有收到广播地址的回复报文,或者升级过程失败,都会对该从机进行标红处理,并跳过该从机,执行下一个从机的升级流程。本发明操作简便,免去了拆装组网线的繁杂操作,只需要将所有需要升级的程序全部导入,整个流程会自动区分,避免程序升级错误,提高了批量升级程序的效率。批量升级程序的效率。批量升级程序的效率。


技术研发人员:蔡华阳 张松辉 周晓龙 王乾聪 任健 张明 盛晓明
受保护的技术使用者:安科瑞电气股份有限公司
技术研发日:2022.09.02
技术公布日:2022/11/29
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1