ええと、私はしばらくこれにこだわっています。この時点で、おそらく2〜3週間です。私は何が間違っているのかよくわかりません。私はこのスパイフラッシュパーツに書き込もうとしています。今は、ルーチンを実行して消去、書き込み、読み取りを行って、それを分離しようとしていますが、今のところうまくいきません。もちろん、私は途中でたくさんのバグを解決しました...
とにかく、ボード上でWPラインを高く結んで、クロックを200kHzまで遅くしてから、消去ルーチンを実行すると、次のようになります。
まず、デバッグのためだけにIDを確認します。それは9Fコマンドです。次に、06コマンドでWRENを設定し、C7はチップ全体の消去です。次に、ステータスビットを05で確認します。この事のチップ消去時間はわずか35msです。
次に、コードをリロードして書き込みを試みます。
まず、WRENを06に設定し、ステータスをチェックしてWRENが05に設定されていることを確認します。次に、ページプログラムコマンド02をアドレス0x000000に送信します。あなたは私が最初の数ビットとしてdeadcafeを書いているのを見ることができます。また、ここに描かれていないのは、書き込みが完了した後(1ページまたは256バイト)、0x04コマンドを送信してWRENを無効にします。私はそれを観察し、ページバッファーの最後の4バイトを0xAA、0x55、0xAA、0x55に設定しました。CSがハイになる直前にそれらを確認しました。
次に、リロードコードを停止し、読み取りサイクルを実行してみます。 読み取りコマンドとして0x03を送信し、アドレスとして0x000000を送信します。そして、デバイスからすべて0xFFを返します。
デバイスが自分の読み取りIDに応答していることを確認し、WRENコマンドを設定して、自分の声を認識して応答できるようにします。この時点で何が悪いのかわかりません。データシートを読み、いくつかのことを試してみることに戻ると思いますが、誰か洞察があれば、助けをいただければ幸いです。これは、このことに取り組んでいる別のイライラする週末になることを形作っています。