EEPROMのSPIバスと8051の内部ROMを使用してファームウェアのアップグレードを行っており、基本的にこれらの両方のメモリデバイスに.hexファイルを書き込んでいます。そこに書き込まれた.hexファイルを見ることができます。スレーブとマスターを見ることができます。正しく通信していますが、メモリデバイスに何も書き込めません。
提案があり、同様の問題に直面した場合は、実際の問題がどこにあるかをお知らせください。
どんな入力でも歓迎されます。
よろしく、ラヴィ
より多くの情報が必要になる可能性が高いと思います。いずれにせよ、ここに私が見ることができるいくつかの落とし穴があります:
16 進数ファイルは必ずしもメモリ イメージではありません。私が使用した 8051 は通常、メモリを記述する ASCII 形式である Intel Hex を使用します。形式については、ここで詳しく説明されています。
EEPROM への書き込みに問題がある場合は、適切な命令を書き込んでいない可能性があります。通常、SPI EEPROM はバイト アドレスですが、内部的にページングがあります。ページ境界で書き込みを開始し、ページ全体を書き込んでから、別の書き込みコマンドを発行する必要があります。慣例により、ページをオーバーランしたり、ページの途中で開始したりすると、ループします。したがって、ページの長さが 8 バイトで、インデックス 4 から 0 ~ 7 を書き始めると、次のようになります。
Page Start: Index 0 = 4
Index 1 = 5
Index 2 = 6
Index 3 = 7
Index 4 = 0
Index 5 = 1
Index 6 = 2
Index 7 = 3
さらに役立つように、部品番号と、できればデータシートを参照してください。