Difference between revisions of "TARGET Embedded"

From Lazarus wiki
Jump to navigationJump to search
Line 1: Line 1:
The embedded target is still under development and only a few controllers are supported. Nevertheless, it's possible to create programs for embedded arm devices.
+
The embedded target is still under development and only a few controllers are supported. Nevertheless, it's possible to create programs for embedded arm devices. The embedded target targets systems without any operating system and typically several kBs of RAM and several dozens of kB of flash. A typical target is the LPC family of NXP with popular members like the LPC2124 with 16 kB RAM and 256 kB flash using the ARM7 instruction set.
  
 
= Embedded port =
 
= Embedded port =
Line 7: Line 7:
 
* usefull support is only available in 2.3.1 from svn
 
* usefull support is only available in 2.3.1 from svn
 
* currently only arm-embedded is supported
 
* currently only arm-embedded is supported
* supported controllers are limited to Philips LPC controllers
+
* supported controllers are limited to NXP LPC controllers
  
 
== ARM Embedded ==
 
== ARM Embedded ==

Revision as of 20:56, 19 June 2009

The embedded target is still under development and only a few controllers are supported. Nevertheless, it's possible to create programs for embedded arm devices. The embedded target targets systems without any operating system and typically several kBs of RAM and several dozens of kB of flash. A typical target is the LPC family of NXP with popular members like the LPC2124 with 16 kB RAM and 256 kB flash using the ARM7 instruction set.

Embedded port

Status

  • usefull support is only available in 2.3.1 from svn
  • currently only arm-embedded is supported
  • supported controllers are limited to NXP LPC controllers

ARM Embedded

Build

Get latest FPC from svn:

 svn co http://svn.freepascal.org/svn/fpc/trunk fpc

Get arm-embedded binutils.

For windows, they are available at http://svn.freepascal.org/svn/fpcbuild/binaries/i386-win32. You can either checkout the whole directory with or download only arm-embedded-ar.exe, arm-embedded-as.exe, arm-embedded-ld.exe, arm-embedded-strip.exe, arm-embedded-objdump.exe and arm-embedded-objcopy.exe manually. Put these utils in a directory included in your path.

Build FPC for arm-embedded:

 cd fpc
 make clean buildbase installbase CROSSINSTALL=1 OS_TARGET=embedded CPU_TARGET=arm

This builds only the compiler and the rtl instead of the whole FPC. Because of the limited capabilities of the embedded systems supposed to be used, building all packages is not usefull.