問題タブ [eeprom]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
arduino - プログラムでArduinoスケッチの名前を見つけますか?
Arduino Leonardo で実行されている Arduino スケッチの名前を特定したいと思います。これは、Arduino をプロビジョニングするときに、ファイル名を変更して、スケッチでスクリプト内の番号を自動的に変更できるようにするためです。
これは可能ですか?
なぜこれを行っているのかを理解するために、50 台の Arduino をプロビジョニングする必要があり、一連のスクリプトを手動で編集するのではなく、ファイル名を変更するだけです。
私は自分がやろうとしていることをどのように行うのかわかりませんが、傍観者への誠意を示すために、ここに私が Arduino に EEPROM を設定するコードを示します:
アイデアをお寄せいただきありがとうございます。サラ
python - 文字列からガベージデータを削除する方法
組み込みデバイスのEEPROMの読み取りと書き込みにPythonを使用する必要がある状況にあります。最初のページ(256バイト)は、不揮発性データの保存に使用されます。私の問題は、変数の長さが変化する可能性があることであり、固定量を読み取る必要があります。
たとえば、文字列はアドレス30に格納され、長さは6〜10バイトです。どこで終わるかわからないので、可能な限り最大の長さを読み取る必要があります。それは私に文字列に余分なゴミを与えるということです。
私はPythonにかなり慣れていません。読み込まれた後、文字列内のそのデータを自動的に切り取る方法はありますか?
c - Arduino の EEPROM は不安定なようですが、2 回書き込む必要がありますか?
私は高水準言語を使用して PC やスマートフォンをプログラミングすることに慣れていますが、マイクロコントローラーは私にとって新しい領域です。それらはどういうわけか異なっており、より信頼できず、異なる技術を必要としていますか? 以下は、Arduino Mega で実行されている EEPROM に読み書きするためのコードの一部です: (ここでは使用されていないイーサネット シールドが接続されています)
出てくるものは次のとおりです。
..... 一般に、アドレス 1 と 2 は常に不安定で、10 を超えるメモリ位置を変更するには 2 回の書き込みが必要です。
別のボードに切り替えても、同様の奇妙なことが起こります。
この一見不安定なパフォーマンスにプログラミングを適応させるにはどうすればよいでしょうか?
c - PIC18F46J50EEPROMの読み取り/書き込み
私が取り組んでいるプロジェクトは以下の通りです。
ADuC7061のUSARTはPIC18F46j50EUSARTに接続されています。aduc7061は継続的に情報を送信し、pic18fはそのeusart0を介してその情報を受信します。
ここで問題となるのは、その情報をpic18のeepromに保存し、128x64のグラフィックディスプレイで操作した後にその情報を表示する必要があるということです。
high-level - eeprom で使用する高水準言語をコンパイルできますか?
eeprom で使用する高レベルのプログラミング言語をコンパイルできるかどうかを知る必要があります。コンパイルされたバイナリからヘッダーを削除できることは知っていますが、アドレスがどのように影響を受けるかはわかりません。
これを「質問ではない」とマークしないでください。私はこのサイトで、ばかげた質問と質問ではない何かとの違いを見分けられない人々から、多くの愚痴をこぼします。
eeprom で使用する高水準言語をコンパイルできますか?
(編集) Winbond 27C512 EEPROMを視野に入れています。
eeprom - EEPROM はワンタイム プログラム可能ですか?
アプリケーションで変更する場所の一部だけを消去したい。EEPROM はこれらの機能をサポートしていますか? それとも一度だけプログラム可能ですか?
arduino - ArduinoのオンボードEEPROMへのデータの書き込み
現在、ArduinoのEEPROMにデータを保存する関数を書き込もうとしています。これまでのところ、指定した文字列を書き込んでから、プログラムが最初に実行されたときにそれを読み戻しています。文字列の長さを最初のバイトとして格納しようとしていますが、コードは次のとおりです。
私が抱えている問題は、EEPROMの最初のバイトを読み取るときに、想定される長さの値を取得することです。ただし、ループは3回しか実行されません。コードのいくつかの興味深い点にコメントしましたが、エラーはどこにありますか?
configuration - 小型組み込み機器のEEPROMパラメータ構造
小さな組み込みデバイスの再設計(PIDコントローラー)で私が取り組んでいる主な問題は、デバイスパラメーターの保存です。ここで部分的に提示した古いソリューションはスペース効率が良かったのですが、新しいパラメーターが追加されたときに維持するのが面倒でした。これは、以下の例のように、EEPROMアドレスと一致する必要があるデバイスパラメータIDに基づいていました。
すべてのアドレスはハードコーディングされ、次のアドレスは前のデータサイズに応じて定義されました(アドレス間の不均一な間隔に注意してください)。EEPROMデータストレージが無駄にならなかったので効率的でしたが、バグを導入せずに拡張することは困難でした。
コードの他の部分(つまり、HMIメニュー、データストレージなど)では、コードは、次のような、指定されたアドレスに一致するパラメータリストを使用します。
次に、これらのパラメーターを使用するコードで、たとえば、以下に示すユーザーメニュー構造で、独自のPARAMタイプ(構造)を使用してアイテムを作成しました。
これで、パラメーターのリストが構造体の配列として作成されます。
..。
基本的に、すべてのパラメータには一意のIDがあり、このIDはハードコードされたEEPROMアドレスと一致する必要がありました。パラメータのサイズが固定されていないため、パラメータID自体をEEPROM(または他のメディア)アドレスとして使用できませんでした。上記の例のEEPROM構成は16ビットワードでしたが、原則として問題ではありません(文字のためにより多くのスペースが無駄になるため、将来的には8ビット構成を使用することをお勧めします)
質問:
これを行うためのよりエレガントな方法はありますか?いくつかのハッシュテーブル、よく知られているパターン、同様の問題の標準的な解決策?EEPROMのサイズは現在はるかに大きくなっています。より洗練されたソリューションと引き換えに、固定パラメーターサイズ(ブールパラメーターに32ビットを浪費)を使用してもかまいません。固定サイズのパラメータのように見えますが、パラメータIDをアドレスとして使用できます。この方法には、私には見えない明らかな欠点がありますか?
現在、分散型HW(HMI、I / O、メインコントローラーが分離されている)を使用していますが、すべてのデバイスがこのパラメーター構造を認識している構造を使用して、たとえばリモートI/Oがスケーリング方法を認識できるようにします。入力値、およびHMIは、すべてパラメーターIDのみに基づいてデータを表示およびフォーマットする方法を知っています。つまり、すべてのパラメーターが定義される単一の場所が必要です。
私はGoogleの調査を行いましたが、一部のデータベースを含まない小型デバイスではほとんど見つかりませんでした。データ構造のCコードを生成するXML定義についても考えていましたが、小さなデバイス(最大512 Kフラッシュ、32 K RAM)に適した洗練されたソリューションがあったのではないでしょうか。
arrays - Arduino EEPROMの書き込みと読み取り配列?
Arduino の電源を入れると、次のようにフラッシュに int 配列が格納されます。
プログラムボタンが押されると、ピエゾがノックを拾うのを待ち、この配列は次のように変わります。
( http://grathio.com/assets/secret_knock_detector.pdeに基づく)
EEPROM との間でアレイの書き込みと読み取りを行うにはどうすればよいですか? これは私にとってまったく新しいものなので、どんな助けも素晴らしいでしょう。