はじめに
LVGLは、限られた量のリソースを使用するデバイス上で実行するグラフィックライブラリです。
以前、LVGLリポジトリからLVGLデモを実行しましたが、これにはさらにいくつかのデモが含まれており、それらすべてがコードの一部であり、ライブラリをすばやく簡単に評価する機会を提供します。
GUIプロジェクトは、ベアコードよりも多くのオプションを通じて顧客によって開発され、グラフィックアセットをLVGLコードに変換するGUIツールがあり、このデモンストレーションでは、MCU GUI開発で広く使用されているツールを使用し、作成されたGUIをLVGLコードに変換します。スクエアライン。
メモ: i.MX シリーズ プロセッサの先行する LVGL ドキュメントについては、付録を参照してください。
HWセットアップ
SquareLineのセットアップ
SquareLineの最新バージョンは、ホストシステムに応じて 次のリンク からダウンロードしてください。
手記: このドキュメントは、ツールに含まれるテンプレートのデモンストレーションを目的としているため、無料の試用版をダウンロードすることをお勧めします。正式な開発については、このドキュメントの付録を参照してください。
インストーラーを解凍して実行します。これはWindowsプロンプトです。
デモのダウンロード
SquareLineを設定した後、サンプルセクションに移動し、サーモスタットデモでサーモスタット機能を示します。
これらのUIファイルを直接エクスポートでき、グラフィカルにビルドする準備ができているので、[エクスポート]-[>エクスポートUIファイル]をクリックし、これらを保存するための希望の宛先を選択します。
LVGL のセットアップ。オプション1:新鮮な環境
LVGLとLV_DRIVERSリポジトリのクローン、これは.gitmodulesです必要な特定のブランチを指すファイル。
[submodule "lvgl"]
path = lvgl
url = https://github.com/lvgl/lvgl.git
branch = release/v8.3
[submodule "lv_drivers"]
path = lv_drivers
url = https://github.com/lvgl/lv_drivers.git
branch = release/v8.3
手記: 他の方法を使用している場合は、これらのコミット (lv_drivers @ 8cdabe8 と lvgl @ f2c1032) を指す必要があります。
ここにあるLVGL Linuxポートの例から、以下で説明する必要なファイルを収集します。
Makefile にパッチを適用します。
+ include $(LVGL_DIR)/thermostat/thermostat.mk
lv_drv_conf.hにパッチを適用します
# define EVDEV_NAME "/dev/input/event10" /*You can use the "evtest" Linux tool to get the list of devices and test them*/
+# define EVDEV_NAME "/dev/input/event"
手記: これは、# evtest の出力に応じて変化します。
パッチ lv_conf.h
-#define LV_FONT_MONTSERRAT_20 0
+#define LV_FONT_MONTSERRAT_20 1
main.c にパッチを適用します
- disp_drv.hor_res = 800;
- disp_drv.ver_res = 480;
+ disp_drv.hor_res = 1080;
+ disp_drv.ver_res = 1920;
…
- /*Create a Demo*/
- lv_demo_widgets();
+ /*Create a Squareline Demo*/
+ ui_init();
LVGLセットアップ。LVGLデモがすでに実行されているオプション2
ここにあるLVGL Linuxポートの例から、以下で説明する必要なファイルを収集します。
lv_drv_conf.hにパッチを適用します
# define EVDEV_NAME "/dev/input/event10" /*You can use the "evtest" Linux tool to get the list of devices and test them*/
+# define EVDEV_NAME "/dev/input/event"
手記: これは、# evtest の出力に応じて変化します。
main.c にパッチを適用します
- disp_drv.hor_res = 800;
- disp_drv.ver_res = 480;
+ disp_drv.hor_res = 1080;
+ disp_drv.ver_res = 1920;
…
- /*Create a Demo*/
- lv_demo_widgets();
+ /*Create a Squareline Demo*/
+ ui_init();
デモの実行
次のコマンドでデモをビルドし、./demo をコピーします。i.MX 93 EVK RootFSに出力します。
# source /opt/path/to/your/toolchain
# make clean
# make
デモは、次のコマンドで実行できます。
# systemctl stop weston # For LF
$ sudo service gdm3 stop # For Ubuntu
# ./demoまとめ
SquareLineのデモは、FBを介して i.MX プロセッサのビルド済みおよび基本ビルドで実行できるため、機能を犠牲にすることなくウィンドウスタックを使用する前にGUIテストを迅速にセットアップできます。
付録