CN109725621A - 一种基于1553b总线和can总线的二级总线程序在线烧写方法 - Google Patents
一种基于1553b总线和can总线的二级总线程序在线烧写方法 Download PDFInfo
- Publication number
- CN109725621A CN109725621A CN201711021775.7A CN201711021775A CN109725621A CN 109725621 A CN109725621 A CN 109725621A CN 201711021775 A CN201711021775 A CN 201711021775A CN 109725621 A CN109725621 A CN 109725621A
- Authority
- CN
- China
- Prior art keywords
- bus
- program
- line writing
- message
- software
- 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
Landscapes
- Programmable Controllers (AREA)
- Stored Programmes (AREA)
Abstract
本发明属于伺服控制领域,具体涉及一种基于1553B总线和CAN总线的二级总线程序在线烧写方法。具体包括以下步骤:步骤一、制定程序烧写通信协议;步骤二、设计主控制软件程序在线烧写模块;步骤三、设计从控制软件程序在线烧写模块;步骤四、设计程序在线烧写上位机通信模块。可以简化软件烧写流程,避免烧写软件过程中对硬件的不必要操作,同时在外场对软件进行升级时,仅通过1553B总线即可实现。此方法已在型号中应用,推动了数字伺服控制器的发展。
Description
技术领域
本发明属于伺服控制领域,具体涉及一种基于1553B总线和CAN总线的二级总线程序在线烧写方法。
背景技术
目前,自主研制的主从式伺服控制器采用的通讯方式多为主控制器通过1553B总线与上位机通信,从控制器通过CAN总线与主控制器通信,控制软件通过仿真器烧写到各控制器中。仿真器的接口都在印制电路板上,控制器调试完成后会封装在壳体里,程序升级时拆开壳体进行程序烧写,需要专业人员操作,并且需要检验人员跟检,工作流程复杂,容易引入多余物、损坏电路板,且无法在外场复杂环境下进行程序升级,影响软件研制和生产效率。
发明内容
本发明要解决的技术问题是提供一种基于1553B总线和CAN总线的二级总线程序在线烧写的方法,为了解决这个问题,需要采用总线的对外接口进行程序烧写。
为解决上述技术问题,本发明一种基于1553B总线和CAN总线的二级总线程序在线烧写方法,具体包括以下步骤:
步骤一、制定程序烧写通信协议,需要制作一套严格的1553B总线和CAN总线通信协议,DSP软件和上位机软件均按照协议进行解析、可以实现程序的在线烧写;
步骤二、设计主控制软件程序在线烧写模块,DSP需要通过中断或者查询方式接收1553B总线发出的消息并解析消息;在软件初始化过程中完成子地址的相关配置配置后,按照协议解析消息;1553B通信芯片在接收到程序在线烧写消息后调用程序在线烧写模块;
步骤三、设计从控制软件程序在线烧写模块;DSP需要通过中断或者查询方式接收CAN总线消息并解析消息;在软件初始化过程中完成CAN总线相关配置配置后,按照协议解析消息;CAN总线在程序烧写邮箱中接收到消息后调用程序在线烧写模块;
步骤四、设计程序在线烧写上位机通信模块;开发用户使用的上位机程序在线模块,按照通信协议的格式与DSP软件进行通信。
所述步骤一中,1553B总线通信协议要求:约定接收子地址、应答子地址、接收和应答的数据字个数。
所述步骤一中,CAN总线通信协议要求:约定主控制器->从控制器和从控制器->主控制器的邮箱ID。
所述步骤二中,在线烧写模块的入口函数的功能有:从接收并解析1553B总线消息,并产生应答消息;按照协议返回应答的数据,供BC判断是否继续执行烧写操作;按照握手、擦除Flash、发送数据、发送烧写命令和程序校验的顺序来执行程序。
程序在线烧写模块的入口函数功能有:所述步骤三中,接收并解析CAN总线消息,并产生应答消息;按协议返回应答消息,供BC判断是否继续执行烧写操作;按照握手、擦除Flash、发送程序、请求读取程序数据或状态数据命令,发送转移程序命令和程序校验的顺序来执行程序。
本发明的有益技术效果在于:目前通过1553B总线的程序在线烧写方法已经广泛应用于各单总线的伺服控制器软件烧写中,由于主从控制系统对外接口为1553B总线,CAN总线对外没有接口,为适应主从控制系统,本发明开发一种基于1553B总线和CAN总线的二级总线程序烧写方法,即通过上位机,将程序经由1553B总线和CAN总线烧写到从控制器中的方法,可以简化软件烧写流程,避免烧写软件过程中对硬件的不必要操作,同时在外场对软件进行升级时,仅通过1553B总线即可实现。此方法已在型号中应用,推动了数字伺服控制器的发展。
附图说明
图1为本发明一种基于1553B总线和CAN总线的二级总线程序在线烧写方法总体结构框;
图2为主控制器软件在线烧写模块流程图;
图3为从控制器软件在线烧写模块流程图;
图4为上位机软件程序在线烧写流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步详细说明。
本发明一种基于1553B总线和CAN总线的二级总线程序在线烧写方法,具体包括以下步骤:
具体实现方法为分别在主控制软件和从控制软件中加入程序烧写模块,通过上位机通信软件按照通信协议将程序通过1553B总线传输到主控制器,再由主控制器通过CAN总线传输到从控制器中,实现从控制软件的在线烧写。完成该系统的应用可以分为以下四个步骤:
步骤一、制定程序烧写通信协议
完成数字伺服控制程序在线烧写需要制定一套严格的1553B总线和CAN总线通信协议,DSP软件和上位机软件均按照协议进行解析、可以实现程序的在线烧写。
1553B总线通信协议要求:约定接收子地址、应答子地址、接收和应答的数据字个数。上位机发送的1553B总线程序在线烧写命令及应答协议步骤如下。
(1)与控制器握手
说明 | |
BC->RT | 与控制器握手 |
RT->BC | 与控制器握手成功 |
(2)擦除Flash EF扇区指令,
(3)发送数据
(4)发送烧写命令
(5)发送校验命令
CAN总线通信协议要求:约定主控制器->从控制器和从控制器->主控制器的邮箱ID。多台从控制器可设置多个邮箱ID分别烧写。
(1)与从控制器握手,使能程序烧录,并等待应答
(2)擦除Flash EF扇区和Flash B扇区指令,并等待应答
(3)发送程序/状态的写入命令
(4)发送转移程序命令,控制器将程序从Flash EF区转移到Flash CD区,转移完成后发送应答命令
(5)发送校验命令,校验完成后发送应答命令
步骤二、设计主控制软件程序在线烧写模块;
DSP需要通过中断或者查询方式接收1553B总线发出的消息并解析消息。在软件初始化过程中完成子地址的相关配置配置后,按照协议解析消息。1553B通信芯片在接收到程序在线烧写消息后调用程序在线烧写模块,程序在线烧写模块的入口函数流程图如图2所示,功能如下:
1)从接收并解析1553B总线消息,并产生应答消息。
2)按照协议返回应答的数据,供BC判断是否继续执行烧写操作。
3)按照握手、擦除Flash、发送数据、发送烧写命令和程序校验的顺序来执行程序。
步骤三、设计从控制软件程序在线烧写模块
DSP需要通过中断或者查询方式接收CAN总线消息并解析消息。在软件初始化过程中完成CAN总线相关配置配置后,按照协议解析消息。CAN总线在程序烧写邮箱中接收到消息后调用程序在线烧写模块,程序在线烧写模块的入口函数流程图如图3所示,功能如下:
接收并解析CAN总线消息,并产生应答消息。
按协议返回应答消息,供BC判断是否继续执行烧写操作。
按照握手、擦除Flash、发送程序、请求读取程序数据或状态数据命令,发
送转移程序命令和程序校验的顺序来执行程序。
步骤四、设计程序在线烧写上位机通信模块
本部分主要功能是开发用户使用的上位机程序在线模块,按照通信协议的格式与DSP软件进行通信。
开发上位机通信模块需要工控机和1553B总线板卡。通过软件设置使1553B总线板卡工作在BC模式,与控制器RT通信。开发环境采用C#2005,设计了友好的用户操作界面,通过驱动程序操作1553B板卡,按照协议给控制器RT发送总线消息。
用户选择要下载的文件后,在线烧写软件需要调用hex2000.exe软件,并输入相应的参数,将OUT软件转换为Hex文件,供后续解析使用。
按照握手、擦除Flash、发送数据、发送烧写命令、发送程序校验命令的顺序来发送指令,上位机通信模块每发送完一条指令后,都定时从数据应答子地址中,读取控制器操作状态信息,以确定是否需要继续进行后续操作;如果没得到控制器给出的成功响应标志则立即停止程序烧写流程,告诉用户程序烧写失败。上位机通信模块实现程序在线烧写流程见图4。
Claims (5)
1.一种基于1553B总线和CAN总线的二级总线程序在线烧写方法,其特征在于:具体包括以下步骤:
步骤一、制定程序烧写通信协议,需要制作一套严格的1553B总线和CAN总线通信协议,DSP软件和上位机软件均按照协议进行解析、可以实现程序的在线烧写;
步骤二、设计主控制软件程序在线烧写模块,DSP需要通过中断或者查询方式接收1553B总线发出的消息并解析消息;在软件初始化过程中完成子地址的相关配置配置后,按照协议解析消息;1553B通信芯片在接收到程序在线烧写消息后调用程序在线烧写模块;
步骤三、设计从控制软件程序在线烧写模块;DSP需要通过中断或者查询方式接收CAN总线消息并解析消息;在软件初始化过程中完成CAN总线相关配置配置后,按照协议解析消息;CAN总线在程序烧写邮箱中接收到消息后调用程序在线烧写模块;
步骤四、设计程序在线烧写上位机通信模块;开发用户使用的上位机程序在线模块,按照通信协议的格式与DSP软件进行通信。
2.根据权利要求1所述的一种基于1553B总线和CAN总线的二级总线程序在线烧写方法,其特征在于:所述步骤一中,1553B总线通信协议要求:约定接收子地址、应答子地址、接收和应答的数据字个数。
3.根据权利要求2所述的一种基于1553B总线和CAN总线的二级总线程序在线烧写方法,其特征在于:所述步骤一中,CAN总线通信协议要求:约定主控制器->从控制器和从控制器->主控制器的邮箱ID。
4.根据权利要求3所述的一种基于1553B总线和CAN总线的二级总线程序在线烧写方法,其特征在于:所述步骤二中,在线烧写模块的入口函数的功能有:从接收并解析1553B总线消息,并产生应答消息;按照协议返回应答的数据,供BC判断是否继续执行烧写操作;按照握手、擦除Flash、发送数据、发送烧写命令和程序校验的顺序来执行程序。
5.根据权利要求4所述的一种基于1553B总线和CAN总线的二级总线程序在线烧写方法,其特征在于:程序在线烧写模块的入口函数功能有:所述步骤三中,接收并解析CAN总线消息,并产生应答消息;按协议返回应答消息,供BC判断是否继续执行烧写操作;按照握手、擦除Flash、发送程序、请求读取程序数据或状态数据命令,发送转移程序命令和程序校验的顺序来执行程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711021775.7A CN109725621B (zh) | 2017-10-27 | 2017-10-27 | 一种基于1553b总线和can总线的二级总线程序在线烧写方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711021775.7A CN109725621B (zh) | 2017-10-27 | 2017-10-27 | 一种基于1553b总线和can总线的二级总线程序在线烧写方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109725621A true CN109725621A (zh) | 2019-05-07 |
CN109725621B CN109725621B (zh) | 2020-10-23 |
Family
ID=66290744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711021775.7A Active CN109725621B (zh) | 2017-10-27 | 2017-10-27 | 一种基于1553b总线和can总线的二级总线程序在线烧写方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109725621B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112162730A (zh) * | 2020-09-30 | 2021-01-01 | 北京特种机械研究所 | 一种实现多功能can总线通信的dsp软件设计方法 |
CN113848846A (zh) * | 2021-08-18 | 2021-12-28 | 北京精密机电控制设备研究所 | 一种异构网络伺服控制器组合软件在线升级方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104598259A (zh) * | 2013-11-01 | 2015-05-06 | 上海机电工程研究所 | 对经三防处理的io控制器进行软件在线烧写装置及方法 |
CN105224362A (zh) * | 2015-09-18 | 2016-01-06 | 深圳市新产业生物医学工程股份有限公司 | 上位机对下位机进行程序升级的方法及系统 |
CN103092633B (zh) * | 2011-10-31 | 2016-08-03 | 北京精密机电控制设备研究所 | 一种基于1553b总线的伺服控制软件在线烧录方法 |
CN106648803A (zh) * | 2016-12-30 | 2017-05-10 | 南京科远自动化集团股份有限公司 | 一种dsp芯片在线升级方法 |
CN106789210A (zh) * | 2016-12-12 | 2017-05-31 | 中国船舶重工集团公司第七0五研究所 | 一种基于can总线的多dsp智能节点软件在线升级方法 |
-
2017
- 2017-10-27 CN CN201711021775.7A patent/CN109725621B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103092633B (zh) * | 2011-10-31 | 2016-08-03 | 北京精密机电控制设备研究所 | 一种基于1553b总线的伺服控制软件在线烧录方法 |
CN104598259A (zh) * | 2013-11-01 | 2015-05-06 | 上海机电工程研究所 | 对经三防处理的io控制器进行软件在线烧写装置及方法 |
CN105224362A (zh) * | 2015-09-18 | 2016-01-06 | 深圳市新产业生物医学工程股份有限公司 | 上位机对下位机进行程序升级的方法及系统 |
CN106789210A (zh) * | 2016-12-12 | 2017-05-31 | 中国船舶重工集团公司第七0五研究所 | 一种基于can总线的多dsp智能节点软件在线升级方法 |
CN106648803A (zh) * | 2016-12-30 | 2017-05-10 | 南京科远自动化集团股份有限公司 | 一种dsp芯片在线升级方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112162730A (zh) * | 2020-09-30 | 2021-01-01 | 北京特种机械研究所 | 一种实现多功能can总线通信的dsp软件设计方法 |
CN112162730B (zh) * | 2020-09-30 | 2024-04-23 | 北京特种机械研究所 | 一种实现多功能can总线通信的dsp软件设计方法 |
CN113848846A (zh) * | 2021-08-18 | 2021-12-28 | 北京精密机电控制设备研究所 | 一种异构网络伺服控制器组合软件在线升级方法 |
CN113848846B (zh) * | 2021-08-18 | 2023-10-31 | 北京精密机电控制设备研究所 | 一种异构网络伺服控制器组合软件在线升级方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109725621B (zh) | 2020-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104620564B (zh) | 用于经由利用数据隧道的接口的多协议数据元素的传输的装置和方法 | |
US8660817B2 (en) | Hardware test and diagnosis system and method | |
CN204759403U (zh) | 一种基于数据透传实现设备内部模块升级的系统 | |
CN111078606B (zh) | 一种模拟i2c从机及其实现方法、终端设备和存储介质 | |
CN102967815B (zh) | 芯片测试方法、自动化测试机和系统 | |
CN102411539B (zh) | 一种手机外部设备在线调试方法及系统 | |
CN102270168A (zh) | 自动检测串口信息的方法 | |
CN109725621A (zh) | 一种基于1553b总线和can总线的二级总线程序在线烧写方法 | |
CN102279831A (zh) | 一种串口通信终端自动注册方法 | |
CN111756858A (zh) | 嵌入式设备的远程开发处理系统、方法及装置 | |
CN103744478A (zh) | 一种蓝牙无线显示器及其控制方法 | |
CN103488598B (zh) | 一种多模终端及其实现usb共用的方法 | |
CN110324409A (zh) | 一种用于智能电力集中器的OpenCPU开发平台 | |
CN113867758A (zh) | 无人机自动升级方法、装置、无人机、遥控端及存储介质 | |
WO2015035761A1 (zh) | 一种对iOS系统进行汇编级动态调试的方法及装置 | |
US10176133B2 (en) | Smart device with no AP | |
CN206892846U (zh) | 一种微控制器嵌入式系统的程序烧写系统 | |
CN112433900B (zh) | 用于芯片验证的方法、系统、设备以及存储介质 | |
CN101998691B (zh) | 一种数据传输的方法、系统和装置 | |
CN106406154B (zh) | 侦错系统及其控制方法 | |
CN101296448B (zh) | 一种终端软件的升级方法及装置 | |
WO2018040429A1 (zh) | Usb设备模拟装置及方法 | |
CN107835108A (zh) | 基于OpenWrt的MAC层协议栈验证平台 | |
CN107967230A (zh) | I3c电路设备、系统和通信方法 | |
CN106584862A (zh) | 一种内置Web服务的3D打印WIFI控制系统及其控制方法 |
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 |