2010-09-23

なんだこりゃぁ…

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 件のコメント: