程序开发工具及CMD文件PPT课件_第1页
程序开发工具及CMD文件PPT课件_第2页
程序开发工具及CMD文件PPT课件_第3页
程序开发工具及CMD文件PPT课件_第4页
程序开发工具及CMD文件PPT课件_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2020/7/12,DSP原理及应用,1,程序开发工具及CMD文件,内容提要 可编程DSP芯片开发需要一套完整的软、硬件开发工具。通常可分成代码生成工具和代码调试工具两大类。 代码生成工具是指将高级语言或汇编语言编写的DSP程序转换成可执行的DSP芯片目标代码的工具程序,主要包括汇编器、链接器和C编译器以及一些辅助工具程序等。 代码调试工具包括C/汇编语言源码调试器、仿真器等。,2020/7/12,DSP原理及应用,2,程序开发工具及CMD文件,软件开发过程,F28x的应用软件开发主要完成以下工作: 选择编程语言编写源程序 提供2种编程语言,即汇编语言和C/C+语言。 对于完成一般功能的代码,

2、这两种语言都可使用,但对于一些运算量很大的关键代码,最好采用汇编语言来完成,以提高程序的运算效率。 (2) 选择开发工具和环境 集成开发环境CCS。,2020/7/12,DSP原理及应用,3,程序开发工具及CMD文件,软件开发过程,1. 应用软件开发流程,应用软件的开发可在TI公司提供的开发环境中进行,用户可以用C/C+语言或汇编语言编写源文件,经C编译器、汇编器生成COFF格式的目标文件,再用链接器进行链接,生成在可执行的目标代码,然后利用调试工具对可执行的目标代码进行仿真和调试。 当调试完成后,通过Hex代码转换工具,将调试后的可执行目标代码转换成EPROM编程器能接受的代码,并将该代码固

3、化到EPROM中或加载到用户的应用系统中,以便DSP目标系统脱离计算机单独运行。,2020/7/12,DSP原理及应用,4,程序开发工具及CMD文件,开发工具,(1)代码生成工具:, C编译器:用来将C/C+语言源程序自动编译为C54x的汇编语言源程序。 汇编器:用来将汇编语言源文件汇编成机器语言COFF目标文件。 链接器:将汇编生成的、可重新定位的COFF目标模块组合成一个可执行的COFF目标模块。 文档管理器:允许用户将一组文件(源文件或目标文件)集中为一个文档文件库。,2020/7/12,DSP原理及应用,5,程序开发工具及CMD文件,开发工具,(2)代码调试工具:, C/汇编语言源码调

4、试器:与软件仿真器、评价模块、软件开发系统、软件仿真器等配合使用。 软件仿真器:是一种模拟DSP芯片各种功能并在非实时条件下进行软件调试的调试工具,它不需目标硬件支持,只需在计算机上运行。,2020/7/12,DSP原理及应用,6,程序开发工具及CMD文件,开发工具,(2)代码调试工具:, 软件开发系统SWDS:是一块PC插卡,可提供低成本的评价和实时软件开发,还可用来进行软件调试,程序可在DSP芯片上实时运行。 可扩展的开发系统仿真器(XDS510):可用来进行系统级的集成调试,是进行DSP芯片软硬件开发的最佳工具。 评价模块EVM板:是一种低成本的开发板,可进行DSP芯片评价、性能评估和有

5、限的系统调试。,2020/7/12,DSP原理及应用,7,程序开发工具及CMD文件,4.2 汇编语言程序的编辑、汇编和链接过程,汇编语言源程序可以在任何一种文本编辑器中进行。如笔记本、WORD、EDIT、TC等。 当汇编语言源程序编写完成后,还必须经过汇编和链接后才能运行。,2020/7/12,DSP原理及应用,8,程序开发工具及CMD文件,程序的编辑、汇编和链接过程,示意图,2020/7/12,DSP原理及应用,9,程序开发工具及CMD文件,汇编器包括如下功能:, 将汇编语言源程序汇编成一个可重新定位的目标文件(.obj文件)。 根据需要,可以生成一个列表文件(.lst文件),并对该列表进行

6、控制。 将程序代码分成若干个段,每个段的目标代码都有一个SPC(段程序计数器)管理。,2020/7/12,DSP原理及应用,10,程序开发工具及CMD文件,3. 链接,所谓链接,就是根据链接器命令文件(.cmd)对已汇编过的一个或多个目标文件(.obj)进行链接,生成输出文件(.out)和存储器映像文件(.map) 。,2020/7/12,DSP原理及应用,11,程序开发工具及CMD文件,4.5 链接器的使用,链接器的主要任务是根据链接命令文件(.cmd),将一个或多个COFF目标文件链接起来,生成存储器映像文件(.map)和可执行的输出文件(.out)。,在链接过程中,链接器将各个目标文件合

7、并,并完成以下工作:,将各个段配置到目标系统的存储器。 对各个符号和段进行重新定位,并给它们指 定一个最终的地址。 解决输入文件之间未定义的外部引用。,2020/7/12,DSP原理及应用,12,COFF的一般概念,COFF的一般概念,汇编器和链接器生成的目标文件,是一个可以由F28X器件执行的文件。这些目标文件的格式称之为公共目标文件格式(COFF)。,在编写汇编语言程序时,COFF采用代码段和数据段的形式,以便于模块化的编程,使编程和管理变得更加方便。 这些代码段和数据段简称为段。汇编器和链接器提供一些伪指令来建立和管理各种各样的段。,2020/7/12,DSP原理及应用,13,COFF的

8、一般概念,COFF的一般概念,COFF文件的基本单元,COFF文件有3种类型:COFF0、COFF1、COFF2。,每种类型的COFF文件,其标题格式都有所不同,但数据部分是相同的。,链接器能够读/写所有类型的COFF文件,默认时链接器生成的是COFF2文件.,2020/7/12,DSP原理及应用,14,COFF文件的基本单元,COFF文件的基本单元,1. 段(sections),是COFF文件中最重要的概念。每个目标文件都分成若干段。,段是存储器中占据相邻空间的代码或数据块。一个目标文件中的每个段都是分开的和各不相同的。,COFF目标文件都包含以下3种形式的段: .text 段(文本段),通

9、常包含可执行代码; .data 段(数据段),通常包含初始化数据; .bss 段(保留空间段),通常为未初始化变量保留存储空间。,2020/7/12,DSP原理及应用,15,COFF文件的基本单元,COFF文件的基本单元,2. 段的基本类型,COFF目标文件中的段有两种基本类型。, 初始化段 未初始化段,(1) 初始化段,初始化段中包含有数据或程序代码。主要有: .text段已初始化段; .data段已初始化段; .sect段已初始化段,由汇编器伪指令建立 的自定义段。,2020/7/12,DSP原理及应用,16,COFF文件的基本单元,COFF文件的基本单元,2. 段的基本类型,COFF目标

10、文件中的段有两种基本类型。,(2) 未初始化段,在存储空间中,为未初始化数据保留存储空间。 它包括: .bss段未初始化段; .usect段未初始化段,由汇编命令建立的命 名段(自定义段)。,2020/7/12,DSP原理及应用,17,COFF文件的基本单元,COFF文件的基本单元,3. 段与目标存储器的对应关系,汇编器的任务:在汇编过程中,根据汇编命令用适当的段将各部分程序代码和数据连在一起,构成目标文件。,2020/7/12,DSP原理及应用,18,汇编器对段的处理,汇编器对段的处理,汇编器对段的处理是通过段伪指令来区别各个段的,并将段名相同的语句汇编在一起。 汇编器有5条伪指令可识别汇编

11、语言程序的各个部分:, .bss .usect .text .data .sect,定义未初始化段 定义未初始化段 定义已初始化段 定义已初始化段 定义已初始化段,2020/7/12,DSP原理及应用,19,汇编器对段的处理,汇编器对段的处理,未初始化段就是在C54x存储器中保留空间,通常它们被定位在RAM区。在目标文件中,这些段中没有确切的内容。 由这些段定义的空间仅作为临时存储空间,在程序运行时,可以利用这些存储空间存放变量。 未初始化段分为默认的和命名的两种,分别由汇编器伪指令.bss和.usect产生。,1. 未初始化段,2020/7/12,DSP原理及应用,20,汇编器对段的处理,(

12、1) .bss伪指令,1. 未初始化段,用于在bss段中保留若干个空间。 格式: .bss 符号, 字数,符号对应于保留的存储空间第一个字的变量名称。 可以让其他段引用,也可以用.global命令定义为全 局符号。,字数表示在bss段或标有名字的段中保留若干个存储单元。,每调用一次.bss伪指令,汇编器在相应的段保留更多的空间。,2020/7/12,DSP原理及应用,21,汇编器对段的处理,汇编器对段的处理,已初始化段中包含有可执行代码或初始化数据。 这些段中的内容都在目标文件中,当加载程序时再放到存储器中。每个已初始化段都是可以重新定位的,并且可以引用其他段中所定义的符号。链接器在链接时会自

13、动地处理段间的相互引用。 已初始化段由.text、.data和.sect三个伪指令建立。,2. 已初始化段,2020/7/12,DSP原理及应用,22,汇编器对段的处理,已初始化命令的句法:,2. 已初始化段,.text 段起点 .data 段起点 .sect “段名”,段起点,段起点是任选项。 若选用,它为段程序计数器SPC定义一个起始值。 若默认,则SPC从0开始。,2020/7/12,DSP原理及应用,23,段命令应用举例,【例】段命令应用举例。,汇编语言源程序:,.data coeff .word 044h,055h,066h .bss buffer,8 prt .word 0456h

14、 .text add: LD 0Dh,A aloop:SUB #1,A BC aloop,AGEQ .data ivals .word 0CCh,0DDh,0EEh,;初始化数据段 ;3组数据放入.data段 ;在.bss段保留8个单元 ;0456h放入.data段 ;初始化文本段 ;1字指令 ;2字指令 ;2字指令,共计5个字,;初始化数据段 ;3组数据放入.data段,2020/7/12,DSP原理及应用,24,段命令应用举例,汇编语言源程序:,var2 .usect “newvars”,2 inbuf .usect “newvars”,8 .text mpy: LD 0Ah,B mloo

15、p: MPY #0Ah,B BC mloop,BNOV .sect “vectors” .word 044h,088h,;建立newvars命名段,保留2个单元 ;在newvars段保留8个单元 ;初始化文本段 ;1字指令 ;2字指令 ;2字指令,共计5个字,;建立vectors命名段 ;2组数据放入vectors命名段,2020/7/12,DSP原理及应用,25,段命令应用举例,经汇编后,得列表文件(部分):,2 * 3 * 汇编一个初始化表到.data段 * 4 * 5 0000 .data 6 0000 0044 coeff .word 044h,055h,066h 0001 0055

16、0002 0066 7 * 8 * 在.bss段中为变量保留空间 * 9 * 10 0000 .bss buffer,8 11 * 12 * 仍然在.data 段中 * 13 * 14 0003 0456 prt .word 0456h,2020/7/12,DSP原理及应用,26,段命令应用举例,15 * 16 * 汇编代码到.text段 * 17 * 18 0000 .text 19 0000 100d add: LD 0Dh,A 20 0001 f010 aloop: SUB #1, A 0002 0001 21 0003 f842 BC aloop,AGEQ 0004 0001 22 *

17、 23 * 汇编另一个初始化表到.data 段 * 24 * 25 0004 .data 26 0004 00cc ivals .word 0CCh,0DDh,0EEh 0005 00dd 0006 00ee 27 * 28 * 为更多的变量定义另一个段 * 29 * 30 0000 var2 .usect “newvars”,2 31 0001 inbuf .usect “newvars”,8,2020/7/12,DSP原理及应用,27,段命令应用举例,32 * 33 * 汇编更多代码到.text段 * 34 * 35 0005 .text 36 0005 110a mpy: LD 0Ah,

18、B 37 0006 f166 mloop MPY #0Ah,B 0007 000a 38 0008 f868 BC mloop,BNOV 0009 0006 39 * 40 * 为中断向量.vectors定义一个自定义段 * 41 * 42 0000 .sect “vectors” 43 0000 0044 .word 044h,088h 0001 0088,源程序的行号,段程序 计数器,目标 代码,汇编语言 源程序,2020/7/12,DSP原理及应用,28,段命令应用举例,汇编语言源程序经过汇编后,共建立了5个段: .text段文本段,段内有10个字可执行 的程序代码。 .data段已初始

19、化的数据段,段内有7 个字的数据。 vectors段用.sect命令生成的命名段, 段内有2个字的初始化数据。 .bss段未初始化的数据段,在存储器中 为变量保留8个存储单元。 newvars段用.usect命令建立的命名段, 为变量保留10个存储单元。,2020/7/12,DSP原理及应用,29,段命令应用举例,经汇编后,得列表文件(部分):,2 * 3 * 汇编一个初始化表到.data段 * 4 * 5 0000 .data 6 0000 0044 coeff .word 044h,055h,066h 0001 0055 0002 0066 7 * 8 * 在.bss段中为变量保留空间 *

20、 9 * 10 0000 .bss buffer,8 11 * 12 * 仍然在.data 段中 * 13 * 14 0003 0456 prt .word 0456h,5 0000 .data,6 0000 0044 coeff .word 044h,055h,066h,10 0000 .bss buffer,8,14 0003 0456 prt .word 0456h,.data,6,0044,6,0055,6,0066,10,.bss,没有数据 保留8个字,14,0456,2020/7/12,DSP原理及应用,30,段命令应用举例,15 * 16 * 汇编代码到.text段 * 17 *

21、 18 0000 .text 19 0000 100d add: LD 0Dh,A 20 0001 f010 aloop: SUB #1, A 0002 0001 21 0003 f842 BC aloop,AGEQ 0004 0001 22 * 23 * 汇编另一个初始化表到.data 段 * 24 * 25 0004 .data 26 0004 00cc ivals .word 0CCh,0DDh,0EEh 0005 00dd 0006 00ee 27 * 28 * 为更多的变量定义另一个段 * 29 * 30 0000 var2 .usect “newvars”,2 31 0001 in

22、buf .usect “newvars”,8,.text,18 0000 .text,19 0000 100d add: LD 0Dh,A,19,100d,20 0001 f010 aloop: SUB #1, A,20,f010,20,0001,21 0003 f842 BC aloop,AGEQ,21,f842,21,0001,25 0004 .data,26 0004 00cc ivals .word 0CCh,0DDh,0EEh,.data,26,00cc,26,00dd,26,00ee,30 0000 var2 .usect “newvars”,2,newvars,30,保留2个字,

23、31 0001 inbuf .usect “newvars”,8,31,保留8个字,2020/7/12,DSP原理及应用,31,段命令应用举例,32 * 33 * 汇编更多代码到.text段 * 34 * 35 0005 .text 36 0005 110a mpy: LD 0Ah,B 37 0006 f166 mloop MPY #0Ah,B 0007 000a 38 0008 f868 BC mloop,BNOV 0009 0006 39 * 40 * 为中断向量.vectors定义一个自定义段 * 41 * 42 0000 .sect “vectors” 43 0000 0044 .wo

24、rd 044h,088h 0001 0088,35 0005 .text,.text,36 0005 110a mpy: LD 0Ah,B,36,110a,37 0006 f166 mloop MPY #0Ah,B,37,f168,37,000a,38 0008 f868 BC mloop,BNOV,38,f868,38,0006,42 0000 .sect “vectors”,vectors,43 0000 0044 .word 044h,088h,43,0044,43,0088,2020/7/12,DSP原理及应用,32,链接器对段的处理,链接器对段的处理,链接器是开发DSP器件必不可少的

25、开发工具之一,它对段处理时有2个主要任务: 将一个或多个COFF目标文件中的各种段作为链接器的输入段,经链接后在一个执行的COFF输出模块中建立各个输出段; 在程序装入时对其重新定位,为各个输出段选定存储器地址。,2020/7/12,DSP原理及应用,33,链接器对段的处理,链接器对段的处理,链接器有2条伪指令支持上述任务:, MEMORY伪指令用来定义目标系统的存储器配置空间,包括对存储器各部分命名,以及规定它们的起始地址和长度。 SECTIONS伪指令用来指定链接器将输入段组合成输出段方式,以及输出段在存储器中的位置,也可用于指定子段。 若未使用伪指令,则链接器将使用目标处理器默认的方法将

26、段放入存储空间。,2020/7/12,DSP原理及应用,34,链接器对段的处理,4.5.2 链接器命令文件的编写与使用,链接命令文件用来为链接器提供链接信息,可将链接操作所需的信息放在一个文件中,这在多次使用同样的链接信息时,可以方便地调用。 在链接命令文件中,可使用MEMORY和SECTIONS伪指令,为实际应用指定存储器结构和地址的映射。 MEMORY用来指定目标存储器结构。 SECTIONS用来控制段的构成与地址分配。,2020/7/12,DSP原理及应用,35,链接器命令文件举例,【例】 链接器命令文件举例。,a.obj b.obj /* 输入文件名 */ -o prog.out /*

27、指定输出文件的选项*/ -m prog.map /*指定map文件的选项*/ MEMORY /*MEMORY 伪指令*/ PAGE 0: ROM:origin=1000h, length=0100h PAGE 1: RAM:origin=0100h, length=0100h SECTIONS /*SECTIONS伪指令*/ .text : ROM .data : ROM .bss : RAM ,2020/7/12,DSP原理及应用,36,MEMORY指令,4.5.4 MEMORY指令,MEMORY指令用来规定目标存储器的结构。 在实际的应用中,目标系统所配置的存储器是各不相同的,通过MEMO

28、RY指令,可以进行各种各样的存储器配置。,MEMORY指令的句法:,MEMORY PAGE0:name 1(attr):origin=constant, length=constant; PAGEn:name n(attr):origin=constant, length=constant; ,指令字,存储区间说明语句,书写方式: 已大写MEMORY指令字开始; 由大括号括起来的存储器区间说明。,存储区间:,存储页面,区间名称,区间属性,起始地址,区间长度,2020/7/12,DSP原理及应用,37,MEMORY指令,4.5.4 MEMORY指令,存储区间说明语句:,PAGE: 指定存储器空间

29、页面,最多为255页, 取决于目标存储器的配置。 每一个PAGE代表一个完全独立的地址空间。 通常,PAGE 0用于程序存储器; PAGE 1用于数据存储器。 若没有规定PAGE,则链接器默认为PAGE 0。,2020/7/12,DSP原理及应用,38,MEMORY指令,4.5.4 MEMORY指令,存储区间说明语句:,name: 存储器区间名称。可由用字母、$、.、_ 等组成。 存储器区间为内部记号,因此不需要保留在输出文件或者符号表中。 不同PAGE上的存储器区间可以取相同的名字,但在同一PAGE内的名字不能相同,且不许重叠配置。,2020/7/12,DSP原理及应用,39,MEMORY指

30、令,4.5.4 MEMORY指令,存储区间说明语句:,attr: 为任选项,用来为命名的存储器区间规 定14个属性。 当对输出段定位时,可利用属性限制输出段分配到一定的存储区间。 属性选项共有4项: R 规定可以对存储器执行读操作。 W 规定可以对存储器执行写操作。 X 规定存储器可以装入可执行的程序代码。 I 规定可以对存储器进行初始化。,若未选属性,可将输出段不受限制地定位到任何一个存储器的位置。 任何一个没有规定属性的存储器(包括所有默认方式的存储器)都有全部4项属性。,2020/7/12,DSP原理及应用,40,MEMORY指令,4.5.4 MEMORY指令,存储区间说明语句:,ori

31、gin: 用来指定存储区间的起始地址,可简 写为org或o。其值以字为单位,可以 用十进制、八进制或十六进制数表示。,Length: 用来指定存储器空间的长度,可简写 为len或l,其值以字为单位,可以用 十进制、八进制或十六进制数表示。,2020/7/12,DSP原理及应用,41,MEMORY指令,4.5.4 MEMORY指令,存储区间说明语句:,fill: 为任选项。用来为没有定位输出段的存储 器空单元充填一个数,键入fill或f均可。 该值是2个字节的整型常数,可以是十进制 数、八进制数或十六制数。,2020/7/12,DSP原理及应用,42,MEMORY指令编写,【例】用MEMORY伪

32、指令编写连接命令文件。要求: 程序存储器:4K字ROM,起始地址为C00h,取名为ROM。 数据存储器:32字RAM,起始地址为60h,取名为SCR。 512字RAM,起始地址为80h,取名为CHIP。,file1.obj fiel2.obj -o Prog.out MEMORY PAGE 0: ROM: origin=C00h, length=1000h PAGE 1: SCR: origin=60h, length=20h CHIP: origin=80h, length=200h ,两个输入文件,链接命令选项,指令字,页面名称,区间名称,起始地址,区间长度,2020/7/12,DSP原理

33、及应用,43,【例4.5.2】用MEMORY伪指令编写连接命令文件。,file1.obj fiel2.obj -o Prog.out MEMORY PAGE 0: ROM: org=C00h, len=1000h PAGE 1: SCR: org=60h, len=20h CHIP:org=80h, len=200h ,PAGE 0: ROM: org=C00h, len=1000h,00C00h,1000h,01C00h,ROM,PAGE 1: SCR: org=60h, len=20h,00060h,0007Fh,20h,SCR,CHIP:org=80h, len=200h,00080h,

34、200h,0027Fh,CHIP,2020/7/12,DSP原理及应用,44,SECTIONS指令,SECTIONS指令,用来控制段的构成与地址分配。,指令功能: 说明如何将输入段组合成输出段; 在可执行程序中定义输出段; 规定输出段在存储器中的存放位置; 允许重新命名输出段。,1. SECTIONS指令语法,2020/7/12,DSP原理及应用,45,SECTIONS指令语法,SECTIONS指令的句法:,SECTIONS name:property, property, property, name:property, property, property, name:property,

35、property, property, ,指令字,输出段 说明语句,段名:定义输出段的名称。,属性:定义该段的内容和存储器的分配。,段名,1. SECTIONS指令语法,属性,属性,属性,2020/7/12,DSP原理及应用,46,SECTIONS指令语法,1. SECTIONS指令语法,段属性用来定义输出段的内容和存储地址的分配。包括的内容如下:, 装入存储器分配 运行存储器分配 输入段 段的类型 充填值,2020/7/12,DSP原理及应用,47,SECTIONS指令语法,1. SECTIONS指令语法, 装入存储器分配 用于定义段装入时的存储器地址。,语法格式: load=allocat

36、ion 或 allocation 或 allocation,allocation: 关于段地址的说明,即给段分配存储 单元。,2020/7/12,DSP原理及应用,48,SECTIONS指令语法,1. SECTIONS指令语法, 装入存储器分配,例如: .text: load=0 x1000 .text: loadROM .bss: load(RW) .text: align=0 x80 .text: PAGE 0,将.text段定位到一个特定的地址。 将.text段定位到命名为ROM的存储区。 将.bss段定位到属性为R、W的存储区。 将.text段定位到从地址0 x80开始。 将.text

37、段定位到PAGE 0。,2020/7/12,DSP原理及应用,49,SECTIONS指令语法,1. SECTIONS指令语法, 装入存储器分配,若用到一个以上参数,可以将它们排成一行。 例如: .text: ROM (align(16)PAGE (2 ) 。,2020/7/12,DSP原理及应用,50,SECTIONS指令的使用,SECTIONS指令,2. SECTIONS指令的使用,【例】SECTIONS指令的使用。 file1.obj file2.obj -o Prog.out SECTIONS .text: load=ROM,run=800h .con: load=ROM .bss: l

38、oad=RAM .vec: load=FF80h t1.obj(.int1) t2.obj(.int2) endvec=.; .data: align=16 ,两个输入文件,链接命令选项,指令字,输 出 段 说 明 语 句,2020/7/12,DSP原理及应用,51,SECTIONS指令的使用,2. SECTIONS指令的使用,【例】SECTIONS指令的使用。 file1.obj file2.obj -o Prog.out SECTIONS .text: load=ROM,run=800h .con: load=ROM .bss: load=RAM .vec: load=FF80h t1.o

39、bj(.int1) t2.obj(.int2) endvec=.; .data: align=16 ,输出段,加载地址,运行地址,.text,ROM,RAM 800h,.con,ROM,.bss,RAM,.vec,ROM FF80,.data,RAM 16位边界,2020/7/12,DSP原理及应用,52,SECTIONS指令的使用,2. SECTIONS指令的使用,【例4.5.3】SECTIONS指令的使用。 file1.obj file2.obj -o Prog.out SECTIONS .text: load=ROM,run=800h .con: load=ROM .bss: load=

40、RAM .vec: load=FF80h t1.obj(.int1) t2.obj(.int2) endvec=.; .data: align=16 ,.text,.con,.bss,.vec,.data,FF80h,运行时,800h,.text,.text,.text,2020/7/12,DSP原理及应用,53,DSP F2812中MEMORY文件,MEMORY PAGE 0 : PRAMH0 : origin = 0 x3f8000, length = 0 x001000 PAGE 1 : /* SARAM */ RAMM0 : origin = 0 x000000, length = 0

41、 x000400 RAMM1 : origin = 0 x000400, length = 0 x000400 /* Peripheral Frame 0: */ DEV_EMU : origin = 0 x000880, length = 0 x000180 FLASH_REGS : origin = 0 x000A80, length = 0 x000060 CSM : origin = 0 x000AE0, length = 0 x000010 XINTF : origin = 0 x000B20, length = 0 x000020 CPU_TIMER0 : origin = 0 x

42、000C00, length = 0 x000008 CPU_TIMER1 : origin = 0 x000C08, length = 0 x000008 CPU_TIMER2 : origin = 0 x000C10, length = 0 x000008 PIE_CTRL : origin = 0 x000CE0, length = 0 x000020 PIE_VECT : origin = 0 x000D00, length = 0 x000100,2020/7/12,DSP原理及应用,54,/* Peripheral Frame 1: */ ECAN_A : origin = 0 x

43、006000, length = 0 x000100 ECAN_AMBOX : origin = 0 x006100, length = 0 x000100 /* Peripheral Frame 2: */ SYSTEM : origin = 0 x007010, length = 0 x000020 SPI_A : origin = 0 x007040, length = 0 x000010 SCI_A : origin = 0 x007050, length = 0 x000010 XINTRUPT : origin = 0 x007070, length = 0 x000010 GPI

44、OMUX : origin = 0 x0070C0, length = 0 x000020 GPIODAT : origin = 0 x0070E0, length = 0 x000020 ADC : origin = 0 x007100, length = 0 x000020 EV_A : origin = 0 x007400, length = 0 x000040 EV_B : origin = 0 x007500, length = 0 x000040 SPI_B : origin = 0 x007740, length = 0 x000010 SCI_B : origin = 0 x0

45、07750, length = 0 x000010 MCBSP_A : origin = 0 x007800, length = 0 x000040 /* CSM Password Locations */ CSM_PWL : origin = 0 x3F7FF8, length = 0 x000008 /* SARAM */ DRAMH0 : origin = 0 x3f9000, length = 0 x001000 ,2020/7/12,DSP原理及应用,55,F28X中SECTION文件,SECTIONS /* Allocate program areas: */ .reset : P

46、RAMH0, PAGE = 0 .text : PRAMH0, PAGE = 0 .cinit : PRAMH0, PAGE = 0 /* Allocate data areas: */ .stack : RAMM1, PAGE = 1 .bss : DRAMH0, PAGE = 1 .ebss : DRAMH0, PAGE = 1 .const : DRAMH0, PAGE = 1 .econst : DRAMH0, PAGE = 1 .sysmem : DRAMH0, PAGE = 1,2020/7/12,DSP原理及应用,56,/* Allocate Peripheral Frame 0 Register Structures: */ DevEmuRegsFile : DEV_EMU, PAGE = 1 FlashRegsFile : FLASH_REGS, PAGE = 1 CsmRegs

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论