This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
你好,
调整了F28035.cmd文件的FLASH空间分配后单步运行OK,直接运行异常,
修改如下:
BTL_BEGIN : origin = 0x3E8000, length = 0x000002 /* Bootloader start address, TI default boot to flash address */ BTL_HEADER : origin = 0x3E8002, length = 0x000010 /* Bootloader Header, 16 Words */ BTL_CODE : origin = 0x3E8012, length = 0x003FEE /* Bootloader Code, 15k */ APP_BEGIN : origin = 0x3EC000, length = 0x000002 /* Application start address, bootloader exit jump address *///0x3EC000 APP_HEADER : origin = 0x3EC002, length = 0x000010 /* Application Header, 16 Words */ APP_CODE : origin = 0x3EC012, length = 0x009FEE /* Application Code, 39k */ CAL_DATA : origin = 0x3F6000, length = 0x002000 /* Calibration Data */ …… SECTIONS { /* Allocate program areas: */ .cinit : > APP_CODE PAGE = 0 .pinit : > APP_CODE PAGE = 0 .text : > APP_CODE PAGE = 0 codestart : > APP_BEGIN PAGE = 0/* without boot for now */ ramfuncs : LOAD = APP_CODE, RUN = RAML0, LOAD_START(_RamfuncsLoadStart), LOAD_SIZE(_RamfuncsLoadSize), RUN_START(_RamfuncsRunStart), PAGE = 0 //csmpasswds : > CSM_PWL_P0 PAGE = 0 //csm_rsvd : > CSM_RSVD PAGE = 0 /* Allocate uninitalized data sections: */ .stack : > RAMM0 PAGE = 1 .ebss : > RAML2|RAML3 PAGE = 1 .esysmem : > RAML2|RAML3 PAGE = 1 /* Initalized sections go in Flash */ /* For SDFlash to program these, they must be allocated to page 0 */ .econst : > APP_CODE PAGE = 0 .switch : > APP_CODE PAGE = 0 /* Allocate IQ math areas: */ IQmath : > APP_CODE PAGE = 0 /* Math Code */ IQmathTables : > IQTABLES, PAGE = 0, TYPE = NOLOAD ……
直接运行后暂停显示如下:
你好,编译器说明文档中对这个函数的定义解释是这样的:
_system_post_cinit(): This function is invoked during C/C++ environment setup, after C/C++ global data is initialized but before any C++ constructors are called. This function should not return a value.
找了几个同样的问题,看看是否有所帮助: