Olimex CS-E9302日記 - JTAG 接続

JTAG接続に挑戦。今回のJTAG接続の目的は、ボードの Debug ではない。FLASHの吸い上げである。バックアップしときたいので。

JTAG接続ケーブル購入。パラレルポート用のやつ。

ARM-JTAG [ARM-JTAG] 購入先
(参考) ケーブル説明

開発PCに OpenOCD を導入。OpenOCDと関連パッケージをダウンロードしてインストール。

openocd (0.0+r211-1)

開発PCのパラレルポートとボードのJTAG端子をJTAGケーブルで接続する。ボードのジャンパは買ったときのままでOK。接続した後、ボードの電源を入れる。

開発PCで openocd 起動する。

$ su
# chmod 666 /dev/parport0
# exit
$ vi openocd.cfg ← コンフィグファイルを作る
telnet 4444
gdb_port 3333
interface parport
parport_cable wiggler
jtag_device 4 0x1 0xf 0xe
daemon_startup attach
target arm920t little reset_run 0
flash bank cfi 0x60000000 0x10000000 2 2 0
$ openocd -f openocd.cfg
Info: openocd.c:93 main(): Open On-Chip Debugger (2007-09-05 09:00 CEST)
     ←  openocd はデーモンとして起動される。

別のX端末から telnet で openocd デーモンに接続する。

↓ 別のX端末
$ telnet 0.0.0.0 4444
Trying 0.0.0.0...
Connected to 0.0.0
Escape character is '^]^.
Open On-Chip Debugger
>

これでJTAG経由でボードに接続できた。(らしい)

(参考)
OpenOCDの説明
openocd.cfg の説明
openocd.cfg のサンプル
openocd.cfg のサンプルは、開発PCの /usr/share/doc/openocd/examples にもある。
OpenOCDのコマンドの説明
OpenOCDのクイックリファレンス