SO1602のXC8用基本制御関数群を作ってみる
I2C接続 3.3Vで動作する有機ELディスプレイ
結構高価な表示器ですが視認性が良いのはgood!
コマンド体系もAQM1602と似ています
ここでは、とりあえずXC8版の制御関数を作ってみます。
ハードウエア環境
PICキットNO-001:14ピンPIC用CPU基板およびPIC16F1705
PICキットNO-018:SO1602モジュール
PICキットNO-017:LEDモジュール
PICキットNO-016:I2Cバス分配モジュール 3.3V変換機能付き
実験環境
左記画像の通り、ただ接続しただけで何の芸もありません・・・ <(_ _)>
価格を考えなければ、見易くて良いディスプレイです
結構高価な表示器ですが視認性が良いのはgood!
コマンド体系もAQM1602と似ています
ここでは、とりあえずXC8版の制御関数を作ってみます。
ハードウエア環境
PICキットNO-001:14ピンPIC用CPU基板およびPIC16F1705
PICキットNO-018:SO1602モジュール
PICキットNO-017:LEDモジュール
PICキットNO-016:I2Cバス分配モジュール 3.3V変換機能付き
実験環境
左記画像の通り、ただ接続しただけで何の芸もありません・・・ <(_ _)>
価格を考えなければ、見易くて良いディスプレイです
SO1602用XC8関数群
SO1602v1.h
SO1602v1.c
MSSP02b.h
MSSP02b.c
サンプル プログラム
PIC16F1705+SO1602
XC8_16F1705_SO1602_TEST01.c
SO1602v1.h
SO1602v1.c
MSSP02b.h
MSSP02b.c
サンプル プログラム
PIC16F1705+SO1602
XC8_16F1705_SO1602_TEST01.c
SO1602用XC8制御関数群
AQM1602用のファイルにちょっと変更しただけで、即席で出来てしまいます・・・
使用方法はAQM1602のそれと同じです。
SO1602制御関数群
1) SO1602_INIT(void)
この関数を呼び出さなくとも動作はしますが、一応使った方が良いかも
引数:無
戻値:無
2) SO1602_CMD(unsigned char)
OLEDコマンドを送信します
引数:8bitのOLEDコマンド
戻値:無
3) SO1620_WRTD(unsigned char)
OLEDデータ(文字コード)を送信・表示します
事前に表示開始位置アドレスを送信しておく事が必要です
連続送信しても表示位置はLCD側が自動インクリメントします
printf()等で使用する低レベル関数はこれを指定します
引数:8bitのOLEDデータ
戻値:無
4) SO1602_PUTC(unsigned char1,unsigned char2)
指定の表示位置に1文字を表示します
引数1:文字コード1バイト
引数2:表示位置アドレス1バイト
戻値:無
5) SO1602_PUTL(unsigned char1配列,unsigned char2)
指定の表示位置から文字列を表示します(最大32文字)
引数1:文字列格納配列アドレス
引数2:表示開始位置アドレス
戻値:無
6) SO1602_PUTL1(unsigned char配列)
OLED1行目の最左側から文字列を表示(最大16文字)
引数:文字列格納配列アドレス
戻値:無
7) SO1602_PUTL2(unsigned char配列)
OLED2行目の最左側から文字列を表示(最大16文字)
引数:文字列格納配列アドレス
戻値:無
8) SO1602_CLRLCD(void)
OLEDの表示をクリア
引数:無
戻値:無
9) SO1602_CONST(unsigned char)
OLEDのコントラスト調整(明るさ)を行います。
引数:コントラスト値 0x00(最少光度)~0xFF(最大光度)
戻値:無
AQM1602用のファイルにちょっと変更しただけで、即席で出来てしまいます・・・
使用方法はAQM1602のそれと同じです。
SO1602制御関数群
1) SO1602_INIT(void)
この関数を呼び出さなくとも動作はしますが、一応使った方が良いかも
引数:無
戻値:無
2) SO1602_CMD(unsigned char)
OLEDコマンドを送信します
引数:8bitのOLEDコマンド
戻値:無
3) SO1620_WRTD(unsigned char)
OLEDデータ(文字コード)を送信・表示します
事前に表示開始位置アドレスを送信しておく事が必要です
連続送信しても表示位置はLCD側が自動インクリメントします
printf()等で使用する低レベル関数はこれを指定します
引数:8bitのOLEDデータ
戻値:無
4) SO1602_PUTC(unsigned char1,unsigned char2)
指定の表示位置に1文字を表示します
引数1:文字コード1バイト
引数2:表示位置アドレス1バイト
戻値:無
5) SO1602_PUTL(unsigned char1配列,unsigned char2)
指定の表示位置から文字列を表示します(最大32文字)
引数1:文字列格納配列アドレス
引数2:表示開始位置アドレス
戻値:無
6) SO1602_PUTL1(unsigned char配列)
OLED1行目の最左側から文字列を表示(最大16文字)
引数:文字列格納配列アドレス
戻値:無
7) SO1602_PUTL2(unsigned char配列)
OLED2行目の最左側から文字列を表示(最大16文字)
引数:文字列格納配列アドレス
戻値:無
8) SO1602_CLRLCD(void)
OLEDの表示をクリア
引数:無
戻値:無
9) SO1602_CONST(unsigned char)
OLEDのコントラスト調整(明るさ)を行います。
引数:コントラスト値 0x00(最少光度)~0xFF(最大光度)
戻値:無