問題タブ [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.
pic - i2c経由のPIC16F877 + 24LC64
私の仕事は、最初の 255 バイトを外部 EEPROM (24LC64) から内部 (PIC16F877) に i2c バス経由でコピーすることです。私はAN1488、すべてのデータシート、MikroCガイドを読みました(ああ、はい、私はMikroCを使用しています)が、絶望的です..私のコードはsmtngを読み取ろうとするが、プログラマーでPICのeepromを読み取ることを意味します(これは読み取ることができません24LC64なので、何が入っているかさえわかりませんが、確かにsmtngがあり、私が得ているものとは異なります)、すべてのEEPROMが「A2」または「A3」で埋められています. 私の推測では、24LC64 にアドレス指定している最初のアドレスだと思います。私のコードを調べて(かなり小さいです=))、私の間違いを指摘していただけませんか。
PS私はシーカンシャル読み取りでこれを試しましたが、「読み取り」(再び「A2」..)最初のバイトのみ..だから私はこれを投稿しました..
PSS 私は「ハードウェア」で作業しており、Proteus は関与していません..
PSSS 重要な情報が記載された 24LC64 が 1 つしかないため、書き込みをテストできません。そのため、WP ピンで Vcc にプルアップされています...
arduino - SPI による外部 EEPROM への書き込み
デバイスの動作を構成するために別のデバイスの EEPROM に書き込もうとしており、Arduino Uno でデバイスを制御しています。
このウェブページによると、SCK はピン 13 に接続され、SDA はピン 11 に接続されています。
この例から取ったi2c_eeprom_write_byte
との2 つの関数があります。i2c_eeprom_read_byte
私の問題は、Wire.available()
常に 0 を返すことです。これは、スレーブ デバイスがマスター デバイスである Arduino に何も送信していないことを意味します。
スレーブデバイスから読み取るにはどうすればよいですか?
arduino - Arduino Mega vs Uno
私たちはドアベル認識システムをプログラミングしており、ほとんどの回路を処理するために Arduino を使用することにしました。私が確信していないことの1つは、Arduino UnoとArduino Megaのプログラム容量です。Uno のフラッシュ メモリは約 32 KB しかないことはわかっていますが、私たちのプログラムは 1,000 行のコード (32 KB のしきい値を超えると思います) 以内に収まると予測されています。
プロジェクトを完了するのにあまり時間がないので、すぐに必要なものを処理できない場合に、Uno にメモリを多重化または追加する方法を考え出すのに多くの時間を費やしたくありません。 .
UnoにEEPROMを追加するのはどれほど難しい (そして時間がかかる) でしょうか? メガに固執したほうがいいでしょうか?
また、そもそもArduinoではなく、PC(DAQボードなどを使用)またはRaspberry Piを使用する方が簡単ですか?
私たちが設計しているシステムは、指紋スキャナーからの入力を読み取り、固有のリングをスピーカーに出力するために使用されています。私たちが必要としているのは、システムが物理的にコンパクトであり、家庭内の実際のドアベル システムを置き換えることができるようにすることです (Arduino がそれを達成するのに役立つことを願っています)。
コードが約 1000 行で投影される理由は、ドアのロック/ロック解除などのモバイル アプリケーション通信を実装する可能性があるためです。私のCプログラムのいくつかのサイズ(千行の範囲にあります)は、通常約100 KBです。
基本的に、プログラムが予測サイズよりも大きくなるか、それよりも小さくなる可能性があるポイントまで、それをスケーラブルにする必要があります。1 つで十分な場合でも、複数のボードを購入しなければならなくなりたくありません。
c - PROGMEM に保存されたデータ型は、後でプログラム内で変更できますか?
こんにちは、私は Arduino でゲームを作成していますが、両方のタイプのスコア currScor と hiScor を追跡する 2 つのグローバル変数を保存する必要があり、uint32_t
RAM スペースを節約するために、それらをuint32_t
currScorとしてマークしましPROGMEM = 0;
た。コンパイラは、定数変数に代入できないと言います。フラッシュに保存されているこの変数に追加する方法はありますか? あまりにも多くの書き込みがそのタイプのメモリを焼き尽くしてしまうのではないかと心配していますが、EEPROM の使用を検討すべきでしょうか。
stm32 - STM32F4でバックアップSRAMをEEPROMとして使用する方法
STM32F4 で EEPROM をエミュレートするには、次の 2 つの方法があります。
- オンチップ 4K バイトのバックアップ SRAM
- 特定のソフトウェア アルゴリズムを備えたオンチップ フラッシュ
2 番目のオプションについては、AN3969 で説明しています。
しかし、残念ながら、Google は最初のオプション (4Kb のバックアップ SRAM を EEPROM として使用する) の使用方法に関する情報を提供できませんでした。..
誰でもこのトピックについて助けてもらえますか?