【TI C2000的使用经验】+TMS320F2812
[复制链接]
一、 CCS3.3软件的设置(以F2812为例)CCS 的工作环境分为两种:纯软件仿真环境 和 硬件仿真环境。 纯软件仿真环境:工作在此环境中,就是由软件才PC机内存中构造一个虚拟的DSP工作环境,可以进行对程序调试,但前提是所调试的程序,无法反映硬件外设上的关系,所以利用软件仿真通常是用于调试纯软件的算法和进行效率分析等。 硬件仿真环境:在此环境中调试的程序,同硬件上的外设有着密切相连的关系,我们调试程序,基本上均在此环境下。 设置CCS工作在软仿真环境 在此环境下调试程序,无需连接板卡和仿真器等硬件 1. 单击桌面上“Setup CCStudio v3.3”设置图标 2. 在出现的窗口中按红色标注进行如下设置: “Family”中下拉框中选择:C28XX “Platform”中下拉框中选择:simulator 进行上面两项设置后,最后双击:F2812 Device Simulator... (如果“My System”下有设置,请先单点击“RemoveAll”清除以前的设置。)
3. 此时会在“My System” 下出现如下界面:
4. 点击“Save & Quit”退出保存,此时CCS被设置成软仿真工作环境(以F2812为例),如果一直使用此环境,以后就不需要重新设置了。
设置CCS工作在硬件仿真环境 1. 单击桌面上“Setup CCStudio v3.3”设置图标 2. 在出现的窗口中按红色标注进行如下设置: “Family”中下拉框中选择:C28XX ,然后将“F2812 XDS501Emulator”加入到My system下。 (如果“My System”下有设置,请先单点击“RemoveAll”清除以前的设置。) 3. 点击“Save & Quit”退出保存,此时CCS被设置成硬仿真工作环境(以F2812为例),如果一直使用此环境,以后就不需要重新设置了。
二、CCS文件名介绍 1、 在使用CCS前,应该先了解以下软件的文件名约定: Project.pjt CCS定义的工程文件 Program.c C程序文件 Program.asm 汇编语言程序文件 Filename.h 头文件,包括DSP/BIOS API模块 Filename.lib 库文件 Program.obj 编译后的目标文件 Program.cmd 连接命令文件 Program.out 可在目标DSP上执行的文件,可在CCS监控下调试/执行 创建新的工程文件 工程文件中包含着设计中所有的源代码文件、链接器命令文件、库函数、头文件等。 2、汇编程序一般情况下主要包括下列文件: example.pjt: 工程文件 example.asm: 主程序.asm文件 C28x.h: 外围寄存器地址定义的头文件 vectors.asm: 中断向量表 example.cmd: 链接命令文件 example.out: 程序的执行代码 example.map: 代码生成工具生成输出的.map文件 3、C程序一般情况下主要包括下列文件: example_c.pjt:工程文件 example_c.c:主程序.C文件 cvectors.asm:中断向量表 C28x_c.h:外围寄存器地址定义的C头文件 example_c.cmd:链接命令文件 rts.lib库文件 example_c.out:程序的执行代码 example.map:代码生成工具生成输出的.map文件 4、汇编和C混合编程程序一般情况下主要包括下列文件: example_c.pjt:工程文件 example_c.c:主程序.C文件 example_c.asm:主程序中调用的.asm文件 vectors.asm:中断向量表 C28x_c.h:外围寄存器地址定义的C头文件 C28x.h:外围寄存器地址定义的汇编头文件 example_c.cmd:链接命令文件 rts.lib库文件 example_c.out:程序的执行代码 example.map:代码生成工具生成输出的.map文件
实验1.数据存储实验 下面给出TMS320F2812的存储器分配表: 相当于TMS320F24x/LF240x数据存储空间 | | | |
| | | | | |
| | M0向量-随机存储器(32*32)(当VMAP=0时有效) | |
| | |
| | |
| | |
| | 外设向量PIE Vector2k*16 当(VMAP=1,ENPIE=1时有效) | |
| | | | | | 片外空间1(8K*16 XZCS0AND1)(保护) | | | | | |
| | | |
| | L0 SARAM(单存取随机存储器)4K*16(安全块) |
| | L1 SARAM(单存取随机存储器)4K*16(安全块) |
| | | 片外空间2(0.5M*16 XZCS2)片外扩展存储器(256K*16) | |
| | |
| | | | | |
| | |
| 相当于TMS320F24x/LF240x程序存储空间 | | H0 SARAM(单存取随机存储器)(8K*16)(安全块) | |
| | |
| | | 片外空间7(16K*16XZCS6AND7)当MP/MC=1时有效 | |
| | BROM向量,(32*32)当VMAP=1,MP/MC=0,ENPIE=0时有效 | 外部扩展向量(32*32)VMAP=1,MP/MC=1,ENPIE=0时有效 |
| | | | | | | | |
注意:1. 存储器不能任意调整 2. 保留区为今后的扩展做准备,用户应用时不应该访问这些区域 3. 启动代码和片外扩展空间7 由MP/MC的引脚状态来选择其中之一,不能同时映射到DSPD的地址空间 4. 外设寄存器组0、1和2仅仅作为数据存储器访问,不能作为程序存储器访问 5. 保护 表示是为了配合流水线的工作在读操作之后的写操作将会被妥善的处理 6. 一部分存储器被EALLOW保护后,是不希望在初始化之后再次改变他们的值(请详细参看TMS320F2812数据手册)
7. 片外空间0,1,6和7共享相同的片选信号,因此,他们虽然地址不同,但却是相同存储器的镜像(mirroredlocations).
对于数据存储空间而言,映射表相对固定。值得注意的是内部寄存器都映射到数据存储空间内。因此在编程应用时这些特定的空间不能作其他用途。对于程序存储空间而言,其映射表和CPU的工作模式有关。当MP/MC引脚为高电平时,CPU工作在微处理器模式;当MP/MC引脚低电平时,CPU工作在微控制器模式。存储器实验主要帮助用户了解存储器的操作和DSP内部的双总线结构。并熟悉相关的指令代码和操作等。
在硬件安装完成后,确认安装正确、各实验部件及电源连接无误后,启动计算机,接通仿真器电源,此时,仿真器上的“红色指示灯”应点亮,否则DSP开发系统与计算机连接存在问题。
运行CCS程序
1) 待计算机启动成功后,实验箱220V电源置“ON”,实验箱上电 2) 启动CCS3.3,进入CCS界面后,点击“Debug—Connect” 3) 此时仿真器上的“绿色指示灯”应点亮,CCS正常启动,表明系统连接正常;否则仿真器的连接、JTAG接口或CCS相关设置存在问题,这时需掉电检查仿真器的连接、JTAG接口连接是否正确,或检查CCS相关设置是否存在问题。 注:如出现上述问题,原因有二: 其一,可能是系统连接错误或没有正常复位,应重新检查系统硬件并复位; 其二,可能是软件安装或设置存在问题,应尝试调整软件系统设置。
成功运行CCS程序后,首先应熟悉CCS的用户界面;
学会在CCS环境下创建工程文件、添加程序文件、编写程序、编译、装载、调试,学习如何使用观察窗口等。
实验源码: #include "DSP281x_Device.h" // DSP281x Headerfile Include File #include"DSP281x_Examples.h" //DSP281x Examples Include File void main(void) { inti; volatile unsigned int *room = (volatile unsigned int *)0x3f9020; volatile unsigned int *room2=(volatile unsigned int *)0x3f902F; InitSysCtrl(); DINT; IER = 0x0000; IFR = 0x0000; for(i=0;i<8;i++) { * room=0xAAAA; room++; } for(i=0;i<8;i++) { *room2=*(room-1); room--; room2--; }
}
|