ゆるく楽しむプログラミング

e-Paper(白黒赤) [GDEW0213Z16]

2.13インチ e-Paper (白黒赤) [GDEW0213Z16]
e-Paper ディスプレイモジュール用アダプタ

2.13インチサイズ、212x104 白赤黒3色の電子ペーパー
SPIインターフェイス(MODE0,MSB FIRST)

電源電圧:3.3V
慎吾レベル:3.3V

ピン接続
DESPI-C02 ArduinoUNO
BUSY D6 (変更可)
RES D7 (変更可)
D/C D9 (変更可)
CS D10 (変更可)
SCK D13 (SCK)
SDI D11 (MOSI)
GND GND
3.3V 3.3V


ガラス面が割れそうなので、ケースを作ってみました

e-Paper(白黒) [GDEH0213B72]用と同じものです。



形状データ(.STL)

座標系

座標系は初期化時の Panel Setting コマンド(0x00)のパラメタで設定する。

ディフォルト設定では 左上(0,0)

X軸方向は1Byteで8Dotを表示
右側がMSB

13x8=104Dotを表示



Pnel Steeing コマンド(0x00)のパラメタと座標系
 0x0F  0x0B 0x07 0x03 

画像データの書込み

全画面モード

 1画面分(212行x13Byte = 2756Byte) の 白黒画像データと 白赤画像データを各々書き込む。
 書込み順序は 白黒と白赤のどちらが先でも良い。

部分描画モード

 Partial Inコマンド(0x91)で部分描画モードに移行
 Partial Windowコマンド(0x90) に続く6バイト(XS,XE,YSH,YSL,YEL,YEH)で描画範囲を指定
 描画範囲を埋める白黒画像データと 白赤画像データを各々書き込む。
 書込み順序は 白黒と白赤のどちらが先でも良い。
 Partial Outコマンド(0x92)で部分描画モードを終了

リセット

ハードウエアリセット
RESをLOWにして10ミリ秒まってからHIGHにして10ミリ秒待つ

コマンド

コマンドは1バイトでNバイトのデータが続く、コマンド送信時にはD/CをLOWに、データ送信時にはD/CをHIGHにする。

コマンド送信手順 
SS(Slave Select)  LOWにする
DC(Data/Command)   LOWにする
コマンド送信 
DC(Data/Command)   HIGHにする
 データ送信
SS(Slave Select)  HIGHにする

初期設定コマンド
コマンド パラメタ
0x06 boost soft start 0x17 , 0x17 , 0x17
0x04 Power on
0x00 Panel setting 0x0F - ディフォルト
0x0B - 左右反転
0x07 -上下反転
0x03 - 上下左右反転
0x61 resolution setting 0x68 , 0x00 , 0xD4
0x50 Vcom and data interval setting 0x77
0x02 Power off
0x07 Deep Sleep 0xA5

描画コマンド
コマンド パラメタ
0x10 Display Start Transmission 1 2,756Byte 黒色の画像データ
0x13 Display Start Transmission 2 2,756Byte 赤色の画像データ
0x90 Partial Window 部分描画 X開始カラム(1Byte) , X終了カラム(1Byte) , Y開始行(2Byte) , Y終了行(2Byte)
0x91 Partial In 部分描画モード
0x92 Partial Out 全画面描画モード
0x12 Display Refresh 画面描画更新

サンプルスケッチ


YuruPuro/epaperBWR

解説動画