本文硬件平臺以飛凌嵌入式OKMX8MQ-C開發板Linux操作系統為基礎進行講解,其它iMX8產品,由于各個廠家設置不同會有所差異,請參考使用。 本文檔主要講解OKMX8MQ平臺系統設置,包括LOGO更換、上電自啟動程序設置、Uboot菜單選擇顯示屏、TF卡燒寫添加環境變量等。所需源碼鏡像等,請自行下載飛凌官方提供的用戶資料。
一、 Logo更換 飛凌iMX8MQ開發板 u-boot階段可以在LCD上顯示LOGO圖片,如需更換LOGO請替換: OKMX8MQ-linux-sdk/images/boot/logo.bmp 要求為24位的BMP格式圖片,分辨率為1024x600。 二、上電自啟動程序設置在此介紹一種使用systemd方式來配置任意開機自啟動程序的方法。 為了方便用戶測試,我們在系統啟動默認加載systemd服務autorun.service,在 /lib/systemd/system/autorun.sevice 可以看到配置文件: ![]()
用戶可以將自己的開機自啟應用程序放到腳本/etc/autorun.sh中,從而實現開機自啟。 其中Description參數代表服務的描述(會在開機終端中打印),ExecStart參數代表執行腳本的絕對路徑,默認為/etc/autorun.sh文件(用戶可以自行修改)。 如果我們啟動的服務不能滿足需求,也可以自己添加systemd服務,如下例。 將iMX8MQ開發板上電啟動,在iMX8MQ開發板終端中進入到/home/root/目錄下,執行如下命令創建一個腳本文件,并修改權限: $ echo '#!/bin/sh' >> /home/root/helloworld.sh $ echo 'gst-play-1.0 /home/forlinx/audio/test.mp3' >> /home/root/helloworld.sh $ chmod 777 /home/root/helloworld.sh 進入到“/lib/systemd/system/”目錄下,并新建一個helloworld.service文件,命令如下: $ cd /lib/systemd/system $ vi helloworld.service 文件的內容如下: [Unit] Description=helloworld After=basic.service X.service thermal-zone-init.service [Service] ExecStart=/home/root/helloworld.sh [Install] WantedBy=multi-user.target 其中Description一行需寫入服務名,ExecStart需要寫入可執行文件的絕對路徑。 保存退出后,在終端上執行如下命令: $ systemctl -f enable /lib/systemd/system/helloworld.service 此時即可將新添加的自啟動服務生效,重啟imx8MQ開發板后,此程序即可自動運行,在默認端的音頻即可聽到音頻輸出。 三、顯示桌面頂部狀態欄默認情況下,weston桌面頂部顯示時間信息狀態欄被設置為隱藏,如果您需要其顯示,可以按照下面的方法進行設置。
如果有全屏應用顯示的需求,可以按照如下方法進行修改,隱藏頂部狀態欄。開發板上電,在iMX8MQ開發板終端中輸入如下命令,打開weston的配置文件: $ vi /etc/xdg/weston/weston.ini 修改文件的內容如下: [shell] locking=false panel-position=top 四、Uboot菜單選擇顯示屏iMX8MQ開發板上電后,在串口調試終端輸入任意按鍵,進入uboot菜單選項,可以通過菜單設置系統選項和功能。 Press SPACE to abort autoboot in 1 seconds ## forlinx params set menu ... -------------------------- 0:reboot 1:exit to shell 2:MIPI7-lcdif 3:MIPI7-dcss 4:HDMI -------------------------- 按鍵0:重新啟動開發板; 按鍵1:進入命令行模式; 按鍵2:選擇顯示屏為7寸MIPI屏(1024x600)顯示控制器使用LCDIF; 按鍵3:選擇顯示屏為7寸MIPI屏(1024x600)顯示控制器使用Display Controller; 按鍵4:選擇顯示屏為HDMI輸出。 注:MIPI7-dcss使用了設備樹ok8mq-evk-dcss-mipi7.dtb,MIPI7-lcdif和HDMI使用了設備樹ok8mq-evk.dtb。 五、TF卡燒寫添加環境變量在用戶使用TF卡燒寫的時候,可以在TF卡內添加名稱為env.ini的文本,在文本內添加環境變量,文本添加的環境變量需要按照“環境變量名=環境變量值”的格式來添加,每行為1條環境變量。在燒寫的過程中,燒寫程序按行讀取環境變量,符合格式的環境變量將會追加到默認的環境變量當中。 燒寫完成后,iMX8MQ開發板在第一次啟動的時候會將默認的環境變量和追加的環境變量寫入到存儲介質中,追加的環境變量如果和鏡像內置的環境變量名稱相同,會覆蓋原來的環境變量值。 示例1:追加的環境變量與鏡像默認的環境變量沒有名稱相同的,如追加了環境變量newenv=123456 環境變量內會新加一條環境變量newenv=123456。 示例2:追加的環境變量與鏡像默認的環境變量名稱相同,追加的環境變量的值會替換原有的值,如鏡像中默認bootdelay=1,追加的環境變量中bootdelay=3,則最終的環境變量bootdelay的值是3,替換了鏡像中默認的環境變量的值。 原文鏈接:https://www.forlinx.com/article_view_598.html
|