Version 7 (modified by 16 years ago) ( diff ) | ,
---|
Software Description
Development Environment
Firmware Programming
JTAG Programmer Hardware
We are using Olimex ARM-USB-OCD USB based JTAG debugger that is attached to the JTAG port on the CM2 board (JXX).
JTAG Programmer Software
Software used for debugging and internal flash programming is OpenOCD (standard Debian package - apt-get isntall openocd
).
The file openocd.cfg, included in the source repository, has an appropriate configuration for programming the CM2 hardware, although you can experiment with different scripts to automate erasing the flash, verifying the image, and so forth.
Cross-compiler
Software development environment is based on GNU Toolchain for ARM Processor. Downloaded tarball is installed in /usr/{bin,lib,libexec,arm-none-linux-gnueabi}. The toolcahin was compiled with the arm-none-linux-gnueabi prefix so that (for example) compiler can be invoked with:
arm-none-linux-gnueabi-gcc program.c -o program
You can also get the latest version of gcc, binutils, and newlib, and compile these as configure --target=arm-elf
. Both the Makefile and the loader know (at least in theory) how to deal with ELF format CM2 images. In this case tools are prefixed with "arm-elf", so for example an appropriate value for CC
in the Makefile
would be CC=/usr/local/arm-elf-gcc
Libraries
newlib
Routines with entry points referenced by the GCC compiler, such as the ones for integer division, are provided by newlib, a library designed just for this sort of purpose. Impact on the size of the executeable from newlib is minimized. Newlib source is used unmodified, and not incorporated into the CM2 source repository.
STR71X Library
The ST's firmware library is used for peripheral management. We have made light modifications to ensure it works perfectly with GCC or other fully C99 compliant compilers. The source is included with the rest of the CM2 repository.
TCP/IP Library
We are using uIP TCP/IP stack developed by Adam Dunkels. Significant modifications have been made to the upstream uIP library to get it to support multiple protocols at the application layer. Source to this library is also include in the CM2 source repository.
Attachments (3)
-
uip-1.0-refman.pdf
(1.3 MB
) - added by 17 years ago.
uIP Reference Manual
-
10780.pdf
(2.8 MB
) - added by 17 years ago.
STR71x Firmware Library Usre Manual
-
FlashProgramming.pdf
(451.2 KB
) - added by 16 years ago.
STR7 Family Flash Programming User Manual