「PIC AVR 工作室」サイトの日記的なブログです。
サイトに挙げなかった他愛ないことを日記的に書き残してます。
PIC AVR 工作室 ブログ



いまさらだけど、PCD8544搭載の、NOKIA 5110液晶。
以前は3.3V版のArduinoが無くて、ほったらかしに
してあったんだけど、ふと、改めて使ってみたく
なったので、繋いでみる。


http://playground.arduino.cc/Code/PCD8544
サンプルスケッチはplaygroundにあるので、これを
元にして、文字表示+ドット絵が描けるライブラリ
に改造しようという魂胆。


この液晶コントローラは、フォントはもちろん入って
ないのと、さらにはVRAMからの読み出しも対応して
いないので、このあたりを含めてArduino側で行う
必要がある。で、VRAMをSRAM上に確保。504バイト。


んで、文字表示はそのまま文字表示のロジックを
活かしつつ、VRAMにも転写するようにしておいて、
ドット絵を描くときに、それと重ねて表示するって
いう方式に。

とりあえず、pset、preset、xor出力が出来るような
関数を書いてみた。


配線の様子。

これでいいのかな?とりあえずは表示できてるけど。


んで、psetをforループから呼び出す形で斜め線を
描いてみたのがこれ。




グラフィックは、84×48ドット内で位置を指定して
表示するんだけど、それ以外の範囲の値を関数に
指定しても、そのまま無視して処理しちゃうとか、
あまりスマートな処理ではないので、これでいいのか
どうなのかは微妙。

まぁ、描画させてみて、それほど処理時間を食ってない
感じだったので、線引き処理もこれを使えばいいかな。
(ArduinoのデジタルI/Oは遅いから、どんなもん
かなぁと思ってたんだけど)


とりあえず、もう少しスケッチを綺麗に整理してから、
アップしたいと思います。




んで、コイツを使って、簡易的なスタンドアローン
オシロでも作りたいなぁというのが、いまさら5110
を持ち出した理由。

http://filear.com/?p=211
既に似たようなものがあるので、いまさら感はあるん
だけど、スケッチを眺めると、サンプリング速度は
タイマ管理でキチンとされていないっぽい感じがする
ので、タイマ割り込み使ってそれなりに正確な
タイミングでサンプリングしたいところ。




できれば、やっぱFFTも載せたいだけど、FFTで使う
メモリ以外にも、VRAMその他色々なところで食う
ので、どこまで載せられるのか…

せいぜい、32点FFTか、できても64点FFTまでだろうな。


一番の問題は、ADCのサンプリングレートだな。
3.3Vだと8Mhz動作だし、元々フルスペックで
サンプルしても、最大精度でサンプルすると遅い
から、精度は犠牲にしないといけないだろうな。


それにしても、Arduinoは色んな資源を利用できて、
モノをさくっと作れるのがいいな。やっぱ。



コメント ( 0 )