2014---第4章集成开发环境CCS的使用探究.pptVIP

2014---第4章集成开发环境CCS的使用探究.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
.cmd文件基本格式 MEMORY { … } SECTIONS {… } 4.MEMORY伪指令及其使用 连接器确定输出段应分配到存储器的什么地方,必须要有一个目标存储器的模型来完成该项任务。 MEMORY伪指令就是用来指定存储器的模型。 TMS320C55x不同的存储空间可以占有相同的地址去区间。MEMORY利用PAGE(页面)选项来分开构成这些地址空间。 MEMORY基本格式 MEMORY { PAGE0: name0[(attr)]:origin=常数,length=常数 PAGE1: name1[(attr)]:origin=常数,length=常数 } 说明: (1)PAGE指定存储器空间页面,PAGE0代表程序存储器空间,PAGE1~n代表数据存储器空间。 MEMORY基本格式 说明: (2)name指定存储区间名称。 该名称只对连接器内部有效,在输出文件或符号表中均不保存。 (3)attr指定所命名的存储器区间的属性。 属性为选项,使用时必须用()括起来。具体属性为:R、W、X、I R:指定该存储器只能读; W:指定该存储器可以写; X:指定该存储器可以包含可执行代码; I:指定该存储器可被初始化 若不指定属性,则默认该区间的存储器同时具有上述4种属性。 MEMORY基本格式 说明: (4)origin指定存储器区间的起始地址,其值以字为单位,可以是十进制、八进制或十六进制。Origin可简写为org或o。 (5)length指定存储区间的长度,其值以字为单位,可以是十进制、八进制或十六进制。length可简写为len或l。 5.SECTIONS伪指令及其使用 SECTIONS的功能如下: 说明如何将输入的段结合成输出段; 在可执行程序中定义输出段; 指定输出段放置在存储器的何处; 允许对输出段重新命名。 当没有指定SECTIONS伪指令时,连接器采用默认的段结构对段进行结合和分配。 SECTIONS伪指令语法 SECTIONS { name:[property, property,…] name:[property, property,…] name:[property, property,…] } (介绍略) SECTIONS伪指令语法 所有的COFF文件都包含以下3种形式的段: .text、.data和.bss段 .text段:通常包含可执行代码 .data段:通常包含初始化数据 .bss段:通常为未初始化变量保留存储空间 此外汇编器和连接器可以建立、命名和连接自定义段。 C/C++常用段名 (a) 初始化段 .cinit 包含C/C++程序的静态、全局变量初始化表格,通常 在ROM中 .const 包括静态、全局初始化常数变量 .pinit 包括C/C++程序的全局结构列表 .text 包含可执行代码和常数 .switch 包含Switch 声明表,通常在ROM中 (b) 未初始化段(通常在RAM) .bss 包含静态、全局变量, .stack 包含堆栈 .sysmem 为malloc函数保留空间 C55x连接命令文件缺省分配 /*如果不提供.cmd,连接器可以给出缺省的连接命令文件*/ 举例说明.cmd的编写 MEMORY /*in bytes*/ { PAGE 0 MMR : origin = 0000000h, length = 00000c0h SPRAM : origin = 00000c0h, length = 0000040 VECS : origin = 0000100h, length = 0000100h DARAM0 : origin = 0000200h, length = 0007E00h DARAM1 : origin = 0008000h, length = 0008000h /*addresses above are on-chip RAMs*/ CE0: o=0010000h,l=03f0000h /* for ZBTRAM */ CE1: o=0400000h,l=0400000h /* for Flash,UARTA/UARTB,USB registers */ CE2: o=0800000h, l=0400000h /* for SDRAM on board*/ CE3: o=0c00000h, l=03f8000h /* for SDRAM on board*

文档评论(0)

4477769 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档