It will be build using the commant in the summon-arm-toolchain folder:
./summon-arm-toolchain
The binaries will be built in the $(HOME)/sat folder. If you add export PATH=$PATH:$HOME/sat/bin
to your .bashrc
file you can use the commands directly (after a new login to your
windowmanager).
The commands are called: arm-none-eabi-*
To download your programmes to your controller:
I have the ARM-USM-OCD from Olimex and I use openocd.
If you use debian you can just install it using your preferred
package manager (e.g. apt-get install
openocd).
However this is nor really the problematic part. The problem
actually is the configuration file(s) which you neet to get the damn
thing to work!
I strongly suggest you create your own openocd.cfg
in your working directory which contains
the configuration file for your interface: source
[find interface/arm-usb-ocd.cfg]
some timing parameters (do not aske me about them! openocd
complains if they are missing so I inserted them from my older file. jtag_khz
6000 jtag_nsrst_delay
200 jtag_ntrst_delay
200
the configuration file for your target source
[find target/at91sam7x256.cfg]
That is it!
You can start openocd by just executing it (without any
parameters):
openocd
If
you connected the target to the interface and the interface to your
computer you should get the following result: Open
On-Chip Debugger 0.5.0 (2011-08-09-08:45) Licensed
under GNU GPL v2 For bug
reports, read
http://openocd.berlios.de/doc/doxygen/bugs.html Info :
only one transport option; autoselect 'jtag' 6000 kHz adapter_nsrst_delay:
200 jtag_ntrst_delay:
200 srst_only
srst_pulls_trst srst_gates_jtag srst_open_drain Runtime
Error: openocd.cfg:14: invalid command name "halt" in
procedure 'script' at file
"embedded:startup.tcl", line 58 at file
"openocd.cfg", line 14 Info :
clock speed 6000 kHz Info :
JTAG tap: sam7x256.cpu tap/device found: 0x3f0f0f0f (mfg: 0x787, part:
0xf0f0, ver: 0x3) Info :
Embedded ICE version 1 Info :
sam7x256.cpu: hardware has 2 breakpoint/watchpoint units
Open an other terminal in your working directory and use the
following commands to load your programme to the flash and start it: halt at91sam7
gpnvm 2 set flash
write_bank 0 <your-.bin-file> 0x0 reset resume
0x100000
That should do the trick. However you check your jumper settings
before you start:
TST: removed
JTAGSEL: removed
ERASE: removed
PHY_PD: disconnect all connections
I wish you luck.
I will add some example programmes as soon as they are running ... :-)