ここから本文です
Dr.Kikkie (KIKI) : 不許無断天才|免責:本稿を真に受けて損害があっても知らん。

書庫過去の投稿日別表示

全1ページ

[1]

苦悶式SDカード 4.7a

この時期、毎年寒くなるとこまめに風邪をひいたりして体調を崩します。ようやく戻ってきたのでハナシの続きを。って、どこまで話したっけ?状態。
 
あ、そうそうMSXの汎用ポートにSDカードをつないで、SPIモードでアクセスしようとしているところです。
で、ハードウエアはさて置き、電気的に接続できたとしてソフトウエアを書きかけたのでした。
しかし、いくつかの分からないところが出てきて調査に戻ったのであります。
 
分からないところの第一点は、「初期化」の部分です。
大雑把には
に書いたとおりでいいかと思いますが、細かいところで、SDカードは<CMD0>→<CMD1>でいいのか? <CMD0>→<ACMD41>としないと受け付けられないのか? という疑問があります。
<ACMD41>というのは、SDC専用の初期化開始コマンドで、アプリケーション特化コマンドの<CMD55>をアタマに付けて、<CMD55>→<ACMD41>として使います。
elm-chan さんの「MMC/SDC使いかた」
にフローがありました。
 
イメージ 1
 
・・・場合分けが多いですね。アセンブラ止めてC言語にしようかな?(・∀・;)
でも、既にMMCは身近には売ってないし「2GBまで」と宣言しちゃったから、<CMD55>→<ACMD41>しか選択肢はない・・・という判断でいいのだろうか?
 
「SASIバス用SD/MMCアダプタ」という興味深いモノを開発してらっしゃる方がいました。先行して「SASIバス用FCアダプタ」にトライしたがナゾの不具合で一旦中断、SD/MMCアダプタに再トライされたものです。
この「SASI HDD用I/F」の MSX用はぼくも持っていまして、肝心の32MB HDDがクラッシュしたのがしばらくMSXを離れていた直接の原因でもあります。
さて、このサイトで興味深い記述をみつけました。
 
(ここから引用)
「その他も含めて、SDカードアクセスのバスライン初期化に際してうまくいかない原因を調べてみたところ、ざっとこれだけのものがありました。
  • CMD1で初期化しようとしている。ACMD41を使用するべき。
    (1chip MSXにて、SDカードでもCMD1を受け付けることがわかっているので、意外と可能性は低いです)
  • 電源のパスコンがない。
  • DinとDoutにプルアップがない。
  • 使用できる範囲外の電源電圧を供給している。
  • GNDが弱いか接続もれ。
  • 各コマンド終了直後、CS='H'状態で8クロックのダミークロックが必要。
…正解は最後のやつでした。文献なんかを読んでもあまりこんなこと書いてないみたいな気がするのですが、これで一発で動作しました。それどころか、昔1chip MSX版MZ-700でロジックを変更して以降初期化できなくなった8MBのSDカードもあっさり初期化できるようになりました。おお、これは1chip MSXにも反映せねばなりませんな。
今まで動いていたのは…偶然か。」(引用ここまで)
 
・・・いろいろと面白いですねえ。「1chip MSXにて、SDカードでもCMD1を受け付けることがわかっている」とか「1chip MSX版MZ-700」とか。
 
で、<CMD1>でいいなら、これで行きます。ほいで、「各コマンド終了直後、CS='H'状態で8クロックのダミークロックが必要」、これ行きます。
ただし、ぼくが参照しいているテキスト「フラッシュ・メモリ・カードの徹底研究」(2006年CQ出版)には、「ダミー・クロック送信時の/CSは”H”でも”L”でもかまいません」とあります(95頁)。「どっちでもいい」というのが困るんですよね。/CS='H'で行きます。フロー先頭の「74クロック以上のダミーコード」の部分で「/CS='H'」とあるのと整合的です。先頭ではDIも'H'なのねん。「苦悶式SDカード 4」の「/CS=Lで統一」は撤回。
 
フローを参照しておきながらアレですが、なるべく一本道で行きたいのです。フローチャートでいうと「MMC Ver.3」に至る道ですね。一歩前進したのか後退したのか分かりませんが、とにかく少し疑問の部分が整理できました。ダメだったら、またそのとき考えます。
 
フローに記載はありませんが、SDカードからのレスポンスを待っている部分にタイムアウトも必要だと思います。苦悶式SDカード 4では「100ms」と書いていますが「数100ms」かかることもあるらしい。大容量SDだと1秒かかることも。でも、「対象は2GBまで」と宣言したので「数100ms」のタイムアウトで考えます。(本日これまで。)

全1ページ

[1]

1
2 3
4
5
6
7
8
9
10
11
12
13
14
15 16 17 18 19 20
21 22 23
24
25 26 27
28 29
30
31

過去の記事一覧

最新のコメント最新のコメント

すべて表示

kik**41010
kik**41010
非公開 / 非公開
人気度
Yahoo!ブログヘルプ - ブログ人気度について

よしもとブログランキング

もっと見る
本文はここまでですこのページの先頭へ

[PR]お得情報

数量限定!イオンおまとめ企画
「無料お試しクーポン」か
「値引きクーポン」が必ず当たる!
CMで話題のふるさと納税サイトさとふる
毎日お礼品ランキング更新中!
2019年のふるさと納税は≪12/31まで≫

その他のキャンペーン

みんなの更新記事