今日のEIC-108(マトリックスLEDテスト)

20130301_01

 ちょっと変更。

 うっかりしていて、mbedにLANコネクタを付けるピンが取り出せなくなっていたので、mbedをずらした。

 そして、リセットボタンが押しにくくなったので、タクトスイッチでリセットスイッチを増設。

 あとは、LEDの横方向の配線を逆にしたほうが良いかもと思っている。現状は左側がlsbで右側がmsb。まぁ、ソフトウエア的にはなんとでもなるから現状でも構わないのだけど。左から右、上から下の方が高齢な自分が理解しやすいだけです。

 ソフトウエアの方は、単純スクロールしてみた。この土日で何処まで出来るだろうかね。とりあえず一番右に見えないバッファをおいて、そこにフォント投入してスクロールにしないとね
 


フォントデータを読み込んでの表示

 向きだのビット順だのですったもんだしましたが、表示できました。おかげでビット演算に慣れてきた。
 やはり、フォンデータの作りと実回路が縦にも横にも逆なので、高速化するには回路の逆転が必要かな。そこまでの速度は無くても大丈夫なようですが。

20130228_02

「ひなまつり」。ひらがな程度ならOK。

20130228_03

 「重要文化財」。意外と読めるかな。実質7×7のフォントデータだけど美咲フォントあなどれないね。

 次は横スクロールの予定です。


8×8マトリックスLED5個のテストブレッドボード完成

20130228_01
 月末なので、本日は残業代休でお休みをいただきました。

 で、秋月で売ってる一番デカいブレッドボードEIC-108でLEDテスト機を作成。なるべくジャンプコードでなくジャンプワイヤで配線すべく。今回8ピンピッチの部品が多く、それらをパラにつなぐ部分が多いので8ピンサイズのジャンプワイヤが足りない。長いワイヤを切断&皮剥きする作業がメインだったかも。

 あと1個(無理すれば2個)マトリックスLEDを追加するスペースは残したのだけど、電流的にTD62083では厳しそうなのでこのまま(気が向いたら電流を実測してみる)。実際の完成版を作成する際は1.5Aを4回路流せるドライバICを買ってあるのでそれを使います。

 やはりマトリックスLEDのはアノードピンとカソードピンが綺麗に同じ側で並ぶように下駄基板を作って使ったほうがケーブル&ワイヤの取り回しが楽かな。LEDそのままだとクロスする配線が多くてどうしてもジャンプコードになる。スケルトン素材でできていて両面使えるブレッドボードとかあったら楽だし面白いかも。ニッチな需要だねぇ。

 さて、これでテスト環境ができたので、ソフトの開発に入りますよ。
 1個のn x nのマトリックスLEDをクラスにして実装するとこまでやってみたいですね。でも、動けば良いからなあ。


スタイル変更

 セキュリティホールmemoさんとこで紹介されていた遠近法ノートさんのこのCSS。早速当サイトにも採用しました。
 テーマのスタイルいじるだけだから楽すぎる。

 でも、周辺のパーツ類は適用されないですけど、無視。そこまでいじってるとめんどくさい。そもそもテーマが日本語圏じゃない方が作られているテーマなのでね。
 WindowsXPとかでメイリオ導入してないってのはあるのだろうか?Windows updateで落ちてきてないのかな?でも、フォントは違ってもとりあえず見られるでしょう。


EIC-108 ブレッドボード

20130226_01

 秋月で売ってる最大のブレッドボードが届きました。昨日使ったマトリックスLED2個のプロトタイプブレッドボード2つ分で4列。かつ、90度の角度で電源ラインが4つ取れる。
 実はこの1サイズ下のEIC-106(3列と電源ラインあり)も一緒に購入しました。これで部品点数が増えてもブレッドボードで結構行けます。実際に本基板で作らずお蔵入りしても、ブレッドボードなら部品は使いまわせる。

 次なる問題は、ブレッドボードの保管場所です。未使用なら重ねておけば良いのだけども、回路をとりあえず組んで、ソフトウエアをテストしてる段階のものとか。
縦に何段もあるような靴箱のような棚を準備したい。自分で作るか。エレクターだとそんな小さいのはないので、アイリスオーヤマのエレクターもどきとか100均かな?

 で、今夜はとりあえず、8x8LEDを5個搭載くらいの回路をプロトタイピングCADソフトのFritzingで描いてる。いきなり実配線をしてしまうと、あとに残るのはせいぜい画像だけになってしまうので。面倒でもFritzingでワイヤリング情報を残して置くのはとても大事だと思う。(このFritzingと最近仕事で使ってるUMLソフトがこれまた使い勝手が違うので、頭の切り替えに時間がかかるのが難点。)

 ちょっと途中までですが配線を描いてみましたが、だいぶスッキリしますね。
20130226_02


mbedでシフトレジスタ

 今日はちょっと残業して帰ったので、はんだ付けは無し。というか、秋月で売っている中で一番デカいブレッドボードと追加のジャンプワイヤを頼んだので、そっちで作るかも。途中まで作ったブレイクアウト基板はボチボチと配線していきます。完成すれば使い道はあるので。

 で、そのかわりに、ブレッドボードで作成済みの、マトリックスLEDが2つの回路をmbedで駆動してみた。

 行方向のアノード側はmbedのハードウエアSPIでシフトレジスタを駆動。列方向のカソード側は「mbed Shift Register Library, such as for NXP 74HC595」というのを発見したのでこれを利用。なんか、2のn乗-1をやるのにmbedのコンパイラでpow()使ったら怒られたので、ビット操作に変更して無事コンパイル完了。

 20130225_01

 一発動作(パチパチ)。って、大した事してないからw。

 ハードSPIの方はサンプルコードは1MHzクロックだったので、下げてみたが100KHzまで動作。10KHzとかだとmbedがLEDで降参してた。実際の信号がどのくらいのクロック出ているかはオシロつないでみないと。すごーく暇があったらやってみます。DSO Quadは持っているので、使いこなせてないけど。

 列にソフトウエアドライバを使ったのはLED点灯の目視確認の為。最終形になったらこっちもSPIに変えます。mbedはSPIが2つあるので。でも、列方向は8ドットしか無いのでそれほど速度要らないかも。

 最後に、ググっていて見つけたReal time 32×32 LED Displayのページ。32×32は良いとして、PWMで256階調とな。原理はわかるので気が向いたら試してみたいかも。x3になるけどRGB LED使うとか。絶対に手配線したくない領域になるなぁ。ってニコ動の動画へのリンクがあるから見てみたら、やっぱスパゲティーになってた。