このマイコン基盤の関係でいいますと、以前OLEDの表示部分はマルツ上小田井店で買えたのですが、一緒に欲しかった、このSDカードソケットが付いてるのが売り切れてました。ということで、久々に通販サイト見たら在庫ありになったので速攻でポチしました。
さて、こで何しましょ。やっぱりSDカードのSPIモードでのアクセスですかね。
このサイトは楠 昌浩が興味をもったことに対して広く浅くネタ集めしております。
スタートメニューから Xilinx ISE Design Suite 13.1 → アクセサリ → アップデートのチェック
を実行いたしますと、更新対象のプロダクトが表示されます。私の場合はJapanese Documentaion for 13.1 PlanAhead と 13.1 April 2011 Update is now avaliable の2つが表示されてました。で、まず 13.1 のアップデートをダウンロードします。
何故かWebブラウザが起動されてログインしないことにはダウンロード出来ません。仕方ないのでログインします。そうしたら Xilinx_ISE_DS_Update_13.1_O.40e.2.1.tar のダウンロードが始まりました。
ダウンロードするときのダイアログボックスに Launch when done のチェックボックスがあるのでチェックしときましょう。そうすればダウンロードした .tar の展開まではやってくれます。
あとは。 xsetup.exe を流せばOK
どうでもいいけど、ダウンロードの度にログインする仕組みはやめてくれ
function initializeVfd { $a = [byte]0x1b, [byte]0x40 $serialPort.write($a, 0 ,$a.Length) } function clearVfd { $serialPort.write( [char]0x0c ) } function displayCursorVfd { $a = [byte]0x1f, [byte]0x43, [byte]1 $serialPort.write($a,0,$a.Length) } function moveCursorVfd([int]$x, [int]$y) { $a = [byte]0x1f, [byte]0x24, [byte]5, [byte]0, [byte]1, [byte]0 $serialPort.write($a,0,$a.Length) } function drawBitmapVfd { $a = [byte]0x1f, [byte]0x28, [byte]0x66, [byte]0x11, [byte]128, [byte]0, [byte]8, [byte]0, [byte]1 $a.Length $serialPort.Write($a, 0, $a.Length) $serialPort.write($vfdimg, 0, $vfdimg.Length) } $serialPort = New-Object System.IO.Ports.SerialPort "COM1", 38400 $serialPort.Open() initializeVfd clearVfd displayCursorVfd #moveCursorVfd $img = [System.Drawing.Image]::FromFile("D:\mkusunoki\Documents\i-tron128X64.bmp") $vfdimg = New-Object byte[] ($img.Width * $img.Height / 8) for($i = 0; $i -lt $img.Width; $i++) { for($j = 0; $j -lt ($img.Height / 8); $j++) { $bb = 0 if($img.GetPixel($i, $j * 8).G -gt 127) { $bb = 1 } $bb += $bb if($img.GetPixel($i, $j * 8 + 1).G -gt 127) { $bb++ } $bb += $bb if($img.GetPixel($i, $j * 8 + 2).G -gt 127) { $bb++ } $bb += $bb if($img.GetPixel($i, $j * 8 + 3).G -gt 127) { $bb++ } $bb += $bb if($img.GetPixel($i, $j * 8 + 4).G -gt 127) { $bb++ } $bb += $bb if($img.GetPixel($i, $j * 8 + 5).G -gt 127) { $bb++ } $bb += $bb if($img.GetPixel($i, $j * 8 + 6).G -gt 127) { $bb++ } $bb += $bb if($img.GetPixel($i, $j * 8 + 7).G -gt 127) { $bb++ } $vfdimg[$i * ($img.Height / 8) + $j] = $bb } } drawBitmapVfd # $serialPort.Write("HHHHH") $serialPort.Close() $serialPort.Dispose()
ということで、128×64ドットのディスプレイになんか表示しましょうということです。とりあえず、付属のCDROM に入っていたサンプルに i-tron128X64.bmp というビットマップファイルがあったのでこれを表示させてみることにしました。
今回は Windows の PowerShell というやつを使いまして、ビットマップファイルをロードして、シリアルポートに投げるというものです。まだ試行錯誤中のアプリケーションノートからロジック丸パクしたソースは以下に掲載します。あとは、ビットマップオジェクトをいじれば漢字だろうが何だろうが描画出来るので少しだけ前に進んだかな?
何年も前に買って、ジャンクボックス入りしていたものです。経緯は覚えてませんが何故か2個あります。ひとつは 128×32 ドットのパネルでもうひとつは 128×64 ドットです。
で、壊れてないか動作確認ですが、壊れていないようです。かつ小さいほうは漢字フォントが搭載されてたのでこれは何かに使えそうです。
んで、もうひととつの大きいほうは残念ながら漢字フォントが搭載されていない機種だったので文字化けします。表示エリアが広いのでいろいろ使い出はありそうですが、手頃なアプリケーションが思いつきません。
どちらも、シリアルポートにコマンド流せば表示出来るので、どっちかというとプログラミングを楽しむためのオモチャというところでしょうか。
小さいほうなら漢字表示出来るので、webからhttpのテキスト拾ってきて、それをたれ流しするスクリプト実行しとくとか、大きいほうはどうでしょうか、バーグラフかなぁ、.net framework で各CPUの使用率とか拾えたっけ?なら Windows power shell さわったことないのでこれを機会にちょこっと組んでみたいです。
ニキシー管時計のキットです。なので、プリント基板に部品乗っけて半田付けするだけなので、間違えなければ組立られます。なお、このキットは nIxIe-tUbE.com の通販で買ったものです。
点灯確認で電圧かけただけなのでいきなり隣りの管にゴースト出てます。これはショートとかじゃなくて、たまった電荷のせいでボーっと光っているだけなのでちゃんと逃してやるとか光らない程度にバイアスかけるとかで防げます。
とりあえず、途中少しビデオカメラでも撮っているので余裕があればYoutubeかNicovideoにでもアップしたいと思いますが、いかんせケースを全然考えていないので、頓挫するかも知れません。が、とりあえず作業風景の動画はアップしました。
なんだかんだで半田付けは完了いたしました。DVテープ2本ぴったりだったので、上の写真状態までで2時間かかりました。
素材をカット アンド カットしまくって5分以内を目指しましたが編集は難しいです。とりあえずなんとかUPした動画は下のところを見てください。
[nicodo]sm14432258[/nicodo]
アクリル板が無いので、そこらへんにあったフニャフニャのプラ板に仮止めしてみてちょっと様子見てみることに。とりあえず、今の所順調に動いてます。
こんな短かい話しは Twitter で十分やろという話もありますが、 Blog の記事数があまりにも寂しいのでここで。
まぁ、今日も ATMEL も一応確認しましたが3月11日版のベータバージョンのままでんがな、ご紹介ビデオとか更新するのもいいんですけど本番リリースしてくれー。少なくとも私の家の Windows XP SP3 クリーンインストール状態で動かんぞ。
ということで、一旦削除しましたという愚痴。
この週末のお買い物
大須の第2アメ横で電池ボックスと FMワイヤレスマイクキットを購入。ワイヤレスマイクは、防音室にこもっているときに、玄関のピンポンが鳴っても気が付かなかったということがありましたので、音飛ばせるようにしとこうと思って購入 1,050円なのでいいでしょう。
オーディオテクニカのスペアイヤピースはカナル型のイヤホンの交換用ピースですね。あまりカナル型は好きではないのですが、時々使います。普段はBOSE QC3というノイズキャンセルのヘッドホンです。汗かく時期になるとヘッドホンどれ持っていくか悩みます。また、耳が少し悪いのでドンシャリ系ヘッドホンのほうが好みです (^^)
車のシガーソケットに差す、5V変換器です。 1,200mA まで引っぱれるそうです。iPad も少しくらい充電出来たら儲け物と思って購入。それ以外の携帯電話など十分対応可能ですね。
最後は、赤外線コントロールのラジコンヘリです。大須第2アメ横のラジコン屋さんで 3,980円で買いました。まぁ、昔 HoneyBee で懲りてるはずなのに買ってしまいました。まぁ今回はボディが金属製なのでちょっとは長持ちするかもというやつでんな。USB充電も出来るらしい(棒読み)