RAMを使いすぎています。これはどのように測定できますか?
私がプロジェクトで使用しているRAMの量を知りたいのですが、私が知る限り、実際にそれを実行する方法はありません(自分で計算して計算する以外に)。私はRAMが不足していると判断したかなり大きなプロジェクトの段階に到達しました。 セクションを追加すると、明確な理由もなく、コードのどこかですべての地獄が崩れるため、これを決定しました。私が#ifndef何か他のものを出したら、それは再び機能する。新しいコードにはプログラム的に問題はありません。 しばらくの間、使用可能なRAMの限界に近づいているのではないかと疑っていました。スタックを使いすぎているとは思いませんが(可能ですが)、実際に使用しているRAMの量を判断する最良の方法は何ですか? 調べて解決しようとすると、列挙型と構造体を取得するときに問題が発生します。どのくらいのメモリがかかりますか? 最初の編集:また、私は開始以来スケッチを非常に編集しました、これらは私が最初に得た実際の結果ではありませんが、私が今得ているものです。 text data bss dec hex filename 17554 844 449 18847 499f HA15_20140317w.cpp.elf 16316 694 409 17419 440b HA15_20140317w.cpp.elf 17346 790 426 18562 4882 HA15_20140317w.cpp.elf 最初の行(テキスト17554を含む)は多くの編集の後、機能していませんでしたが、2番目の行(テキスト16316を含む)は正常に機能しています。 編集:3行目には、すべての機能、シリアル読み取り、私の新しい関数などがあります。本質的にいくつかのグローバル変数を削除し、コードを複製しました。私はこれを言及しています(疑わしいとして)それはsaeごとのこのコードに関するものではなく、RAMの使用量に関するものでなければならないからです。これで元の質問「どのように最適に測定するか」に戻りますが、まだいくつかの答えをチェックしています。ありがとう。 上記の情報を実際にどのように解釈しますか? これまでのところ、私の理解は次のとおりです。 `TEXT` is program instruction memory `DATA` is variables (unitialised?) in program memory `BSS` is variables occupying RAM …