1.TI处理器命名规则
TMS代表合格产品;TMX代表实验产品;TMP代表模型产品。
320 代表DSP产品系列;430 代表单片机产品系列;
470 代表ARM产品系列。
F 代表内部存储器为Flash;C 代表内部存储器为ROM。
28035 代表产品型号。
2.CCS5的标准C文件以及TI自己扩展的一些头文件在C:/ti/ccsv5/tools/compiler/c2000_6.1.0/include。C2x系列的DSP都要用到这个包含文件。
3.现在C2000系列的库的开发版本有V121,V122,V123,V124,V125,V126,V127,V128,V129。
在C: icontrolSUITEdevice_supportf2803x中可以找到相关的库。
4.c2000有多重启动方式,可以从tms320f28035数据手册 29页看到支持的启动模式,目前基本上都是使用仿真器,很少有使用其他方式下载的方案提供。
5.ccs可以同时打开多个工程,但只有黑粗体的那个工程才是当前激活工程,(也就是说你按编译,他就会编译那个黑粗体的工程)。
6.DSP2803x_CodeStartBranch.asm//没有加载的时候竟然不报错
DSP2803x_DefaultIsr.c
DSP2803x_PieCtrl.c
DSP2803x_PieVect.c
DSP2803x_SysCtrl.c
//DSP2803x_Sci.c
DSP2803x_usDelay.asm
DSP2803x_GlobalVariableDefs.c
DSP2803x_Headers_nonBIOS.cmd
DSP2803x_MemCopy
DSP2803x_TempSensorConv
通常一个工程要加载这9个文件,在不同的目录里,就在common和header的文件夹里,自己多找找就可以找到这几个文件了。
7.
#include "DSP28x_Project.h"
void main(void)
{
InitSysCtrl();//初始化系统时钟,外设时钟,看门狗等,将系统时钟设置为60M,如果是自己DIY的板子,时钟不是10M,可以研究里面的参数设置一下
DINT;//清除所有中断,并且初始化PIE向量表,关掉总中断
InitPieCtrl();//初始化PIE控制寄存器为默认值,默认的值是所有的中断静止,标志清零,中断通过pie控制器来管理中断响应
IER = 0x0000;//这个是12组中断使能寄存器,都关掉
IFR = 0x0000;//这个是12组中断的标志位,清零
InitPieVectTable();//这个是初始化中断向量表的,就是将各种中断的中断函数入口地址指派一下
EALLOW; //在dsp里,有些寄存器设置时要先解开寄存器保护,这个命令是解开保护,下面这几条//是设置io的功能
GpioCtrlRegs.GPAMUX2.bit.GPIO31 = 0; //GPIO31作为普通IO
GpioCtrlRegs.GPBMUX1.bit.GPIO34 = 0; //GPIO34作为普通IO
GpioCtrlRegs.GPADIR.bit.GPIO31 = 1; //GPIO31方向为输出
GpioCtrlRegs.GPBDIR.bit.GPIO34 = 1; //GPIO34方向为输出
EDIS; //对应解开保护,这个是关闭保护
while(1)
{
DSP28x_usDelay(10000000);//这个函数是用汇编定义的,在DSP2803x_usDelay.asm里面定义的,//比较准确,参数是long 型的。?
GpioDataRegs.GPATOGGLE.bit.GPIO31 = 1; //GPIO31端口电平翻转一次
GpioDataRegs.GPBTOGGLE.bit.GPIO34 = 1; //GPIO34端口电平翻转一次
}
}
8.
MemCopy(&RamfuncsLoadStart, &RamfuncsLoadEnd, &RamfuncsRunStart);初始化在RAM运行代码。
9.哈弗结构,数据空间与程序空间分开,CPU可以同时访问数据和程序。
10.DSP的供应商有TI(市场占有率在50%左右),ADI,MOTD,ZLLOG。
11.TI的DSP系列:
1)Picclo系列:F2802x系列,F2803x系列。
2)C2000系列:24X系列,28X系列。
3)C5000系列:低功耗,手持设备。
4)C6000系列:宽带网络,图像处理。
5)达芬奇系列:安全监控,宽带网络,图像处理。
6)OMAP系列:DSP+ARM双核,移动上网,多媒体。