CCS软件教程PPT课件

上传人:深*** 文档编号:90386741 上传时间:2022-05-14 格式:PPTX 页数:99 大小:2.64MB
收藏 版权申诉 举报 下载
CCS软件教程PPT课件_第1页
第1页 / 共99页
CCS软件教程PPT课件_第2页
第2页 / 共99页
CCS软件教程PPT课件_第3页
第3页 / 共99页
资源描述:

《CCS软件教程PPT课件》由会员分享,可在线阅读,更多相关《CCS软件教程PPT课件(99页珍藏版)》请在装配图网上搜索。

1、第1页/共99页1 CCStudio 主程序安装 第1步:找CCS SETUP.EXE应用程序的图标。双击该图标。 第2页/共99页第2步:点击NEXT接钮 第3页/共99页第3步:选择I ACCEPT后,再点击NEXT按钮 第4页/共99页第4步:选择默认典型安装, “Typical install”图标, 第5页/共99页选择安装路径后,点击Next,注意路径不能包含中文 第6页/共99页第5步:点击Install Now开始安装 第7页/共99页第8页/共99页安装结束后出现如下图的告警界面,提示要求安装Perl V5.8版本,不必担心,点击确定即可第9页/共99页第7步:安装完成 第1

2、0页/共99页安装补丁版本 安装升级补丁包双击安装后,会出现以下界面,点击Next:第11页/共99页出现如下图所示界面,选择 ActiveState Perl58,点击Next第12页/共99页然后一路点击Next,直到开始安装。第13页/共99页安装补丁版本 (2)安装浮点支持库setup_C28XFPU_CSP_v31.3.1207 (3)安装烧写插件F2823x_RevA_CSP.exe (4)更新Code Gernerator,将安装在CCStudio_v3.3C2000cgtools目录下,安装过程中选择“Yes to all”全部覆盖。覆盖结果可在component manage

3、r中选择“Build Tools”进行查看,覆盖成功应为“texas instruments c2000 code genertion tools ”项前面打勾 (5)安装仿真器USB驱动和仿真器驱动。第14页/共99页第15页/共99页2让CCS工作在软件仿真环境 (Simulator) CCS可以工作在纯软件仿真环境中,就是由CCS在PC机内存中构造一个虚拟的DSP环境,可以调试、运行程序。但一般软件无法构造DSP中的外设,所以软件仿真通常用于调试算法和进行效率分析等。在使用软件仿真方式工作时,无需连接板卡和仿真器等硬件。 第16页/共99页单击桌面上“Setup CCStudio v3.

4、3”图标, 进入 CCS设置窗口。第17页/共99页在设置界面的中间栏目中分别对Family和Platform项进行设置。 第18页/共99页第19页/共99页然后会在在设置栏的左侧出现添加的软件仿真平台,选择F2812 Device Simulator点击右键会出现如图所示对话框,可以设置配置文件。第20页/共99页选择CPU点击右键会出现如图所示对话框,可以设置GEL文件。第21页/共99页点击“Save&Quit”出现对话框后,选择Yes。第22页/共99页第23页/共99页第24页/共99页CCS闯关小游戏 第一关 找到“Load Program”在那个菜单栏下,以及其快捷键是什么?第

5、25页/共99页第二关 新建一个工程是通过那个菜单栏中的那一项实现的?第26页/共99页第三关 在调试中所用到的“Step Into、Step over、Run”的快捷键是什么?第27页/共99页第四关 Watch Window在那个菜单栏下,对应着工具栏中的哪一个图标?第28页/共99页第五关 打开提供的工程,回答以下问题: 工程的后缀名是什么? 工程中包含哪几类文件? 如何编译工程,快捷键及工具栏图标是什么?第29页/共99页第六关 加载编译生成的.out文件,回答以下问题: 如何设置断点? 设置断点后,点击Run(运行)结果如何?第30页/共99页3 让CCS工作在硬件仿真环境(Emul

6、ator) 先删除当前的系统设置第31页/共99页选择硬件仿真F2812芯片驱动 第32页/共99页第33页/共99页找到开发板相关F2812的配置文件,路径如下所示:第34页/共99页路径设置完之后,点击OK即可第35页/共99页添加完成。第36页/共99页 CCS已经被设置成Emulator的方式(用仿真器连接硬件板卡的方式),并且指定通过TDS510-USB2 仿真器连接EX-DSP-EXP III+试验箱。 第37页/共99页4 集成调试环境介绍完成对系统的配置之后,给实验开发板供电,双击快捷键“CCStudio 3.3”,即可进入集成调试环境。 系统为未连接状态 第38页/共99页把

7、CCS软件和F2812芯片连接在一起,然后才能对F2812 芯片进行控制。 第39页/共99页确认CCS和F2812连接是否成功 第40页/共99页注意: 在实验箱使用结束后,必须按照以下步骤进行操作: 1 先断开链接 2 关闭CCS 3 关闭实验箱电源第41页/共99页集成调试环境的组成:1. 集成调试环境的标题栏(/F2812 XDS510 Emulator/CPU_1F28xxCode Composer Studio)。2. 菜单栏(File、Edit、View)。3. 工作窗口区(Files、Diassembly、CPU)4. 系统连接状态。第42页/共99页 第43页/共99页菜单及

8、功能介绍CCS3.3不能直接由汇编源代码或C语言源代码文件建立(Build)生成DSP可执行代码,必须使用项目(Project)来管理整个设计过程。项目文件保存在磁盘中后缀为.pjt文件。 第44页/共99页1.项目菜单(1)Project/New:新建一个项目,将该项目保存至新建项目文件夹里面。(2)Project/Open : 打开一个已有的项目。(3)Project/Add Files to Project:添加文件到该项目中。 第45页/共99页可以添加到项目中的文件的扩展名: *.C: C源文件,项目管理对这一类文件进行编译和链接。*.ASM: 汇编源文件,项目管理对这一类文件进行汇

9、编和链接。*.OBJ:目标文件,项目管理对这一类文件进行链接。*.LIB :库文件,项目管理对这一类文件进行链接。*.CMD:链接命令文件,项目管理在链接各个文件时根据此文件分配系统程序空间、数据空间。第46页/共99页注意对头文件和在程序中用包含文件(include)引用的文件,项目管理程序会自动地加入到项目中。项目管理不允许用户添入其它类型的文件。 第47页/共99页(4)Project/Save:保存一个已打开的项目。(5)Project/Close:关闭一个已打开的项目。(6)Project/Add Files to Project:添加所有用到的文件和所需的库文件到该项目中。(7)P

10、roject/Compile Files:对项目中的C语言和汇编语言源代码文件进行编译。(8)Project/Build:对项目进行编译、汇编和链接,生成可执行文件,执行文件的后缀为.OUT。对于以前编译过到目前为止还没有修改过的源文件不重新编译。第48页/共99页(9)Project/Rebuild All:对项目重新进行一次编译、汇编和链接,生成可执行文件.OUT,不论是否修改过都编译一次。(10)Project/Stop Build:停止对项目的编译、汇编和链接。(11)Project/Show Project Dependencies:显示该项目中所有用到的文件和所需的库文件。(12)

11、Project/Scan All File Dependencies:详细查看该项目中所有用到的文件和所需的库文件。(13)Project/Recent Project Files:显示最近打开过的项目。第49页/共99页(14)Project/Build Options:对编译器、汇编器、和链接器的参数进行配置。可以配置寄存器优先调试,特定函数优先调试,或某个子程序优先调试等选项。编译器设置对话框第50页/共99页2.观察菜单(1)View/Disassembly:观察反汇编程序窗口。当DSP可执行程序COFF文件载入目标系统后,CCS将自动打开一个反汇编窗口,反汇编窗口根据存储器的内容显示

12、反汇编指令和符号信息。第51页/共99页(2)View/Memory:观察存储器窗口。 第52页/共99页Address:输入需要观察的存储器的起始地址;QValue):填0,出现的存储器窗口中的显示值就是实际值;若填其它数,出现的存储器窗口中的显示值不是实际值;Format:下拉菜单中有不同的格式;存储器的显示格式:16进制、2进制等IEEE浮点格式显示时,则选中使用IEEE浮点格式“Use IEEE Float”;Page:下拉菜单中,可以选择显示的存储器的类型:如程序存储器(Program)、数据存储器(Data) 和I/O空间;第53页/共99页(3)View/Registers:包含

13、“CPU”、“Status”两个选项,点击相应的选项可以观察调试过程中CPU寄存器和状态(Status)寄存器各个状态位的变化情况。(4)View/Peripherals:点击可以观察调试过程中外设模块寄存器的变化情况。(5)View/Mixed Source:选择此选项则能同时显示C语言代码及与之关联的反汇编代码(反汇编代码位于C语言代码下方)。若需要取消此功能,只要再次点击此选项即可。第54页/共99页(6)View/Watch Window:观察调试过程中的变量,C表达式的值,地址空间和寄存器的值。第55页/共99页 Watch Window:加入一个新的表达式:在观察窗中的名字(Nam

14、e)中直接输入要观察的变量名,或者在程序窗口中选中要观察的变量名,然后点击右键,再点击加到观察窗(Add to Watch Window)即可。删除一个表达式:用鼠标点击要删除的表达式,单击鼠标右键,在弹出的对话框中选择删除选择项(Delete Selected Item(s)。如果添加变量时,在“添加变量对话框”的文本栏中只是输入变量名,则在观察窗中只显示出该变量的地址;如果需要显示该变量的值,则需要在变量名前加*号。第56页/共99页3.调试菜单(1)Debug/Breakpoints:断点设置。设置断点:最简单的方法是用鼠标左键点击需要设置断点的程序处,再点击鼠标右键,从弹出的对话框中选

15、择“Toggle breakpoint”即可;去掉断点:用鼠标左键点击相应的断点处,再点击鼠标右键,从弹出的对话框中再次选择“Toggle breakpoint”即可。第57页/共99页(1)Debug/Probe Points:探测点设置。在设置探测点的地方,可以将主机文件的数据读到DSP目标系统的存储器,或将DSP目标系统存储器的数据写入主机的文件中。(2)Debug/Step Into (快捷键为F8):单步执行。单步执行程序,如果运行到调用函数处,则跳入调用的程序继续单步执行。(3)Debug/Step Over(快捷键为F10):单步执行。单步执行程序,但与Step Into不同的是

16、,不进入调用的程序(子程序、中断服务程序),即该命令一步执行完被调用的程序。(4)Debug/Step Out:跳出子程序。当使用Step Into或Step Over单步执行指令时,如果程序运行到一个子程序中,执行该命令将使程序执行完函数或子程序后,回到调用的地方。第58页/共99页(5)Debug/Run(快捷键为F5):执行程序到断点、探测点或用户中断(按系统机键盘上的ESC键中断)。(6)Debug/Halt(快捷键为Shift + F5):当执行Run时,用Halt来暂停程序的执行。(7)Debug/Reset CPU:对DSP进行复位。也复位DSP的目标系统,停止程序的执行,初始化

17、所有的寄存器。(8)Debug/Restart:将程序指针(PC)指向程序的起始地址。(9)Debug/Reset Emulator:对仿真器进行复位。第59页/共99页4 工作窗口区介绍常用工作窗口有:1. 文件(Files)窗口;2. 反汇编程序(Disassembly)窗口;3. CPU寄存器窗口;4. 存储器(Memory)窗口;5. 观察(Watch)窗口等。 第60页/共99页1.文件窗口 文件(Files)窗口包括:当前系统用到的GEL文件和项目。 GEL文件:包括缺省的f2812.gel文件。 项目:包括用户用到的头文件、用include定义的引用文件和用户建立或添加的C源文件

18、*.C、汇编源文件*.ASM、目标文件*.OBJ、库文件*.LIB和链接命令文件*.CMD。 第61页/共99页第62页/共99页2. 反汇编程序窗口 反汇编程序(Disassembly)窗口:用来显示程序的反汇编代码和程序存储器的内容。在这个窗口中,用一反显高亮条来表示当前程序指针。可用鼠标点击汇编语句的方法来设置断点,再点击一次,则取消断点。第63页/共99页3. CPU寄存器窗口CPU寄存器窗口:显示在程序调试过程中CPU寄存器(程序指针PC、累加器ACC、状态寄存器ST0和ST1、重复计数器RTC、辅助寄存器XAR0XAR7、中断使能寄存器IER和中断标志寄存器IFR等)的内容。若要改

19、变寄存器的内容,用鼠标点击要改变的寄存器,输入值后回车即可。第64页/共99页4. 状态寄存器窗口状态寄存器窗口:显示状态寄存器中的各个状态位:SXM、OVM、TC、C、Z、N、V、PM、OVC、INTM、DBGM、PAGE0、VMAP、SPA、LOOP、EALLOW、IDLESTAT、AMODE、OBJMODE、CNT、M0M1MAP、XF、ARP的状态。若要改变状态位内容,用鼠标点击需改变的状态位,输入值后回车即可。第65页/共99页5. 存储器窗口存储器(Memory)窗口:显示存储器的内容。存储器可为程序存储器、数据存储器和I/O空间。若要改变存储器内容,用鼠标点击需改变的存储器地址,

20、输入值后回车即可。注意:某些存储器的内容是不能改变。第66页/共99页 6. 观察窗口 观察(Watch)窗口:显示所选择的变量、寄存器和存储器的内容。第67页/共99页7. 建立状态窗口建立状态(Build)窗口:显示一些状态信息,如果在编译、汇编和连接过程中发现错误,则该窗口显示出错误类型和错误的位置。用户可根据此信息对发生错误的地方进行修改。点击错误信息处,光标就跳到程序中出错地方的对应位置。第68页/共99页5 用C编译器开发应用程序的步骤1. 书写4种类型的文件开发一个DSP的C语言应用程序,需要以下4种类型的文件:C/C+语言文件;汇编语言文件;头文件;命令文件。 第69页/共99

21、页注意4种类型的文件必须存储在同一个文件夹中。还需要把一个“rts2800 . lib”的库文件复制到该目录中。在默认情况下, rts2800 . lib文件可以在目录“C:CCStudio_v3.1C2000cgtoolslib”中找到。 第70页/共99页5.5 头文件和命令文件头文件头文件中定义:DSP系统用到的寄存器映射地址,用户用到的常量和用户自定义的寄存器,文件名的后缀为.H。 第71页/共99页命令文件.CMD命令文件:指定存储区域的分配。文件扩展名为 .CMD。 第72页/共99页文件DSP28_Adc.h DSP28_Adc.h#ifndef DSP28_ADC_H#defi

22、ne DSP28_ADC_H/ ADC 专用寄存器的位定义:struct ADCTRL1_BITS / 位描述 Uint16 rsvd1:4; / 位 30 保留位 Uint16 SEQ_CASC:1; / 位 4 级连排序器工作模式选择位 Uint16 rsvd2:1; / 位 5 保留位 Uint16 CONT_RUN:1; / 位 6 连续转换位 Uint16 CPS:1; / 位 7 模数转换时钟预分频位 Uint16 ACQ_PS:4; / 位 118 采样时间选择位 Uint16 SUSMOD:2; / 位 1312 仿真悬挂工作模式选择位 Uint16 RESET:1; / 位

23、14 模数转换复位位 Uint16 rsvd3:1; / 位 15 保留位;第73页/共99页union ADCTRL1_REG Uint16 all; struct ADCTRL1_BITS bit;第74页/共99页struct ADCTRL2_BITS / 位描述 Uint16 EVB_SOC_SEQ2:1; / 位 0 事件管理EVB对SEQ2产生SOC的屏蔽位 Uint16 rsvd1:1; / 位 1 保留位 Uint16 INT_MOD_SEQ2:1; / 位 2 SEQ2中断模式位 Uint16 INT_ENA_SEQ2:1; / 位 3 SEQ2 中断使能位 Uint16 r

24、svd2:1; / 位 4 保留位 Uint16 SOC_SEQ2:1; / 位 5 启动SEQ2的转换位 Uint16 RST_SEQ2:1; / 位 6 复位SEQ2 Uint16 EXT_SOC_SEQ1:1; / 位 7 外部信号对SEQ1的启动转换位 Uint16 EVA_SOC_SEQ1:1; / 位 8 事件管理EVA对SEQ1产生SOC的屏蔽位 Uint16 rsvd3:1; / 位 9 保留位 Uint16 INT_MOD_SEQ1:1; / 位 10 SEQ1 中断模式位 Uint16 INT_ENA_SEQ1:1; / 位 11 SEQ1 中断使能位 Uint16 rsv

25、d4:1; / 位 12 保留位 Uint16 SOC_SEQ1:1; / 位 13 启动SEQ1的转换位 Uint16 RST_SEQ1:1; / 位 14 复位SEQ 1 Uint16 EVB_SOC_SEQ:1; / 位 15 EVB SOC 使能位;第75页/共99页union ADCTRL2_REG Uint16 all; struct ADCTRL2_BITS bit;struct ADCCASEQSR_BITS / 位描述 Uint16 SEQ1_STATE:4; / 位30 SEQ1状态 Uint16 SEQ2_STATE:3; / 位62 SEQ2状态 Uint16 rsvd

26、1:1; / 位7 保留位 Uint16 SEQ_CNTR:4; / 位118 排序计数器状态位 Uint16 rsvd2:4; / 位1512 保留位 ;第76页/共99页union ADCCASEQSR_REG Uint16 all; struct ADCCASEQSR_BITS bit;struct ADCMAXCONV_BITS Uint16 MAX_CONV:7; / 位60 最大转化通道数位 Uint16 rsvd1:9; / 位157 保留位;union ADCMAXCONV_REG Uint16 all; struct ADCMAXCONV_BITS bit;struct AD

27、CCHSELSEQ1_BITS Uint16 CONV00:4; Uint16 CONV01:4; Uint16 CONV02:4; Uint16 CONV03:4;第77页/共99页union ADCCHSELSEQ1_REG Uint16 all; struct ADCCHSELSEQ1_BITS bit;struct ADCCHSELSEQ2_BITS Uint16 CONV04:4; Uint16 CONV05:4; Uint16 CONV06:4; Uint16 CONV07:4;union ADCCHSELSEQ2_REG Uint16 all; struct ADCCHSELSE

28、Q2_BITS bit;第78页/共99页struct ADCCHSELSEQ3_BITS Uint16 CONV08:4; Uint16 CONV09:4; Uint16 CONV10:4; Uint16 CONV11:4;union ADCCHSELSEQ3_REG Uint16 all; struct ADCCHSELSEQ3_BITS bit;struct ADCCHSELSEQ4_BITS Uint16 CONV12:4; Uint16 CONV13:4; Uint16 CONV14:4; Uint16 CONV15:4;union ADCCHSELSEQ4_REG Uint16 a

29、ll; struct ADCCHSELSEQ4_BITS bit;第79页/共99页struct ADCTRL3_BITS Uint16 SMODE_SEL:1; / 位 0 采样模式选择位 Uint16 ADCCLKPS:4; / 位 41 模数转换时钟分频器 Uint16 ADCPWDN:1; / 位 5 模数转换掉电位 Uint16 ADCBGRFDN:2; / 位 76 模数转换内部参考电压源电源选择位 Uint16 rsvd1:8; / 位 158 保留位; union ADCTRL3_REG Uint16 all; struct ADCTRL3_BITS bit;第80页/共99页

30、struct ADCST_BITS Uint16 INT_SEQ1:1; / 位 0 SEQ1 中断标志 Uint16 INT_SEQ2:1; / 位 1 SEQ2 中断标志 Uint16 SEQ1_BSY:1; / 位 2 SEQ1 忙状态位 Uint16 SEQ2_BSY:1; / 位 3 SEQ2 忙状态位s Uint16 INT_SEQ1_CLR:1; / 位 4 SEQ1 中断清零位 Uint16 INT_SEQ2_CLR:1; / 位 5 SEQ2中断清零位 Uint16 EOS_BUF1:1; / 位 6 排序缓冲器1的的末尾 Uint16 EOS_BUF2:1; / 位 7 排

31、序缓冲器1的的末尾 Uint16 rsvd1:8; / 位 158 保留位;union ADCST_REG Uint16 all; struct ADCST_BITS bit;第81页/共99页struct ADC_REGS union ADCTRL1_REG ADCTRL1; / 模数转换控制寄存器1 union ADCTRL2_REG ADCTRL2; / 模数转换控制寄存器2 union ADCMAXCONV_REG ADCMAXCONV; / 最大转换通道树寄存器 union ADCCHSELSEQ1_REG ADCCHSELSEQ1; / 通道选择排序控制寄存器l union ADC

32、CHSELSEQ2_REG ADCCHSELSEQ2; union ADCCHSELSEQ3_REG ADCCHSELSEQ3; union ADCCHSELSEQ4_REG ADCCHSELSEQ4; union ADCCASEQSR_REG ADCASEQSR; / 自动排序状态寄存器 Uint16 ADCRESULT0; / 转换结果缓冲寄存器 015 Uint16 ADCRESULT1; Uint16 ADCRESULT2; Uint16 ADCRESULT3; Uint16 ADCRESULT4; Uint16 ADCRESULT5; Uint16 ADCRESULT6; Uint1

33、6 ADCRESULT7; Uint16 ADCRESULT8; Uint16 ADCRESULT9; Uint16 ADCRESULT10; Uint16 ADCRESULT11; Uint16 ADCRESULT12; Uint16 ADCRESULT13; Uint16 ADCRESULT14; Uint16 ADCRESULT15; union ADCTRL3_REG ADCTRL3; / 模数转换控制寄存器3 union ADCST_REG ADCST; / 模数转换状态寄存器;第82页/共99页/ 模数转换外部参数函数声明extern volatile struct ADC_REG

34、S AdcRegs;#endif / DSP28_ADC_H 定义结束说明上述形式定义后,如果要对ADCTRL1付值value,则表达式为:value;如果要对ADCTRL1的某一位进行操作,如对ADCTRL1的复位位写入1,使ADC模块复位,则表达式为:1; 第83页/共99页1.命令文件常用的几种伪指令。段:编译器产生几个可以重新分配的代码块和数据块。它可以以各种模式分配到存储器中以符合多种系统配置。有两种基本的段类型:已初始化段和未初始化段。 第84页/共99页已初始化段:包含数据表或可执行的代码。编译器产生以下已初始化段:.text,.cinit,.const,.econst,.pin

35、it 和.switch。 第85页/共99页.text包含所有可执行的代码和常量。.cinit 包含全局变量和静态变量的C初始化纪录。.pinit 包含全局构造器(C+)程序列表。.const 包含字符串常量和明确初始化了的全局和静态变量(由const限定了的)的初始化和说明。.econst 包含字符串常量和明确初始化了的全局和静态变量(由far const限定了的)的初始化和说明。.switch 包含转换语句声明的列表。第86页/共99页未初始化段:在存储器(通常是RAM)中保留了空间。这些段在目标文件中没有实际内容,仅仅保留存储空间而已。在程序运行时,创建和存储变量可以使用这些空间。编译器

36、产生未被初始化段包括:.bss, ebss,.stack,.sysmem 和.esysmem。 第87页/共99页.bss 为全局和静态变量保留的空间。在程序启动时,C引导程序将.cinit空间(可以在ROM中)中的数据复制出来并存储在.bss空间中。.ebss 为由far限定的全局和静态变量或者使用大存储器模式时的全局和静态变量保留的空间。在程序启动时,C引导程序将.cinit空间(可以在ROM中)中的数据复制出来并存储在.ebss空间中。.stack 为C系统堆栈保留的空间。这个存储区用于给函数传递变量和为局部变量分配空间。.sysmem 为动态存储分配保留的空间。保留的空间被宏函数所用。

37、如没有使用宏函数,该空间大小保留为0。.esysmem 为动态存储分配保留空间。保留的空间被far宏函数所用。如没有使用far宏函数,该空间大小保留为0。第88页/共99页说明链接器从不同的模块中取出每个段并将这些段用同一个名称联合起来产生输出段。全部的程序都是由这些输出段组成的。可以根据需要将这些输出段放置到地址空间的任何位置,以满足系统的要求。.text, .cinit和.switch段通常链接到ROM和RAM中,且必须链接到程序存储器中(page 0)。.const段也可以链接到ROM和RAM中,但必须在数据空间(page 1)。.bss/.ebss,.stack和.sysmem/.es

38、ysmem段必须链接到RAM中且必须在数据存储器中。 第89页/共99页每个段所需要的存储器类型 段段存储器类型存储器类型页页.textROM or RAM0.cinitROM or RAM0.pinitROM or RAM0.switchROM or RAM0,1.constROM or RAM1.econstROM or RAM1.bssRAM1.ebssRAM1.stackRAM1.sysmemRAM1.esysmemRAM1第90页/共99页MEMORY伪指令:用来标示实际存在目标系统中可以使用的存储器范围,每个存储器范围具有名字、起始地址和长度;SECTIONS伪指令:描述输入段是如

39、何组合到输出段内的。第91页/共99页命令文件可以把程序下载到F28x片内RAM中。 / 文件:EzDSP_RAM_lnk.cmd/ 标题:该命令文件假设用户在导入时跳到H0模式MEMORYPAGE 0: /* SARAM H0 在PAGE 0 和PAGE 1之间分配 */ PRAMH0 : origin = 0 x3F8000, length = 0 x001000 /* 仅当从XINTF Zone 7导入时,该存储模块与复位矢量一起下载;否则复位矢量从导入ROM获取。查看以下的部分*/ RESET : origin = 0 x3FFFC0, length = 0 x000002 PAGE

40、1: /* SARAM */ RAMM0 : origin = 0 x000000, length = 0 x000400 RAMM1 : origin = 0 x000400, length = 0 x000400 /*外设模块组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, lengt

41、h = 0 x000020第92页/共99页CPU_TIMER0: origin = 0 x000C00, 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 /*外设模块组1: */ ECAN_A : ori

42、gin = 0 x006000, length = 0 x000100 ECAN_AMBOX: origin = 0 x006100, length = 0 x000100 /*外设模块组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 GPIOMUX

43、: 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 x007750

44、, length = 0 x000010 MCBSP_A : origin = 0 x007800, length = 0 x000040 /* CSM端口令位置 */ CSM_PWL : origin = 0 x3F7FF8, length = 0 x000008 /* SARAM H0在PAGE 0和PAGE 1之间分配 */ DRAMH0 : origin = 0 x3f9000, length = 0 x001000 第93页/共99页SECTIONS /* 分配程序空间, 导入到H0模式的设置: 代码起始区间(可以在CodeStartBranch.asm中找到)重新执行到用户的起始代

45、码位置。在H0起始时放置该部分或.text部分*/ codestart : PRAMH0, PAGE = 0 .text : PRAMH0, PAGE = 0 .cinit : PRAMH0, PAGE = 0 第94页/共99页/* 当只使用RAM时不使用分配数据空间*/ .stack : RAMM1, PAGE = 1 .bss : DRAMH0, PAGE = 1 .ebss : DRAMH0, PAGE = 1 .const : DRAMH0, PAGE = 1 .econst : DRAMH0, PAGE = 1 .sysmem : DRAMH0, PAGE = 1第95页/共99页

46、 /* .reset 表示C代码的起始_c_int00, 当使用导入ROM时,不需使用该部分,因此,默认类型被设置为DESECT */ .reset : RESET, PAGE = 0, TYPE = DSECT /* 分配外设模块组0 寄存器结构: */ DevEmuRegsFile : DEV_EMU, PAGE = 1 FlashRegsFile : FLASH_REGS, PAGE = 1 CsmRegsFile : CSM, PAGE = 1 XintfRegsFile : XINTF, PAGE = 1 CpuTimer0RegsFile: CPU_TIMER0, PAGE = 1

47、 第96页/共99页/*CPU_TIMER1和 CPU_TIMER2 保留,用于DSP BIOS和RTOS。因此在该例程中不分配该段 CpuTimer1RegsFile: CPU_TIMER1, PAGE = 1 CpuTimer2RegsFile: CPU_TIMER2, PAGE = 1 */ PieCtrlRegsFile : PIE_CTRL, PAGE = 1 PieVectTable : PIE_VECT, PAGE = 1第97页/共99页 /* 分配外设模块组2寄存器结构: */ ECanaRegsFile : ECAN_A, PAGE = 1 ECanaMboxesFile

48、: ECAN_AMBOX PAGE = 1 /* 分配外设模块组1寄存器结构:*/ SysCtrlRegsFile : SYSTEM, PAGE = 1 SpiaRegsFile : SPI_A, PAGE = 1 SciaRegsFile : SCI_A, PAGE = 1 XIntruptRegsFile : XINTRUPT, PAGE = 1 GpioMuxRegsFile : GPIOMUX, PAGE = 1 GpioDataRegsFile : GPIODAT PAGE = 1 AdcRegsFile : ADC, PAGE = 1 EvaRegsFile : EV_A, PAGE = 1 EvbRegsFile : EV_B, PAGE = 1 ScibRegsFile : SCI_B, PAGE = 1 McbspaRegsFile : MCBSP_A, PAGE = 1 /* CSM端口令位置 */ CsmPwlFile : CSM_PWL, PAGE = 1第98页/共99页感谢您的观看。第99页/共99页

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!