System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 同一CAN网段内单个控制器应用数据在线刷新简单方法技术_技高网

同一CAN网段内单个控制器应用数据在线刷新简单方法技术

技术编号:40244879 阅读:5 留言:0更新日期:2024-02-02 22:41
本发明专利技术公开了同一CAN网段内单个控制器应用数据在线刷新简单方法,属于测速技术领域,修改原APP:在原APP中在Non‑Volatile Memory中增加写入标识控制器身份刷新使用的CAN ID,原APP中刷新使用的发送和接收邮箱的CAN ID作为广播通讯使用的CAN ID,修改原BT:在BT中CAN初始化前Non‑Volatile Memory初始化后,增加从Non‑Volatile Memory中读取标识控制器身份使用的CAN ID,使用其配置发送和接收两个邮箱,原BT中刷新使用的发送和接收邮箱的CAN ID作为广播通讯使用的CAN ID,避免了正常运行的控制器记录了在线更新应用数据的控制器的通讯超时等需更新完成后逐一清除的故障码,节省了大量的人力和时间成本,提高了工作效率。

【技术实现步骤摘要】

本专利技术属于测速,尤其涉及同一can网段内单个控制器应用数据在线刷新简单方法。


技术介绍

1、目前,大多数的产品中同一can网段内的单个控制器的应用数据刷新要么需要产品中同一can网段内的待刷新的控制器断电退出运行,上位机连接待刷新的控制器后才能刷新应用数据;要么是在同一can网段内其它控制器正常运行总线负载率高时进行刷新;要么是使用复杂的类似uds协议实现刷新功能。如此这般,要么是需要耗费大量的人力和时间成本,工作效率低;要么是刷新时总线负载率过高,极易导致刷新失败和刷新时间过长,导致正常运行的控制器记录了刷新的控制器通讯超时等需要刷新完后需逐一清除的故障码;要么是刷写采用协议占用了过多的程序空间,导致应用程序空间不足,为此我们提出同一can网段内单个控制器应用数据在线刷新简单方法。


技术实现思路

1、本专利技术提供同一can网段内单个控制器应用数据在线刷新简单方法,以解决上述
技术介绍
中提出的问题。

2、为实现上述目的,本专利技术提供如下技术方案:同一can网段内单个控制器应用数据在线刷新简单方法,包括以下步骤;

3、s1、修改原app:在原app中在non-volatile memory中增加写入标识控制器身份刷新使用的can id,原app中刷新使用的发送和接收邮箱的can id作为广播通讯使用的canid;

4、s2、修改原bt:在bt中can初始化前non-volatile memory初始化后,增加从non-volatile memory中读取标识控制器身份使用的can id,使用其配置发送和接收两个邮箱,原bt中刷新使用的发送和接收邮箱的can id作为广播通讯使用的can id;

5、s3、修改刷新上位机:在上位机中增加待刷新应用数据的控制器刷新使用的canid参数输入文本框,上位机发送刷新应用数据时使用该can id发送刷新命令,原上位机中刷新使用的发送和接收邮箱的can id作为广播通讯使用的can id;

6、s4、产品中同一网段内的所有控制器的bt,app更新后产品出厂投入正常了运行,若同一网段内的控制器3的应用数据需要更新,先将上位机接入该网段内,上位机使用广播通讯的can id发所有送控制器复位的广播命令,网段内所有控制器同时复位,在复位后的20ms之内,上位机使用广播通讯使用的can id发送控制器刷新的广播命令,于是,网段内所有控制器都停留在bt中等待接收刷新的命令;

7、s5、将标识待刷新的控制器3身份的can id输入到上位机的刷新使用的can id文本输入框,上位机使用该can id发送刷新应用数据,直至刷新应用数据发送完成,至此,待刷新的控制器3的应用数据已更新完成;

8、s6、上位机使用广播通讯使用的can id发送控制器复位的广播命令,同一网段内的所有控制器同时复位并跳转进入各自的app中运行。

9、进一步的,所述s2中bt为产品中正在使用的bootloader。

10、进一步的,所述s1中app为产品中正在使用的应用程序,主要作用是实现产品的功能。

11、进一步的,所述s4中所述控制器为产品中运行bootloader和应用软件的主控制器。

12、进一步的,所述应用工程编译链接后生成的out或hex等文件通过转换生成的bin文件。

13、进一步的,所述同一can网段内各个控制器通过各自的应用程序在non-volatilememory中写入标识控制器身份使用的can id,bt初始化时需读取该can id,使用该can id初始化刷新使用的发送和接收两个邮箱;在上位机的刷新使用can id文本输入框中输入待刷新的控制器的身份can id,上位机通过该can id发送待刷新控制器的应用数据,直至应用数据发送完成,就完成了待刷新控制器的应用数据刷新;最后,上位机使用广播通信使用的can id发送所有控制器复位的广播命令,同一网段内所有控制器收到广播后同时复位并跳转进入app中运行

14、本专利技术的有益效果是:

15、本方法通过上位机给产品中同一can网段内正常运行的所有控制器发送复位的广播指令,控制器复位后的20ms内,上位机需发送所有控制器更新应用数据的广播指令,随后,同一can网段内的所有控制器便都停留在bt中,且处于静默状态,此时,总线的负载率为零。上位机开始使用标识待更新应用数据的控制器身份的can id发送更新应用数据,直至控制器的应用数据发送完成,最后,上位机发送所有控制器同时复位的广播命令,所有控制器同时复位并跳转进入app运行。使用该法,无需采用类似uds等复杂的在线刷新协议,刷新功能主要依靠在控制器的non-volatile memory空间存储的标识控制器身份的can id,几乎不占用控制器的程序空间,同时大副度降低了总线的负载率,避免了正常运行的控制器记录了在线更新应用数据的控制器的通讯超时等需更新完成后逐一清除的故障码,节省了大量的人力和时间成本,提高了工作效率。

本文档来自技高网...

【技术保护点】

1.同一CAN网段内单个控制器应用数据在线刷新简单方法,其特征在于:包括以下步骤;

2.根据权利要求1所述的同一CAN网段内单个控制器应用数据在线刷新简单方法,其特征在于:所述S2中BT为产品中正在使用的bootloader。

3.根据权利要求1所述的同一CAN网段内单个控制器应用数据在线刷新简单方法,其特征在于:所述S1中APP为产品中正在使用的应用程序,主要作用是实现产品的功能。

4.根据权利要求1所述的同一CAN网段内单个控制器应用数据在线刷新简单方法,其特征在于:所述S4中所述控制器为产品中运行bootloader和应用软件的主控制器。

5.根据权利要求1所述的同一CAN网段内单个控制器应用数据在线刷新简单方法,其特征在于:所述应用工程编译链接后生成的out或hex等文件通过转换生成的bin文件。

6.根据权利要求1所述的一种同一CAN网段内单个控制器应用数据在线刷新简单方法,其特征在于:所述同一CAN网段内各个控制器通过各自的应用程序在Non-Volatile Memory中写入标识控制器身份使用的CAN ID,BT初始化时需读取该CAN ID,使用该CAN ID初始化刷新使用的发送和接收两个邮箱;在上位机的刷新使用CAN ID文本输入框中输入待刷新的控制器的身份CAN ID,上位机通过该CAN ID发送待刷新控制器的应用数据,直至应用数据发送完成,就完成了待刷新控制器的应用数据刷新;最后,上位机使用广播通信使用的CANID发送所有控制器复位的广播命令,同一网段内所有控制器收到广播后同时复位并跳转进入APP中运行。

...

【技术特征摘要】

1.同一can网段内单个控制器应用数据在线刷新简单方法,其特征在于:包括以下步骤;

2.根据权利要求1所述的同一can网段内单个控制器应用数据在线刷新简单方法,其特征在于:所述s2中bt为产品中正在使用的bootloader。

3.根据权利要求1所述的同一can网段内单个控制器应用数据在线刷新简单方法,其特征在于:所述s1中app为产品中正在使用的应用程序,主要作用是实现产品的功能。

4.根据权利要求1所述的同一can网段内单个控制器应用数据在线刷新简单方法,其特征在于:所述s4中所述控制器为产品中运行bootloader和应用软件的主控制器。

5.根据权利要求1所述的同一can网段内单个控制器应用数据在线刷新简单方法,其特征在于:所述应用工程编译...

【专利技术属性】
技术研发人员:丰建敏
申请(专利权)人:江苏吉泰科电气有限责任公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1