Zabudovaný softvér - Vlastná úvodná obrazovka Yocto biela nakladacia lišta s čiernym textom

Yocto Raspberry Pi

Vlastná úvodná obrazovka s indikátorom priebehu

Príprava úvodného obrazu obrazovky

Úvodná obrazovka je spracovaná receptom s názvom "psplash", ktorý sa nachádza v adresári zdrojového stromu "/workdir/poky-honister/meta-raspberrypi/recipes-core".

Keďže "psplash" očakáva, že obrázok bude vo formáte súboru hlavičky, musíte najprv previesť obrázok do formátu súboru hlavičky pomocou skriptu s názvom "make-image-header.sh".

Klonovanie úložiska psplash

Ak chcete získať skript, naklonujte úložisko yoctoproject psplash - v tomto prípade do adresára /workdir

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

V adresári psplash nájdete skript "make-image-header.sh".

Inštalovať knižnicu

Skript musí byť v systéme nainštalovaný "libgdk-pixbuf2.0-dev". Môžete to urobiť v druhom okne terminálu s:

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

Teraz môžete použiť skript na konverziu súboru png na súbor .h

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

V dôsledku toho by ste mali dostať súbor s názvom "psplash-ixlogo-img.h". Hlavička vyzerá takto:

/* 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*) \
...

Ak chcete zmeniť farbu pozadia úvodnej obrazovky, môžete pridať nasledujúci riadok:

#define PSPLASH_BACKGROUND_COLOR 0x07,0x85,0x00

Farba pozadia sa nastaví na zelenú. </:code5:></:code4:></:code3:></:code2:></:code1:>

Vytvorenie vlastnej meta vrstvy

Aby sme zahrnuli vytvorený obrázok úvodnej obrazovky, potrebujeme vlastnú meta vrstvu.

Prvý zdroj rpi-build.

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

Pomocou "bitbake-layers" vytvoríme novú meta vrstvu a pridáme túto meta vrstvu do conf/bblayers.conf aktuálneho projektu.

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

Potom skopírujte adresár "psplash" z meta-raspberrypi/recipes-core do novej meta-vrstvy:

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

Skopírujte psplash-ixlogo-img.h do meta-interelectronix-rpi/recipes-core/psplash/files/

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

Nakoniec upravte "meta-interelectronix-rpi/recipes-core/psplash/psplash_%.bbappend" a zmeňte "psplash-raspberrypi-img.h" na "psplash-ixlogo-img.h".</:code9:></:code8:></:code7:></:code6:>

Zahrňte psplash

V poslednom kroku musí byť balík psplash pridaný do súboru local.conf projektu. Ak to chcete urobiť, upravte súbor /workdir/rpi-build/conf/local.conf

Môj local.conf vyzerá takto:

## 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 "

Licencia na autorské práva

Copyright © 2022 Interelectronix e.K.
Tento zdrojový kód Projectu je licencovaný pod licenciou GPL-3.0.