SDカード再び

■そして再びSDカードにトライする。部品がなかったのでマルチバイブレータとか作っていたりしたけれど、部品が揃ったので。足りない部品は、単に14pinのMILコネクタ、っていうところがまあ無計画ぶりなわけですが。SDカードアクセスは前回PIC18Fで作っているけど、今度はATmegaでC言語を使う。多少は楽かな。

 技術的には前回と同じく、レイアに沿って作りこんでいく。つまり、1)物理層 2)SD-SPI層 3)SDコマンド層 4)FAT層。
 1)は前回の試行錯誤もあって部品さえ揃えば迷うこともなく。今回違うのは全体が3.3Vで統一されているので、レベル変換の仕組みが不要でMPUとSDを直結できるのが楽なところ。

SD on Board

 なんかもう、実装部品点数は限界です。

 物理層としては、今回はCS, DI/DOを50kでプルアップし、CLKを50kでプルダウン。電源系には47uFの電解コンデンサをくっつけました。PICの時は信号がなかなか出てこなくて苦労した覚えがあるのですが、今回は素直にCLKも出ています。
 まだ、カード抜挿検出などは実装していません。

 SD-SPIではカードを挿ささずに導通試験を行いました。SDの各端子に対して、AVR側でピンのオン/オフを繰り返し、その周波数がSDカード側で拾えるかどうかを確認しています。
 SDコマンド層では起動直後のダミークロック80個程度に、CMD0とACMD41(CMD55+CMD41)を流しています。CMD9とCMD10の応答も無事に取れたので、ブロックリード/ライトと512バイトバッファを実装すれば、その上位のFAT層に着手できる。前回と同じくSDカードエクスプローラをまず作るところからかな。

Copyright (C) 2008-2015 Satosh Saitou. All rights reserved.
戻る
日記::一覧展開
2016.06
2016.05
2015.12
2015.11
2015.08
2015.07
2015.06
2015.05
2015.04
2015.03
2015.02
2015.01
2014.12
2014.11
2014.10
2014.09
2014.08
2014.07
2014.06
2014.05
2014.04
2014.03
2014.02
2014.01
2013.12
2013.11
2013.10
2013.09
2013.08
2013.07
2013.06
2013.05
2013.04
2013.03
2013.02
2013.01
2012.12
2012.11
2012.10
2012.09
2012.08
2012.07
2012.06
2012.05
2012.04
2012.03
2012.02
2012.01
2011.12
2011.11
2011.10
2011.09
2011.08
2011.07
2011.06
2011.05
2011.04
2011.03
2011.02
2011.01
2010.12
2010.11
2010.10
2010.09
2010.08
2010.07
2010.06
2010.05
2010.04
2010.03
2010.02
2010.01
2009.12
2009.11
2009.10
2009.09
2009.08
2009.07
2009.06
2009.05
2009.03
2009.02
2009.01
2008.12
2008.11
2008.10
2008.09
2008.08
2008.07
2008.06
2008.05
SDカード再び (2008.05.11)
2008.04
2008.03
2008.02
1998.11
作成:2008.04.20
公開:2008.05.11

Valid XHTML 1.1

loading image reserved place