This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/TMS320F28069:使用 TMS320F28069/CCS / hex2000制作/使用 S-Record 文件

Guru**** 2227050 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/773255/ccs-tms320f28069-making-using-s-record-files-with-tms320f28069-ccs-hex2000

器件型号:TMS320F28069

工具/软件:Code Composer Studio

大家好、团队、

首先、概述我们打算做什么:

根据我们的目标、我们计划:

1:永久驻留在电路板上并应在何时启动的引导加载程序
 我们使用"boot to flash"选项进行引导。 GPIO 引脚用于输入指示的信号
 引导加载程序是立即分支到应用程序、还是更新
 应用程序、并在随后启动它。
 引导加载程序使用闪存库的 SW-API -而不是引导 ROM。
 到目前为止、我们已设法将一些数据写入闪存、即闪存工作正常。
 
2: 驻留在闪存块中、引导加载程序不使用的应用程序、因此
  当应用程序运行时、引导加载程序将不会受到损害。 已更新。
 
 
关于这个问题,出现了一些问题:
 
 1.1使用 hex2000工具(在项目属性对话框中指定)构建项目时
     有了这些选项...
     --memwidth=16
     --romwidth=16
      --Motorola=3.
      -o" 0.S19"
      .out    (输入文件)、
      
      ...我得到 ** 2个输出文件** (除了映射文件):
      - .s19  (通常的 S-Rec 文件扩展名);但也是如此
      - .m01  、也是 m3/S-Rec 文件(大小相同)。

==>*** 文件明显不同。 用于生成二进制文件的 S-Rec 文件? ***
     
      在 S-Rec 文件中、寻址实现了几次飞跃、例如
       (为了提高可读性、我插入了一些空白):
      
          S3 23 003E81FE 0A0BF4A9...
          S3 23 003E820D 00067608...
          S3 1F 003E821C 0006FE02...
          S3 23 003F4000 FE022B41... <<<=leap!
          S3 23 003F400F 61F7FE82...
          S3 23 003F401E 61380215...
        及更高版本:
          S3 22 003F62BA FE96A0A8...
          S3 22 003F62D7 D4FE0076……
          S3 0A 003F62F4 001956FF...
          S3 22 003F7F80 00000000…… <<<=leap!
          S3 22 003F7F9D 00000000……
          S3 22 003F7FBA 00000000……
          S3 22 003F7FD7 00000000……
          
          实现这些飞跃的原因是什么? 是否可以避免它们(为了
          将 SW 加载到一个块中)?
 
 2.1:如何告知链接器放置应用程序代码(包括其矢量表等)
     到所需位置(我不熟悉链接器命令文件)?

 2.2:从引导加载程序分支到应用程序是否正确。 可通过使用来完成
     汇编器"lb

"指令?
      
好的、到目前为止...
此致、
Goetz

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用 user="Goetz Borkowski7"]   ...我获得 ** 2个输出文件** (除了映射文件):
          - .s19  (通常的 S-Rec 文件扩展名);但也是如此
          - .m01  、也是 m3/S-Rec 文件(大小相同)。[/quot]

    您不应获得两个输出文件。  您应该从十六进制实用程序获得诊断。  有关详细说明,请参阅 本帖子中的第二段

    [引述 USER="Goetz Borkowski7"] 实现这些飞跃的原因是什么? 是否可以避免它们(为了
              将软件加载到一个块中)?

    考虑使用图像模式。  请在 C28x 汇编工具手册中搜索 标题为"图像模式"和"-fill 选项"的子章节。

    [引用 user="Goetz Borkowski7"] 2.1:如何告知链接器放置应用程序代码(包括其矢量表等)
         到所需位置(我不熟悉链接器命令文件)?

    有关链接器命令文件的介绍、请参阅文章 链接器命令文件入门

    [引用 user="Goetz Borkowski7"] 2.2:从引导加载程序分支到应用程序是否正确。 可通过使用来完成
         汇编器"lb

    "指令?[/quot]

    这超出了我的专业知识范围。  如果是我、我会尝试一下、看看。  如果您需要 TI 的验证、那么我需要让一些 C28x 器件专家参与进来。

    谢谢、此致、

    乔治