(toppers-users 2311) ARM7をJTAGデバック

にしむら@にふてぃ KHF10445 @ nifty.ne.jp
2006年 2月 24日 (金) 10:11:44 JST


こんにちは

CQデザインウェーブARM7ボードで、
OpenOCDを使ってみました。
http://openocd.berlios.de/web/
http://developer.berlios.de/projects/openocd/

巷で噂のLVDD端子はそのままで、電源にパスコンを
追加しました。

(1)USB-JTAG
OpenOCDはUSB(FT2232C)が使えます。
ここの http://www.hdl.co.jp/home.html
USB-008 を使いました。
CPUは3.3Vなので、FT2232CのVCCIOは3.3Vにジャンパ設定します。

接続
ADBUS0 -> TCK
ADBUS1 <- TDI
ADBUS2 -> TDO
ADBUS3 -> TMS
ADBUS4 -> TRST
ADBUS5 <- RTCK
(ADBUS6 -> RST)未接続
GND -- GND

FTDI http://www.ftdichip.com/ からダイレクトドライバD2XX
D30104.ZIP
をダウンロードし適当な場所に解凍します。
FT2232CボードをPCに接続し、Windowsドライバをインストールします。

(2)OpenOCDコンパイル
ダウンロードエリアのファイルは既に古いので、
svnで最新ファイルを取得します。
Cygwin窓で、

$ svn checkout svn://svn.berlios.de/openocd/
$ cd openocd
$ ./bootstrap
$ ./configure --with-ftd2xx=d:/datasheet/ftdi/drivers/d2xx
--disable-ftdi2232 --disable-amtjtagaccel --disable-parport
$ make

(3)OpenOCDコンフィグファイル編集
doc/configs/arm7_ftd2xx.cfgを編集して1行追加。

ftd2xx_device_desc "Dual RS232 A"

(4)OpenOCD実行
PC〜USB〜FT2232Cボード〜JTAG〜ターゲットCPUを接続し、
ターゲットCPU電源オン。

$ src/openocd -d2 -f doc/configs/arm7_ftd2xx.cfg

(5)GDB前準備
.gdbinitファイルを作成しておけば楽です。

####debug####
#set debug remote 1
####com-port####
#set remotebaud 9600
#target extended-remote /dev/com1
####remote-tcp####
target remote localhost:3333
monitor soft_reset_halt
#monitor arm7_9 sw_bkpts enable
monitor arm7_9 force_hw_bkpts enable
#file test1.elf
load
#break main
#info reg
#cont

(6)GDB実行
もう一つCygwin窓を起動します。

$ cd test-arm7
$ make
$ arm-elf-gdb test1.elf
$ info reg
$ b main
$ c

Insightからも接続できています。

(7)クロスコンパイラ
Cygwin-1.5.19-4
binutils-2.16.1
gcc-core-3.4.5
newlib-1.14.0
Insight-6.4
target=arm-elf
で作成しました。

insight-6.4にはこのパッチをあてました。
http://sourceware.org/ml/insight/2005-q3/msg00021.html

$ tar zxvf insight-6.4.tar.gz
$ cp cyg-tcl-sehfix.diff insight-6.4
$ cd insight-6.4
$ patch -p0 -b < cyg-tcl-sehfix.diff
$ cd ..
$ mkdir build-gdb
$ cd build-gdb
$ ../insight-6.4/configure --prefix=/usr/local/arm-elf --target=arm-elf
$ make
$ make install
$ cd ..


要望:TOPPERS/JSPで全ターゲット、デフォルトでマップファイル
を出力するようにしていただけませんでしょうか。
にしむら@にふてぃ