2017年3月1日水曜日

OLED SSD1306 を arduino で使ってみた



最近安くなってきたOLEDモジュールを買ってみました。
中華通販にて。


2017/2/1 注文
2017/3/1 到着
春節挟んだ割には、まあまあ速い到着でした。


実は製品名わからずに買ってしまいました。
なので "OLED" "arduino" で検索して出てきたやり方を真似てみました。


●ライブラリ

https://code.google.com/p/u8glib/
U8glib for Arduino
を使う。
AVR用とかARM LPC1114 用もあるようだ。
ARM面白そうだなあ。mbed運用しか知らないけど。

と、ライブラリダウンロードした所で。
自分のArduinoIDE 1.0.5 に最初からU8glibが入ってました。
自分で昔入れたのか?よくわからないけど
最初から入っているの使いました。




●結線

OLED <--> Arduino
------------------------- 
VDD -- +5V
GND -- GND
SCK -- A5 (analogPort No.5)
SDA -- A4 (analogPort No.4)


●プログラム

U8glib 例のHelloWorldを使用
 

//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE);

と書かれた行のコメントアウト外して有効にします。



あとはスケッチをアップロードしたら、動いた。
意外とさっくり。
もっと大変かなあ?と思ってました。
ちゃんと作りこまれている。Arduino文化素晴らしいです。

●感想

  • やったね!
  • 明るい!
  • モジュール小さい!かわいい!
  • 腕時計にできそう。無骨でかっこいいかも
  • 消費電力どんなもんなんだろ?

 

●他わかったこと

  • 自分の買ったもの
    SSD1306 128X64 I2C 接続タイプ
    というものらしい。
  • SPI接続のものもあり、ネット上には特に区別なく書かれているサンプルがあるので注意。
  • arduinoでは、I2Cはアナログポートに出ているのか!
    昔使ったけどすっかり忘れていた。
  • メモリは結構消費する
    ArduinoNano ATmega328 の FlashROMを1/3近く使った。
    スケッチサイズ10,124byte
  •  U8glib 以外にももう一つ主流のライブラリがある。が、U8glibの方がメモリ消費少ないらしい。

●参考にしたページ

ありがとうございます。ほんと情報公開助かります

0 件のコメント:

コメントを投稿