●●●くみこの組み込み相談室●●●
■ このスレッドは過去ログ倉庫に格納されています
0297269
NGNGデバッガは「HP Debug User I/F」ってやつです。
でも今回問題としている、「通信で変数を参照したい」ってのはこのソフトでのことではないです。
えと、現地でデバッグ&コンパイル&フラッシュ書き換えってことがあるらしいです。
その時エミュレータなんて使えないから以下のようなプログラムを利用してデバッグします。
シリアルケーブルで実機とノートパソコンをつないで、
例えばパソコンからターミナルソフトで「watch 0C000123 word<CR>」って送ると、
実機は「0C000123 03E8<CR>」ってな感じで変数の値を返すように組んであります。
実装は以下のようなイメージです。(実際はもっと泥臭いです)
switch ( size ) {
case 1:
Transmit("%08X %02X\r", address, *(byte *)address);
break;
case 2:
Transmit("%08X %04X\r", address, *(word *)address);
break;
case 4:
Transmit("%08X %08X\r", address, *(dword *)address);
break;
default:
Transmit("error\r");
}
ということで、デバッグするには変数のアドレスが必要なのですが、
static変数や構造体メンバのアドレスはどうすれば簡単にわかるだろう?ってことです。
>>289
まいった、、全然わからんです(;゚Д゚)
制御においてのタスクって何を表してるんでしょう?関数?モジュール?
>>293
objと一緒に吐かれるlstを見てみましたが、どうなってるのかようわからんかったです。。
>>294 >>296
期待をもってバイナリエディタとにらめっこしてみます。
またまた長文ゴメソ…
長いんでsage
■ このスレッドは過去ログ倉庫に格納されています