Coldfire: Problem trying to get code autobooting

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Coldfire: Problem trying to get code autobooting

1,436 次查看
Ivychacha
Contributor I
Hi all,

I'm using the M5235BBC with the Metrowerks CodeWarrior IDE.

I've got a projet which does a copy from flash to ram of the code just before execution, the copy is successful, but here comes a problem: I can't get the code in a standalone mode, which means that I have to use the debugger to run the code.

I've tried the same thing with a simple project 'helloworld', it works without any problem.

Could anyone help me out? Thanks.

--
Ivy

Message Edited by CrasyCat on 2007-04-13 01:56 PM

标签 (1)
标记 (1)
0 项奖励
回复
1 回复

520 次查看
Ivychacha
Contributor I
here's my lcf file, I tried to respect the dBUG memory map.

Code:
MEMORY{user (RX) : ORIGIN = 0x00020000, LENGTH = 0x0sdram (RWX) : ORIGIN = 0x00000000, LENGTH = 0x0vector_ram (RWX) : ORIGIN = 0x00000000, LENGTH = 0x0sram (RWX) : ORIGIN = 0x20000000, LENGTH = 0x0ext_sram (RWX) : ORIGIN = 0x30000000, LENGTH = 0x0ipsbar (RWX) : ORIGIN = 0x40000000, LENGTH = 0x0ext_flash (RWX) : ORIGIN = 0xFFE00000, LENGTH = 0x0usr_ext_flash (RWX) : ORIGIN = 0xFFE50000, LENGTH = 0x0}SECTIONS{.sdram : {} > sdram.vector_ram : {} > vector_ram.ipsbar : {} > ipsbar.sram : {} > sram.ext_sram : {} > ext_sram.boot_flash :{vectors.s (.text)mcf523x_lo.s(.text)hwinit.c(.text)C_4i_CF_Runtime.a(.text)fp_coldfire.a(.text)C_4i_CF_MSL.a(.text).= ALIGN(0x4);} > usr_ext_flash__end_of_text = .;___DATA_ROM = __end_of_text;___DATA_RAM = ADDR(user);.sys_sram : AT(___DATA_ROM){__START_RODATA = .;*(.rodata)__END_RODATA = .;__START_DATA = .;*(.data)__END_DATA = .;__START_SDATA = .;*(.sdata)__END_SDATA = .;__SDA_BASE = .;.= ALIGN(0x4);StartCopiedCode = .;*(.text)EndCopiedCode = .;} > user.uninitialized_data :{__START_SBSS = .;*(.sbss)*(SCOMMON)__END_SBSS = .;__START_BSS = .;*(.bss)*(COMMON)__END_BSS = .;. = ALIGN (0x4);___HEAP_START = .;___HEAP_END = ___HEAP_START + 0x10000;___SP_END = ___HEAP_END;___SP_INIT = ___SP_END + 0x1000;. = ALIGN(0x4);} >> user_romp_at = ___DATA_ROM + SIZEOF(.sys_sram);.romp : AT(_romp_at){__S_romp = _romp_at;WRITEW(___DATA_ROM);WRITEW(ADDR(.sys_sram));WRITEW(SIZEOF(.sys_sram));WRITEW(0);WRITEW(0);WRITEW(0);}___IPSBAR = ADDR(.ipsbar);___VECTOR_RAM = ADDR(.vector_ram);___SDRAM = ADDR(.sdram);___SDRAM_SIZE = 0x01000000;___SRAM = ADDR(.sram);___SRAM_SIZE = 0x00010000;___EXT_SRAM = ADDR(.ext_sram);___EXT_SRAM_SIZE = 0x00080000;___EXT_FLASH = ADDR(usr_ext_flash);___EXT_FLASH_SIZE = 0x001C0000;___heap_addr = ___HEAP_START;___heap_size = 0x10000;__SP_INIT = ___SP_INIT;}

 

Message Edited by Alban on 2006-09-26 02:13 PM

0 项奖励
回复