完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
已经添加图片中的这些文件,也按照网上的教程,在主函数中添加了
#ifdef FLASH // Copy time critical code and Flash setup code to RAM // The RamfuncsLoadStart, RamfuncsLoadEnd, and RamfuncsRunStart // symbols are created by the linker. Refer to the linker files. MemCopy(&RamfuncsLoadStart, &RamfuncsLoadEnd, &RamfuncsRunStart); // Call Flash Initialization to setup flash waitstates // This function must reside in RAM InitFlash(); // Call the flash wrapper init function #endif 。 请问哪里出现了问题
|
|
相关推荐
9个回答
|
|
工程有没有什么警告之类的。
最佳答案
|
|
|
|
CMD程序如下
/*############################################################################ FILE: F281x_nonBIOS_flash.cmd DESCRIPTION: Linker allocation for all sections. ############################################################################ Author: Tim Love Release Date: March 2008 ############################################################################*/ MEMORY { PAGE 0: /* Program Memory */ /* Memory (RAM/FLASH/OTP) blocks can be moved to PAGE1 for data allocation */ RAM_L0L1 : origin = 0x008000, length = 0x002000 /* on-chip RAM */ OTP : origin = 0x3D7800, length = 0x000400 /* on-chip OTP */ FLASH_IJ : origin = 0x3D8000, length = 0x004000 /* on-chip FLASH */ FLASH_GH : origin = 0x3DC000, length = 0x008000 /* on-chip FLASH */ FLASH_EF : origin = 0x3E4000, length = 0x008000 /* on-chip FLASH */ FLASH_CD : origin = 0x3EC000, length = 0x008000 /* on-chip FLASH */ FLASH_AB : origin = 0x3F4000, length = 0x003F78 /* on-chip FLASH */ CSM_RSVD : origin = 0x3F7F78, length = 0x000076 /* Part of FLASHA. Program with all 0x0000 when CSM is in use. */ BEGIN_FLASH : origin = 0x3F7FF4, length = 0x000004 /* Part of FLASHA. Used for "boot to Flash" bootloader mode. */ CSM_PWL : origin = 0x3F7FF8, length = 0x000008 /* Part of FLASHA. CSM password locations in FLASHA */ RAM_H0 : origin = 0x3F8000, length = 0x002000 /* on-chip RAM */ ROM : origin = 0x3FF000, length = 0x000FC0 /* Boot ROM */ RESET : origin = 0x3FFFC0, length = 0x000002 /* part of boot ROM */ VECTORS : origin = 0x3FFFC2, length = 0x00003E /* part of boot ROM */ PAGE 1 : /* Data Memory */ /* Memory (RAM/FLASH/OTP) blocks can be moved to PAGE0 for program allocation */ /* Registers remain on PAGE1 */ RAMM0 : origin = 0x000000, length = 0x000400 /* on-chip RAM block M0 */ BOOT_RSVD : origin = 0x000400, length = 0x000080 /* Part of M1, BOOT rom will use this for stack */ RAMM1 : origin = 0x000480, length = 0x000380 /* on-chip RAM block M1 */ } /**************************************************************/ /* Link all user defined sections */ /**************************************************************/ SECTIONS { /*** Code Security Password Locations ***/ csmpasswds : > CSM_PWL PAGE = 0 /* Used by file CSMPasswords.asm */ csm_rsvd : > CSM_RSVD PAGE = 0 /* Used by file CSMPasswords.asm */ /*** User Defined Sections ***/ codestart : > BEGIN_FLASH, PAGE = 0 /* Used by file CodeStartBranch.asm */ ramfuncs : LOAD = FLASH_CD, RUN = RAM_H0, LOAD_START(_RamfuncsLoadStart), LOAD_END(_RamfuncsLoadEnd), RUN_START(_RamfuncsRunStart), PAGE = 0 wddisable : > FLASH_AB, PAGE = 0 /* Used by file CodeStartBranch.asm */ copysections : > FLASH_AB, PAGE = 0 /* Used by file SectionCopy.asm */ /* .reset is a standard section used by the compiler. It contains the */ /* the address of the start of _c_int00 for C Code. /* /* When using the boot ROM this section and the CPU vector */ /* table is not needed. Thus the default type is set here to */ /* DSECT */ .reset : > RESET, PAGE = 0, TYPE = DSECT vectors : > VECTORS PAGE = 0, TYPE = DSECT /*** Uninitialized Sections ***/ .stack : > RAMM0 PAGE = 1 .ebss : > RAMM1 PAGE = 1 .esysmem : > RAMM1 PAGE = 1 /*** Initialized Sections ***/ .cinit : LOAD = FLASH_AB, PAGE = 0 /* Load section to Flash */ RUN = RAM_H0, PAGE = 0 /* Run section from RAM */ LOAD_START(_cinit_loadstart), RUN_START(_cinit_runstart), SIZE(_cinit_size) .const : LOAD = FLASH_AB, PAGE = 0 /* Load section to Flash */ RUN = RAM_H0, PAGE = 0 /* Run section from RAM */ LOAD_START(_const_loadstart), RUN_START(_const_runstart), SIZE(_const_size) .econst : LOAD = FLASH_AB, PAGE = 0 /* Load section to Flash */ RUN = RAM_H0, PAGE = 0 /* Run section from RAM */ LOAD_START(_econst_loadstart), RUN_START(_econst_runstart), SIZE(_econst_size) .pinit : LOAD = FLASH_AB, PAGE = 0 /* Load section to Flash */ RUN = RAM_H0, PAGE = 0 /* Run section from RAM */ LOAD_START(_pinit_loadstart), RUN_START(_pinit_runstart), SIZE(_pinit_size) .switch : LOAD = FLASH_AB, PAGE = 0 /* Load section to Flash */ RUN = RAM_H0, PAGE = 0 /* Run section from RAM */ LOAD_START(_switch_loadstart), RUN_START(_switch_runstart), SIZE(_switch_size) .text : LOAD = FLASH_AB, PAGE = 0 /* Load section to Flash */ RUN = RAM_L0L1, PAGE = 0 /* Run section from RAM */ LOAD_START(_text_loadstart), RUN_START(_text_runstart), SIZE(_text_size) /* Allocate IQ math areas: */ IQmath : LOAD = FLASH_AB, PAGE = 0 /* Load section to Flash */ RUN = RAM_H0, PAGE = 0 /* Run section from RAM */ LOAD_START(_IQmath_loadstart), RUN_START(_IQmath_runstart), SIZE(_IQmath_size) /* Math Code */ IQmathTables : > ROM PAGE = 0, TYPE = NOLOAD /* Math Tables In ROM */ } /******************* end of file ************************/ |
|
|
|
问题找到了,就是flash掉电运行的时候必须将插在DSP上面的仿真器拔掉,拔USB这端是没有用的。 |
|
|
|
上面的CMD配置是正确的,flash运行必须把仿真器连DSP那端拔掉,光拔USB是不行。花了我两天时间,结果是这个问题。。。。。。
|
|
|
|
上面的CMD配置是正确的,flash运行必须把仿真器连DSP那端拔掉,光拔USB是不行。花了我两天时间,结果是这个问题。。。。。。
|
|
|
|
这样?我也是插着仿真器烧flash后还是插着呢,没有这个问题啊。 你是什么仿真器,是xds100的那个么? |
|
|
|
xds510plus |
|
|
|
哥,握手,兄弟也是费了好几天才排查到这个问题。。。当时不知道啊,心想断开哪头不是断。。。 |
|
|
|
哈哈,感谢前辈,我也遇到了 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1648 浏览 1 评论
695 浏览 1 评论
1796 浏览 0 评论
基于DSP C6000教学实验箱_数字图像处理教程:5-9 图像反色实验案例分享
2097 浏览 0 评论
1783 浏览 0 评论
浏览过的版块 |
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-3 10:17 , Processed in 0.687573 second(s), Total 60, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191