ST7032.cpp - Arduino LiquidCrystal compatible library
Arduino C++
Latest commit b802f02 Oct 13, 2014 tomozh 誤植修正

README

ST7032 - Arduino LiquidCrystal compatible library
http://ore-kb.net/archives/195

-------------------------------------------------------------
 概要
-------------------------------------------------------------

コントローラに ST7032i を使った I2C LCD ディスプレイの
Arduino ライブラリです。
LiquidCrystal ライブラリのソースを元に作成しています。
LiquidCrystal ライブラリのメンバ関数と互換性があるため、
クラスを差し替えるだけで使用できます。

動作確認済み

    SB1602B             Strawberry Linux
    SB0802G             Strawberry Linux
    AQM0802A-RN-GBW     秋月電子通商

動作すると思われるもの

    SB1602E             Strawberry Linux
    LCD16X2-I2C         aitendo
    SPLC792-I2C-M       aitendo
    16X2-SPLC792-I2C    aitendo


-------------------------------------------------------------
 更新履歴
-------------------------------------------------------------

2014.10.13 コントラスト値のbit7がBONビットに影響する不具合を修正
2014.08.23 コンストラクタでI2Cアドレスを設定可能にした
2013.05.21 1st release


-------------------------------------------------------------
 ライセンス
-------------------------------------------------------------

作成者:
tomozh (tomozh@gmail.com)

ライセンス形態:
MIT


-------------------------------------------------------------
 使用方法
-------------------------------------------------------------

1) モジュールと Arduino を以下のように接続します

 ------------------------
  Arduino        ST7032
 ------------------------
  3.3V    --+-- VDD
            +-- -RES
  A4(SDA) --*-- SDA
  A5(SCL) --*-- SCL
  GND     ----- GND
  
  *... 10Kohm pull-up
 ------------------------

LCDを確実にリセットしたい場合は、RST 端子を Arduino の
空き端子で制御してください。(Low:リセット)
 
2) ST7032 フォルダを Arduino の libraries フォルダにコピーします


ST7032 独自のメンバ関数は以下の2種類です。

    コンストラクタ
       ST7032 lcd(int i2c_addr);
            i2c_addr: スレーブアドレス
            コンストラクタ引数を省略した場合は 0x3E

    コントラスト設定
        void setContrast(uint8_t cont)
            cont: コントラスト値 (0~63)
    
    アイコン表示 (※アイコン表示機能の無いLCDは無効)
        void setIcon(uint8_t addr, uint8_t bit)
            addr : アイコンアドレス (0~15)
            bit  : アイコン表示ビット (0x00~0x1F)

簡単な使い方

#include <Wire.h>
#include <ST7032.h>

ST7032 lcd;

lcd.setContrast(30);            // コントラスト設定
lcd.print("hello, world!");


スレーブアドレスを指定する場合

ST7032 lcd(0x3E);



-------------------------------------------------------------
 ファイル構成
-------------------------------------------------------------

ST7032\
    keywords.txt
    ST7032.cpp              ST7032 ライブラリ
    ST7032.h                ST7032 ライブラリ
    examples\
        Icon                Strawberry Linux SB1602B 用アイコン表示デモ
        Autoscroll          (*)
        Blink               (*)
        Cursor              (*)
        CustomCharacter     (*)
        Display             (*)
        HelloWorld          (*)
        Scroll              (*)
        SerialDisplay       (*)
        setCursor           (*)
        TextDirection       (*)

        (*)…LiquidCrystal liblary を ST032 用に改変