CrossStudio for ARM supports FLASH programming (and subsequent debugging)
by loading a program into the RAM of the target and transmitting it the data
to be programmed.
The use of a target loader is determined by the value of the Loader
File Path project property defined for the appropriate configuration of
the project. The Loader File Path property specifies the location of
the loader executable to use, if this is defined the loader executable will
be downloaded onto the target an run prior to download of the main
application.
In addition to the Loader File Path property, the Loader File
Type project property must be specified. This tells CrossStudio how to
communicate with the loader program. The various communication mechanisms
available are explained in more detail later. The Load File Type
property may be set to one of the following:
-
LIBMEM RPC Loader— Calls to LIBMEM library functions will be
made directly using a remote prodedure call mechanism.
-
Comms Channel Loader — The ARM debug comms channel is used to
communicate with the loader.
-
Fast Comms Channel Loader — The ARM debug comms channel is used
to communicate with the loader. This scheme is significantly faster at
downloading than Comms Channel Loader because it makes the
assumption that the loader program is always ready to read data and
therefore does not check the ARM comms channel status before transmitting
data. This may not be suitable for all targets or loaders. If you
experience reliability problems downloading and verifying programs using
this setting, you should revert to the Comms Channel Loader
setting.
-
RAM Loader — The target’s RAM is used to communicate with the
loader.
To write your own loader programs you should use the
LIBMEM loader library.