0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

OKMX8MM-C開(kāi)發(fā)板制作開(kāi)機(jī)動(dòng)畫的思路

飛凌嵌入式 ? 2022-01-07 16:09 ? 次閱讀

近期有部分客戶詢問(wèn)飛凌嵌入式i.MX8M系列開(kāi)發(fā)板如何添加或更改開(kāi)機(jī)動(dòng)畫,下文以O(shè)KMX8MM-C為例整理出如下思路,可供客戶嘗試。

一、下載 psplash源碼

1.下載psplash:gitclone git://git.yoctoproject.org/psplash,會(huì)下載到當(dāng)前目錄的psplash文件夾中

  1. forlinx@ubuntu:~$ git clone git://git.yoctoproject.org/psplash

  2. Cloning into 'psplash'...

  3. remote: Enumerating objects: 11, done.

  4. remote: Counting objects: 100% (11/11), done.

  5. remote: Compressing objects: 100% (11/11), done.

  6. remote: Total 306 (delta 2), reused 0 (delta 0), pack-reused 295

  7. Receiving objects: 100% (306/306), 128.73 KiB | 74.00 KiB/s, done.

  8. Resolving deltas: 100% (192/192), done.

注:代碼可左右滑動(dòng),下同

2.下載成功后會(huì)在當(dāng)前目錄下生成一個(gè)psplash文件夾,進(jìn)入psplash文件夾


  1. forlinx@ubuntu:~$ cd psplash/

  2. forlinx@ubuntu:~/psplash$ ls

87754930-69a5-11ec-8d32-dac502259ad0.png

會(huì)看到一個(gè)make-image-header.sh的腳本,等下會(huì)使用這個(gè)腳本來(lái)將圖片轉(zhuǎn)化成頭文件。3.在使用腳本之前,需要安裝庫(kù),否則會(huì)報(bào)錯(cuò)。

  1. forlinx@ubuntu:~/psplash$ sudo apt-get install libgdk-pixbuf2.0-dev

  2. [sudo] password for forlinx:

  3. Reading package lists... Done

  4. Building dependency tree

  5. Reading state information... Done

  6. The following package was automatically installed and is no longer required:

  7. linux-hwe-5.4-headers-5.4.0-84

  8. Use 'sudo apt autoremove' to remove it.

  9. 【…】

  10. forlinx@ubuntu:~/psplash$ sudo apt-get install build-essential libncurses5-dev

  11. Reading package lists... Done

  12. Building dependency tree

  13. Reading state information... Done

  14. 【…】

4.將想要替換的圖片復(fù)制到psplash文件夾中,此處用的是我們公司的logo,命名為logo-1024x600.png,外框照片命名為logo-bar.png。

87b07186-69a5-11ec-8d32-dac502259ad0.png進(jìn)度條的外框logo-bar.png。87fe232c-69a5-11ec-8d32-dac502259ad0.png將這兩張圖片拷貝到psplash源碼目錄中,如下圖所示。

88272a10-69a5-11ec-8d32-dac502259ad0.png

二、制作logo

1.在psplash源碼中執(zhí)行以下指令來(lái)生成logo-1024x600-img.h

  1. forlinx@ubuntu:~/psplash$ ./make-image-header.sh logo-1024x600.png POKY

  2. forlinx@ubuntu:~/psplash$ ls

8864eab2-69a5-11ec-8d32-dac502259ad0.png

POKY參數(shù)只是一個(gè)變量,它會(huì)傳入到logo-1024x600-img.h文件里面,可以打開(kāi)查看。


  1. forlinx@ubuntu:~/psplash$ vi logo-1024x600-img.h

88b44328-69a5-11ec-8d32-dac502259ad0.png

可以看到它必須是要加POKY參數(shù)的,因?yàn)槠渌胤揭玫竭@樣的宏定義。2.返回到psplash源碼下,執(zhí)行以下指令生成 logo-bar-img.h

  1. forlinx@ubuntu:~/psplash$ ./make-image-header.sh logo-bar.png BAR

  2. forlinx@ubuntu:~/psplash$ ls

88e01796-69a5-11ec-8d32-dac502259ad0.png

同樣我們打開(kāi)logo-bar-img.h這個(gè)文件。它必須是加BAR參數(shù)的,因?yàn)槠渌胤綍?huì)用到這樣的宏定義。

  1. forlinx@ubuntu:~/psplash$ vi logo-bar-img.h

8918f5b6-69a5-11ec-8d32-dac502259ad0.png

3.打開(kāi)psplash.c,將里面的#include"psplash-poky-img.h" 修改成#include"logo-1024x600-img.h"。將里面的#include" psplash-bar-img.h" 修改成#include"logo-bar-img.h"。修改完后如下圖所示。

  1. forlinx@ubuntu:~/psplash$ vi psplash.c

894c94a2-69a5-11ec-8d32-dac502259ad0.png

修改完成后保存退出psplash.c,返回到源碼目錄下。4.制作autogen.sh腳本,用于生成Makefile。

  1. forlinx@ubuntu:~/psplash$ vi autogen.sh

內(nèi)容如下:


  1. #!/bin/bash

  2. aclocal

  3. autoheader

  4. automake --add-missing

  5. autoconf

制作完腳本后,賦予它可執(zhí)行權(quán)限,再執(zhí)行這個(gè)腳本。


  1. forlinx@ubuntu:~/psplash$ chmod 777 autogen.sh

  2. forlinx@ubuntu:~/psplash$ ./autogen.sh

  3. configure.ac:7: installing './compile'

  4. configure.ac:3: installing './install-sh'

  5. configure.ac:3: installing './missing'

  6. Makefile.am: installing './INSTALL'

  7. Makefile.am: installing './depcomp'

5.修改Makefile.am,將psplash-poky-img.h修改成logo-1024x600-img.h,將psplash-bar-img.h修改成logo-bar-img.h。


  1. forlinx@ubuntu:~/psplash$ vi Makefile.am

修改完后的Makefile.am如下圖所示。

89780d80-69a5-11ec-8d32-dac502259ad0.png

修改完Makefile.am后保存退出,回到源碼目錄下。6.執(zhí)行以下指令,使能環(huán)境變量。

  1. forlinx@ubuntu:~/psplash$ . /opt/fsl-imx-xwayland/4.14-sumo/environment-setup-aarch64-poky-linux

7.環(huán)境變量使能后,就可以執(zhí)行以下指令配置交叉編譯工具鏈。


  1. forlinx@ubuntu:~/psplash$ ./configure --host=aarch64-poky-linux

  2. configure: loading site script /opt/fsl-imx-xwayland/4.14-sumo/site-config-aarch64-poky-linux

  3. checking for a BSD-compatible install... /usr/bin/install -c

  4. checking whether build environment is sane... yes

  5. checking for aarch64-poky-linux-strip... aarch64-poky-linux-strip

  6. checking for a thread-safe mkdir -p... /bin/mkdir -p

  7. checking for gawk... no

  8. checking for mawk... mawk

  9. checking whether make sets $(MAKE)... yes

  10. checking whether make supports nested variables... yes

  11. checking for style of include used by make... GNU

  12. 【…】

8.執(zhí)行make指令進(jìn)行編譯。


  1. forlinx@ubuntu:~/psplash$ make

  2. cd . && /bin/bash /home/forlinx/psplash/missing automake-1.15 --gnu Makefile

  3. cd . && /bin/bash ./config.status Makefile depfiles

  4. config.status: creating Makefile

  5. config.status: executing depfiles commands

  6. ./make-image-header.sh base-images/psplash-bar.png BAR

  7. make all-am

  8. make[1]: Entering directory '/home/forlinx/psplash'

  9. aarch64-poky-linux-gcc

  10. --sysroot=/opt/fsl-imx-xwayland/

  11. 4.14-sumo/sysroots/aarch64-poky-linux -DHAVE_CONFIG_H -I

  12. . -g -Wall -Wextra

  13. -D_GNU_SOURCE -DFONT_HEADER="radeon-font.h"

  14. -DFONT_DEF=radeon_font -O2 -pipe -g

  15. -feliminate-unused-debug-types

  16. -MT psplash-psplash.o -MD -MP -MF

  17. .deps/psplash-psplash.Tpo -c -o psplash-psplash.o

  18. `test -f 'psplash.c' || echo './'`psplash.c

  19. 【…】

編譯完成后會(huì)在源碼目錄下生成psplash和psplash-write文件。

89adc060-69a5-11ec-8d32-dac502259ad0.png

三、替換出廠系統(tǒng)logo

將編譯生成的psplash和psplash-write文件拷貝到開(kāi)發(fā)板出廠文件系統(tǒng)/usr/bin目錄下。

  1. okmx8mm login:root

  2. Last login: Thu Jun 20 10:00:15 UTC 2019 on tty7

  3. root@okmx8mm:~# cd /usr/bin/

  4. root@okmx8mm:/usr/bin# ls psp*

  5. psplash psplash-default psplash-write

  6. root@okmx8mm:/usr/bin# rm psplash

  7. root@okmx8mm:/usr/bin# rm psplash-write

  8. root@okmx8mm:/usr/bin# cp /run/media/sda1/psplash ./

  9. root@okmx8mm:/usr/bin# cp /run/media/sda1/psplash-write ./

  10. root@okmx8mm:/usr/bin# sync

保存重啟后可看到開(kāi)機(jī)動(dòng)畫已替換完成。效果如下:8a09872e-69a5-11ec-8d32-dac502259ad0.png

注意:目前我們的OKMX8MM-C做了開(kāi)機(jī)連續(xù)顯示,所以默認(rèn)沒(méi)有開(kāi)機(jī)動(dòng)畫,若客戶有需要可按上述方式進(jìn)行添加。同時(shí)此方法在OKMX8MQ-C和OKMX8MP-C上也同樣適用。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5046

    文章

    18832

    瀏覽量

    298825
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    linux開(kāi)發(fā)板和單片機(jī)開(kāi)發(fā)的區(qū)別

    、PIC等,處理能力和內(nèi)存容量相對(duì)較低。 操作系統(tǒng) Linux開(kāi)發(fā)板通常使用Linux操作系統(tǒng),具有豐富的軟件資源和開(kāi)發(fā)工具。單片機(jī)開(kāi)發(fā)則通常使用嵌入式操作系統(tǒng)或無(wú)操作系統(tǒng),軟件資源和開(kāi)發(fā)
    的頭像 發(fā)表于 08-30 15:30 ?186次閱讀

    OpenHarmony之開(kāi)機(jī)優(yōu)化

    對(duì)其進(jìn)行詳細(xì)的性能分析,從而優(yōu)化系統(tǒng)啟動(dòng)速度和運(yùn)行效率。 三丶開(kāi)機(jī)優(yōu)化 開(kāi)機(jī)優(yōu)化的主要目的是為了快速啟動(dòng)開(kāi)機(jī)動(dòng)畫和退出開(kāi)機(jī)動(dòng)畫(顯示桌面)。所以在優(yōu)化之前,我們需要了解一下OpenHa
    發(fā)表于 07-01 16:39

    利用i.MX8MM開(kāi)發(fā)板制作開(kāi)機(jī)動(dòng)畫

    的 psplash 和 psplash-write 文件拷貝到開(kāi)發(fā)板出廠文件系統(tǒng)/usr/bin 目錄下。 okmx8mm login:root Last login: Thu Jun 20
    發(fā)表于 05-30 16:26

    SBC3568啟動(dòng)升級(jí),靈活更換動(dòng)畫logo

    IDO-SBC3568-V1更換開(kāi)機(jī)logo和開(kāi)機(jī)動(dòng)畫今天小智將會(huì)帶著大家體驗(yàn)如何在openharmonysdk內(nèi)替換開(kāi)機(jī)logo和動(dòng)態(tài)動(dòng)畫。Q如何更換
    的頭像 發(fā)表于 05-25 08:32 ?301次閱讀
    SBC3568啟動(dòng)升級(jí),靈活更換<b class='flag-5'>動(dòng)畫</b>logo

    【活動(dòng)】4款A(yù)I開(kāi)發(fā)板任你選,緊跟人工智能的風(fēng)口

    CZ3456 OK3588-C[/url]——————————OKMX8MP-C開(kāi)發(fā)板優(yōu)惠券 [url=58?OHPSWJuB30y? https://m.tb.cn/h.gao5Njo CZ3458
    發(fā)表于 04-19 13:31

    fpga開(kāi)發(fā)板是什么?fpga開(kāi)發(fā)板有哪些?

    FPGA開(kāi)發(fā)板是一種基于FPGA(現(xiàn)場(chǎng)可編程門陣列)技術(shù)的開(kāi)發(fā)平臺(tái),它允許工程師通過(guò)編程來(lái)定義和配置FPGA芯片上的邏輯電路,以實(shí)現(xiàn)各種數(shù)字電路和邏輯功能。FPGA開(kāi)發(fā)板通常包括FPGA芯片、時(shí)鐘模塊、電源模塊、輸入輸出接口等組
    的頭像 發(fā)表于 03-14 18:20 ?1507次閱讀

    fpga開(kāi)發(fā)板使用教程

    FPGA開(kāi)發(fā)板的使用教程主要包括以下幾個(gè)關(guān)鍵步驟。
    的頭像 發(fā)表于 03-14 15:50 ?798次閱讀

    fpga開(kāi)發(fā)板與linux開(kāi)發(fā)板區(qū)別

    FPGA開(kāi)發(fā)板與Linux開(kāi)發(fā)板是兩種不同的硬件開(kāi)發(fā)平臺(tái),各自具有不同的特點(diǎn)和應(yīng)用場(chǎng)景。在以下的文章中,我將詳細(xì)介紹FPGA開(kāi)發(fā)板和Linux開(kāi)發(fā)板
    的頭像 發(fā)表于 02-01 17:09 ?1716次閱讀

    嵌入式學(xué)習(xí)-ElfBoard ELF 1板卡-修改開(kāi)機(jī)動(dòng)畫的方法

    /sda1/psplash /usr/bin/ root@ELF1:~# cp /run/media/sda1/psplash-write /usr/bin/ root@ELF1:~# sync 9.開(kāi)發(fā)板斷電,連接屏幕,開(kāi)發(fā)板上電,觀察到
    發(fā)表于 01-10 10:21

    DIY個(gè)人的Linux開(kāi)發(fā)板教程

    作者簡(jiǎn)介:大佬已在硬創(chuàng)社開(kāi)源了近50款開(kāi)發(fā)板,動(dòng)手能力極強(qiáng),于去年年底開(kāi)始接觸學(xué)習(xí)Linux,并由全志V3s、F1C200S等芯片開(kāi)始上手DIY個(gè)人的Linux開(kāi)發(fā)板。
    的頭像 發(fā)表于 01-07 09:52 ?1502次閱讀
    DIY個(gè)人的Linux<b class='flag-5'>開(kāi)發(fā)板</b>教程

    TQ3568開(kāi)發(fā)平臺(tái)Android11修改開(kāi)機(jī)動(dòng)畫

    **TQ3568開(kāi)發(fā)平臺(tái)Android11修改開(kāi)機(jī)動(dòng)畫** Android 開(kāi)機(jī)logo是可以動(dòng)態(tài)顯示或者靜態(tài)顯示的。如果是靜態(tài)顯示,循環(huán)播放一章圖片,直到系統(tǒng)啟動(dòng)。如果是動(dòng)態(tài)顯示,那么開(kāi)機(jī)
    發(fā)表于 12-07 13:45

    TQ3568開(kāi)發(fā)平臺(tái)Android11修改開(kāi)機(jī)動(dòng)畫

    TQ3568開(kāi)發(fā)平臺(tái)Android11修改開(kāi)機(jī)動(dòng)畫Android開(kāi)機(jī)logo是可以動(dòng)態(tài)顯示或者靜態(tài)顯示的。如果是靜態(tài)顯示,循環(huán)播放一章圖片,直到系統(tǒng)啟動(dòng)。如果是動(dòng)態(tài)顯示,那么開(kāi)機(jī)log
    的頭像 發(fā)表于 12-04 17:21 ?508次閱讀
    TQ3568<b class='flag-5'>開(kāi)發(fā)</b>平臺(tái)Android11修改<b class='flag-5'>開(kāi)機(jī)動(dòng)畫</b>

    請(qǐng)問(wèn)STM32用TFT屏寫開(kāi)機(jī)動(dòng)畫有什么比較好的方案?

    請(qǐng)問(wèn)STM32 用 TFT 屏寫開(kāi)機(jī)動(dòng)畫有什么比較好的方案?
    發(fā)表于 11-10 07:25

    使用51單片機(jī)開(kāi)發(fā)板制作60秒時(shí)鐘計(jì)時(shí)器

    大家好,我是大魔王,雖然我已經(jīng)離開(kāi)了校園,進(jìn)入了職場(chǎng),但是我仍然沒(méi)有停下學(xué)習(xí)的腳步。經(jīng)過(guò)三周的學(xué)習(xí),我已經(jīng)能夠使用51單片機(jī)的開(kāi)發(fā)板制作一個(gè)60秒的時(shí)鐘計(jì)時(shí)器,今天就將這個(gè)小東西的創(chuàng)作過(guò)程和大家分享一下,這里使用的是郭天祥老師TX-1C
    的頭像 發(fā)表于 10-31 15:05 ?3021次閱讀
    使用51單片機(jī)<b class='flag-5'>開(kāi)發(fā)板</b><b class='flag-5'>制作</b>60秒時(shí)鐘計(jì)時(shí)器

    MicroPython應(yīng)用基礎(chǔ)-準(zhǔn)備基于MM32F5的MicroPython開(kāi)發(fā)板

    本文主要面向 **2023年全國(guó)大學(xué)生物聯(lián)網(wǎng)設(shè)計(jì)競(jìng)賽安謀科技命題** ,使用星辰處理器的靈動(dòng)MM32F5微控制器開(kāi)發(fā)板,基于MicroPython開(kāi)發(fā)應(yīng)用系統(tǒng)。
    的頭像 發(fā)表于 10-19 18:27 ?900次閱讀
    MicroPython應(yīng)用基礎(chǔ)-準(zhǔn)備基于<b class='flag-5'>MM</b>32F5的MicroPython<b class='flag-5'>開(kāi)發(fā)板</b>