Sandiskの2GBのmicroSDも含めてみた…んー、これはまた…
77コマンドが行って1が帰ってきて、それに対して69コマンドを送って、E0、3Fが帰ってきた後、全然無反応に…こいつもまた癖があるらしい…こまったもんだ…
SDカード毎にシーケンスが違うってんぢゃないだろなぁ…
===追記===
色々調べた結果…
http://bitcraft.web.fc2.com/embedded/sdcard/sh7144spi.html
ここのやり方がよさそう。
で、平行記載されているコードを参照して、各SPIコマンドは、一連のコマンドが始まる前にCSをLにして(ダミークロックなしでOK)、SPIを発行、レスポンスや続いてのコマンドを実行し、一連の流れが終わったらCSをHにしてダミークロックで1バイト送信、を守ればよさげ。
コマンドの流れは
1・クロック送出
2・初期化コマンド0x40
3・判定コマンド0x48
4・0x7Aコマンド
5・初期化0x77->0x69コマンド
6・0x7Aコマンド(この時点でSDかSDHCかわかる、またSD/SDHCの初期化も完了する)
7・0x69で、カード情報詳細取得
って流れになりそう。あとは、これらを使って、読み出し周りでおかしいとこがないかの調査だな
===追記===
とりあえず、Buffalo 1GB、KINGMAX2GB、SANDISK2GBの各microSDの初期化は完了したっぽい…が、再生時にクロックが妙な感じ…
0 件のコメント:
コメントを投稿