[H8-ML(1720)] 関数のポインタ渡し
From: "Kazutoshi Fukui" <fukui.kazutoshi@xxxxxxxxxxx>
Date: 2002年04月10日(水)08時23分41秒
お世話になります。
福井@初心者です。

H8/3048で
関数Aから関数Bを呼び出し、
その際関数Bの引数はunsigned char *として、ポインタで渡しています。
エミュレータでおっかけると、関数Bに入ったところで
渡したポインタのアドレスがとんでもない領域(変数なのにROM領域)に
変わってしまいます。

RAM128Kを増設し、HEWで開発しています。
RAMはCS2を使っているので、HEWのセクション設定に
0x00400000にB(未初期化変数)を追加しました。

RAMはエミュレータでチェックしたら、正常に読み書きできています。

SPがおかしいのかと思ったのですが、
関数Bからちゃんと関数Aに戻りますので大丈夫そうです。

どなたか、同じような経験をお持ちの方、または、原因がわかる方
ご教授ください。
よろしくお願いいたします。


スレッド概略
[1713(R)](起点)
 └[1719(U)]
   └[表示中]
     └[1721(1)]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]