雑誌付録ARM基板のLANアダプター作成にはまる
アートワークを始める(4/29/2011)
どういうはずみか、雑誌付録(2009年5月インターフェース誌)のLPC2388基板のLANアダプター基板を作ることになった。先にぶちあげたプロジェクトのテーマ、モーター制御、ロボット制御からみれば全く関係ない開発なのだが、こういう行き当たりばったりはアマチュアの特権である。現役時代の所長の仕事が目的に対して厳密だったので、その反動なのかもしれない。前にも書いたが、運命の赤い糸に結ばれて何かが決まっていくというのが好きである。
まあ、しいてこじつければウェブサーバーのライブカメラのマシンになり、モーターでカメラの制御をするかもしれないというところか。ソフトの目処はだいたい見通しがついたので、イーサネットPHY層チップDP83848(正規名はDP83848C)のLAN基板の具体的な構成を考える。
親基板のこのLPC2388基板は、以前、ChaNさんのビデオに刺激され0.5ミリピッチのVbatピンを切って、RTCバックアップバッテリーの実装がしてある。このとき電池CR2032はマザー基板にフォルダーをつけて、コネクターでつないだ。
LAN基板をつけるのにはこの縦型の電池フォルダーが邪魔になる。まずこれをはずし、STM32でやったように、CPUチップの上にカプトンテープで絶縁した表面実装用のコイン電池のフォルダーをつける。いけない。Vbatピンのハンダ付けがとれた。また例の照明付きのヘッドルーペを持ち出して再度ハンダ付けやり直し。何かとても無駄なことをやっているようで、ひとりで苦笑いする。
やっと元に戻った。テスターでVbatに3Vがかかっていることを確認し、胸をなでおろす。これだけ手間をかけたのだから、このLAN基板にSDカードまでつけようと欲張ってみた。雑誌の拡張基板と同じ構成である。ChaNさんがLPC2388用のFatFSを作ってくれている。これを利用しない手はない。このためにLAN関係のレイアウトが片隅に寄り余計窮屈になる。べたアース汎用基板は片面基板になるので、親基板とのコネクターを付けるためハンダ面が表側になってしまうが、これは仕方がない。まあSDカードが上に来るのでこれで良しとしよう。
久しぶりのアートワークを念入りに始める。これが結構はまる。紙を真っ黒にして何回も配線をやりなおす。狭くなっているので大変だ。でも、自分にはこういう工作が何と言っても一番面白い。根がケチなこともあるのだろうが、ありあわせの汎用基板に、あれこれ部品の配置を考えて、きれいな配線を考えることは、キットや出来上がりの基板に部品をハンダ付けしていくより何倍もわくわくする。創意工夫で事態が一気に解決した時の快感がたまらない。部品の配置を換えてみて、配線が少しでも楽になると暫く機嫌が良い。
アートワークの途中で、モジュラー用のLEDを基板につける余裕はとてもないことがわかった。用意しているモジュラージャックは、例の付録のフリースケールのイーサネットマイコンボード(MCF52233)のため、DigiKeyで買ってあったものである(結局、つけないままになっている)。
こいつはパルストランスはついているが、LEDが入っていない。LEDは、リンクとアクティブ、それに10/100Mbps識別の3つも使うことになっている。パルストランスとLED付きのモジュラーを秋月で買いなおすことにする。
SparkFunにガイガーカウンターキットを発注(4/30/2011)
すんさんの掲示板にも報告したが、あれこれ迷っていたガイガーカウンターをとうとう発注してしまった。前回のブログ記事に「正しく怖がって欲しいものだ」などと偉そうに書いたが、電子工作をやっているのに身の回りの放射線量も測れないようでは、「安全神話」を信じているだけの、ただの能天気になってしまう。
「正しく怖がる」ためには、自分なりの判断基準を持っていなければならない。実は、大分昔にもガイガーカウンターを作る寸前まで調べたことがある。秋月のキットも、ストロベリーリナックスのキットも知っていた。ただ値段が、気楽に買って実験してみようという値段ではなかったので、買うところまで行かなかった。
それで今度の騒ぎである。全世界的にガイガーミュラー管(GM管)が不足しているそうだ。どうせなら、真空管にあたるGM管ではなく、半導体(PINフォトダイオード)のセンサーがあると聞いていたので、自作するなら、このキットがないかと調べてみた。さすがにこれは見つからず、あっても10万以上する完成品しかないことがわかる。
ウェブを調べると、雨後の竹の子のように、キットや完成品が売り出されている。いずれも5万円以上という結構な値段だ。こういう人の弱みにつけこむ商売は、所長の最も嫌うところである。
絶対に乗ってやるものかと、心に決めていたのだが、ストロベリーリナックスが再び、以前の価格と同じでガイガーカウンターキットの予約受付を始めた。この良心的な価格設定に好感を持って、思わず申し込んでみた。しかし、申し込んだのが遅すぎたのだろう一回目の入荷数に入れず、見事はずれた(うわさでは、申し込みが3000件以上あったとか)。こうなると意地になるのが性分である。
検索してみたら、SparkFunでもキットを売り出していることがわかった。今は在庫切れだが、バックオーダーを受け付けている。GM管はストロベリーのものと同じ、LND社のチューブLND712を使っている(価格は$149.95 プラス送料 $30.82 $180.77 円高なので¥14,570)。
日本代理店のスイッチサイエンスにはラインナップされていない。だめもとで、本体のサイトの会員になり試してみたら、外国からも受付をしてくれそうである。勇んで申し込みをすませる。
次の日、メールが届いた。やっぱりだめかと読んでみたら、「輸出規制国(北朝鮮、イラン、スーダンなど)に売ったり送ったりしないか申告せよ」とのメールだった。
Hello,
On your recent order, you ordered 1 x SEN-09848: Geiger Counter. This item
is export controlled by the United States government. Do you intend to sell
or send this item to anyone in any of the following countries: Cuba, Iran,
North Korea, Sudan, or Syria? Please let me know at your earliest
convenience.
「ご存知のように日本では、大地震で原発が重大事故を起こしているので、自分のところで監視するために使い、外国に売るなどと言うことは絶対無い」とメールを返す。
As you know, we, Japanese have experienced a serious accident of nuclear
plant with a large earthquake. I want to use this item only for myself
in order to watch environmental radiation. So I absolutely do not intend
to sell or send it to those countries.
ほどなく、「注文を受け付けるので手続きせよ」というメールが来た。FAXでクレジット番号を送る。これはOlimexで経験済みだ。自宅のFAXから国際電話をかける。順調に送られた。これでめでたく注文は受理された。いつ商品が来るかはわからないが、まあ安心を買ったような気がして心が軽い。
LAN基板の工作開始(5/4/2011)
そうこうするうちに、すんさんの掲示板で、千石でGM管を販売しているということを知った。価格は¥3700。少し小さいようだがレーセオン社だから信頼はおけそうである。ただ、もう売り切れているだろうな。 仕事の帰り、秋葉原に立ち寄り、秋月でLED付きのモジュラーを買うついでに、千石でGM管があるかどうか調査した。やはりどの階にも品物はなかった。店員に今さら聞くのもしゃくなので何も聞かずに帰る。
LAN基板の方である。アートワークがひとわたり完成したので、基板の工作を始める。やっぱり、モジュラージャックの穴あけが一番大変だ。前回はモジュラーの固定用のボスの部分に大穴を空けてみっともない形になった。今度はドリルスタンドもある。モジュラーの接続ピンは2列目がmil規格の丁度半分ずれた形に並んでいるので、ランドとランドの間に1ミリの穴が開けていく。ドリルスタンドのおかげで正確に開けることが出来た。試してみる。よーし、ピンがぴったり入る。ショートしないようにランドを削ってハンダ付けに備える。うーむ、大分うまくなったぞ。
しかし、固定用のボスの穴あけはやっぱり綺麗には空かなかった。汎用基板は既に穴が開いているので、この上にぴったり入る孔を開けることはドリルでは難しい。それでも、何とかLEDのピンも含めてかなり正確に穴があいた。モジュラーはピッタリ基板に取り付けられた。これがつけば工作の山は越える。あとはアートワーク通り、配線をしていくだけである。
DP83848のクリスタルはまだ謎が残る。オシレーター(発振器)は50MhzがRMII時に指定されているが、水晶発振子(xtal resonater)の場合は、25Mhzしかない。しかし、50Mhzのオシレーターをつけようにも、何故か行きつけの千石、秋月では売っていないのだ(48Mhzとか66Mhzはあるのだが)。まあ、とにかく25Mhzの水晶で組んでみよう。水晶なら手持ちの在庫がある。
黙々とハンダ付けにいそしむ(5/7/2011)
この連休は、ひたすらDP83848のLAN(PHY層)の基板を作っていた。このまえのENC28J60のLAN基板はオプティマイズのお手本があったが、今度はねむいさんの写真だけが頼りだ。こういう配線は一種のパズルである。幾何学のように補助線一本で一挙解決というのは中々ないが、パーツの位置を90度回転させただけで、嘘のように配線が楽になる時があるので気が抜けない。
アートワークはひととおり終わってはいるが、ハンダ付けの途中でも部分的なアートワークを何度もやりなおし、あれこれ考える。欲を出してLANだけでなくSDカードソケットも付けてやろうと考えているから場所が狭い。思ったより部品が多く、最後は大苦労だった。全部の抵抗を部品面にどうしても置けず、ひとつだけがハンダ面に移動した。
そのかわり、10/100Mbpsの識別をするチップLEDをつけて(最初は付けない予定)、ちょっと自己満足する。チップLEDを使うのは始めてである。チップLEDのハンダ付けの練習に、チップLEDを基板小片につけて遊ぶ。
制限抵抗は、ジャンク基板(以前、MACアドレスを貰ったNIC基板、こわしたRTC基板など)から、例の低温ハンダで取得する。チップ部品は意外に普通の半田だけではしぶとく残るが、このハンダだと面白いように簡単にとれる。
久しぶりのハンダ付けを堪能して、ようやくLANのPHY層基板は完成した。お馬鹿なことに親基板のLPC2388基板はまだ何もやっていない。親基板に電源を入れると、LEDが点滅した。ははは、LEDチカチカから一歩も進んでいなかったのだ。
ソフトが全く準備されていないので、親基板につけても何も動かない。早く動くのを見たいが、しばらくお預けである。何でLPC2388を開発していたのかも忘れている。そうだ、JTAG経由だった。こういうときにこのブログは大変役に立つ。
DP83848のLAN基板完成後に思わぬ落とし穴(5/7/2011)
やはり、間違えていた。データシートにはっきり明記されていた。LPC2388とつなぐには、50Mhzのオシレーター(発振器)がいるのだ。遠慮せずに「ねむい」さんに聞くべきだった。自分の都合の良い解釈で25Mhzの発振子で組み上げて、ウェブを見ていたら、「LPC2388はRMIIモードでうごくので50Mhzの発振器が必要」という記事を見つけた。
ええー、そんなことどこに書いてある。いーえ、しっかりデータシートに出ておりました。「50Mhzの発振子では動かない。RMIIのときは必ず発振器にすること」(p21)。やれやれ。
動かす前からこれである。腹立ちまぎれにすぐ低温ハンダをとりだして、25Mhzのクリスタルとコンデンサーを一気にとりはずす。さて、50Mhzの発振器である。これが秋月や千石などの定番の店にないのだ。マルツにはあるが12ミリ四方の大きなやつで、とてもこの基板のスペースには入らない。しかも¥1000近くする。
ウェブでカタログはいくらでも手に入るが、みんな卸しやプロ相手の店ばかりで、小売してくれそうな店は見つからない。やっと京セラの表面実装の50Mhz発振器をばら売りするところを秋葉でみつけたが、¥750。「店頭販売はしない」ということで通販なら送料がかかって¥1000以上だ。話にならない。
思いあぐねていたら、猫が遊んでボロボロになった分厚いDigiKeyのカタログが目に止まった。ああそうだ。ここにあるかもしれない。調べてみる。あった、あった。CTS社という知らないメーカーだが、表面実装の京セラのにそっくりの石が見つかった(OEMかも)。値段はなんと¥265。
よーし、これでMbedを買うチャンスが生まれた。前から欲しかったMbedである。DigiKeyでは、日本より¥500ほど安い(¥5405)。何かのときの送料無料のゲタがわりにしようと、買うのを我慢していたのだ。
Mbedと、このオシレーター、それにDC-DCコンバーターLM2735(ストロベリーリナックスの昇圧モジュールに使われているもの、12V500mAまでとれる。¥322)2ヶ、HブリッジドライバーIR2011(内部に昇圧回路を持ち、NMOS-FETだけでHブリッジを作れる。¥311)3ヶ、あわせて¥7515。送料無料ラインを超え、消費税のかからない(¥10000以下)、最も経済的な価格帯である。上機嫌で発注のボタンを押す。
DigiKeyからオシレーター到着。しかしまたまた大変なことに(5/11/2011)
DigiKeyから早くも品物が届いた。喜び勇んで表面実装の発振器をとりだす。うーむ、横に出ているパッドが小さくて半田付けに苦労しそうだ。mbedはケースから出してみただけ。少しお預けである。
ハンダ付けを慎重に行う。ベタアース基板なので、固定は当然、ハンダ面である。DP83848の位置を50Mhz出力に考慮せずに決めてしまったので、LPC2388へのコネクターまでの距離が長い。気休めに、オシレーターをチップとコネクターの中間位置に置いて少しでも距離を稼ぐ。
パッドが小さくて、本当にハンダ付けが出来たのか心もとないが、とりあえずは全体の配線は終わった。念のため、VccとGNDの導通テストをする。ありゃりゃ、ショートしている。このテストは、クリスタルの時にやって50KΩ以上だったことを確認している。今度のオシレータ化が原因だ。
あちこち調べ始める。ところが、これが何と、オシレータにしたところを全部外してもショートしている。おかしい。次々にはずして行って、チップ(DP83848)のいくつかあるVcc(48ピン)とGND(47ピン)が残った。こいつがショートしている。えー、ハンダボールでも基板に乗ったのか、拡大ルーペで変換基板上を丹念にチェックする。いや、きれいなものだ。
遂に、チップをはずす。やっぱりチップでショートしていた。ええー、これはどうしたことだ。思い当たる節がない。まだ電源も入れていない。あっ、そういえば、チップLEDをつけたときに点灯するかどうか、チップLEDの間に3Vの電圧をかけた。チップLEDの一方はI/Oピンに接続され、Vccピンとはプルアップ抵抗を介してつながっている。
うーむ、これだろうか。この程度でICが壊れてしまうのだろうか。しかし、現実にはチップがショートしている。今のところ、この操作くらいしか原因は考えられない。DP83848は幸い、予備が買ってある。泣く泣く、新しいものに交換する。
100MbpsでHUBが認識した(5/12/2011)
えらいめにあったが、何とかオシレーター版が完成した。当然のように、VccとGNDのショートはなくなった。それにしても何で壊れたのだろう。まだ狐につままれたような信じられない気持ちだ。配線は完了したが、これで動くのかはまだ全くわからない。簡単に確認する術がない。下手に単独で電源を入れて、こわれたらさっきの二の舞だ。
親基板のLPC2388はまだソフトが何も入っていないのだ。しかしショックが強くて、すぐ作業を開始する気にならない。色々考えたが、やはりソフトを動かして確かめていくしかない。出来上がった基板を横目にして、LPC2388のソフト開発の手順をゆるゆるとウェブで調べ始める。
先は長そうだ。気が散ってなかなか先に進まない。意を決して、本体のLPC2388に基板を差し込み、LANケーブルをつないで電源を入れてみた。いずれこれはやらなければならないことである(また大げさな)。ソフトは何も入っていないのでDP83848には電源が入るだけだ。何が起こるかわからないが、もう我慢しきれない。
おお、薄くモジュラーのリンクLEDが点いた。やった、やった。つながった。接続先のHUBには100Mbpsのディバイスがつながったことを表す緑のLEDが点灯した。時々、アクティブを示すLEDも点滅している。よーし、PHY層の一番下のレベルは動いたようだ。
オシロを取り出して、オシレーターの出力を測定する。お、良いぞ。きれいな正弦波の50Mhzが出ている。やれやれ、ハードの基本部分は凡そ動いているようだ。今までの苦労が報われた感じで、肩の荷がおりた。とりあえず一段落である。
先が長くなりそうなので、このあたりでブログに報告しておくことにする。
| 固定リンク
「電子工作」カテゴリの記事
- 生存証明2(2022.10.19)
- 生存証明(2022.01.23)
- パソコン連動テーブルタップの修理を諦めて自作(2021.02.16)
- 半年ぶりのブログ更新に漕ぎつけた(2019.09.19)
- 研究所活動は停滞したままでCCDカメラ顕微鏡導入など(2019.02.08)
「ARM」カテゴリの記事
- 心電計プロジェクト:スケールが出ると心電計らしくなる(2015.01.08)
- 心電計プロジェクト:TFT液晶に念願の心電波形が出た(2014.12.18)
- 心電計プロジェクト:STM32F103の心電波形表示で悪戦苦闘(2014.12.03)
- 心電計プロジェクト:CooCoxでARMの表示系ソフトを開発する(2014.10.16)
- 心電計プロジェクト:表示部のARM基板の開発環境を一新する(2014.09.19)
コメント