您好!
我尝试使用电路板上的 fopen 函数打开文件(tms5517)、但返回0。
文件*fp;
fp = fopen (filename、"rb");
我尝试使堆栈更大、但它也不起作用。
-stack 0x2000 /*主堆栈大小*/
-sysstack 0x1000 /*次要堆栈大小*/
堆0x20000 //堆区域大小*/
存储器
{
MMR:O = 0x000000 l = 0x0000c0 /* 192B 存储器映射寄存器*/
DARAM0:O = 0x0000C0 l = 0x001F40 // 8kB 双存取 RAM 0 */
DARAM1:O = 0x002000 l = 0x002000 // 8kB 双存取 RAM 1 */
DARAM2:O = 0x004000 l = 0x002000 // 8kB 双存取 RAM 2 */
DARAM3:O = 0x006000 l = 0x00A000
SARAM0:O = 0x010000 l = 0x040000
CS0:O = 0x050000 l = 0x7B0000 // 8MB CS0外部存储器空间*/
CS2:O = 0x800000 l = 0x400000 // 4MB CS2外部存储器空间*/
CS3:O = 0xC00000 l = 0x200000 // 2MB CS3外部存储器空间*/
CS4:O = 0xE00000 l = 0x100000 /* 1MB CS4外部存储器空间*/
CS5:O = 0xF00000 l = 0x0E0000 /* 1MB CS5外部存储器空间*/
ROM:O = 0xFE0000 l = 0x01FF00 // 128KB ROM (MPNMC=0)或 CS5 (MPNMC=1)*/
VECS:O = 0xFFFFFF00 l = 0x000100 //复位向量*/
}
部分
{
向量(空载)> VECS /*如果 MPNMC = 1、请删除 NoLoad 指令*
.cinit > DARAM3 align = 4
.text > DARAM3 ALIGN = 4
.stack > SARAM0 align = 4
.sysstack > SARAM0 align = 4
.sysmem > SARAM0 align = 4
.data > SARAM0 ALIGN = 4
.cio > SARAM0 ALIGN = 4
.bss > SARAM0 ALIGN = 4
.const > SARAM0 ALIGN = 4
.switch > SARAM0 ALIGN = 4
}
我没有使用任何外部 RAM、这意味着只有 DSP 本身的内存。 那么、memory 是否太小、以至于 fopen 无法运行?
但我想将 bin 文件写入闪存、如果无法打开该 bin 文件、我会将整个数据移动到.h 文件中、这是一个麻烦的工作。
有人可以帮帮我吗?