lpc21isp(2)

 lpc21ispにデバッグモードがあるので、動きを見てみます。

VurtualBoxでは下記です。

./lpc21isp -debug3 -control -detectonly /dev/ttyUSB0 115200 12000
Turn on debug, level: 3.
Use RTS/DTR to control target state.
Only detect LPC chip part id.
lpc21isp version 1.83
COM-Port /dev/ttyUSB0 opened...
ioctl get ok, status = 6
ioctl set ok, status = 6
ioctl get ok, status = 6
DTR (1), RTS (1)
ioctl get ok, status = 6
ioctl set ok, status = 4
ioctl get ok, status = 4
DTR (0), RTS (1)
ioctl get ok, status = 4
ioctl set ok, status = 0
ioctl get ok, status = 0
DTR (0), RTS (0)
Synchronizing (ESC to abort).Answer(Length=13): 'Synchronized(0D)'
StrippedAnswer(Length=13): ''Synchronized(0D)'
ioctl get ok, status = 0
ioctl set ok, status = 6
ioctl get ok, status = 6
DTR (1), RTS (1)
ioctl get ok, status = 6
ioctl set ok, status = 4
ioctl get ok, status = 4
DTR (0), RTS (1)
ioctl get ok, status = 4
ioctl set ok, status = 0
ioctl get ok, status = 0
DTR (0), RTS (0)
.Answer(Length=13): 'Synchronized(0D)'
StrippedAnswer(Length=13): ''Synchronized(0D)'
ioctl get ok, status = 0
ioctl set ok, status = 6
ioctl get ok, status = 6
DTR (1), RTS (1)
ioctl get ok, status = 6
ioctl set ok, status = 4
ioctl get ok, status = 4
DTR (0), RTS (1)
ioctl get ok, status = 4
ioctl set ok, status = 0
ioctl get ok, status = 0
DTR (0), RTS (0)
...続く...

 TPC-500ではMARY基板抜き差しで固まったり不安定です。
 しばらく同期出来ないなりに動いていたのですが、今はエラーで動きません。

Turn on debug, level: 3.
Use RTS/DTR to control target state.
Only detect LPC chip part id.
lpc21isp version 1.83
Can't open COM-Port 115200 ! (Error: 2d (0x2))

 動いて同期できないときは、確か?

Turn on debug, level: 3.
Use RTS/DTR to control target state.
Only detect LPC chip part id.
lpc21isp version 1.83
COM-Port /dev/ttyUSB0 opened...
ioctl get ok, status = 6
ioctl set ok, status = 6
ioctl get ok, status = 6
DTR (1), RTS (1)
ioctl get ok, status = 6
ioctl set ok, status = 4
ioctl get ok, status = 4
DTR (0), RTS (1)
ioctl get ok, status = 4
ioctl set ok, status = 0
ioctl get ok, status = 0
DTR (0), RTS (0)
(ESC to abort).Answer(Length=0): ''
StrippedAnswer(Length=0): '''
ioctl get ok, status = 0
ioctl set ok, status = 6
ioctl get ok, status = 6
DTR (1), RTS (1)
ioctl get ok, status = 6
ioctl set ok, status = 4
ioctl get ok, status = 4
DTR (0), RTS (1)
ioctl get ok, status = 4
ioctl set ok, status = 0
ioctl get ok, status = 0
DTR (0), RTS (0)
.Answer(Length=0): ''
StrippedAnswer(Length=0): '''

 こんな感じだったと思います。

 IPLが"Synchronized+0Dh"を送信してきて、それに"?"で答えた後、さらに
Synchronizedで答えるのが、IPLの初期動作なはずです。VirtualBoxではそれなりに?進んでいます。
 IPLはコントロール端子を手動で操作すると(出来るとすると)ターミナルソフトで操作出来るみたいです。
 英語のビデオとかありますけど、ここが詳しいです。
http://www.vnop.net/~uch/blog/2009/06/090613.html

 あくまでも、LinuxとMARY基板の通信が目的なので、じっくり調べます。