朝、強い風の中をオリオン書房まで。目的はトランジスタ技術の4月号。雑誌棚の前に平積みになっていたのを手にとって、電気関連のコーナーへ。
最近はArduino関連が増えてます。ここで平積みになっていた新刊の『Arduinoでガジェットを作ろう!』。ペラペラと中身を見ると、中身のほとんどが回路・基板CADソフトのEagleの内容じゃん。ちょうど良いやとこれもお買い上げしました。発売日2013/2/22なので中身も古くなってないだろうし。ただ、字がデカいので、もう少し小さい方が本が薄くなるのにねぇと思いますが・・・。
「Make」一覧
うーやりなおしか
Fritzingで1階のmbed部分を何とか細い基板で収めるべく描いてました。
だいぶ出来てから、ふと気づいた。
うはー、1階の一番左の基板にmbedをおいちまった。最初は2階が2枚の状態で描いてたのであまり気にならなかったのですけどね。行方向は右から左なので、一番右にシフトレジスタの開始ピンがあるんですがな。2階の一番右に昨日切り替えのスイッチを配置しようとしてて、左から右へ作図してたのが敗因かな。上のように1階に置き直しを考慮。
昨日ハンダ付けしてた2階の基板的には特に影響はないのでOK。せっかくなので再度見直します。1階の一番右は上にはみ出す形でA基板にするかも。壁設置だけでなく、PCのモニターの上に設置する事も考えて、細い基板に収めようとしてたのですけどね。
まぁ、2階の基板は共通になるように考えていたので、結構リカバリーも簡単かも。
新配列でのテスト
アノード側の配線がなるべく楽になるようにした回路を作ってテスト。このブレッドボード上では楽になるようにはみせませんけどね。LEDの真下にシフトレジスタのICが入る予定なので。
それに合わせて、フォントデータの変換&文字のシフトの部分のプログラムを変更しました。
多分力技。もっと良い方法ないだべか。
シフトなんぞこんな感じ。
vram[k][j] = ((vram[k][j] & 0x20) >> 2) + ((vram[k][j] & 0x10) << 1) + ((vram[k][j] & 0x02) << 3) + ((vram[k][j] & 0x01) << 1) + ((vram[k][j] & 0x04) >> 2) + ((vram[k][j] & 0x40) >> 4) + ((vram[k][j] & 0x80) >> 1) + ((vram[k+1][j] & 0x08) << 4);
シフト演算子でローテート出来るか、負数で逆シフトできれば、もう少し綺麗に出来るのだが。こういうシフト・ローテート系はアセンブラで書いたほうが合うし速いんだろうな。
動作確認が出来たので、工作に入りますかね。
ちょうど秋月さんから、切り取り可能なピンソケット(これ重宝してます。)と長めの基板対基板向けのピンヘッダが届いたですよ。
あと、スイッチサイエンスさんでmbed向けのLANコネクタブレイクボードを買った。秋月のパルストランス入りのコネクタは秋月の1.27mmピッチの蛇の目基板だとピンが入るには入るけど、その秋月の1.27mm基板が分厚くて、切り取り加工が大変なので出来合いのスイッチサイエンスさんのキットに走ってしまう。
で、そのついでに、在庫が復活していたArduino Microをついつい買ってしまったすよ。Arduino nanoより2pin分長いんですが、Leonardoと同じ様にATmega32u4のマイコンなのでUSB接続のアイテムを作ることができるのでアイデアが広がります。マウスの替りとかキーボードの替りみたいなのは簡単にできます。ATmega328PなどでもV-USBとか使えばできますけどね。