Skip to main content

Seeed Studio ラウンドディスプレイを使った XIAO の始め方

note

この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues

Seeed Studio ラウンドディスプレイを使った XIAO の始め方

はじめに

Seeed Studio ラウンドディスプレイ for XIAO は、すべての XIAO 開発ボードと互換性のある拡張ボードです。一方の面に完全に覆われたタッチスクリーンを備え、39mmの円形ディスクとして設計されています。コンパクトなサイズにオンボードRTC、充電チップ、TFカードスロットを含み、スマートホームやウェアラブルなどのインタラクティブディスプレイに最適です。

REV説明日付作成者
v1.0初版2023/1/29Linus.Liao
v1.11. Liバッテリー充電ICの変更
2. A0とD6にスイッチを追加
2023/4/7Linus.Liao

仕様

項目詳細
電源供給USB Type-C: 5V @35 mA
バッテリー充電: 3.7V @37mA
充電電流~ 485 mA
拡張メモリTFカードスロット 最大32GB FAT対応
スクリーン1.28インチタッチスクリーン
240×240 解像度
65K色
その他の外部機器JST 1.25コネクタ
寸法39mm x 39mm

特徴

  • 静電容量式タッチスクリーン拡張ボード: 1.28インチの円形ディスプレイ、240×240解像度、65K色で、鮮明でカラフルな画像表示を提供
  • 高い互換性: すべての XIAO シリーズ製品と高い互換性を持ち、現在のプロジェクトに簡単に統合可能
  • 豊富な周辺機器: コンパクトなサイズにオンボードRTC、バッテリー充電チップ、TFカードスロット、JST 1.25コネクタを搭載
  • 時計サイズのデザイン: 39mmの円形デザインで、ウェアラブルやスペース制限のあるプロジェクトに適合
  • プラグアンドプレイ: すべてのピンが引き出されており、はんだ付け不要

ハードウェア概要

始める前に、以下の画像を参照してラウンドディスプレイのピン設計を理解し、ラウンドディスプレイの機能を把握することができます。

2023年4月7日以降、改良されたラウンドディスプレイには、スクリーンのバックライトとバッテリー電圧の読み取りを制御するための2ビットスイッチが追加されました。これにより、ユーザーはピンを使用するか解放するかを自由に選択できます。こちらをクリックして詳細を読むことができます。

はじめに

ハードウェアの準備

ラウンドディスプレイの全機能を活用し、素晴らしい体験を得るために、ラウンドディスプレイのマザーボードとして当社の XIAO シリーズを購入することを強くお勧めします。

tip

XIAO SAMD21、RP2040、および RA4M1 は、メモリ不足のため円形スクリーンと互換性がない可能性があります。

Seeed Studio XIAO nRF52840 (Sense)Seeed Studio XIAO ESP32C3Seeed Studio XIAO ESP32S3 (Sense)Seeed Studio XIAO ESP32C6

ラウンドディスプレイの背面にあるピン列は XIAO シリーズ用に設計されています。すでに XIAO をお持ちの場合、追加のケーブルを準備する必要はなく、XIAO のピンをラウンドディスプレイに直接差し込むだけで使用できます。

caution

XIAO を接続する際、XIAO の Type-C コネクタがラウンドディスプレイの外側を向くようにしてください。万が一極性を逆に接続してしまった場合でも、ラウンドディスプレイには電源保護回路が搭載されているため簡単には損傷しませんが、逆接続の状態を長時間維持することはお勧めしません。

ラウンドディスプレイの推奨方向は次の通りです:ラウンドディスプレイを正面に向けたとき、XIAO の Type-C コネクタが右側を向き、ラウンドディスプレイのオン/オフボタンが左下に位置するようにします。

ソフトウェアの準備

ラウンドディスプレイを使用するには、XIAO シリーズをプログラムする必要があります。推奨されるプログラミングツールは Arduino IDE であり、XIAO 用に Arduino 環境を設定し、オンボードパッケージを追加する必要があります。

tip

Arduino を初めて使用する場合は、Arduino の使い方 を参照することを強くお勧めします。

ステップ 1. お使いのオペレーティングシステムに応じて、安定版の Arduino IDE をダウンロードしてインストールします。

ステップ 2. Arduino アプリケーションを起動します。

ステップ 3. 使用する XIAO に応じて Arduino IDE を設定します。

ステップ 4. ラウンドディスプレイのライブラリを Arduino に追加します。

まず、以下のリンクから TFT_eSPILVGL、および Round Screen ライブラリをダウンロードする必要があります。




ZIP形式のライブラリをダウンロードした後、Arduino IDEを開き、スケッチ > ライブラリを含む > .ZIPライブラリを追加をクリックします。ダウンロードしたZIPファイルを選択し、ライブラリが正しくインストールされると、通知ウィンドウにライブラリがライブラリに追加されましたと表示されます。これでライブラリが正常にインストールされたことを意味します。

ラウンドディスプレイでRTC機能を使用する必要があるため、I2C BM8563 RTCライブラリを検索してインストールする必要があります。

次に、lv_conf.hファイルをArduinoライブラリのルートディレクトリに移動する必要があります。

caution

ここでのlv_conf.hファイルはSeeed_Arduino_RoundDisplayから取得したものであり、LVGLライブラリから取得したものではありません。

Windowsの場合、Arduinoライブラリのルートディレクトリは以下の通りです:

C:\Users\${UserName}\Documents\Arduino\libraries

ステップ5. (オプション) 使用環境の設定

ラウンドディスプレイは現在、2つの異なるライブラリベースのディスプレイに対応しています。一つはTFT_eSPI、もう一つはArduino GFXです。XIAO SAMD21およびXIAO nRF52840では、TFTライブラリを実行するのに十分なメモリがなく、Arduino GFXの方が大幅に優れたパフォーマンスを発揮します。Arduino IDEで検索してダウンロードできます。

tip

TFT_eSPIライブラリを使用する必要がある場合は、ステップ5に進んでください。Arduino GFXを使用する場合は、このステップをスキップできます。

ラウンドディスプレイの内容については、チュートリアルではTFT_eSPIの使用に焦点を当てます。

Arduinoライブラリ概要

上記のチュートリアルからわかるように、ラウンドディスプレイは主にLVGLTFT_eSPI、およびArduino GFXライブラリを使用します。スペースの都合上、LVGLTFT_eSPIライブラリの使用方法を、ダイヤルを描画する例を用いて個別に紹介します。

  • TFT_eSPIライブラリのインターフェースと使用方法については、こちらをクリックして学ぶことができます。

  • LVGLライブラリのインターフェースと使用方法については、こちらをクリックして学ぶことができます。

  • Arduino GFXライブラリのインターフェースと使用方法については、こちらをクリックして学ぶことができます。

ラウンドディスプレイを点灯させる

デモ 1: TFT 時計

tip

ラウンドディスプレイのRTC機能を使用する必要があるため、I2C BM8563 RTCライブラリを検索してインストールしてください。

ハードウェアとソフトウェアの準備が整ったら、最初のサンプルプログラムをアップロードします。このサンプルプログラムは、ラウンドディスプレイのRTC時計が正常に動作しているかを確認するために使用できます。このデモは少量のメモリしか必要としないため、すべてのXIAOモデルに適しています。

tip

このデモを修正してより複雑な表示を実現したい場合は、使用しているXIAOのメモリサイズに注意してください。具体的なサイズは、そのXIAOの紹介ページで確認できます。

このサンプルプログラムは、Arduino IDEのFile -> Examples -> Seeed Arduino Round display -> TFT_Clockから見つけることができます。

使用しているXIAOと、XIAOが接続されているポート番号を選択し、コンパイルしてアップロードしてください。

ラウンドディスプレイのスイッチがONの位置に切り替えられていることを確認してください。

プログラムが正常に動作すれば、以下のような効果が表示されます。

デモ 2: ハードウェアテスト

HardwareTestデモは少し複雑で、より多くのメモリを占有するため、一部のXIAOモデルではメモリ不足により正常に動作しない場合があります。TFTライブラリとArduino GFXライブラリを使用したテスト表を以下に示します。

TFTライブラリArduino GFX
XIAO SAMD21
XIAO RP2040
XIAO RA4M1
XIAO nRF52840 非mbed版
XIAO nRF52840 mbed版
XIAO ESP32C3
XIAO ESP32C6
XIAO ESP32S3

このサンプルプログラムは、ラウンドディスプレイのRTC時計、SDカード、およびタッチ機能が正常に動作しているかを確認するために使用できます。

tip

ラウンドディスプレイのRTC機能を使用する必要があるため、I2C BM8563 RTCライブラリを検索してインストールしてください。

このサンプルプログラムは、Arduino IDEのFile -> Examples -> Seeed Arduino Round display -> HardwareTestから見つけることができます。

使用しているXIAOと、XIAOが接続されているポート番号を選択し、コンパイルしてアップロードしてください。

ラウンドディスプレイのスイッチがONの位置に切り替えられていることを確認してください。

プログラムが正常に動作すれば、以下のような効果が表示されます。

note

このサンプルプログラムは、拡張ボードのすべての機能項目(RTC機能を含む)をテストします。もしI2C BM8563 RTCライブラリをインストールしていない場合、エラーが報告される可能性があります。その場合は、lv_hardware_test()関数をコメントアウトしてください。これにより、SDカードの機能検出も無効になります。

キャリブレーションファームウェアの更新

tip

タッチが時々反応しない場合は、以下の手順に従って画面のキャリブレーションファームウェアを更新してください。

  1. このリンクからコードをダウンロードします。
  1. 同じディレクトリに配置し、このファームウェアを実行します。
  1. シリアルモニターを開くと、以下の画像のような成功メッセージが表示されます。これで更新が成功したことを意味し、プログラムをアップロードして試すことができます!

トラブルシューティング

Q1: プログラムをアップロードした後、ディスプレイに何も表示されないのはなぜですか?

A: Round Displayのスイッチがオンになっていることを確認してください。XIAO ESP32C3を使用している場合、プログラムをアップロードした後にリセットボタンを押す必要がある場合があります。

Q2: Seeed Studio XIAO ESP32S3 Senseをこの拡張スクリーンに接続したい場合、2つのTFカードスロットが競合することはありますか?

A: これは競合を引き起こしません。異なるSDカードスロットはチップセレクトによって制御されます。SenseのmicroSDカードスロットを使用したい場合、チップセレクトピンは21である必要があります。Round DisplayのmicroSDカードスロットを使用したい場合、チップセレクトピンはD2である必要があります。

S3 Senseカメラチュートリアルでは、両方のハードウェアとmicroSDカードを使用するがあります。

Q3: Round Display用のHardwareTestコードを使用すると、XIAO RP2040で非常に奇妙なC++エラーが発生するのはなぜですか?

A: これは、XIAO RP2040に適切なコンパイルオプションを選択していないことが原因である可能性があります。以下の図を参照して設定し、プログラムを再アップロードしてください。

リソース

技術サポートと製品ディスカッション

弊社の製品をお選びいただき、ありがとうございます!お客様が弊社製品をスムーズにご利用いただけるよう、さまざまなサポートをご提供しております。お客様のご希望やニーズに応じた複数のコミュニケーションチャネルをご用意しています。

Loading Comments...