如何编写C2000片内Flash?
DSP中的Flash的编写方法有三中: 1.通过仿真器编写:在我们的网页上有相关的软件,在销售仿真器时我们也提供相关软件。其中LF240x的编写可以在CCS中加入一个插件,F24x的编写需要在windows98下的DOS窗中进行。具体步骤见软件中的readme。有几点需要注意: a.必须为MC方式; b.F206的工作频率必须为20MHz; c.F240需要根据PLL修改C240_CFG.I文件。建议外部时钟为20MHz。 d.LF240x也需要根据PLL修改文件。 d.如果编写有问题,可以用BFLWx.BAT修复。 2.提供串口编写:TI的网页上有相关软件。注意只能编写一次,因为编写程序会破坏串口通信程序。 3.在你的程序中编写:TI的网页上有相关资料。
如何编写DSP外部的Flash?
DSP的外部Flash编写方法: 1.通过编程器编写:将OUT文件通过HEX转换程序转换为编程器可以接受的格式,再由编程器编写。 2.通过DSP软件编写:您需要根据Flash的说明,编写Flash的编写程序,将应用程序和编写Flash的程序分别load到RAM中,运行编写程序编写。
对于C5000,大于48K的程序如何BOOT?
对于C5000,片内的BOOT程序在上电后将数据区的内容,搬移到程序区的RAM中,因此FLASH必须在RESET后放在数据区。由于C5000,数据区的空间有限,一次BOOT的程序不能对于48K。解决的方法如下: 1.在RESET后,将FLASH译码在数据区,RAM放在程序区,片内BOOT程序将程序BOOT到RAM中。 2.用户初试化程序发出一个I/O命令(如XF),将FLASH译码到程序区的高地址。开放数据区用于其它的RAM。 3.用户初试化程序中包括第二次BOOT程序(此程序必须用户自己编写),将FLASH中没有BOOT的其它代码搬移到RAM中。 4.开始运行用户处理程序。
DSP外接存储器的控制方式
对于一般的存储器具有RD、WR和CS等控制信号,许多DSP(C3x、C5000)都没有控制信号直接连接存储器,一般采用的方式如下: 1.CS有地址线和PS、DS或STRB译码产生; 2./RD=/STRB+/R/W; 3./WR=/STRB+R/W。
GEL文件的功能?
GEL文件的功能同emuinit.cmd的功能基本相同,用于初始化DSP。但它的功能比emuinit的功能有所增强,GEL在CCS下有一个菜单,可以根据DSP的对象不同,设置不同的初始化程序。以TMS320LF2407为例: #define SCSR1 0x7018 ;定义scsr1寄存器 #define SCSR2 0X7019 ;定义scsr2寄存器 #define WDKEY 0x7025 ;定义wdkey寄存器 #define WDNTR 0x7029 ;定义wdntr寄存器 StartUp() ; 开始函数 { GEL_MapReset(); ; 存储空间复位 GEL_MapAdd(0x0000,0,0x7fff,1,1); 定义程序空间从0000-7fff 可读写 GEL_MapAdd(0x8000,0,0x7000,1,1); 定义程序空间从8000-f000 可读写 GEL_MapAdd(0x0000,1,0x10000,1,1); 定义数据空间从0000-10000可读写 GEL_MapAdd(0xffff,2,1,1,1); 定义i/o 空间0xffff可读写 GEL_MapOn(); 存储空间打开 GEL_MemoryFill(0xffff,2,1,0x40); 在i/o空间添入数值40h *(int *)SCSR1=0x0200; 给scsr1寄存器赋值 *(int *)SCSR2=0x000C; 给scsr2寄存器赋值,在这里可以进行mp/mc方式的转换 *(int *)WDNTR=0x006f; 给wdntr寄存器赋值 *(int *)WDKEY=0x055; 给wdkey寄存器赋值 *(int *)WDKEY=0x0AA; 给wdkey寄存器赋值 }
[此贴子已经被作者于2005-11-28 14:26:43编辑过] |