Overview
Once you have developed your software, you will probably want to run it on some kind of hardware device.
There are a number of different mechanisms for transferring your executable image to a target device, depending on the type of hardware you are using.
- If you are targeting a development board with a built-in USB programming interface, you can transfer your executable by simply dragging and dropping from your host to the target.
- For devices with Joint Test Action Group (JTAG) or similar interfaces, a ULINK debug adapter lets you download programs to your target hardware and program flash memory, and debug the operation of your code.
- If you are using an Integrated Development Environment (IDE) like Arm DS-5 or Keil MDK, you can program and debug your device seamlessly using the same environment you use to write your code.
Transfer your code to a hardware target
There are a number of different mechanisms for transferring your executable image to a target device, depending on the type of hardware that you are using.
- The Getting your program on your board tutorial provides information for Mbed users.
- The Blinky Project with MDK-ARM video tutorial shows how to use MDK with an STM32F4 Discovery board to get your code running on a hardware device.
- Getting started with DS-MDK includes examples of developing software for heterogeneous systems containing both Cortex-A and ARM Cortex-M processors, using ULINKpro. The examples use flash memory to transfer code to the Cortex-A processor, and U-boot to transfer code to the Cortex-M processor.
- The ARM DS-5 Debugger Linux kernel debug video tutorial guides you through debugging a sample Linux kernel using the DS-5 Debugger, a DSTREAM unit and a BeagleBoard.
Programming flash memory
Flash is a common type of non-volatile memory that is used to store code and data. Arm Development Studio includes platform entries for common development boards, which include a flash definition section. This section defines one or more areas of flash, each with its own flash method and configuration parameters.
- About file-based flash programming explains the basics of flash programming with Arm Development Studio.
- Arm Development Studio supports flash programming for CMSIS pack connections, including the ability to flash multiple images on to your target.
- If necessary, you can create new flash methods using Jython.
- If you're using the Juno development board, the Juno ARM Development Platform Getting Started Guide provides information about flash memory programming.
- Arm Development Studio provides a number of commands relating to flash memory programming.