CN112346769A - 一种基于tms320f28335的dsp软件在线升级方法 - Google Patents

一种基于tms320f28335的dsp软件在线升级方法 Download PDF

Info

Publication number
CN112346769A
CN112346769A CN202011174894.8A CN202011174894A CN112346769A CN 112346769 A CN112346769 A CN 112346769A CN 202011174894 A CN202011174894 A CN 202011174894A CN 112346769 A CN112346769 A CN 112346769A
Authority
CN
China
Prior art keywords
dsp
program
signal processor
bootloader
digital signal
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.)
Pending
Application number
CN202011174894.8A
Other languages
English (en)
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.)
Beijing Institute of Space Launch Technology
Original Assignee
Beijing Institute of Space Launch Technology
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 Beijing Institute of Space Launch Technology filed Critical Beijing Institute of Space Launch Technology
Priority to CN202011174894.8A priority Critical patent/CN112346769A/zh
Publication of CN112346769A publication Critical patent/CN112346769A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于TMS320F28335的DSP软件在线升级方法,属于软件在线升级方法技术领域,包括如下步骤:S1、将bootloader引导程序装载到数字信号处理器内部的FlashA区域;S2、将DSP应用程序装载到数字信号处理器内部的FlashB区域;S3、当信号处理器上电复位时,自动加载FlashA区域的bootloader引导程序。本发明提高了软件升级的可靠性,摒弃了在线升级模块内嵌于产品软件的传统方案,而是将bootloader引导程序和DSP应用程序放置在不同Flash分区,FlashA区域存储bootloader引导程序,FlashB区域存储DSP应用程序。

Description

一种基于TMS320F28335的DSP软件在线升级方法
技术领域
本发明涉及软件在线升级方法技术领域,更具体地说,涉及一种基于TMS320F28335的DSP软件在线升级方法。
背景技术
美国TI公司的TMS320F28335型数字信号处理器是一款TMS320F28X系列浮点DSP控制器,该器件具备精度高,成本低,功耗小,性能高,外设集成度高等特点,在工业控制、高性能计算和航空航天等领域应用广泛。
一般来说,电子产品均集成在箱体内,目前通用的升级程序方法是打开设备,利用仿真器连接JTAG接口配合CCS加载程序来更新程序,此方法较为繁琐,不利于产品的售后维护。
发明内容
1.要解决的技术问题
针对现有技术中存在的问题,本发明的目的在于提供一种基于TMS320F28335的DSP软件在线升级方法,它提供一种在不开箱的基础上且脱离仿真器,通过RS422/RS232接口对产品软件进行在线升级的方法。
2.技术方案
为解决上述问题,本发明采用如下的技术方案:
一种基于TMS320F28335的DSP软件在线升级方法,包括如下步骤:
S1、将bootloader引导程序装载到数字信号处理器内部的FlashA区域;
S2、将DSP应用程序装载到数字信号处理器内部的FlashB区域;
S3、当信号处理器上电复位时,自动加载FlashA区域的bootloader引导程序;
S4、判断是否有来自上位机RS422/RS232接口的程序升级指令:
当有来自上位机RS422/RS232接口的程序升级指令时,执行步骤S41;
当没有来自上位机RS422/RS232接口的程序升级指令,执行步骤S42;
S41、通过调用Flash28335_API函数将串口发送的新程序搬运至FlashB区域,用以覆盖原DSP应用程序;
S42、bootloader引导程序运行完毕后直接跳转至FlashB区域的起始入口,自动执行原DSP应用程序。
作为本发明的一种优选方案,在步骤S1中,其具体步骤如下:
S11、通过JTAG接口,将数字信号处理器与仿真器相连接,并连接至电脑;
S12、给数字信号处理器上电;
S13、在Code Composer Studio集成开发环境中点击Debug菜单下connect选项,连接数字信号处理器;
S14、打开bootloader固化工程bootloader.prj;
S15、在Code Composer Studio集成开发环境中点击Tools菜单下的F28xx On_Chip Flash Programmer选项,分别设置25、1、6三个参数后进入烧写界面;
S16、选择bootloader固化程序bootloader.out,点击“Excute Operation”按钮,等待进度条完成;
S17、bootloader引导程序已加载至FLASHA分区。
作为本发明的一种优选方案,所述数字信号处理器采用TMS320F28335数字信号处理器,所述仿真器采用SEED-XDS560PLUS仿真器。
作为本发明的一种优选方案,在步骤S2中,其具体步骤如下:
S21、将数字信号处理器连接上电源线缆和通讯线缆,并在与之相连的电脑中打开烧写上位机软件,设置串口参数;
S22、选择需要升级的DSP应用程序执行文件Dsp.out,并打开。
作为本发明的一种优选方案,在步骤S41中,其具体步骤如下:
S411、将原FlashB区域的程序擦除;
S412、将Dsp.out的二进制代码搬运至FlashB区域并写入;
S413、判断校验是否成功:
当检验成功时,执行步骤S4131;
当检验不成功时,执行步骤S4132;
S4131、软件在线升级成功;
S4132、软件在线升级失败。
作为本发明的一种优选方案,在步骤S1中,所述bootloader引导程序固化在数字处理器内部的FlashA区域时,不允许用户修改和擦除。
作为本发明的一种优选方案,在步骤S2中,所述DSP应用程序固化在数字信号处理器内部的FlashB区域时,可以允许用户修改和擦除。
作为本发明的一种优选方案,在步骤S1和步骤S2中,所述bootloader引导程序装载和DSP应用程序装载进行分区编译,在工程文件下的cmd文件中设置分区:
FLASHH:origin=0x300000,length=0x008000;
FLASHG:origin=0x308000,length=0x008000;
FLASHF:origin=0x310000,length=0x008000;
FLASHE:origin=0x318000,length=0x008000;
FLASHD:origin=0x320000,length=0x008000;
FLASHC:origin=0x328000,length=0x008000;
FLASHB:origin=0x330000,length=0x008000;
FLASHA:origin=0x338000,length=0x007F80;
其中:所述bootloader引导程序在编译时选择分区FLASHA,所述DSP应用程序在编译时选择分区FLASHB。
3.有益效果
相比于现有技术,本发明的优点在于:
本发明提高了软件升级的可靠性,摒弃了在线升级模块内嵌于产品软件的传统方案,而是将bootloader引导程序和DSP应用程序放置在不同Flash分区,FlashA区域存储bootloader引导程序,FlashB区域存储DSP应用程序,可以通过RS422/RS232接口对FlashB区域进行读写,并能实现DSP应用程序的引导和启动,该方法不仅可以实现产品在不开机箱、不使用仿真器的情况下在线升级产品软件,还能通过Flash分区存储的方式提高软件升级的可靠性。
附图说明
图1为本发明的一种基于TMS320F28335的DSP软件在线升级方法的整体流程图;
图2为本发明一种基于TMS320F28335的DSP软件在线升级方法中步骤S1处的流程图;
图3为本发明一种基于TMS320F28335的DSP软件在线升级方法中步骤S2处的流程图;
图4为本发明一种基于TMS320F28335的DSP软件在线升级方法中步骤S41处的流程图。
具体实施方式
下面将结合本发明实施例中的附图对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例:
请参阅图1-4,一种基于TMS320F28335的DSP软件在线升级方法,包括如下步骤:
S1、将bootloader引导程序装载到数字信号处理器内部的FlashA区域:
S11、通过JTAG接口,将数字信号处理器与仿真器相连接,并连接至电脑,优选的,数字信号处理器采用TMS320F28335数字信号处理器,仿真器采用SEED-XDS560PLUS仿真器;
S12、给数字信号处理器上电;
S13、在Code Composer Studio集成开发环境中点击Debug菜单下connect选项,连接数字信号处理器;
S14、打开bootloader固化工程bootloader.prj;
S15、在Code Composer Studio集成开发环境中点击Tools菜单下的F28xx On_Chip Flash Programmer选项,分别设置25、1、6三个参数后进入烧写界面;
S16、选择bootloader固化程序bootloader.out,点击“Excute Operation”按钮,等待进度条完成;
S17、bootloader引导程序已加载至FLASHA分区;
需要进行说明的是:bootloader引导程序固化在数字处理器内部的FlashA区域时,不允许用户修改和擦除;
S2、将DSP应用程序装载到数字信号处理器内部的FlashB区域:
S21、将数字信号处理器连接上电源线缆和通讯线缆,并在与之相连的电脑中打开烧写上位机软件,设置串口参数;
S22、选择需要升级的DSP应用程序执行文件Dsp.out,并打开;
需要进行说明的是:DSP应用程序固化在数字信号处理器内部的FlashB区域时,可以允许用户修改和擦除;
在步骤S1和步骤S2中,bootloader引导程序装载和DSP应用程序装载进行分区编译,在工程文件下的cmd文件中设置分区:
FLASHH:origin=0x300000,length=0x008000;
FLASHG:origin=0x308000,length=0x008000;
FLASHF:origin=0x310000,length=0x008000;
FLASHE:origin=0x318000,length=0x008000;
FLASHD:origin=0x320000,length=0x008000;
FLASHC:origin=0x328000,length=0x008000;
FLASHB:origin=0x330000,length=0x008000;
FLASHA:origin=0x338000,length=0x007F80;
其中:bootloader引导程序在编译时选择分区FLASHA,DSP应用程序在编译时选择分区FLASHB;
S3、当信号处理器上电复位时,自动加载FlashA区域的bootloader引导程序;
S4、判断是否有来自上位机RS422/RS232接口的程序升级指令:
当有来自上位机RS422/RS232接口的程序升级指令时,执行步骤S41;
当没有来自上位机RS422/RS232接口的程序升级指令,执行步骤S42;
S41、通过调用Flash28335_API函数将串口发送的新程序搬运至FlashB区域,用以覆盖原DSP应用程序:
S411、将原FlashB区域的程序擦除;
S412、将Dsp.out的二进制代码搬运至FlashB区域并写入;
S413、判断校验是否成功:
当检验成功时,执行步骤S4131;
当检验不成功时,执行步骤S4132;
S4131、软件在线升级成功;
S4132、软件在线升级失败;
S42、bootloader引导程序运行完毕后直接跳转至FlashB区域的起始入口,自动执行原DSP应用程序。
本发明提高了软件升级的可靠性,摒弃了在线升级模块内嵌于产品软件的传统方案,而是将bootloader引导程序和DSP应用程序放置在不同Flash分区,FlashA区域存储bootloader引导程序,FlashB区域存储DSP应用程序,可以通过RS422/RS232接口对FlashB区域进行读写,并能实现DSP应用程序的引导和启动,该方法不仅可以实现产品在不开机箱、不使用仿真器的情况下在线升级产品软件,还能通过Flash分区存储的方式提高软件升级的可靠性。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其改进构思加以等同替换或改变,都应涵盖在本发明的保护范围内。

Claims (10)

1.一种基于TMS320F28335的DSP软件在线升级方法,其特征在于,包括如下步骤:
S1、将bootloader引导程序装载到数字信号处理器内部的FlashA区域;
S2、将DSP应用程序装载到数字信号处理器内部的FlashB区域;
S3、当信号处理器上电复位时,自动加载FlashA区域的bootloader引导程序;
S4、判断是否有来自上位机RS422/RS232接口的程序升级指令:
当有来自上位机RS422/RS232接口的程序升级指令时,执行步骤S41;
当没有来自上位机RS422/RS232接口的程序升级指令,执行步骤S42;
S41、通过调用Flash28335_API函数将串口发送的新程序搬运至FlashB区域,用以覆盖原DSP应用程序;
S42、bootloader引导程序运行完毕后直接跳转至FlashB区域的起始入口,自动执行原DSP应用程序。
2.根据权利要求1所述的一种基于TMS320F28335的DSP软件在线升级方法,其特征在于,在步骤S1中,其具体步骤如下:
S11、通过JTAG接口,将数字信号处理器与仿真器相连接,并连接至电脑;
S12、给数字信号处理器上电;
S13、在Code Composer Studio集成开发环境中点击Debug菜单下connect选项,连接数字信号处理器;
S14、打开bootloader固化工程bootloader.prj;
S15、在Code Composer Studio集成开发环境中点击Tools菜单下的F28xx On_ChipFlash Programmer选项,分别设置25、1、6三个参数后进入烧写界面;
S16、选择bootloader固化程序bootloader.out,点击“Excute Operation”按钮,等待进度条完成;
S17、bootloader引导程序已加载至FLASHA分区。
3.根据权利要求2所述的一种基于TMS320F28335的DSP软件在线升级方法,其特征在于,所述数字信号处理器采用TMS320F28335数字信号处理器,所述仿真器采用SEED-XDS560PLUS仿真器。
4.根据权利要求1所述的一种基于TMS320F28335的DSP软件在线升级方法,其特征在于,在步骤S2中,其具体步骤如下:
S21、将数字信号处理器连接上电源线缆和通讯线缆,并在与之相连的电脑中打开烧写上位机软件,设置串口参数;
S22、选择需要升级的DSP应用程序执行文件Dsp.out,并打开。
5.根据权利要求1所述的一种基于TMS320F28335的DSP软件在线升级方法,其特征在于,在步骤S41中,其具体步骤如下:
S411、将原FlashB区域的程序擦除;
S412、将Dsp.out的二进制代码搬运至FlashB区域并写入;
S413、判断校验是否成功:
当检验成功时,执行步骤S4131;
当检验不成功时,执行步骤S4132;
S4131、软件在线升级成功;
S4132、软件在线升级失败。
6.根据权利要求1-5任意一项所述的一种基于TMS320F28335的DSP软件在线升级方法,其特征在于,在步骤S1中,所述bootloader引导程序固化在数字处理器内部的FlashA区域时,不允许用户修改和擦除。
7.根据权利要求1-5任意一项所述的一种基于TMS320F28335的DSP软件在线升级方法,其特征在于,在步骤S2中,所述DSP应用程序固化在数字信号处理器内部的FlashB区域时,可以允许用户修改和擦除。
8.根据权利要求1-5任意一项所述的一种基于TMS320F28335的DSP软件在线升级方法,其特征在于,在步骤S1和步骤S2中,所述bootloader引导程序装载和DSP应用程序装载进行分区编译,在工程文件下的cmd文件中设置分区:
FLASHH:origin=0x300000,length=0x008000;
FLASHG:origin=0x308000,length=0x008000;
FLASHF:origin=0x310000,length=0x008000;
FLASHE:origin=0x318000,length=0x008000;
FLASHD:origin=0x320000,length=0x008000;
FLASHC:origin=0x328000,length=0x008000;
FLASHB:origin=0x330000,length=0x008000;
FLASHA:origin=0x338000,length=0x007F80。
9.根据权利要求8所述的一种基于TMS320F28335的DSP软件在线升级方法,其特征在于,所述bootloader引导程序在编译时选择分区FLASHA。
10.根据权利要求9所述的一种基于TMS320F28335的DSP软件在线升级方法,其特征在于,所述DSP应用程序在编译时选择分区FLASHB。
CN202011174894.8A 2020-10-28 2020-10-28 一种基于tms320f28335的dsp软件在线升级方法 Pending CN112346769A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011174894.8A CN112346769A (zh) 2020-10-28 2020-10-28 一种基于tms320f28335的dsp软件在线升级方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011174894.8A CN112346769A (zh) 2020-10-28 2020-10-28 一种基于tms320f28335的dsp软件在线升级方法

Publications (1)

Publication Number Publication Date
CN112346769A true CN112346769A (zh) 2021-02-09

Family

ID=74355162

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011174894.8A Pending CN112346769A (zh) 2020-10-28 2020-10-28 一种基于tms320f28335的dsp软件在线升级方法

Country Status (1)

Country Link
CN (1) CN112346769A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112988209A (zh) * 2021-03-31 2021-06-18 清华大学 用于转子悬浮控制系统中程序在线升级的方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902305A (zh) * 2012-12-26 2014-07-02 中国航空工业集团公司第六三一研究所 基于ti dsp的软件远程加载与固化方法
CN104407878A (zh) * 2014-10-20 2015-03-11 北京航天发射技术研究所 C6000数字信号处理器在线升级方法
CN106155715A (zh) * 2015-03-30 2016-11-23 北京自动化控制设备研究所 一种基于实时mcu的软件引导固化方法
CN106648803A (zh) * 2016-12-30 2017-05-10 南京科远自动化集团股份有限公司 一种dsp芯片在线升级方法
CN106874056A (zh) * 2017-03-14 2017-06-20 成都天奥电子股份有限公司 基于Ymodem协议的TI C2000 DSP 串口在线升级方法
CN111459468A (zh) * 2020-04-09 2020-07-28 西安现代控制技术研究所 高可靠性串口通讯的dsp程序在线升级系统和方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902305A (zh) * 2012-12-26 2014-07-02 中国航空工业集团公司第六三一研究所 基于ti dsp的软件远程加载与固化方法
CN104407878A (zh) * 2014-10-20 2015-03-11 北京航天发射技术研究所 C6000数字信号处理器在线升级方法
CN106155715A (zh) * 2015-03-30 2016-11-23 北京自动化控制设备研究所 一种基于实时mcu的软件引导固化方法
CN106648803A (zh) * 2016-12-30 2017-05-10 南京科远自动化集团股份有限公司 一种dsp芯片在线升级方法
CN106874056A (zh) * 2017-03-14 2017-06-20 成都天奥电子股份有限公司 基于Ymodem协议的TI C2000 DSP 串口在线升级方法
CN111459468A (zh) * 2020-04-09 2020-07-28 西安现代控制技术研究所 高可靠性串口通讯的dsp程序在线升级系统和方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
马骏杰: "《嵌入式DSP的原理与应用:基于TMS320F28335》", vol. 2, 北京航空航天大学出版, pages: 80 - 83 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112988209A (zh) * 2021-03-31 2021-06-18 清华大学 用于转子悬浮控制系统中程序在线升级的方法和装置

Similar Documents

Publication Publication Date Title
CN102236621B (zh) 计算机接口信息配置系统及方法
US10540262B2 (en) Using edit and continue to dynamically set and unset optimizations in source code while debugging
CN104407878B (zh) C6000数字信号处理器在线升级方法
CN101414278B (zh) 基于动态反编译技术的二进制应用程序调试方法
CN109710320B (zh) 一种两级驱动的启动引导BootLoader方法
CN102955723B (zh) 一种硬件自动测试方法及系统
CN102063286A (zh) 程序流控制
KR20170105054A (ko) 임베디드 시스템의 프리인스톨 중의 스크립트 작업 수행 시스템
CN108170494A (zh) 一种用于智能终端的应用程序启动方法及启动系统
CN111679839A (zh) 一种mcu flash的在线烧写方法
CN112346769A (zh) 一种基于tms320f28335的dsp软件在线升级方法
CN108052326B (zh) 一种Xilinx FPGA支持Arduino IDE开发的实现方法
CN110716721A (zh) 兼容网口和串口的tms320c6748程序加载方法
CN109683935B (zh) 应用程序升级方法、装置、变频器以及存储介质
CN114281404B (zh) 一种工控机算法代码的移植方法及装置
Gaisler et al. BCC-Bare-C Cross-Compiler User’s Manual
CN110333900A (zh) 一种升级单片机存储器内boot的方法
CN112764379B (zh) 一种基于dsp系统的iap控制方法
CN113127043A (zh) 一种单片机APP在线升级BootLoader的方法
CN217640186U (zh) 一种基于tms320f28335的iap在线升级模组
KR100952762B1 (ko) 디지털 시그널 프로세서의 실시간 디버깅 방법
CN100357908C (zh) 电子装置程序的测试方法
CN117032766A (zh) 一种基于Java的DSP在线上传、下载方法及其装置
CN106528405A (zh) 基于OSGi构建软件运行中进行调试实现方法及系统
TWI235955B (en) BIOS upgrading method of embedded controller in electronic device

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