小型e-Paperシールド
この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues
e-Paperは、最も快適に読書ができる素材の1つかもしれません。光を反射して発光するのではなく、従来の紙の読書体験を模倣します。この方法により、消費電力が大幅に削減されます。小型e-Paperシールドは、小型サイズのe-Paper用のドライバーシールドです。1.44インチ、2.0インチ、2.7インチのe-Paperを駆動することができ、170以上の言語をサポートしています。このシールドの上面は平らで清潔に保たれており、取り付けられたe-Paperをしっかりとサポートします。軽量で読みやすいディスプレイを検討している場合、e-Paperは良い選択肢となるでしょう。
注意: このドライバーボードは異なるサイズのe-Paperをサポートしているため、e-Paperはこの製品には含まれていません。2.0インチと2.7インチのe-Paperを同時に販売していますので、最適なものをカートに追加してください!
モデル: SLD00200P
ライブラリの選択
正しいライブラリを選択するには、パネルのバージョンを確認する必要があります。
パネルのラベルに注意してください:
モデル名が「EG020AS012」または「EM027AS011」の場合、旧ライブラリを選択してください。こちらをクリックしてください:Small e-Paper Library。
モデル名が「EG020BS011」または「EM027BS013」の場合、新ライブラリを選択してください。こちらをクリックしてください:New Panel Library【EPD_V230】。
仕様
対応ボード: Arduino Uno/Leonardo/Arduino Mega
動作電圧: 3.3/5VDC
動作電流(画面リフレッシュ時): 40mA
インターフェースタイプ: SPI
ArduinoのPIN
Arduino | e-Paper |
---|---|
D2 | M_EPD_PANEL_ON |
D3 | M_EPD_BORDER |
D4 | M_/SD_CS |
D5 | M_EPD_PWM |
D6 | M_EPD_/RESET |
D7 | M_EPD_BUSY |
D8 | M_EPD_DISCHARGE |
D9 | M_/WORD_STOCK_CS |
D10 | M_/EPD_CS |
ICSP PORT | M_MOSI , M_SCK , M_MISO |
A0 | M_TEMP_SEN |
A1 | M_OE123 |
A2 | M_CKV |
A3 | M_STV_IN |
3.3V | M_VCC_3V3 |
5V | M_VCC_5V |
デモンストレーション
小型e-Paperシールドは、画像、さまざまなグラフィック、テキストを表示することができます。ライブラリには、このモジュールの使用方法についてのアイデアを提供する多くの例が含まれています。ここでは、e-Paperの強力なライブラリと広い視野角を体験してみましょう。
ハードウェアのインストール
- e-Paperを小型e-PaperシールドのFFCインターフェースに接続します。
- 小型e-PaperシールドをArduino/Seeeduinoに差し込み、USBケーブルを使用してPCに接続します。
次に、こちらからダウンロードする必要があるライブラリを使用してデモを表示します。ダウンロード後、Arduino IDEのライブラリファイルに次のパスで配置する必要があります: ...\arduino-1.0.1\libraries。
デモの表示
ここでは、2.0インチ画面を例にとり、その表示機能を示します。
デモ1: テキストの表示
- コードを開きます: File -> Examples -> ePaper -> text(以下のように表示されます)。
- この注意事項を再度強調します:
- Arduino UNO、Seeeduino 3.0、またはAtmega 328PやAtmega32U4をコントローラーとして使用するボードを使用する場合、このデモではSDカードを挿入する必要があります。SDカードは、Atmega328pおよびAtmega32U4のストレージスペースが少ないため、一時データを保存するために使用されます。
- Arduino MegaやAtmega1280、Atmega2560を使用する場合、SDカードを挿入する必要はありません。
- パラメータを変更して画面サイズに合わせます。画面が2.7インチの場合、200を270に変更する必要があります。他の例を使用する場合も、この変更を行う必要があります。
#define SCREEN_SIZE 200 // 画面サイズを選択: 144, 200, 270
コードをマイクロコントローラーにアップロードします。アップロード方法がわからない場合はこちらをクリックしてください。
次のように表示されます:
- 表示テキストや表示位置を変更してみてください。各関数の使用方法を学ぶことができます。
デモ2: グラフィックの表示
例: draw は、さまざまなグラフィックを表示するのに適した例です。デモ1と同様に、このコード: draw を開く必要があります。SDカードが必要かどうかについての注意事項を忘れないでください。マイクロコントローラーの種類に応じて、SDカードが必要かどうかを確認してください。そして、画面サイズに合わせてパラメータを変更します。
変更を完了し、コードをアップロードすると、美しいパターンが画面に表示されます:
この画像は、描画グラフィック関数を呼び出すことで作成されます。独自のパターンを作成し、画面で試してみてください。各描画関数には、リファレンスに具体的な説明があります。
デモ3: 画像の表示
TFTディスプレイやOLEDディスプレイと同様に、小型e-Paperシールドは画像の表示をサポートしています。
次に、画像の例を開きます: File -> Examples -> ePaper -> image。
コードをアップロードして結果を確認してください。
注意:ご覧の通り、この「画像」スケッチのデフォルト画面サイズは2.7インチに設定されています。不適切な表示の場合は、画面サイズ設定を変更してください。
#define SCREEN_SIZE 200 // ここで画面サイズを選択: 144, 200, 270
もちろん、画像の格子データを変更することで表示する画像を変更することができます。
例えば、e-Paper画面が2.7インチの場合、264 x 176ピクセルの格子データを提供し、そのコードをstatic unsigned char image_270[] PROGMEM ={}
にコピーする必要があります。2.0インチ画面を使用する場合は、200 x 96ピクセルの格子データをstatic unsigned char image_200[] PROGMEM ={}
にコピーする必要があります。
画像を表示する方法
Muchiri Johnの貢献により、非常に便利で使いやすいツールを手に入れることができました。このツールを使用すれば、画像の表示が簡単になります。
ツールはこちらからダウンロードできます。
参考
Small e-Paperライブラリは、e-Paperディスプレイの機能を活用するための完全なソフトウェアインターフェースを提供します。関数についての具体的な説明があります。
関数説明
1. void begin(EPD_size sz);この関数は画面サイズを設定します。
- sz: EPD_1_44, EPD_2_0, EPD_2_7のいずれかを指定できます。
この関数は表示方向を設定するために使用されます。
- dir: DIRLEFT, DIRRIGHT, DIRNORMAL, DIRDOWNのいずれかを指定できます。
この関数は文字を表示するために使用できます。
c: 表示したい文字。
x: 文字の開始X座標。
y: 文字の開始Y座標。
この関数は文字列を表示するために使用できます。
*string: 表示したい文字列。
poX: 文字列の開始X座標。
poY: 文字列の開始Y座標。
この関数は数値を表示するために使用できます。
long_num: 表示したい長整数データ。最大値は。
poX: データの開始X座標。
poY: データの開始Y座標。
この関数は浮動小数点数を表示するために使用できます。表示される浮動小数点データは設定された小数点以下の桁数に基づいて丸められます。
floatNumber: 表示したい浮動小数点数。
decimal: 小数点以下の桁数を設定。
poX: データの開始X座標。
poY: データの開始Y座標。
この関数はUnicodeを使用して文字や中国語を表示するために使用できます。GT20L16P1Yデータシートの18~24ページを参照して文字のUnicodeを見つけてください。文字にはラテン文字、ヘブライ文字、タイ文字、ギリシャ文字、キリル文字、アラビア文字が含まれます。中国語のUnicodeはGB2312(簡体字中国語)文字コード表を参照してください。
uniCode: 文字または中国語に対応する機械コード。
x: 開始X座標。
y: 開始Y座標。
注意: Unicodeが0x0020から0x007Eの間の文字はキーボードから直接入力できます。例えば、文字「G」を表示する場合、関数はdrawUnicode(0x0047, 3,10)またはdisplayChar('s',3,10)として使用できます。
8. int drawUnicodeString(unsigned int *uniCode, int len, int x, int y);この関数は複数の文字や中国語を表示するために使用できます。
*uniCode: Unicode配列。
len: 文字列の長さ。
x: 文字列の開始X座標。
y: 文字列の開始Y座標。
この関数は線を表示するために使用できます。
x0: 線の開始X座標。
y0: 線の開始Y座標。
x1: 線の終了X座標。
y1: 線の終了Y座標。
この関数は円を描画するために使用できます。
poX: 中心のX座標。
poY: 中心のY座標。
r: 半径。
この関数は水平線を描画するために使用できます。
poX: 線の開始X座標。
poY: 線の開始Y座標。
len: 線の長さ。
この関数は垂直線を描画するために使用できます。
poX: 線の開始X座標。
poY: 線の開始Y座標。
len: 線の長さ。
この関数は矩形を描画するために使用できます。
poX: 矩形の開始X座標。
poY: 矩形の開始Y座標。
len: 矩形の長さ。
width: 矩形の幅。
この関数は塗りつぶされた矩形を描画するために使用できます。
poX: 矩形の開始X座標。
poY: 矩形の開始Y座標。
len: 矩形の長さ。
width: 矩形の幅。
この関数は塗りつぶされた円を描画するために使用できます。
poX: 中心のX座標。
poY: 中心のY座標。
r: 半径。
例:
EPAPER.drawRectangle(10, 10, 100, 80); EPAPER.fillCircle(50, 50, 30); EPAPER.fillRectangle(50, 65, 50, 20); EPAPER.drawCircle(150, 50, 10); EPAPER.fillCircle(150, 50, 5); EPAPER.drawHorizontalLine(120, 50, 60); EPAPER.drawVerticalLine(150, 20, 60);
この関数は三角形を描画するために使用できます。三点で構成されます。
poX1(poX2,poX3): 三角形の1つの点のX座標。
poY1(poY2,poY3): 三角形の1つの点のY座標。
回路図オンラインビューア
リソース
- [Eagle] Small e-Paper Shield Eagle ファイル
- [PDF] Small e-Paper Shield v2.1 PDF
- [EAGLE] Small e-Paper Shield v2.1 SCH
- [Library] Small e-Paper ライブラリ
- [Datasheet] e-Paper パネルデータシート
- [Tool] epdImageKit ツール
- [Library] 新パネルライブラリ【EPD_V230】
技術サポート & 製品ディスカッション
弊社製品をお選びいただきありがとうございます!製品をご利用いただく際にスムーズな体験を提供するため、さまざまなサポートをご用意しています。お客様の好みやニーズに応じた複数のコミュニケーションチャネルをご利用いただけます。