2008-11-04 17:40:54 +01:00
|
|
|
|
Olimex STR-P711
|
|
|
|
|
^^^^^^^^^^^^^^^
|
|
|
|
|
Features:
|
|
|
|
|
|
|
|
|
|
- MCU: STR711FR2T6 16/32 bit ARM7TDMI™ with 256K Bytes Program Flash,
|
|
|
|
|
64K Bytes RAM, USB 2.0, RTC, 12 bit ADC, 4x UARTs, 2x I2C,2x SPI,
|
|
|
|
|
5x 32bit TIMERS, 2x PWM, 2x CCR, WDT, up to 50MHz operation
|
|
|
|
|
- Standard JTAG connector with ARM 2x10 pin layout for programming/debugging
|
|
|
|
|
with ARM-JTAG
|
|
|
|
|
- USB connector
|
|
|
|
|
- Two channel RS232 interface and drivers
|
|
|
|
|
- SD/MMC card connector
|
|
|
|
|
- Two buttons
|
|
|
|
|
- Trimpot connected to ADC
|
|
|
|
|
- Two status LEDs
|
|
|
|
|
- Buzzer
|
|
|
|
|
- UEXT - 10 pin extension connector for Olimex addon peripherials like MP3,
|
|
|
|
|
RF2.4Ghz, RFID etc. modules
|
|
|
|
|
- 2x SPI connectors
|
|
|
|
|
- I2C connector
|
|
|
|
|
- On board voltage regulator 3.3V with up to 800mA current
|
|
|
|
|
- Single power supply: 6V AC or DC required, USB port can power the board
|
|
|
|
|
- Power supply LED
|
|
|
|
|
- Power supply filtering capacitor
|
|
|
|
|
- RESET circuit
|
|
|
|
|
- RESET button
|
|
|
|
|
- 4 Mhz crystal oscillator
|
|
|
|
|
- 32768 Hz crystal and RTC
|
|
|
|
|
|
|
|
|
|
Power Supply
|
|
|
|
|
|
|
|
|
|
6V AC or DC (or powered from USB port)
|
|
|
|
|
|
|
|
|
|
GIO with on-board connections (others available for prototyping):
|
|
|
|
|
|
|
|
|
|
SIGNAL DESCRIPTION PIN
|
|
|
|
|
------- --------------------- -----
|
|
|
|
|
MISO1 BSPI0 to MMC/SD P0.4
|
|
|
|
|
MOSI1 " " "" " " P0.5
|
|
|
|
|
SCLK1 " " "" " " P0.6
|
|
|
|
|
SS1 " " "" " " P0.7
|
|
|
|
|
U0RX UART 0 P0.8
|
|
|
|
|
U0TX " " " P0.9
|
|
|
|
|
U1RX UART 1 P0.10
|
|
|
|
|
U1TX " " " P0.11
|
|
|
|
|
BUZZ Buzzer P0.13
|
|
|
|
|
WAKE-UP Button P0.15
|
|
|
|
|
AIN0 Potentiometer (AN_TR) P1.3
|
|
|
|
|
LED1 LED 1 P1.8
|
|
|
|
|
LED2 LED 2 P1.9
|
|
|
|
|
WP MMC/SD write protect P1.10
|
|
|
|
|
USBOP USB P1.11
|
|
|
|
|
USBON " " P1.12
|
|
|
|
|
BUT Button P1.13
|
|
|
|
|
CP MMC/SD card present P1.15
|
|
|
|
|
|
|
|
|
|
Jumpers
|
|
|
|
|
STNBY Will pull pin 23 /STDBY low
|
|
|
|
|
|
|
|
|
|
OpenOCD
|
|
|
|
|
^^^^^^^
|
|
|
|
|
|
2008-10-30 01:23:38 +01:00
|
|
|
|
For a debug environment, I am using OpenOCD with a Wiggler-clone JTAG interface. The
|
|
|
|
|
following steps worked for me with a 20081028 OpenOCD snapshot.
|
|
|
|
|
|
|
|
|
|
GENERAL STEPS:
|
|
|
|
|
|
|
|
|
|
1. Check out OpenOCD
|
|
|
|
|
|
|
|
|
|
svn checkout svn://svn.berlios.de/openocd/trunk openocd
|
|
|
|
|
|
|
|
|
|
2. Build OpenOCD
|
|
|
|
|
|
|
|
|
|
Read the INSTALL file from the files you just downloaded. You probably just need
|
|
|
|
|
to run:
|
|
|
|
|
|
|
|
|
|
./bootstrap
|
|
|
|
|
|
|
|
|
|
Then configure OpenOCD using the configure script created by ./bootstrap.
|
|
|
|
|
|
|
|
|
|
./configure --enable-parport
|
|
|
|
|
|
|
|
|
|
Build OpenOCD with:
|
|
|
|
|
|
|
|
|
|
make
|
|
|
|
|
|
|
|
|
|
Install OpenOCD. Since we used the default configuration the code will be
|
|
|
|
|
installed at /usr/local/bin/openocd. Other files will be installed at
|
|
|
|
|
/usr/local/lib/openocd (configuration files, scripts, etc.) and /usr/local/share/info
|
|
|
|
|
(online documentation accessable via 'info openocd'). You need root priviledges
|
|
|
|
|
to do the following:
|
|
|
|
|
|
|
|
|
|
make install.
|
|
|
|
|
|
|
|
|
|
3. Setup
|
|
|
|
|
|
|
|
|
|
OpenOCD reads its configuration from the file openocd.cfg in the current directory
|
|
|
|
|
when started. You have two different options:
|
|
|
|
|
|
|
|
|
|
* Create a symbolic link named openocd.cfg to one of the configuration files in
|
|
|
|
|
/usr/local/lib/openocd, or
|
|
|
|
|
|
|
|
|
|
* Use a custom configuration file specified with the ‘-f <conf.file>’ command line
|
|
|
|
|
switch opeion when starting OpenOCD.
|
|
|
|
|
|
|
|
|
|
For the STR-P711, I have included bash scripts in the scripts sub-directory.
|
|
|
|
|
|
|
|
|
|
4. Running OpenOCD
|
|
|
|
|
|
|
|
|
|
Make sure the ARM7TDMI board is powered and the JTAG cable is connected
|
|
|
|
|
|
|
|
|
|
Run 'src/openocd -d' (might be required to be root) and check for any errors
|
|
|
|
|
reported. The '-d' option enables debugging info.
|
|
|
|
|
|
|
|
|
|
5. Telnet interface
|
|
|
|
|
|
|
|
|
|
telnet into port 4444 to get a command interface: 'telnet localhost 4444'
|
|
|
|
|
|
|
|
|
|
6. GDB
|
|
|
|
|
|
|
|
|
|
start arm-elf-gdb
|
|
|
|
|
type 'file <executable.elf>' to load the executable
|
|
|
|
|
type 'set debug remote 1' to enable tracing of gdb protocol (if required)
|
|
|
|
|
type 'target remote localhost:3333' to connect to the target
|
|
|
|
|
The same commands from the telnet interface can now be accessed through the
|
|
|
|
|
'monitor' command, e.g. 'monitor help'
|
2008-11-04 17:40:54 +01:00
|
|
|
|
|