Arduino(sanguino)を使ったNTP時計のフロント&バックパネル2
以前の物は穴開けの位置が間違っていたので修正しました。(現物合わせをした上で微調整しています。)
実際の加工はアクリルショップ「はざい屋」にお願いしました。
できあがってきた物はかなり精度良く綺麗です。(組み上げたら写真掲載します)
以前の物は穴開けの位置が間違っていたので修正しました。(現物合わせをした上で微調整しています。)
実際の加工はアクリルショップ「はざい屋」にお願いしました。
できあがってきた物はかなり精度良く綺麗です。(組み上げたら写真掲載します)
使うこともあるかもしれないと思い、秋月のドットマトリクスLEDをライブラリに追加しました。
今回追加したデバイスは以前のライブラリに追加して以下の2点です。
■参考情報
赤色ドットマトリクスLED[8x8ドット] OSL641501-ARA: LED(発光ダイオード) 秋月電子通商 電子部品 ネット通販 http://akizukidenshi.com/catalog/g/gI-05163/
赤色LEDドットマトリクス(16×16) C-2AA0SRDT: LED(発光ダイオード) 秋月電子通商 電子部品 ネット通販 http://akizukidenshi.com/catalog/g/gI-00789/
DIPパッケージがあるので基板を起こした時に扱いやすいかなと思ってDS1307を使うことにしたのですが、ちょっと癖がありますね。例によってメモ書きを残したいと思います。
※注意事項
・VCCのみの電圧で駆動することができない。
(駆動できるんですが、動作が不安定になります。CHビットの情報が不安定)
・BATへの電源の入力方法によっては異常発熱する(原因不明)
・SQW/OUTへのクロック出力のためには時刻設定が必要
・SQW/OUTのプルアップ抵抗は必須
自己流なのですが、RGBのLEDを点灯させる際の抵抗値の計算方法について書きたいと思います。
なぜかといいますと、例によってどこにも載っていなかったからメモ書きとして残しておきます。
結局のところ、点灯させた際にRGBを混色して白色にしたいのですから、明るさ(mcd)が同じになるように抵抗値を設定してあげます。 ※:正確に言うと目の認識の問題もあるので少し違ったと思うんですけど…。
MAX7219はカソードコモン用ドライバICです。
簡単に使うならばカソードコモンの7セグメントLED(以下、LED)を使用してあげれば特に問題ないのですが、大型LEDを点灯させようとすると話が変わってきます。 大型LEDは大抵内部でLEDを直列接続しているので駆動電圧が高いためMAX7219での単体駆動が出来ず外付けの駆動用回路が必要です。(あとは要求電流量が大きい)
そこで、話に上がってくるのが駆動方式をカソードコモン⇒アノードコモンに変換しての駆動です。
※:外付けドライバICか駆動回路として、PNPトランジスタ&ダーリントンシンクCなどが必要
という前置きでして、駆動回路を考えて利点欠点を見ていきたいと思います。
作ってみるとわかるのですが、かなり部品点数は増えるし回路が面倒です…。
MAX7219のライブラリは既にあるのですが中のフォントがちょっと足りないです。
英語&記号のフォントを参考サイトのフォントから追加したライブラリを公開しておきます。
“LedControl.h”の「charTable」を修正しただけでそれ以外は元にしたLedControl.zipと変わっていません。
※:A-F以外の英語なんかも表示できるようにしたかっただけなのですが、あると便利です。
■参考サイト
Arduino playground – LedControl http://arduino.cc/playground/Main/LedControl
ユアネーム・7セグ・12セグフォント大全集 http://www.yourname.jp/soft/digitalfonts-20090306.shtml
DS1307のライブラリを見つけたのですがBCDを内部変換して時刻設定が出来る様になっています。
便利だったので動作確認を兼ねて秋月で手に入るRTC8564でもBCDを使わなくても時刻設定できる様に改造してみました。
今回の「Arduino(sanguino)を使ったNTP時計」を作るにあたってEagleのライブラリを作成しましたので公開しておきます。 ※:実際には公開されていたライブラリ(display-kingbright.lbr)の修正版です。
修正箇所としては以下の2点を修正しています。
display-kingbright_2
ライブラリに含まれているデバイス
■7セグメント 0.56inch(1-4桁) 1inch 1.8inch
■16セグメント 1.2inch
■ドットマトリクス ・2inch