[H8-ML(4502)] Re: SRAM増設時のSUB ファイル等の設定について行き詰まりました
From: hamayan <hamayan@xxxxxxxxxxxxxxxx>
Date: 2004年02月23日(月)00時25分29秒
hamayan です。

ちょっとやりたい事が見えないのですが、

"Yuki> モニタで,"f 20000 20100 55"

と言う事は作ったプログラムをモニタを使ってRAMにロードし、動かしたいのですか?

"Yuki> START R(20000),P(200),D(8000),C(9000)や,

とは言え、ここではばっちりROM領域を指定していますし、そうすると作ったプログラ
ムをROMに書いて動かしたいと?



"Yuki> まず最初は,Aki-USB開発kitにてモニタプログラムを書き込んだりしていました.SRAMの配線も合体ロボ型で組んで試していたのですが,

AKI-USBキットは半田面側にSRAMを実装できるし、付属していませんでしたか。
ここに実装するのが一番確実で、楽と思います。



"Yuki> モニタで,"f 20000 20100 55"
"Yuki> 等のコマンドで書き込んでみても,エラーが出てどうしてもうまくいかず,分からないので,

モニタ(って多分ルネサスのモニタかな?)には、外部RAMをアクセスする為の改造が
入っています?



"Yuki> もう一機普通の秋月H8 3048マザーボードを買ってきて,同様にSRAMの配線をして比べてみて,やっとAki - H8 3048 のUSB開発kitでは,P3-0〜7
"Yuki> (D8〜D15)がUSBに使われてしまっていることに気付きました.

バスなので普通の使われ方ですね。SRAMと共用できます。



"Yuki> #########usbtest.sub######
"Yuki> START R(0FEF10),P(200),D(8000),C(9000);←ここをいろいろと変えてみたのですが.

Cで確保するセクションはSUBファイルで指定しているのに、

"Yuki> #########start.asm#######
"Yuki>  .CPU 300HA
"Yuki>  .SECTION V,CODE,LOCATE=H'000000

アセンブラで確保しているセクションはLOCATE命令を使うと、混乱の元になりそう。

#########usbtest.sub######
START V(0),P,C,D(200),R,B(0FEF10)

#########start.asm#######
  .CPU 300HA
  .SECTION V,CODE

の方が・・・。



"Yuki>  ; RAM用初期化ここからは自分で勝手に加えたSRAM初期化のコードです
    ・
    ・
    ・
"Yuki>  MOV.B #H'FF,R0L

V(ベクタ用セクション?)セクションに実行コードを置くのはかなりまずい。


"Yuki> ;----------------------------------------------------------
"Yuki>  .SECTION P,CODE,ALIGN=2
"Yuki> _start:
"Yuki>  mov.l #H'0FFF10,er7

バスの初期化はここに入れるべき。

"Yuki> mov.l #DATA_END, er2   ; 転送終了

#DATA_ENDはアセンブラファイルの中でしか有効ではない。
セクションの開始アドレスを取得するなら
#STARTOF Dとか#STARTOF R、
セクションのサイズを取得するなら
#SIZEOF Dが使えます。
  mov.l #(STARTOF D),er0   ; 転送元
  mov.l #(STARTOF R),er1   ; 転送先
  mov.l #(STARTOF R + SIZEOF D), er2   ; 転送終了

Bセクションの0クリアも忘れずに。


"Yuki> 最後に添付しているようになっておりますが,Rセクションと,Bセクションが外部RAM領域に割り当てられているのですが,Rセクションでは,トー
"Yuki> タルADDRES=0になっていますし,main.c内にてint    x[10000]といったような大きなファイルを
確保しても,MAPファイルには何も変化がありませ
"Yuki> main.c内の大きな変数確保がRセクションで行わなければならないのかと思っているのですが..

main関数の内部で宣言して自動変数になっていません?。または、0クリアのみ
のBセクション扱いになっているはず。どちらにしろ
int    x[10000];
だけでは、初期化済みデータとはなっていません。

------------------------------------------------------------
)^o^()^o^()^o^()^o^()^o^()^o^()^o^()^o^()^o^()^o^()^o^()^o^(
☆☆☆☆☆☆☆☆☆☆☆☆designed by hamayan☆☆☆☆☆☆☆☆☆
from はまやん
アドレスは
	webmaster@xxxxxxxxxxxxxxxx
URL
	http://hamayan.ddo.jp/~hamayan/so-net/
The Embeded Protocol Engine
    Navajoデモ中!続々新機能追加中!!
	http://hamayan.ddo.jp:8080/
★★★★★★★★★end of message and thank you★★★★★★★

スレッド概略
[4501(R)](起点)
 └[表示中]


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


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