2018年01月12日

OLED用のライブラリ

DSmainR5.1やR5有機EL(OLED)化が好評で、嬉しい限りです。来週末には、もう少々、改善したファームウェアをリリースするつもりです。

TwayDCCさん 初仕事
・スマイラーさん 遅れ馳せながら、DSmainR5のLCDをOLEDに載せ替え!
トレジャーさん 今年最初の作業
など、他にも多くご紹介いただきありがとうございます。

このファームには、OZoledライブラリを使用しています。ネットで通常だと、u8glibが推奨されていると思います。

なんで、あえてu8glibを使わなかったのかというと、重すぎるからです。超多機能ですが、ROMを凄まじく消費するので、使いにくいと感じていました。そこで、シンプルで機能も最小限ながら使いやすい、OZOledを使用することにしました。私は「引き算の技術」「Simple is the best」をモットーにしているので、全部入りは避ける傾向にあります・・・。

使い方は、OLED対応のNanoスケッチを見てくれれば良いですが、簡単です。
inoファイルの宣言部で以下のように宣言します。


OzOLED LCD;


setupで初期化します。


/* OLED init */
LCD.init();
LCD.clearDisplay(); //clear the screen and set start position to top left corner
LCD.setNormalDisplay(); //Set display to Normal mode
LCD.setPageMode(); //Set addressing mode to Page Mode
LCD.printString("Desktop Station", 0, 3);
LCD.printString("Welcome aboard!", 0, 2);
LCD.printString("R5.2 FW4", 0, 5);


文字を表示したいときは、printStringを使うと簡単です。128x64ピクセルのディスプレイを8x8のマス目にした形で、文字を描画できます。X=横、Y=縦です(中学生で習うので常識ですが・・・)。なお、ちょっと違うのは、コンピュータの画面上の中心(X,Y)=(0,0)は左上なのが注意です。


LCD.printString("文字",X位置位置,Y方向位置);


128x64ピクセルのディスプレイなので、16x8=128文字を表示できます。AQM0802よりケタ違いに多いですね・・・。なお、アイコンを表示したり、図形を表示することもライブラリをいじれば出来ます。


posted by yaasan at 19:32 | Comment(0) | 工作
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。