תוכנה משובצת - מסך פתיחה מותאם אישית Yocto פס טעינה לבן עם טקסט שחור

יוקטו פטל פאי

מסך פתיחה מותאם אישית עם מד התקדמות

תמונת מסך הפתיחה של Prepare

מסך הפתיחה מטופל על ידי מתכון בשם "psplash" שנמצא תחת הספרייה "/workdir/poky-honister/meta-raspberrypi/recipes-core" של עץ המקור.

מכיוון ש- "psplash" מצפה שתמונה תהיה בפורמט קובץ כותרת, תחילה עליך להמיר את התמונה שלך לפורמט קובץ כותרת באמצעות סקריפט בשם "make-image-header.sh".

מאגר Psplash לשיבוט

כדי לקבל את הסקריפט, שכפל את מאגר psplash yoctoproject - במקרה זה לספרייה /workdir

git clone https://git.yoctoproject.org/psplash

בספריית psplash תמצאו את הסקריפט "make-image-header.sh".

התקן ספריה

הסקריפט צריך "libgdk-pixbuf2.0-dev" כדי להיות מותקן במערכת. ניתן לעשות זאת בחלון מסוף שני עם:

docker exec -it --user=root crops-poky bash
apt-get install libgdk-pixbuf2.0-dev
exit

עכשיו אתה יכול להשתמש בסקריפט כדי להמיר את קובץ png שלך לקובץ .h

./make-image-header.sh <path-to-png>/psplash-ixlogo.png POKY

כתוצאה מכך, אתה אמור לקבל קובץ בשם "psplash-ixlogo-img.h". הכותרת נראית כך:

/* GdkPixbuf RGBA C-Source image dump 1-byte-run-length-encoded */

#define POKY_IMG_ROWSTRIDE (4080)
#define POKY_IMG_WIDTH (1020)
#define POKY_IMG_HEIGHT (768)
#define POKY_IMG_BYTES_PER_PIXEL (4) /* 3:RGB, 4:RGBA */
#define POKY_IMG_RLE_PIXEL_DATA ((uint8*) \
...

אם ברצונך לשנות את צבע הרקע של מסך הפתיחה, באפשרותך להוסיף את השורה הבאה:

#define PSPLASH_BACKGROUND_COLOR 0x07,0x85,0x00

פעולה זו מגדירה את צבע הרקע לירוק. </:code5:></:code4:></:code3:></:code2:></:code1:>

יצירת מטא-שכבה מותאמת אישית

כדי לכלול את תמונת מסך הפתיחה שנוצרה, אנו זקוקים לשכבת מטא מותאמת אישית.

מקור ראשון ל-rpi-build.

source poky-honister/oe-init-build-env rpi-build

עם "bitbake-layers" אנו יוצרים שכבת מטא חדשה ומוסיפים שכבת מטא זו ל- conf/bblayers.conf של הפרויקט הנוכחי.

bitbake-layers create-layer meta-interelectronix-rpi
bitbake-layers add-layer meta-interelectronix-rpi

לאחר מכן העתק את הספרייה "psplash" ממטא-פטל/מתכונים-ליבה לשכבת העל החדשה:

mkdir meta-interelectronix-rpi/recipes-core
cp -r /workdir/poky-honister/meta-raspberrypi/recipes-core/psplash meta-interelectronix-rpi/recipes-core/

העתק psplash-ixlogo-img.h אל meta-interelectronix-rpi/recipes-core/psplash/files/

cp <path-to-h-file>/psplash-ixlogo-img.h meta-interelectronix-rpi/recipes-core/psplash/files/

לבסוף, ערוך את "meta-interelectronix-rpi/recipes-core/psplash/psplash_%.bbappend" ושנה את "psplash-raspberrypi-img.h" ל- "psplash-ixlogo-img.h".</:code9:></:code8:></:code7:></:code6:>

כלול psplash

בשלב האחרון, יש להוסיף את חבילת psplash לקובץ local.conf של הפרויקט. לשם כך, ערוך את הקובץ /workdir/rpi-build/conf/local.conf

local.conf שלי נראה כך:

## systemd settings
DISTRO_FEATURES:append = " systemd"
VIRTUAL-RUNTIME:init_manager = "systemd"
VIRTUAL-RUNTIME:initscripts = ""
IMX_DEFAULT_DISTRO_FEATURES:append = " systemd"

enable some hardware

ENABLE_I2C = "1" ENABLE_UART = "1" DISABLE_SPLASH = "1" DISABLE_RPI_BOOT_LOGO = "1"

IMAGE_INSTALL:append = " psplash" IMAGE_FEATURES += " splash "

רישיון זכויות יוצרים

זכויות יוצרים © 2022 Interelectronix e.K.
קוד המקור של פרויקט זה מורשה תחת רישיון GPL-3.0*.