FRISKディスプレイを作ってみた
FRISK ケースに16文字x2行のキャラクタ液晶*1を組み込んでみた。
USB シリアル変換である FT232RL の Bit-Bang モードを使ってキャラクタ液晶を PC から直接制御している。本当はマイコン(ATTiny2313のSOP)も組み込んで、電源供給だけで表示するようにしたかったけど、予定外にSOPパッケージの厚みがあって断念した。
PCソフトはC#で鋭意開発中。完成したら、ニコ動にうp予定。
以下の表示はhttp://ore-kb.net/hard/FTLcd/のソースをお借りし、一部書き換えて表示している。
マイコンボードを作ってみた
何かと便利な Arduino マイコンボードがもっとほしくなったので基板から作ってみた。
Arduino はオープンソースハードウェアなので回路図や基板パターンなどが全て公開されているので簡単にオリジナルのマイコンボードが作れる。
今回は Arduino 互換機の一つである Boarduino をベースに改造した。
Boarduino は本家 Arduino に比べて小型でブレッドボード*1に直接挿して使うタイプのボードである。小さくても同じ機能を持っていて本家同様 USB から直接プログラムを書き込める。
便利なBoarduinoではあるが、ちょっと不満があったので、調整してみた。
- 引き抜きにくい
→基板の幅を広げてピンヘッダーの脇に指が引っかかるようにする
- 小型ゆえにピン名の表示が見にくい
→配置を工夫する
- PWMや割り込みピンが分かりにくい
→マーキングする □マーク:PWM ○マーク:割り込み
- 配線が細い部分がある
→他に干渉しない程度に太くする
- その他、部品の配置を調整
調整できたので、ミスがないことをよく確認して EAGLE CAD でガーバーデータを出力する。これを ZIP形式 で固めて
P板.comに発注すればOK!
ね、簡単でしょ?
左 :本家 Arduino Duemilanove
中央:今回製作マイコンボード
右 :ワンチップArduino(RS232Cで書き込み)
*1:実験用基板
キーボードライトアップ プロジェクト始動
ある人の発言から始まった「キーボードライトアップ」プロジェクト。以下が完成予想図。
仕様
・ひとつのキーに赤色 LED 、緑色 LED を各2個づつ組み込んで発光させる。
・制御は AVR マイコンを使ってLEDを1個単位で点灯消灯できるようにする。
・キーボードを電光掲示板化する。
・キーボードの外見は変えない。
文字列からFontStyleの変換モジュール
VB2005でテキストからFontStyleに型変換する方法が分からなかったので、力技で解決してみた。以下そのコード。
Private Function ConvertFontStyle(ByVal FontStyleString As String) As FontStyle '// フォントスタイル文字列をフォントスタイルに変換 // If IsNumeric(FontStyleString) Then Select Case Val(FontStyleString) Case 0 Return FontStyle.Regular Case 1 Return FontStyle.Bold Case 2 Return FontStyle.Italic Case 3 Return FontStyle.Bold Or FontStyle.Italic Case 4 Return FontStyle.Underline Case 5 Return FontStyle.Bold Or FontStyle.Underline Case 6 Return FontStyle.Italic Or FontStyle.Underline Case 7 Return FontStyle.Bold Or FontStyle.Italic Or FontStyle.Underline Case 8 Return FontStyle.Strikeout Case 9 Return FontStyle.Bold Or FontStyle.Strikeout Case 10 Return FontStyle.Italic Or FontStyle.Strikeout Case 11 Return FontStyle.Bold Or FontStyle.Italic Or FontStyle.Strikeout Case 12 Return FontStyle.Underline Or FontStyle.Strikeout Case 13 Return FontStyle.Bold Or FontStyle.Underline Or FontStyle.Strikeout Case 14 Return FontStyle.Italic Or FontStyle.Underline Or FontStyle.Strikeout Case 15 Return FontStyle.Bold Or FontStyle.Italic Or FontStyle.Underline Or FontStyle.Strikeout End Select Else Select Case FontStyleString Case "Regular" Return FontStyle.Regular Case "Bold" Return FontStyle.Bold Case "Italic" Return FontStyle.Italic Case "Bold, Italic" Return FontStyle.Bold Or FontStyle.Italic Case "Underline" Return FontStyle.Underline Case "Bold, Underline" Return FontStyle.Bold Or FontStyle.Underline Case "Italic, Underline" Return FontStyle.Italic Or FontStyle.Underline Case "Bold, Italic, Underline" Return FontStyle.Bold Or FontStyle.Italic Or FontStyle.Underline Case "Strikeout" Return FontStyle.Strikeout Case "Bold, Strikeout" Return FontStyle.Bold Or FontStyle.Strikeout Case "Italic, Strikeout" Return FontStyle.Italic Or FontStyle.Strikeout Case "Bold, Italic, Strikeout" Return FontStyle.Bold Or FontStyle.Italic Or FontStyle.Strikeout Case "Underline, Strikeout" Return FontStyle.Underline Or FontStyle.Strikeout Case "Bold, Underline, Strikeout" Return FontStyle.Bold Or FontStyle.Underline Or FontStyle.Strikeout Case "Italic, Underline, Strikeout" Return FontStyle.Italic Or FontStyle.Underline Or FontStyle.Strikeout Case "Bold, Italic, Underline, Strikeout" Return FontStyle.Bold Or FontStyle.Italic Or FontStyle.Underline Or FontStyle.Strikeout End Select End If End Function