• ベストアンサー

EEPROMのデータが壊れる。

EEPROMのデータが壊れるというのは、どういった時に壊れるのでしょうか。書き込み中に電源を切ると壊れるということは聞いたことはありますが、ほかの場合もあるのでしょうか?

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

  • ベストアンサー
  • DIGAMMA
  • ベストアンサー率44% (620/1404)
回答No.2

こんにちは、  「正常回路上で、正常使用しているのに、いつの間にかデータが変化してしまう」としてお答えします。  99%は、書き込み時の不具合です。規定の電圧を規定の時間与えなかった場合に生じます。PROMライターを使用していると思いますが、それが粗悪品か、不良品であることが考えられます。速度の速いパソコンを使うと、その分、加電時間が短くなってしまう、という信じられないようなライターも実在します。  残りの可能性は、EEPROMそのものの製造不良です。まともなメーカー品なら、まずありえない事ですが、管理の甘い海外メーカーでは、出荷検査に抵触した粗悪品(本来は廃棄処分)を廃棄したと偽って、横流しする輩がおります。  御参考になれば幸いです。

その他の回答 (2)

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.3

「データが壊れる」というのは、期待したデータが掛けない、または読めない状態になることを指しているのでしょうか。そうと解釈して回答します。 他の回答にある原因に加えて、動作したりしなかったりというのは、例えばGNDピンが浮いていたり、製品の中にハンダボールが混入していて、ピン間ショートが起こった場合などが考えられます。 ただ、アプリケーション的な観点からみて、セーブされているはずのデータが消えたりするのは、十中八九ソフトの不具合です。

  • 530529
  • ベストアンサー率16% (86/521)
回答No.1

どのような状態を「データが壊れる」と言われているのか不明ですが、書き込んだデータがEEPROM上で正しく読み出せないという事であれば、外部から高エネルギーの粒子等がメモリーセルにあたればそのビットが変化する可能性があります。(地上ではほとんど無いと思いますが...) また、EEPROM自身が壊れる事を言っておられるのなら、当たり前でしょうが、電源のピンやデータの入出力ピンに異常な電圧や逆電圧をかけたりすれば素子としての破壊になるか思います。(静電気など)

関連するQ&A

  • PIC EEPROM

    PICでLEDのデータをEEPROMに書き込んで電源を切ってもデータを保存させ、再度電源オンの時は電源を切る前のデータで点滅させたいのですが、EEPROMって書き込みと読み出しってありますよね?  この場合は、LEDデータの書き込みのみで大丈夫でしょうか?

  • EEPROMのデータが化ける!

    困っているので教えてください。販売後、2ヶ月間は何も問題が無かったのですが、急にEEPROMのデータが化けるようになって、困っています。具体的には、月1回データ集計するのですが、数値的におかしなデータになってしまいます。EEPROMの中身を調べた所、数箇所でやはりデータがおかしくなっていました。回路的にはプルアップ処理はしています。インターフェースは「I2C」です。メーカーはマイクロチップです。データの書き込みは必要なバイトのみ書き込んでいます。書き込み時間は約5ms程度です。機械にはステッピングモーターが3個搭載されています。ノイズ、プログラム等色々考えられると思いますが、考えられる原因等ありましたら、アドバイスを御願いします。静電ノイズ試験機でノイズ注入しても液晶の表示等は化けますが、EEPROMのデータは化けませんでした(もしかしたら注入の仕方が悪いかもですが) このような経験をされた方、又は詳しい方、アドバイスを御願いします。

  • EEPROMのデータ化けについて

    扱っている製品にてデータが変わっていることが発生しています。 原因が特定できていません。 原因を究明できるヒントを教えてください。 今現在考えられているのが 1.電源電圧(EEPROMへの)が低いため、不安定な波形になってしまいデータが変わる。 2.ノイズによりデータが変わる。 3.EEPROMから電荷が抜けてしまい、データが変わってしまう。 ハード・ソフトの調査が必要かと思い、波形はとる予定です。

  • PICのEEPROMのデータが壊れてしまうことが…

    PICのEEPROMのデータが壊れてしまうことがあります PICのEEPROMにデータを書き込み、電源のON/OFFを繰り返しているとデータが妙な値に書き換わってしまうことがあります。 弊社の製品でこのような問題が発生していますが、製品の個体差がはっきりあり、不具合の出ない個体もあります。 製品Aではアドレスaが書き換わってしまうのに、製品Bではアドレスbのデータが電源ON/OFFで不正な値(決まった値)になってしまいます。 どのような原因が考えられるでしょうか。お詳しい方がおられましたら、アドバイスを頂けるとありがたいです。よろしくお願いします。

  • EEPROMについて

    PIC16F877とEEPROM(24LC256)を使って、LCDモジュール(SG12864A)に、文字、絵を表示したいのですが、EEPROMの使い方が全くわかりません。 EEPROMにデータを入れるにはどうすればよいのでしょうか?分かる方、教えてください!

  • Atmel Studioのeepromアドレス

    現在Atmel Studio6.2でATmega88pマイコンのプログラミングを行っています。 https://sourceforge.jp/projects/cc1101driver/scm/svn/blobs/head/branches/test002_AVRS6_20140819/test02/test02/src/main.c AVR studio4.19 + winAVR Cコンパイラで作成していたコードをAtmel Studio6.2に移してコンパイルを行ったところ、EEPROMアドレスへのデータ書き込みが逆になってしまう現象が起きました。 #define EEPROM __attribute__((section(".eeprom"))) ctl_data EEPROM gctl_data; reg_slave EEPROM greg_slave[100]; int EEPROM eprom_level[14]; char EEPROM eprom_fixid[3]; char EEPROM test_mode; char EEPROM monitor_state; int EEPROM wdt_cnt; int EEPROM cnt_loop_break; このようなコードを”AVR studio4.19 + winAVR”の時からしているのですが、このときは ctl_data EEPROM gctl_data; こちらがEEPROMアドレスの0x0000番地から始まっていたのですが、Atmel Studio6.2の場合は、 int EEPROM cnt_loop_break; こちら側が0x0000番地に配置するようになっていて、逆になってしまっています。 この場合、一番最初のアドレスに割り当てするには、コードも逆にして記述する必要がありますでしょうか? どうぞ、ご教示頂きますようお願いいたします。

  • AVRマイコンの内部EEPROMの値について

    AVRマイコンの内部EEPROMの値について AVRマイコンにて、デバイスシャットダウン時にあるデータを内部EEPROMに保存し、起動時にその前回保存したデータを読み込むという制御を考えています。 ここで質問ですが、初めてプログラムを焼いたデバイスに電源を投入した場合に、内部EEPROMに入っている値を読み込んだ場合、その値は不定値なのでしょうか? それとも決められた値なのでしょうか? ソースの対処はどのようにすればよろしいでしょうか? ご教授下さい。 よろしくお願い致します。

  • PIC EEPROM

    16F84AでLEDのデータをEEPROMに書き込みしたいのですが、正常に書き込み出来ればEEPROMのウィンドウにもデータが出てきますよね?

  • MplabのRead_EEPROM

    Mplab8.92+PICkit3でPICのプログラムをしています。 ポート入力をPIC内蔵のEEPROMに書込むようなプログラムを作り ターゲットボード上で動作させた後、PICをボードから抜き取り Mplab上でReadしViewメニューのEEPROMで見ると ポートの入力とは異なる値になっています。 (ボードの入力はプルアップした上で固定してあります。) しかし、A社のプログラマーでReadすると ポート入力がEEPROMに正しく書込まれています。 (A社のプログラマーはサポートのデバイスが少ないので 現実的には使えないのですが。) 色々試してみると プログラムとして、「PIC内蔵EEPROMデータメモリに初期値として書込んだデータ」は 正しく、書込み、読取できましたが ボード上で動作しないと確定しないようなデータ (ポートの入力、カウント回数・・・等) は、正しく書込まれている (プログラムの動作から確認すると) けれどもMplab上のReadでは正しく表示されませんでした。 MplabのReadとはこういうものなのでしょうか? (私の推測ではMplabのRead-View-EEPROMはCPUを実機で 動作させることなくパソコン上でシュミレーションするための もののように思えてきたのですが・・・) それとも、何か設定すれば可能になるならば 教えてください。 私の場合Mplabを使う場合 シュミレーションとかは使いません。 コンパイルしてCPUに書込み(Program)するだけです。

  • EEPROMの種類を判定する方法について

    H8/3052Fボード(秋月より購入)でを使用してi2cのシリアルEEPROMとインターフェースする装置を作成してデータ書き込みは出来るようになったのですが、 EEPROMの種類(512KBなのか512KBなのか)をプログラムで判定して256KBのEEPROMがセットされたらエラーを返すようにしたいのですがいい方法ありませんか?

専門家に質問してみよう