今朝方の実装図でとりあえず実装。PWMドライバPCA9685からL型端子までのところはLED14のピンしか繋いでいない状態だがテストは可能。
無事PWMでLEDがぽわんと点きました。残り7個をワイヤリングして、Lコネと隣の8個はハンダブリッジして。これでコントローラの基板は完成。
続いては、LEDのワイヤリングとソフトウエアです。
ATtiny45/85を使ったi2cスレーブの実験はやはり来年でしょうか。
自分メモ 新品のATtinyの初期化
ArduinoISPでつないで、ArduinoIDEから「ブートローダを書き込み」でOK。実際にブートローダが書かれるわけではないと思うが。
そのままでArduinoIDEでISPでプログラムを書き込める状態になっている。ArduinoISPは遅いのを我慢すれば使い勝手が良い。AVRISPmk2だとドライバの問題でArduinoIDEかAtmel Studioかどちらかの利用になる。どちらでも使えるようにする話もあったが、Windows8だとドライバ署名とかの問題で面倒っぽい。
ArduinoIDEからのブートローダの書き込みではFUSEビットを書き換えられないという情報があった。たまたまデフォルトの値で大丈夫ってことなのかな?
実証結果
買ったばっかのレールに入ったままのATtiny85Vを使って試してみた。いきなりISPでプログラムを書き込んだら、動作が遅い。1/8のプリスケーラが効いていない状態。
その状態で、「ブートローダを書き込み」を行った上で、再度ISPでプログラムを書き込んだら、予定通りの動作でした。やはりFUSEのうちDivide clock by 8 internallyは少なくとも「ブートローダを書き込み」によって書き換わっている様です。
実装配置の調整
フリスクサイズから4ホールぶんはみ出るけども、30×10で初版を作成します。PCA9685は右側へ持ってきてはみ出た部分の折り目が折れないように補強の役目も。
むりくり入れれば26×10のフリスクサイズにも入るのだけど↓。コネクタ的にフリスクケースには入らないので30×10で余裕をもたせます。
で、配線を書いていてふと思った事が。
i2cのPWMドライバとLEDをセットで小さな基板か空中配線で実装して、バス配線でつなげれば良いのではとか。i2cなら電源の2本とSDA,SCLの4線でバス配線できるし。ただ、PWMドライバicはその4本の他にアドレス指定に何個かとドライブするモノをつなぐのに何個か必要になるから、サイズ的にはDIPは無理。DIPサイズでよければそれこそATtiny85を使えば良いのか。あ、SOPのtiny85(85である必要すらない。45でもメモリ足りそう。)使って変換基板上にLED類と4線を実装してしまえば良いか。んーこのパターンは来年やってみようかな。
調べてみたら、BLINK MというマルチカラーLEDをi2cでドライブするものがATtiny45のSOPの奴を使っている様です。ちょっとブレッドボードで試してみますかね。
→調査結果。ATtiny45/85をArduinoのフレームワークでの利用だとi2cを使用してしまうとPWMが1つしか使えない。
PCA9685をばらまいた方が使い勝手が良いかもしれない。4ポートくらいのi2c PWMドライバで 3Vあたりから動作可能なIC無いかな。
もしくはATtiny44/84を試すか。44/84はI2Cを使ってもPWMが2つ使える。ただパッケージ的に6個ピンが増える(14ピンパッケージ)。
雨なので、イルミネーションの実装準備
いつものようにFritzingでCAD作業。年始には、専用基板でやりたい的な事を書いてましたが、諸般の事情で間に合わず。サンハヤトのフリスクサイズ基板を使います。
3パターンくらい作ってみた。でも、最初の1)のパターンで良いかなと。
パターン 1)でメインパーツを置いてみるとこんな感じ。上の方の緑のやつはデュアルDIPの変換基板で、パターン3)で使う想定。フリスク基板は手持ちが白しかなかったので黒を発注。明日の朝には届くでしょう。
PCA9685の変換がネックですね。専用基板おこせば半分くらいのサイズになる上に、配線作業も気にならない訳だった。来年再チャレンジしてみたい。でも、その時はその時でPCA9685を2つ以上置くでしょうね。
AdafruitのTrinket
ふとAdafruitを覗いていたら。TrinketというATtiny85ベースのマイコンブレイクアウトが発売になっていた。
しかもUSBのブートローダあり。オープンではあるものの、USBなので、
you cannot use the Adafruit USB VID/PID for your own non-Trinket products or projects. Purchase a USB VID for yourself at http://www.usb.org/developers/vendor/
だそうです。ベンダーIDなんて取得に2,000ドルですから、個人だと厳しいですがな(2013から5,000ドルになったという記事も)。なんかアマチュアの逃げ道があったような気もしますが。
自分はATtinyシリーズはISPで焼くので、USBは無くても良いですからね。bootloader入れるのもFlash8Kbyteしかないからもったいない。