第6章使用C语言操作DSP的寄存器0324选编.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
6.4.4 CMD文件的编写(分为2个步骤) 6.4 CMD文件 1. 通过MEMORY 伪指令来指示存储空间 MEMORY伪指令语法如下: MEMORY { PAGE0:name0[(attr)]:origin=constant,length=constant PAGEn:namen[(attr)]:origin=constant,length=constant } PAGE 用来标识存储空间的关键字。PAGEn的最大值为PAGE255。X281x的DSP中用到是PAGE0、PAGE1,其中PAGE0为程序空间,PAGE1为数据空间。(实际应用中一般分为2页) 6.4.4 CMD文件的编写 6.4 CMD文件 1. 通过MEMORY 伪指令来指示存储空间 name 代表某一属性或地址范围的存储空间名称。名称可以是1~8个字符,在同一页内名称不能相同,不同页内名称可以相同。 attr 用来规定存储空间的属性。共有4个属性,只读R,只写W,该空间可包含可执行代码X,该空间可以被初始化I。实际使用为了简化,通常会忽略此选项,表示存储空间具有所有的属性。 origin 用来定义存储空间的起始地址。 length 用来定义存储空间的长度。 6.4.4 CMD文件的编写 6.4 CMD文件 1. 通过MEMORY 伪指令来指示存储空间(举例) MEMORY { PAGE 0 : FLASH : origin = 0x3D8000, length = 0x01FF80 /* FLASH */ BEGIN : origin = 0x3F7FF6, length = 0x000002 ROM : origin = 0x3FF000, length = 0x000FC0 RESET : origin = 0x3FFFC0, length = 0x000002 RAML0 : origin = 0x008000, length = 0x001000 PAGE 1 : RAMM0 : origin = 0x000000, length = 0x000400 /* RAM M0 */ RAMM1 : origin = 0x000400, length = 0x000400 /* RAM M1 */ RAML1 : origin = 0x009000, length = 0x001000 /* RAM L1 */ RAMH0 : origin = 0x3F8000, length = 0x002000 /* RAM H0 */ } 6.4 CMD文件 6.4.4 CMD文件的编写 6.4 CMD文件 2. 通过SECTIONS 伪指令来将段分配到存储空间 (也就是指定段的实际硬件地址空间) SECTIONS { name:[property,property,property,…] name:[property,property,property,…] …… } SECTIONS伪指令语法如下: name 为输出段的名称;property 为输出段的属性。 6.4.4 CMD文件的编写 6.4 CMD文件 输出段的属性主要有以下几个: load 定义输出段将被装载到哪里的关键字,其语法: load = allocation 或者 allocation 或者 allocation 其中,allocation可以是绝对地址,如“load=0x000400”;更多的时候,allocation是存储空间的名称,这也是最通常的用法。 run 定义输出段从哪里运行的关键字,其语法: run = allocation 或者 runallocation CMD文件规定,当只出现一个关键字load或者run时,表示load地址和run地址是重叠的,大部分时候都是重叠的。 PAGE 定义段分配到存储空间的类型,其语法: PAGE=0或者PAGE=1,前者说明段分配到程序空间,后者说明段分配到数据空间。 6.4.4 CMD文件的编写 6.4 CMD文件 2. 通过SECTIONS 伪指令来将段分配到存储空间 根据输出段的属性,SECTIONS伪指令语法就可以如下: SECTIONS { name 0 : 存储空间名称, PAGE = 页数 name n : 存储空间名称, PAGE = 页数 } name :编译器输出段的名称。 存储空间名称:采用MEMORY伪指令指示的存储器空间名称。 PAGE :前面存储器空间名称对应的存储器页。 6.4.4 CMD文件的编写 6.4 CMD文件 2. 通过SECTIONS 伪指令来将段分配到存储空间(举例) SECTIONS { .c

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

我是一名原创力文库的爱好者!从事自由职业!

1亿VIP精品文档

相关文档