《CCS软件教程》PPT课件.ppt

上传人:sh****n 文档编号:15717520 上传时间:2020-09-01 格式:PPT 页数:99 大小:3.64MB
返回 下载 相关 举报
《CCS软件教程》PPT课件.ppt_第1页
第1页 / 共99页
《CCS软件教程》PPT课件.ppt_第2页
第2页 / 共99页
《CCS软件教程》PPT课件.ppt_第3页
第3页 / 共99页
点击查看更多>>
资源描述
CCS3.3的安装、设置及使用,CCS的安装,1 CCStudio 主程序安装,第1步:找CCS SETUP.EXE应用程序的图标。双击该图标。,第2步:点击NEXT接钮,第3步:选择I ACCEPT后,再点击NEXT按钮,第4步:选择默认典型安装, “Typical install”图标,,选择安装路径后,点击Next,注意路径不能包含中文,第5步:点击Install Now开始安装,安装结束后出现如下图的告警界面,提示要求安装Perl V5.8版本,不必担心,点击确定即可,第7步:安装完成,安装补丁版本,安装升级补丁包SR12_CCS_v3.3_SR_3.3.82.13 .exe双击安装后,会出现以下界面,点击Next:,出现如下图所示界面,选择 ActiveState Perl58,点击Next,然后一路点击Next,直到开始安装。,安装补丁版本,(2)安装浮点支持库setup_C28XFPU_CSP_v31.3.1207 (3)安装烧写插件F2823x_RevA_CSP.exe (4)更新Code Gernerator,将C2000CodeGenerationTools51.1.1.exe安装在CCStudio_v3.3C2000cgtools目录下,安装过程中选择“Yes to all”全部覆盖。覆盖结果可在component manager中选择“Build Tools”进行查看,覆盖成功应为“texas instruments c2000 code genertion tools ”项前面打勾 (5)安装仿真器USB驱动和仿真器驱动。,CCS的设置-Simulator,2让CCS工作在软件仿真环境 (Simulator),CCS可以工作在纯软件仿真环境中,就是由CCS在PC机内存中构造一个虚拟的DSP环境,可以调试、运行程序。但一般软件无法构造DSP中的外设,所以软件仿真通常用于调试算法和进行效率分析等。在使用软件仿真方式工作时,无需连接板卡和仿真器等硬件。,单击桌面上“Setup CCStudio v3.3”图标, 进入 CCS设置窗口。,在设置界面的中间栏目中分别对Family和Platform项进行设置。,然后会在在设置栏的左侧出现添加的软件仿真平台,选择F2812 Device Simulator点击右键会出现如图所示对话框,可以设置配置文件。,选择CPU点击右键会出现如图所示对话框,可以设置GEL文件。,点击“Save / 位 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; / 位 14 模数转换复位位 Uint16 rsvd3:1; / 位 15 保留位 ;,union ADCTRL1_REG Uint16 all; struct ADCTRL1_BITS bit; ;,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 rsvd2: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 rsvd4:1; / 位 12 保留位 Uint16 SOC_SEQ1:1; / 位 13 启动SEQ1的转换位 Uint16 RST_SEQ1:1; / 位 14 复位SEQ 1 Uint16 EVB_SOC_SEQ:1; / 位 15 EVB SOC 使能位 ;,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 rsvd1:1; / 位7 保留位 Uint16 SEQ_CNTR:4; / 位118 排序计数器状态位 Uint16 rsvd2:4; / 位1512 保留位 ;,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 ADCCHSELSEQ1_BITS Uint16 CONV00:4; Uint16 CONV01:4; Uint16 CONV02:4; Uint16 CONV03:4; ;,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 ADCCHSELSEQ2_BITS bit; ;,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 all; struct ADCCHSELSEQ4_BITS bit; ;,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; ;,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 排序缓冲器1的的末尾 Uint16 rsvd1:8; / 位 158 保留位 ; union ADCST_REG Uint16 all; struct ADCST_BITS bit; ;,struct ADC_REGS union ADCTRL1_REG ADCTRL1; / 模数转换控制寄存器1 union ADCTRL2_REG ADCTRL2; / 模数转换控制寄存器2 union ADCMAXCONV_REG ADCMAXCONV; / 最大转换通道树寄存器 union ADCCHSELSEQ1_REG ADCCHSELSEQ1; / 通道选择排序控制寄存器l union ADCCHSELSEQ2_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; Uint16 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; / 模数转换状态寄存器 ;,/ 模数转换外部参数函数声明 extern volatile struct ADC_REGS AdcRegs; #endif / DSP28_ADC_H 定义结束,说明 上述形式定义后,如果要对ADCTRL1付值value,则表达式为:AdcRegs.ADCTRL1.allvalue; 如果要对ADCTRL1的某一位进行操作,如对ADCTRL1的复位位写入1,使ADC模块复位,则表达式为:AdcRegs.ADCTRL1.bit.RESET1;,命令文件常用的几种伪指令。,段:编译器产生几个可以重新分配的代码块和数据块。它可以以各种模式分配到存储器中以符合多种系统配置。,有两种基本的段类型:已初始化段和未初始化段。,已初始化段:包含数据表或可执行的代码。 编译器产生以下已初始化段: .text,.cinit,.const,.econst,.pinit 和.switch。,.text包含所有可执行的代码和常量。 .cinit 包含全局变量和静态变量的C初始化纪录。 .pinit 包含全局构造器(C+)程序列表。 .const 包含字符串常量和明确初始化了的全局和静态变量(由const限定了的)的初始化和说明。 .econst 包含字符串常量和明确初始化了的全局和静态变量(由far const限定了的)的初始化和说明。 .switch 包含转换语句声明的列表。,未初始化段:在存储器(通常是RAM)中保留了空间。这些段在目标文件中没有实际内容,仅仅保留存储空间而已。 在程序运行时,创建和存储变量可以使用这些空间。 编译器产生未被初始化段包括: .bss, ebss,.stack,.sysmem 和.esysmem。,.bss 为全局和静态变量保留的空间。在程序启动时,C引导程序将.cinit空间(可以在ROM中)中的数据复制出来并存储在.bss空间中。 .ebss 为由far限定的全局和静态变量或者使用大存储器模式时的全局和静态变量保留的空间。在程序启动时,C引导程序将.cinit空间(可以在ROM中)中的数据复制出来并存储在.ebss空间中。 .stack 为C系统堆栈保留的空间。这个存储区用于给函数传递变量和为局部变量分配空间。 .sysmem 为动态存储分配保留的空间。保留的空间被宏函数所用。如没有使用宏函数,该空间大小保留为0。 .esysmem 为动态存储分配保留空间。保留的空间被far宏函数所用。如没有使用far宏函数,该空间大小保留为0。,说明,链接器从不同的模块中取出每个段并将这些段用同一个名称联合起来产生输出段。 全部的程序都是由这些输出段组成的。 可以根据需要将这些输出段放置到地址空间的任何位置,以满足系统的要求。 .text, .cinit和.switch段通常链接到ROM和RAM中,且必须链接到程序存储器中(page 0)。 .const段也可以链接到ROM和RAM中,但必须在数据空间(page 1)。 .bss/.ebss,.stack和.sysmem/.esysmem段必须链接到RAM中且必须在数据存储器中。,每个段所需要的存储器类型,MEMORY伪指令:用来标示实际存在目标系统中可以使用的存储器范围,每个存储器范围具有名字、起始地址和长度; SECTIONS伪指令:描述输入段是如何组合到输出段内的。,命令文件可以把程序下载到F28x片内RAM中。,/ 文件:EzDSP_RAM_lnk.cmd / 标题:该命令文件假设用户在导入时跳到H0模式 MEMORY PAGE 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 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, length = 0 x000020,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 : origin = 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 : 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, 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 ,SECTIONS /* 分配程序空间, 导入到H0模式的设置: 代码起始区间(可以在CodeStartBranch.asm中找到)重新执行到用户的起始代码位置。在H0起始时放置该部分或.text部分*/ codestart : PRAMH0, PAGE = 0 .text : PRAMH0, PAGE = 0 .cinit : PRAMH0, PAGE = 0,/* 当只使用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,/* .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,/*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,/* 分配外设模块组2寄存器结构: */ ECanaRegsFile : ECAN_A, PAGE = 1 ECanaMboxesFile : 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 ,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


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

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


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