槫林といいます。 人にアドバイス出来るほどのスキルはないんですが、私はサイズの 大きい物&アクセススピードが遅くて良い様なものなどだけ、外部 RAMで使用しています。方法は以下の通りです。 変数などを以下の感じで宣言します。 #pragma section xxxxx(ここは適当な名前) char a[10000]; #pragma section で、セクションの設定で外部RAMのアドレス及びセクション名を記述します。 上記の場合、初期値無しの変数なのでセクション名を、Bxxxxxとします。 (初期値付きなら、Rxxxxx かな?。すみません、試してません) これで外部RAMに確保されると思うのですが、これでは駄目でしょうか? 使い方がおかしい等ありましたら、突っ込み入れてください。 問題がある場合は、自分のプログラムを修正しないと・・・・。 でわ Picard Luc wrote: > わさびぃさん、ありがとうございます。 > > 現在動かない原因を探るために > 外部RAMを使用するだけのプログラムを書いているのですが、 > 大きい配列を確保しようとするときは以下のような感じでいい > のでしょうか? > ------------------------------ > long (*a)[100000]; > a = (long(*)[100000])0x200000; > ------------------------------ > それとも、 > ------------------------------ > long a[100000]; > ------------------------------ > みたいに普通に宣言するだけでもいいのでしょうか? > 前者ではコンパイル時にエラーはなく、後者では > Illegal stack accessというエラーが出ました。 > > これはやはりBとRの領域が正しく設定されてないからだと > 思うのですが、前回のメールで書いた方法だけだと > 何か足りないものがあるのでしょうか? > > _________________________________________________________________ > ハイセンスな商品を気軽に購入 MSN ショッピング http://shopping.msn.co.jp/ >