How can I define starting address for my program?

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

How can I define starting address for my program?

1,479 次查看
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by jojuden on Wed May 11 04:38:21 MST 2011
I have considered buying an LPC1768 development board which comes with bootloader installed. Bootloader makes this board show as a mass storage when connected to USB. Flashing is made without any programming tools, just drag and drop your .bin file into the folder. Starting point for application should be set to 0x2000. Manufacturer have an instructions which show how this is done in uVision.
I have now installed LPCexpresso and cant find place where to set that starting memory address. So how is this done?
0 项奖励
回复
5 回复数

1,451 次查看
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by SuperCartman on Thu Jun 30 06:28:18 MST 2011
Ok, I was able to find what I was looking for in the <PROJECT NAME>_mem.ld file. Thanks for your help guys.
0 项奖励
回复

1,451 次查看
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by Ex-Zero on Wed Jun 29 06:44:53 MST 2011
Code Red Wiki?

http://support.code-red-tech.com/CodeRedWiki/EnhancedManagedLinkScripts
0 项奖励
回复

1,451 次查看
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by SuperCartman on Wed Jun 29 06:40:48 MST 2011
Can you please tell me how or where you found the documentation on how to change the linker script to change the starting address of the program. Thanks for your help.
0 项奖励
回复

1,451 次查看
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by jojuden on Wed May 11 07:08:25 MST 2011

Quote: gbm
In the demo code pack from CodeRed you will find something called RDB1768cmsis_LedFlash_64k. This shows how to relocate the code to arbitrary address. Modification of linker scripts is required. There is also an article on this topic at CodeRed support site.



Thanks for quick reply. I did not find that demo, but I found out how to edit those linker scripts. I disabled auto management of linker script from project properties -> MCU linker -> target, copied and renamed original .ld files generated by LPCexpresso, defined where to find my own linker scripts. Also edited linker script so that includes refers correctly my newly created copies of _mem.ld and _lib.ld sripts.

I put my own linker scripts to project root /linkscript folder at first it did not work. I found out that it requires that _mem.ld and _lib.ld have to be located at project root. Using <> instead of "" in include clauses seems to work also.
0 项奖励
回复

1,451 次查看
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by gbm on Wed May 11 05:29:05 MST 2011
In the demo code pack from CodeRed you will find something called RDB1768cmsis_LedFlash_64k. This shows how to relocate the code to arbitrary address. Modification of linker scripts is required. There is also an article on this topic at CodeRed support site.
0 项奖励
回复