• ベストアンサー

マイコンのRAMサイズについて

マイコン初心者です。 あるプログラムをマイコンへ組み込んでいます。 使用しているのはSTM32F030R8です。 RAMサイズは8KBとのことですが、メモリを確保できる領域の 上限がわからなくて困っています。 アプリで利用できる領域の上限はどれくらいでしょうか? 結果だけでなく、調べ方を合わせてご教示いただけると幸いです。 よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

調べ方: 1.STM32F030R8 のデータシートを取り寄せます ・会社から外部アクセスが認められていればWebからとか,外部アクセス禁止ならばチップを購入した代理店から入手する。 →文書番号:DoclD024849 が該当するみたい。 2.上記文書番号のデータシート次を読めば解ります。  2. Desctiption - Table2 を読みます。 → アプリで利用できる領域について書いてあります。 ついでに  3.Functional overview - 3.2 Memories  5.Memory mapping にも目を通しておきます。(2章のTable2以外からではサイズは確定できないけど) こんなんでよいですか?

kaishaingotanda
質問者

補足

早速のご回答ありがとうございます。 > 2. Desctiption - Table2 を読みます。 → アプリで利用できる領域について書いてあります。 ついでに > 3.Functional overview - 3.2 Memories > 5.Memory mapping 上記を確認して以下のように解釈しました。 ・アプリが変数として利用できる領域は8Kbyteで、システムが利用するメモリは別 よろしくお願い致します。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • H8(マイコン)のプログラムサイズ

    マイコンの勉強ということでH8/3694F(ROM:32KB、RAM:2KB)を 購入しました。 開発環境はルネサスのHEWを使い、プログラムは同社のFDTを使って 拡張子motファイルをROMに書き込んでいるのですが、そのmotファイル が59KBであることに気付きました。 59KBだとCPUのROMサイズ(32KB)を超えているのですが、これは32KB分 までしか書き込まれていないということになるのでしょうか? プログラム実行中は問題なく動作しているように見えるのですが・・・ また、プログラムサイズを簡単に確認する方法、見積もる方法など 参考になるサイトをご存知でしたら教えて下さい。 よろしくお願いいたします。

  • グラフィックボードとRAMサイズ

    お世話になります。 DELL T3500を購入しました。4GbyteのRAMです。標準のグラフィックボードのオンボードメモリが512Mbyteあります。WindowsXP 32ビットを選択したところ、マイコンピュータの右クリック プロパティー で表示されます、システムのプロパティーでのRAMのサイズが、約2.5Gbyteほどになりました。 DELL T3400の時にも、RAMサイズは少なく表示されていましたが、ここまで少なくはなく、約3Gbyteでした。こちらのボードは、256Mbyteのオンボードメモリです。 DELLサポートでは、「仕様です。」とのこと。「表示だけで、実RAMサイズは4Gbyteあるので、問題はありません。」とのことでした。 ところが、アプリケーションがOSも含め使えるメモリも、実際この表示サイズしかありません。 「グラフィックボードのRAMが、画面の表示切り替えを実行する際に、本体のRAMを使うために、OSが使えないRAM領域を強制的に確保している」とも聞いたのですが、この件について、解説のあるリンク等あれば、ご紹介いただければ幸いです。 追記: 画像処理のライブラリを使用しています。ライブラリがOSを排他制御できるRAM領域が別に512Mbyteあります。従って、いずれのパソコンでも実際の稼動では、2Gbyte前後のRAMしか、OSとアプリケーションは使うことが出来ていません。ただし、ディスクスワップなどの現象は起きていません。LAN接続、その他常駐ソフトは一切なく、OSのアップデートもSP3までです。自作の画像処理ソフトと、画像の閲覧のためのエクスプローラー、画像圧縮ソフト(自作)などわずかなプログラムが動作している程度で、通常のRAM使用量は500~600Mbyteに押さえ込まれています。 従って、実害は今のところありません。 よろしくお願いいたします。

  • H8Sマイコンの機能に相当するAtmelのマイコン

    現在、H8S2368マイコンというのを使用しているのですが、Atmelのマイコンでそれに相当するようなマイコンをご存じでしたらご教授頂きますようお願い致します。 なお、H8S2368マイコンの仕様は http://japan.renesas.com/products/mpumcu/h8s/h8s2300/h8s2368/index.jsp こちらのサイトで次のようになっていました。 低電圧高速動作 3.0~3.6V/33MHz動作 最小命令実行時間:30ns ROM/RAM 512kB/32kB:H8S/2368F 384kB/32kB : H8S/2364F 384kB/24kB:H8S/2367F 256kB/32kB : H8S/2362F 256kB/24kB : H8S/2361F 256kB/16kB : H8S/2360F 256kB/16kB:H8S/2365 -  /16kB:H8S/2363 シリアル通信機能強化 SCI×5ch(I2C×2chオプション) 等 どうぞ、よろしくお願いいたします

  • ルネサスマイコン(R8C) ビルドエラーについて

    マイコン:R8C(R5F21226) 開発環境:HEW(Windows7) マイコン開発初心者です。 恐れ入りますが、ご教授頂きたく質問させて頂きます。 とあるプログラムを組んでいるのですが、 下記ビルドエラーが発生し、原因がわからず困っています。 『L2321 (E) Section "vector" overlaps section "program"』 文面から見るに、「ベクタ領域のアドレうがROM領域に重複している」 ということで宜しいのでしょうか? 各領域のアドレス値、並びベクタ領域も変更していません。 ※全て初期値のままです。 お手数ですが、このエラーが発生する主な原因を 教えて頂けないでしょうか?

  • マイコンのメモリマップについて

    マイコンに限った話ではないかとは思いますが、現在マイコンプログラムの勉強をしておりますが、マイコンのデータシートのメモリマップを見ると先頭番地からフラッシュメモリのマッピングがあり、その次に各種レジスタやRAMのマッピングがなされています。 (1)このメモリマップというものは論理アドレスと物理アドレスの対応表のようなものだと解釈しておりますが、この対応表自体はRAMの一部に格納されているのでしょうか? (2)例えばフラッシュメモリの物理アドレスが00~FFまであり、RAMの物理アドレスも00~FFだった場合で且つ フラッシュメモリの後ろにRAMのマップを作る場合、メモリマップの中の論理アドレスは00~2FFまでで物理アドレスはフラッシュメモリの部分は00~FF,RAMのブツリアドレスも00~FFになるという理解で良いですか? ひょっとするとかなり見当違いをしている質問かもしれません。 よろしくお願いします。

  • 表領域サイズについて

    現在Oracle10gにてDB構築しているのですが、表領域サイズについてよくわからないので詳しい方がいらしたら教えてください。 以下の3つのテーブルを同一表領域内に入れたいと考え、表サイズの合計サイズ分の表領域を確保してそこにテーブルを作成しようとしたときに領域が足りずにエラーが発生します。 テーブルA 604,800KB テーブルB 444,352KB テーブルC 725,760KB 合計サイズ:1,774,912KB→確保サイズ:1,740MB ブロックサイズ:16KB しょうがないので少しずつ拡張して入るように調整したところ「1,750MB」確保したところ無事に作成することができました。 Enterprise Managerコンソールで使用量を確認したところ「1,744.063MB」となっていました。 約10MBほど多く領域が取られているのですが、この現象についてご存知の方がいらっしゃいましたらご教授願えませんでしょうか。 ちなみに他の領域についても同様に計算どおりのサイズになっておらず、増えているサイズはマチマチです。 よろしくお願いいたします。

  • H8マイコン スタック領域について

    スタック領域について教えて下さい。 [動作環境]  開発環境:ルネサス HEW Version 4.08  マイコン:ルネサス H8/1653  コンパイラ:H8SX,H8S,H8ファミリ用C/C++コンパイラパッケージ V7.00 HEWにて新規作成しますと、セクション定義にスタック領域(S)のアドレスと stacksct.h 内に スタック領域のサイズ #pragma stacksize 0x200 が自動で生成されると思います。 しかし、入手したH8/1653用のサンプルには #pragma stacksize のような サイズ指定がありませんでした。 [サンプル] (1)セクション定義やスタック領域のサイズ指定が無い (2)サブコマンドファイル(xxxx.sub)内でアドレスは設定されているが サイズの設定が無い。 -- サブコマンドファイル(xxxx.sub)-- START  CStart/00000000; START  P,C,D/00000400; START  B,R/00FF2000; START S/00FFC000; [質問]  質問1   (1)のスタック領域はどこに配置されるのでしょうか?  質問2   (2)のスタック領域は 00FFC000 を基準にどう確保   されるのでしょうか? (a)の方向へ確保?(b)の方向へ確保?          00F00000 (a)         ↑       00FFC000 (設定アドレス)         ↓       00FFFFFF (b)        質問3   (1)、(2)共にスタック領域と同時にヒープ領域も指定がありません。   これらは指定しなくても問題ないものなのでしょうか?   また、熟練者の方は指定しないものなのでしょうか? よろしくおねがいします。

  • H8 マイコン セクションの設定について

    最近H8/3694Fを使ってマイコンの勉強をしております。 HEWを使ってコンパイルするときのセクションの設定に ついて質問があります。 プログラム・セクションの設定を一通り終え、ビルドすると 「L2321 (E) section "S" overlaps sction "P"」 とエラーメッセージが出てしまいました。 色々調べてみるとSはスタック領域、Pはプログラム領域 でこれに重なりができてしまっているようなのですが、 これ以上どうしてよいのかわからず困っています。 おそらくセクション設定を変更すればよいと思っていますが プログラム領域にどれくらい、スタック領域にどれくらい を配置すればいいというのはどうやって求めればよいのでしょう? HEWのメモリマップを表示させて見る方法があるようですが 見てもいまいちわかりませんでした。 使用環境:OS:WindowsXP、HEW4.04.01.001 以上、追記補足いたします。詳しい方教えていただけないでしょうか

  • PICマイコンについて

    PICマイコンについての質問です。 現在LCDドライバをPICマイコンで動かして液晶に表示させようとしてます。 PIC16F1619のCuriosityを使用してます。 この条件では、液晶は表示され問題なかったのですが、メモリの大きい PIC16F18346に置き換えて同じプログラムで動かそうとしたところ、 (もちろんMCCで必要な部分の設定はし直したことろ)、デバッグはOKになったものの 全く液晶に表示されませんでした。 おかしいなとおもってロジアナで波形を確認したところ、CS、A0、SDO、SCKの 波形が異なっていました。プログラムが全く同じなのにこんなことはありえるのでしょうか? 原因はそれだとは思いますが、わかりましたら、ご連絡願います。よろしくお願いいたします。

  • オセロ(リバーシ)の対局プログラム

    マイコンの2色ドットマトリクスLEDを使ってオセロゲームを作りたいのですが、 参考になる思考プログラムのソースが見つかりません。 プログラムメモリのサイズは64Kバイト(32Kワード)ありますので、仮にC言語で組むと100~200ステップくらいは書けるのではないかと思います。変数などに使えるRAMは3936バイトです。 このサイズに収まるくらいのプログラムソースをご存知の方、情報をお待ちしています。 ランダムに打って対戦するのでは面白くありませんが、あくまでもお遊び程度のものを考えています。初心者でも勝てる程度の弱さで構いません。 私はC言語以外には、VBや昔のBasic程度なら分かりますのでそちらでも構いません。