我现在用F28235设计应用(请注意是28235,不是335):
要将程序下载到Flash中运行,已经做得工作有:
1.将cmd文件由ram_link改为F28335;
并且添加 ramfuncs : LOAD = FLASHD,
RUN = RAML0,
LOAD_START(_RamfuncsLoadStart),
LOAD_END(_RamfuncsLoadEnd),
RUN_START(_RamfuncsRunStart),
LOAD_SIZE(_RamfuncsLoadSize),
PAGE = 0
2.在主程序中声明
extern Uint16 RamfuncsLoadStart;
extern Uint16 RamfuncsLoadEnd;
extern Uint16 RamfuncsRunStart;
extern Uint16 RamfuncsLoadSize;
3.在主程序 InitPieVectTable();后添加
memcpy(&RamfuncsRunStart, &RamfuncsLoadStart, (Uint32)&RamfuncsLoadSize);
要将程序下载到Flash中运行,已经做得工作有:
1.将cmd文件由ram_link改为F28335;
并且添加 ramfuncs : LOAD = FLASHD,
RUN = RAML0,
LOAD_START(_RamfuncsLoadStart),
LOAD_END(_RamfuncsLoadEnd),
RUN_START(_RamfuncsRunStart),
LOAD_SIZE(_RamfuncsLoadSize),
PAGE = 0
2.在主程序中声明
extern Uint16 RamfuncsLoadStart;
extern Uint16 RamfuncsLoadEnd;
extern Uint16 RamfuncsRunStart;
extern Uint16 RamfuncsLoadSize;
3.在主程序 InitPieVectTable();后添加
memcpy(&RamfuncsRunStart, &RamfuncsLoadStart, (Uint32)&RamfuncsLoadSize);
InitFlash();
4.工程中添加memcpy.c和DSP2833x_CodeStartBranch.asm
5. 包含的库文件是rts2800_mh.lib
程序成功的下载到了FLASH中,然而却无法启动,请问会是哪里的问题呢?
6.GPIO84.GPIO85,GPIO86,GPIO87通过20K的电阻与3.3V相连;因为条件限制无法直接测试引脚状态,在仿真模式下,这四个引脚的值为0(低电平,要求从FLASH引导程序时这四个引脚为高电平),不知道有没有可能是这个因素?
mangui zhang:想知道你在不做搬移的情况下是否能正常运行搬移是为了提高效率?
一般在flash中都是可以正常运行的最好检测一下上电的boot选择
我记得直接可以通过增加宏定义的方式处理搬移源文件中自带了
我现在用F28235设计应用(请注意是28235,不是335):
要将程序下载到Flash中运行,已经做得工作有:
1.将cmd文件由ram_link改为F28335;
并且添加 ramfuncs : LOAD = FLASHD,
RUN = RAML0,
LOAD_START(_RamfuncsLoadStart),
LOAD_END(_RamfuncsLoadEnd),
RUN_START(_RamfuncsRunStart),
LOAD_SIZE(_RamfuncsLoadSize),
PAGE = 0
2.在主程序中声明
extern Uint16 RamfuncsLoadStart;
extern Uint16 RamfuncsLoadEnd;
extern Uint16 RamfuncsRunStart;
extern Uint16 RamfuncsLoadSize;
3.在主程序 InitPieVectTable();后添加
memcpy(&RamfuncsRunStart, &RamfuncsLoadStart, (Uint32)&RamfuncsLoadSize);
要将程序下载到Flash中运行,已经做得工作有:
1.将cmd文件由ram_link改为F28335;
并且添加 ramfuncs : LOAD = FLASHD,
RUN = RAML0,
LOAD_START(_RamfuncsLoadStart),
LOAD_END(_RamfuncsLoadEnd),
RUN_START(_RamfuncsRunStart),
LOAD_SIZE(_RamfuncsLoadSize),
PAGE = 0
2.在主程序中声明
extern Uint16 RamfuncsLoadStart;
extern Uint16 RamfuncsLoadEnd;
extern Uint16 RamfuncsRunStart;
extern Uint16 RamfuncsLoadSize;
3.在主程序 InitPieVectTable();后添加
memcpy(&RamfuncsRunStart, &RamfuncsLoadStart, (Uint32)&RamfuncsLoadSize);
InitFlash();
4.工程中添加memcpy.c和DSP2833x_CodeStartBranch.asm
5. 包含的库文件是rts2800_mh.lib
程序成功的下载到了FLASH中,然而却无法启动,请问会是哪里的问题呢?
6.GPIO84.GPIO85,GPIO86,GPIO87通过20K的电阻与3.3V相连;因为条件限制无法直接测试引脚状态,在仿真模式下,这四个引脚的值为0(低电平,要求从FLASH引导程序时这四个引脚为高电平),不知道有没有可能是这个因素?
user4662103:
回复 mangui zhang:
我现在就是没有正常启动啊,不知道是哪里的问题
我现在用F28235设计应用(请注意是28235,不是335):
要将程序下载到Flash中运行,已经做得工作有:
1.将cmd文件由ram_link改为F28335;
并且添加 ramfuncs : LOAD = FLASHD,
RUN = RAML0,
LOAD_START(_RamfuncsLoadStart),
LOAD_END(_RamfuncsLoadEnd),
RUN_START(_RamfuncsRunStart),
LOAD_SIZE(_RamfuncsLoadSize),
PAGE = 0
2.在主程序中声明
extern Uint16 RamfuncsLoadStart;
extern Uint16 RamfuncsLoadEnd;
extern Uint16 RamfuncsRunStart;
extern Uint16 RamfuncsLoadSize;
3.在主程序 InitPieVectTable();后添加
memcpy(&RamfuncsRunStart, &RamfuncsLoadStart, (Uint32)&RamfuncsLoadSize);
要将程序下载到Flash中运行,已经做得工作有:
1.将cmd文件由ram_link改为F28335;
并且添加 ramfuncs : LOAD = FLASHD,
RUN = RAML0,
LOAD_START(_RamfuncsLoadStart),
LOAD_END(_RamfuncsLoadEnd),
RUN_START(_RamfuncsRunStart),
LOAD_SIZE(_RamfuncsLoadSize),
PAGE = 0
2.在主程序中声明
extern Uint16 RamfuncsLoadStart;
extern Uint16 RamfuncsLoadEnd;
extern Uint16 RamfuncsRunStart;
extern Uint16 RamfuncsLoadSize;
3.在主程序 InitPieVectTable();后添加
memcpy(&RamfuncsRunStart, &RamfuncsLoadStart, (Uint32)&RamfuncsLoadSize);
InitFlash();
4.工程中添加memcpy.c和DSP2833x_CodeStartBranch.asm
5. 包含的库文件是rts2800_mh.lib
程序成功的下载到了FLASH中,然而却无法启动,请问会是哪里的问题呢?
6.GPIO84.GPIO85,GPIO86,GPIO87通过20K的电阻与3.3V相连;因为条件限制无法直接测试引脚状态,在仿真模式下,这四个引脚的值为0(低电平,要求从FLASH引导程序时这四个引脚为高电平),不知道有没有可能是这个因素?
Seven Han:您可以用flash_f28235例程,利用您板子上LED灯来测试。
:\ti\controlSUITE\device_support\f2833x\v142\DSP2823x_examples_ccsv5