MassStorageClass DEMOを動かす

最近工作ものばっかに手を取られて本業の二次裏メイド業が
おろそかになってる私。下描きでほったらかしているいないさんの絵が
早く仕上げてと訴えている。もうちょっと待っててね♥




さて本題、てDWM誌2008年5月号の付属基板と同梱のCDには
DFU経由でCQ-STARM基板に書き込みができるように
いくつかのデモがすぐに使えるようにとdfuファイル形式で
入っていました。しかし、紙面の説明がとても乏しく、そのとおりに
やっても動かない云々の意見と(その対策)が出ていたのは
みなさんご承知のとおりと思います。

この同梱されたdfuファイルというのはCQ-STARM向けではなく
STマイクロが提供する評価キットSTM3210B-EVAL/STM3210E-EVAL
向けのものです。

CQ-STARMはSTM3210B-EVALの回路構成を真似て設計されており、
STM3210B-EVAL向けのdfuデモファイル群も一応動くのですが、
その中でMassStorageClassの奴をそのまま使ってしまうと
ちょっとまずいことが起こります。

CQ-STARM上ではSDカードを挿入したときに必ずLになるポート
が出力になっており、ショートしてCPUおよびSDカードに
ダメージが行きます。どうなってるかはここ見てくださいね。
この件も私が見つけたわけではなく、去年すでに騒がれたこと
なのですが、忘れ去られた頃に新たにCQ-STARMに触る人がいる
かもしれないから書き残しておきます。


以下私が行ったわーくあらうんど。
●ソフトウエア
 初期のデモでは確かSTM3210B-EVAL上のLED4つが同時点灯するという
 コードのようでしたがV3.0.0/V3.0.1のデモコード見ると最小限のLEDのポートが
 出力になるようになってました。前回のコードはV3.0.0を適用してあるので
 そっちを使ってもらえればいいかなと思います。
 LEDの出力もCQ-STARMに合わせて変えてます。でも下のパタンカットは必須ですよ!
 ※ソースコードほしい方はメールください。

●ハードウエア
 STM3210B-EVALは本来MicroSD搭載なのでライトプロテクトと挿入検知は
 存在しない。だからここにつながるパタンいらないからカット!
 こんな感じで

ついでだから他の便利な改造も基板に施してますので紹介します。

●USBディスコネクト
 USBのデモにはRESETをかけるとUSBが切り離されるUSBディスコネクト
 のコードが含まれているのですが、CQ-STARMはハード的に駆動させるための回路
 が存在しません。したがってDFUで書いてはUSBケーブル抜きを繰り返す
 必要があり非常にめどいです。だからこの部分を追加。
 具体的な改造はこんな感じ。パタンカットもなくビアとポリイミド
 テープを駆使してなんなく達成。これでUSB-miniBコネクタが激しい抜き差しで
 ガバガバマ●コイになるのを避けられます。


●加速度センサにコンデンサ追加
 加速度センサ周りに10uFのチップセラコンと1nFのチップセラコンを追加する。
 これは加速度センサの指示ですね。つうか本来はじっそうすべk

 10uFのチップセラコンは+3.3V系以下の系では秋月のこれを愛用してます。
 こいつは2012サイズなのに大容量でかつ静電容量変化率も少ないので、
 セラミックコンデンサ対応のLDOとも相性バッチリです。
 
 1nFのチップセラコンは1608のをビアと近接のGNDパタンはがして実装。
 10uFの方は元の1uFは一旦どいてもらってポリイミドでガードした上
 に仲良く同居。こんな感じで



使ってみた感じですが、わたしの手持ちの256Mb,512MB,1GB,2GBはすべて
Windows上のディスクドライブとして認識、読み書きもできました。
残念ながらSDHCはファームウエアで対応しておらず認識できないようです。

Comments

Post a Comment








Go to top of page