Make一覧

シフトレジスタを使わないでやってみる

 午後、遅いお昼を食べに行ってからテスト開始。
 で、○○堂で手に入れた安いブレッドボードでやってたら動作が不安定。午前中のブレッドボードに変えてやりなおし。

 20130320_02

 まず、アノード側の8ピンをシフトレジスタを使わずAVRに直結してテスト。大丈夫ですね。
 実はソフトウエアの部分でちょっとハマりましたけど。演算子の優先順位で。論理演算子って後回しなのね、言語を考えればそうなのだけどもね。ビット演算してるとついやらかすミス。

20130320_03

 つづいて、カソード側のピンもシフトレジスタを使わずにAVRに直結。直結と言ってもシンクドライバをかましてます。LEDを2セットにしたので、Arduino側のピンはAnalog0-5をDigital14-19として使うようにして対応。とりあえず動いてました。

 ただ、12桁表示にはマイコンのピンが足りない。あと空いているのはUARTの2つとSPIの3つ、そしてdigital 13番。全部使えば12桁対応できますが、他のIOが出来ないので表示するべきネタデータが取れないです。動作モードを指定するスイッチすら繋げられない。
 そろそろATmega644Pの出番ですかねぇ。Sanguino系は公式サポートじゃないので試してみるしかないですね。それとも、ATmega168/328系で、せめてカソード側はシフトレジスタ使うかだな。シフトレジスタを使えば12pinが3pinで済むのだから。


違うようで同じような事

 昨夜仕事で帰宅が23:00過ぎになってしまったので、今日の春分の日はまったりと。

20130320_01

 何のことはない、7セグLED 3桁のモジュールの表示。まずはシフトレジスタを使った形式で。マイコンはArduino microにて。このArduino micro、スケッチを書き込む動作が遅い。一旦USBの接続モードを変えているかんじで。特にmicroの機能を使わない&実験くんの時はArduino nanoとかを使っておくほうが速いな。

 ほんでもって、7セグ(小数点があるので8セグですが、慣例的名称として)は、1桁が8×8マトリックスLEDの1行分とみなせます。桁単位でダイナミック点灯させるので、MAX8個しかLEDが同時点灯しない。これならアノード側はシフトレジスタを使わずとも、ATmega単体で処理できそうですね。と言うわけでこれからお試しです。


電光掲示板 mbed版マイコン基板初期型完成

20130317_01

 mbed版の基板出来ました。

20130317_02

 mbedとLANコネクタを載せるとこんな感じ。

20130317_03

LED基板と合体させるとこう。

20130317_04

 電源を入れるとこんな感じ。(正面からなので眩しくて程よく文章が潰れて著作権的に良い。)

 実は、マイコン基板の電源レギュレータ部分を作成する前に、mbedのvoutの3.3Vを使ってテスト表示してみたのだけども。

 文字がおかしい。

 調べてみたら、ブレッドボードのテスト回路の行の接続が間違ってた。1行目と6行目が逆。
プログラム側でカソード側のシフトレジスタに渡す値を1行目と6行目で入れ替えて修正完了。

 次は、LEDの2ユニット目です。正直3ユニット・12文字まで作る気力がもつだろうか?(苦笑)。
そして、秋月の切り取れるピンソケットが手持ち在庫が1本になってしまったので、発注しました。プロトタイプ用の小さいマトリックスLED基板で使ってしまったからなぁ。

 マイコン基板の方は「mbed版」と書いてあるように、別のバージョンも検討中。フォントデータをprogmemに置けたらですがATmega1284が有力候補。ただ、チップがデカいのだよね、mbedほどではないけども。i2c接続のEEPROMにフォントを置いてATmega328Pでやる荒業もあるかな。どちらにせよATmegaでやる時はネットワークはWiznetのW5200チップのモジュールWiz820ioにお任せ予定。他のパターンだと、XBeeの無線LAN版とか、ROHMのBP3591とか。データ持ってきてもATmega328Pじゃ2kbyteのメモリ内に保存できないから、i2cSRAMとかに置かないと。そうなるとチップが増えて実装面積食ってしまうから、やっぱATmega1284が限度かな。


マトリックスLED掲示板 1ユニット目完成

20130316_01

 13:00くらいから始めて、動作確認出来たのが17:00。今回2文字分を追加作成したので、1文字あたり2時間ペースの作業です。動作自体はほぼ一発動作。ちょっと障害があったのだけども、前回までに作成してた部分で一部断線してた。(ま、それを切り分けて見つけるまでに30分かかっちゃってます)

20130316_02

 配線はこんなかんじ。いろいろ学習したので2ユニット目はもう少し楽にしたい。裏を見るとバレるんですが、ピンソケットとピンヘッダをつなぐのに立体配線してます。次は手持ちのサンハヤトのシール基板を利用することでピンソケットとピンヘッダの立体配線は避けようと思います。

 次は2ユニット目ではなくて、ブレッドボードで代用している下側のメインのマイコン基板を作成します。

 20130316_03

 追記、今夜はメインのマイコン基板はここまで。もう少しだな。


電子裁縫かと

20130315_01

 ユニバーサル基板で配線してると縫い物しているみたいだなぁと思った。特に細いETFEとかでホールを通していると。この電光掲示板の回路だと隣のシフトレジスタへカスケードする配線が多いので、先のワイヤーまで一緒に元からくるのと2本を1ホールに通さないとハンダ付け出来ない状態なのですよ。

 本当はUEW線をうまく使いこなせて裏側だけで配線したいよね。電源ライン以外は。地道に練習あるのみ。

 この基板は上にマトリックスLEDが載っかるので上でも下でもどっちでも配線は隠れてしまうので良いのですよ。
 でもUEW線をハンダゴテで被覆を溶かす技は身につけておかなければ。下にあてるかまぼこ板とか有ったほうが良いかな。

 そして、今日ふと気づいた事。Elisaフォントとか美咲フォントみたいな縦ライン毎のフォントを扱うにはanodeコモンのマトリックスのほうが良いなぁと。気づくの遅すぎ?でも、ソースドライバを使わないとイカンのだよね。


「ポウ」ガジェットに向けて

20130312_01

 aitendoさんで売ってる録音再生ICのうち安い方(250円)のISD1730PYを買いました。届いてみたら、太い。Z80かと思った(AVRでもATmegaXX4系のDIPはこの幅ですね。うちにも4つあります。)。350円のISD1820PYの方が細いからそっちにしとけばよかったか?w。

 実際「ポウ」ガジェットを作るかはべつですが、マトリックスLED掲示板で、ジングルを鳴らす位はするかもしれません。

 画像の上の物体は一緒に買った8Ω1.5Wのスピーカーです。

 そして、「これ使えそう!」と思って買い込んだパーツが溜まっていく・・・。