Ingeboude sagteware - Pasgemaakte spatskerm Yocto 'n wit laaibalk met swart teks

Yocto Framboos Pi

Pasgemaakte spatskerm met vorderingsbalk

Berei spatskermbeeld voor

Spatskerm word hanteer deur 'n resep genaamd "psplash" wat gevind word onder "/workdir/poky-honister/meta-raspberrypi/recipes-core" gids van die bronboom.

Aangesien "psplash" verwag dat 'n prent in koplêerformaat sal wees, moet u eers u beeld in 'n koplêerformaat omskakel deur 'n script genaamd "make-image-header.sh" te gebruik.

Kloon psplash bewaarplek

Om die skrif te kry, kloon die yoctoproject psplash-bewaarplek - in hierdie geval na die /workdir-gids

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

In die psplash-gids vind u die skrif "make-image-header.sh".

Installeer biblioteek

Die skrif benodig "libgdk-pixbuf2.0-dev" wat in die stelsel geïnstalleer moet word. U kan dit in 'n tweede terminale venster doen met:

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

Nou kan u die script gebruik om u png-lêer na .h-lêer om te skakel

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

As gevolg hiervan, moet u 'n lêer met die naam "psplash-ixlogo-img.h" kry. Die kop lyk soos volg:

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

As u die agtergrondkleur van die spatskerm wil verander, kan u die volgende reël byvoeg:

#define PSPLASH_BACKGROUND_COLOR 0x07,0x85,0x00

Dit stel die agtergrondkleur op 'n groen. </:code5:></:code4:></:code3:></:code2:></:code1:>

Skep persoonlike metalaag

Om die gemaakte spatskermbeeld in te sluit, benodig ons 'n pasgemaakte metalaag.

Eerste bron om te rpi-bou.

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

Met "bitbake-layers" skep ons 'n nuwe metalaag en voeg hierdie metalaag by die conf / bblayers.conf van die huidige projek.

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

Na hierdie kopie kopieer die gids "psplash" van meta-raspberrypi / recipes-core na die nuwe metalaag:

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

Kopieer psplash-ixlogo-img.h na meta-interelectronix-rpi/recipes-core/psplash/files/

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

Wysig uiteindelik "meta-interelectronix-rpi/recipes-core/psplash/psplash_%.bbappend" en verander "psplash-raspberrypi-img.h" na "psplash-ixlogo-img.h".</:code9:></:code8:></:code7:></:code6:>

Sluit psplash in

In die laaste stap moet die psplash-pakket by die local.conf-lêer van die projek gevoeg word. Om dit te kan doen, wysig die lêer /workdir/rpi-build/conf/local.conf

My local.conf lyk soos volg:

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

Kopiereg lisensie

Kopiereg © 2022 Interelectronix e.K.
Hierdie projekbronkode is gelisensieer onder die GPL-3.0 lisensie.