国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

linux(全志)初始環(huán)境到移植lvgl

這篇具有很好參考價(jià)值的文章主要介紹了linux(全志)初始環(huán)境到移植lvgl。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、開發(fā)環(huán)境搭建

0.準(zhǔn)備工作

安裝vim:

sudo apt-get install vim

安裝git工具

sudo apt-get install git

1.交叉編譯工具鏈安裝

對(duì)于F1C200S,使用的交叉工具鏈必須高于,使用的交叉工具鏈必須高于6.0。
本文選擇7.2.1進(jìn)行u-boot和kernel的編譯。
官網(wǎng)下載鏈接:https://releases.linaro.org/components/toolchain/binaries/7.2-2017.11/arm-linux-gnueabi/gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi.tar.xz
下載后解壓

tar -vxjf gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi.tar.xz

或右鍵提取

在/usr/local目錄下新建arm-linux-gcc目錄

sudo mkdir /usr/local/arm-linux-gcc

進(jìn)入解壓目錄下:

cd gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi/

將該目錄下 的所有文件復(fù)制到新建的目錄下:

sudo cp -rd * /usr/local/arm-linux-gcc/

最后需要添加該工具鏈的環(huán)境變量使其可以在任何目錄下執(zhí)行,打開/etc/profile文件

sudo vim /etc/profile

在文件末尾 添加以下內(nèi)容

 PATH=$PATH:/usr/local/arm-linux-gcc/bin

添加完畢,使路徑生效

source /etc/profile

linux移植lvgl,# Linux,stm32,單片機(jī),arm
驗(yàn)證:

    arm-linux-gnueabi-gcc -v

linux移植lvgl,# Linux,stm32,單片機(jī),arm

安裝32位動(dòng)態(tài)鏈接庫(kù)
為了后續(xù)移植Linux系統(tǒng)中出現(xiàn)庫(kù)缺失問題,這里可以一次系統(tǒng)中出現(xiàn)庫(kù)缺失問題,這里可以一次性將可能需要的庫(kù)全部安裝,執(zhí)行如下命令即。

sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev gcc-multilib x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev g++-multilib tofrodos python-markdown libxml2-utils libssl-dev swig python-dev

2. u-boot移植

這里采用licheePI nano的u-boot來進(jìn)行移植。在終端輸入如下命令克隆u-boot:

git clone https://github.com/Lichee-Pi/u-boot.git -b nano-v2018.01

克隆完畢文件會(huì)保存在當(dāng)前目錄 下,進(jìn)入該目錄

cd u-boot

在該文件夾下有很多分支,我們可以查看所使用如命令:

 git branch -a

現(xiàn)在我們使用的是nano開發(fā)板,所以將當(dāng)前分支切換到nano分支,命令如下:

 git checkout nano-v2018.01

或者直接下載切換到分支下載zip

u-boot默認(rèn)的沒有指定交叉工具鏈和架構(gòu),因此在編譯之前需要芯片默認(rèn)的沒有指定交叉工具鏈和架構(gòu),因此在編譯之前需要芯片u-boot的交叉編譯器在u-boot的根目錄下中Makefile文件中定義了。打開文件中定義了。打開Makefile文件。
將# set default to nothing for native builds下面改為

ARCH=arm
CROSS_COMPILE=arm-linux-gnueabi-

linux移植lvgl,# Linux,stm32,單片機(jī),arm
config文件夾中有
licheepi_nano_defconfig和licheepi_nano_spiflash_defconfig配置文件
前者表示為,前者表示為TF卡啟動(dòng),后者表卡啟動(dòng),后者表示從SPI設(shè)備啟動(dòng),這里使用前者。
下一步:

cd ..
make licheepi_nano_defconfig

linux移植lvgl,# Linux,stm32,單片機(jī),arm
配置完成后就可以進(jìn)入圖形界面行了,執(zhí)make menuconfig命令:

make menuconfig

更改bootcmd

load mmc 0:1 0x80008000 zImage;
load mmc 0:1 0x80c08000 suniv-f1c100s-licheepi-nano.dtb;
bootz 0x80008000 - 0x80c08000;

linux移植lvgl,# Linux,stm32,單片機(jī),arm

linux移植lvgl,# Linux,stm32,單片機(jī),arm

linux移植lvgl,# Linux,stm32,單片機(jī),arm

傳參bootarg
Y 選中 Enable boot arguments
linux移植lvgl,# Linux,stm32,單片機(jī),arm
下面一行Enter輸入?yún)?shù)

console=ttyS0,115200 panic=5 rootwait root=/dev/mmcblk0p2 earlyprintk rw

編譯u-boot

make -j2

編譯生成

u-boot-sunxi-with-spl.bin

3. kernel 移植

下載kernel
https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/linux-5.7.1.tar.gz
修改主目錄Makefile

ARCH    		?=arm
CROSS_COMPILE   ?=arm-linux-gnueabi-

linux移植lvgl,# Linux,stm32,單片機(jī),arm
下載licheepi_nano的配置文件
linux-licheepi_nano_defconfig文件;鏈接:
http://dl.sipeed.com/LICHEE/Nano/SDK/config
然后將其放到arch/arm/configs/目錄下
linux移植lvgl,# Linux,stm32,單片機(jī),arm
回到主目錄,

make linux-licheepi_nano_defconfig

編譯

make -j2

編譯完畢后在就會(huì)生成zImage文件和dtb文件,zImage在arch/arm/boot目錄下,dtb在arch/arm/boot/dts目錄下目錄下。
linux移植lvgl,# Linux,stm32,單片機(jī),arm

4 rootfs移植

安裝buildroot2018.2.11版本 https://buildroot.org/downloads/
linux移植lvgl,# Linux,stm32,單片機(jī),arm

make clean
make menuconfig

進(jìn)入Target options
linux移植lvgl,# Linux,stm32,單片機(jī),arm
linux移植lvgl,# Linux,stm32,單片機(jī),arm
linux移植lvgl,# Linux,stm32,單片機(jī),arm

圖框中指定了編譯時(shí)使用的庫(kù)類型,我們這里選擇(both static and shared)選項(xiàng),即同時(shí)使用靜態(tài)庫(kù)和動(dòng)庫(kù)。剩下的我們使用默認(rèn)即可,將光標(biāo)移動(dòng)到上,然后按Enter保存。
保存后,回到上一級(jí)配置界面然進(jìn)入第三個(gè)Toolchain選項(xiàng),配置如圖選項(xiàng),配置如圖:
黃色框中的選項(xiàng)盡可能勾,因?yàn)楹竺嬉浦睶T5的時(shí)候需要用到C++相關(guān)庫(kù),如果這里沒有勾選QT5選型將無法勾選。
linux移植lvgl,# Linux,stm32,單片機(jī),arm
第四個(gè) System configuration配置如圖:
linux移植lvgl,# Linux,stm32,單片機(jī),arm
更改啟動(dòng)密碼。
編譯完畢后可以在output/images目錄下找到rootfs.tar。

一、 格式化TF卡

1. linux命令行格式化

1.1 找到U盤位置(已掛載)

sudo fdisk -l

如圖,我的在/dev/sdb
linux移植lvgl,# Linux,stm32,單片機(jī),arm

1.2 格式化U盤

sudo  mkfs  -t  vfat  /dev/sdb

-t 后面是格式化為哪種文件系統(tǒng)格式,vfat就是fat32格式,最后加U盤位置
有時(shí)候被占用了無法格式化,需要先卸載u盤,掛載u盤后會(huì)在/media/user 下找到
使用umount 卸載
linux移植lvgl,# Linux,stm32,單片機(jī),arm

2 gparted格式化 刪除分區(qū)
安裝 gparted

sudo apt-get install gparted

linux移植lvgl,# Linux,stm32,單片機(jī),arm右鍵 卸載 刪除 再確認(rèn)

二、 將uboot寫入到sd卡到8k偏移處

sudo dd if=u-boot-sunxi-with-spl.bin of=/dev/sdb bs=1024 seek=8

linux移植lvgl,# Linux,stm32,單片機(jī),arm

三、 新建分區(qū)

1 新建BOOT分區(qū),存放linux kernel

linux移植lvgl,# Linux,stm32,單片機(jī),arm

2 新建rootfs分區(qū) 存放根文件系統(tǒng)

linux移植lvgl,# Linux,stm32,單片機(jī),arm

3 將下列三個(gè)文件拷貝到BOOT分區(qū)

	1 boot.scr  //看了幾個(gè)教程都沒有提及到這個(gè)問題 要搞清楚 荔枝派自帶

	2 zimage  目錄 arch/arm/boot

	3 suniv-f1c100s-licheepi-nano.dtb  目錄 arch/arm/boot/dts
	//命令
	sudo cp boot.scr suniv-f1c100s-licheepi-nano.dtb zImage /media/wd/BOOT -rf

linux移植lvgl,# Linux,stm32,單片機(jī),arm

4 將rootfs.tar解壓到rootfs

sudo tar -xvf rootfs.tar  -C /media/wd/rootfs

買了一張512M的卡,一鍵下載鏡像后提示card did not respond to voltage select ,unsupported boot device

感覺是卡不行 不知道為啥
有人重新插拔一下就行我的不可以

三、應(yīng)用編譯

驅(qū)動(dòng)開發(fā)過程中有時(shí)候需要編寫簡(jiǎn)單的應(yīng)用測(cè)試程序,由于編譯根文件用的buildroot,所以在編譯應(yīng)用程序也用同樣的交叉工具鏈。
進(jìn)入buildroot主目錄,進(jìn)入output/host/,
在 usr/local 目錄下新建一個(gè) arm-gcc-app 目錄:

sudo mkdir /usr/local/arm-gcc-app

然后將 output/host/目錄下的文件全部拷貝到/usr/local/arm-gcc-app/目錄下:

sudo cp -a ./* /usr/local/arm-gcc-app/

接下來我們添加環(huán)境變量,打開/etc/profile 文件,在末尾添加路徑:
linux移植lvgl,# Linux,stm32,單片機(jī),arm
注意: 加export是環(huán)境變量,在/etc/profile加載后別處可以引用。不加就是普通變量了,只能文件內(nèi)用。
驗(yàn)證:在終端中輸入 arm-linux-,然后雙擊 Tab 按鍵,此時(shí)會(huì)出
現(xiàn)如下內(nèi)容:
linux移植lvgl,# Linux,stm32,單片機(jī),arm
測(cè)試:

四、工具安裝

1.串口傳輸工具Lrzsz

感謝萬(wàn)能的坑友,我搜索了一下,buildroot中確實(shí)有這個(gè)功能,不需要下載;,找到了它位于這個(gè)目錄中:
Target packages —>
Networking applications —>
[v] lrzsz
勾選之后,編譯,根文件系統(tǒng)中就有這個(gè)工具了。
linux移植lvgl,# Linux,stm32,單片機(jī),arm

五、問題記錄

2.第一次進(jìn)入linux,命令號(hào)只顯示#號(hào)

解決 修改/etc/profile 

在末尾處 輸入 
export PS1='[\u\@\h: \w\a]$'

linux移植lvgl,# Linux,stm32,單片機(jī),arm

重啟板子即可

3.慎用空格、TAB

在編寫一個(gè)Makefile工具時(shí),出現(xiàn)Makefile:7: *** missing separator (did you mean TAB instead of 8 spaces?). Stop.這個(gè)問題,
將空格用TAB鍵代替
用vim編輯makefile 錯(cuò)誤的會(huì)現(xiàn)紅色
linux移植lvgl,# Linux,stm32,單片機(jī),arm

5. VIM非正常退出

參考鏈接:https://blog.csdn.net/sunsi_10/article/details/78232207
交換文件 “~/.add.py.swp” 已存在! 以只讀方式打開([O]), 直接編輯((E)), 恢復(fù)(?), 刪除交換文件((D)), 退出((Q)),中止((A)):

產(chǎn)生原因:文件的非正常關(guān)閉。

解決辦法:刪除add.py.swp文件,該文件是隱藏文件所以使用la查看,使用語(yǔ)句rm -r add.py.swp刪除該文件,再次打開文件不會(huì)產(chǎn)生該問題。

6 快捷方式目錄

進(jìn)入 /usr/share/applicatoions,找到所需的軟件的快捷方式,拷貝到桌面就可以了。

參考:https://blog.csdn.net/weixin_45881223/article/details/126145992文章來源地址http://www.zghlxwxcb.cn/news/detail-644808.html

到了這里,關(guān)于linux(全志)初始環(huán)境到移植lvgl的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 全志F1C100s主線linux入坑記錄 (7)GBA模擬器移植

    全志F1C100s主線linux入坑記錄 (7)GBA模擬器移植

    百度網(wǎng)站 gpsp源碼 解壓文件 gpsp需要SDL環(huán)境我們先在bulidroot中添加SDL包 我們?nèi)xSDL路徑下的所有選項(xiàng) 打開之前解壓的 gpsp 文件夾配置Makefile 添加 buildroot 的 gcc 編譯器 告知 SDL.h 位置以及 SDL 元件庫(kù)位置 其實(shí)很簡(jiǎn)單在buildroot文件夾搜索 sdl-config 位置在哪里,然后在Makfike里替換

    2024年02月16日
    瀏覽(24)
  • 【快速入門 LVGL】-- 1、STM32 工程移植 LVGL

    【快速入門 LVGL】-- 1、STM32 工程移植 LVGL

    目錄 一、LVGL?簡(jiǎn)述 二、復(fù)制一個(gè)STM32工程 三、下載 LVGL 四、裁剪 源文件 五、工程添加 LVGL 文件? 六、注冊(cè)?顯示 七、注冊(cè)?觸摸屏 八、LVGL 心跳、任務(wù)刷新 九、開跑 LVGL? 十、控件的事件添加、響應(yīng)處理 十?一、幾個(gè)好玩小事情 十?二、顯示中文 豐富且強(qiáng)大的模塊化圖形組

    2024年04月27日
    瀏覽(19)
  • STM32移植LVGL(LittleVGL)

    STM32移植LVGL(LittleVGL)

    https://lvgl.io/ 這是LVGL的官網(wǎng), http://lvgl.100ask.org/8.2/intro/index.html 這是lvgl的中文介紹網(wǎng)站。 先通過這兩個(gè)網(wǎng)站大致了解一下lvgl,在后面移植時(shí)會(huì)有個(gè)大概了解,移植起來會(huì)更清晰易懂。 1、準(zhǔn)備STM32工程 1、先準(zhǔn)備所用到的屏幕的顯示和觸摸(有觸摸功能的屏幕)的工程。我這

    2023年04月16日
    瀏覽(24)
  • stm32 移植 LVGL 基礎(chǔ)工程

    stm32 移植 LVGL 基礎(chǔ)工程

    注意:這里只是本人的一些學(xué)習(xí)心得,和對(duì)移植的理解,不明白之處還得去跟著官方教程學(xué)學(xué)! 開發(fā)板使用的是 stm32f103zet6 芯片 準(zhǔn)備 LVGL 源碼 8.3 版本 定時(shí)器實(shí)驗(yàn) 觸摸屏實(shí)驗(yàn)(使用 3.5的 屏幕) 1、使用觸摸屏實(shí)驗(yàn)為主體來配置文件 (1)把觸摸屏實(shí)驗(yàn)改為 LVGL 移植實(shí)驗(yàn) (

    2024年01月20日
    瀏覽(19)
  • LVGL觸摸移植——stm32野火F103

    LVGL觸摸移植——stm32野火F103

    目錄 系列文章目錄 章目錄 目標(biāo) 一、認(rèn)識(shí)端口文件 二、使能?lv_port_indev.c? 三、接口函數(shù) 1.輸入設(shè)備初始化 四、Main函數(shù) 五、過程中的疑難雜癥 1.內(nèi)存不足 2、LCD白屏 五、效果 總結(jié) 在顯示的基礎(chǔ)上添加觸摸輸入 提示:以下是本篇文章正文內(nèi)容,下面案例可供參考 這兩個(gè)是

    2024年02月11日
    瀏覽(29)
  • STM32移植LVGL+旋轉(zhuǎn)編碼器接口對(duì)接

    STM32移植LVGL+旋轉(zhuǎn)編碼器接口對(duì)接

    寫在前面:本菜鳥結(jié)合了許多大佬的文章,成功實(shí)現(xiàn)了基于LVGL的GUI設(shè)計(jì),小開心~淺淺記錄一下!~ 本文以單片機(jī)STM32F103VET6為核心,利用ST7796芯片驅(qū)動(dòng)分辨率為480*320的LCD液晶屏模塊,移植LVGL,對(duì)接顯示接口,對(duì)接外部接口——旋轉(zhuǎn)編碼器,完成以上兩步,就可以實(shí)現(xiàn)LVGL的顯

    2024年02月10日
    瀏覽(45)
  • SquareLine studio設(shè)計(jì)LVGL工程,移植到stm32的過程

    SquareLine studio設(shè)計(jì)LVGL工程,移植到stm32的過程

    ? ? ? ? 本文主要是給大家介紹一下如何將SquareLine studio設(shè)計(jì)的LVGL工程,移植到stm32的LCD液晶顯示屏上。 本文做好的移植模板在這(移植模板),模板可以直接在正點(diǎn)原子stm32f103ze系列板子上運(yùn)行測(cè)試。顯示屏使用的是4.3寸屏幕(像素800*480) ? ? ? ? ·以我自己設(shè)計(jì)的LVGL工程

    2024年02月03日
    瀏覽(139)
  • LVGL學(xué)習(xí)筆記(二):從0到1移植LVGL8.1到STM32平臺(tái)上(完結(jié)篇)

    LVGL學(xué)習(xí)筆記(二):從0到1移植LVGL8.1到STM32平臺(tái)上(完結(jié)篇)

    目錄 一:TFT-LCD屏觸摸 二:STM32CubeMX配置 三:FT5206觸摸芯片驅(qū)動(dòng)代碼移植 四:LVGL 移植 4.1 源碼下載 4.2?代碼移植 ?4.3 添加源碼至工程 4.4?指定頭文件路徑 4.5 設(shè)置編譯參數(shù) ?4.6?修改LVGL源文件 ??4.7 修改顯示驅(qū)動(dòng)接口 ???4.8?修改輸入設(shè)備驅(qū)動(dòng)接口 ?五:下載驗(yàn)證 ?六:工

    2024年02月03日
    瀏覽(17)
  • 【LVGL】STM32F103ZET6——LVGL_GUI_GUIDER移植過程成功

    【LVGL】STM32F103ZET6——LVGL_GUI_GUIDER移植過程成功

    STM32F103ZET6——LVGL_GUI_GUIDER移植過程 STM32F103ZET6——LVGL_GUI_GUIDER移植過程 使用工具: 1.LVGL庫(kù)8.02 2.GUI_GUIDER 3.keil5 設(shè)計(jì)出來的總體是這樣 提示:以下是本篇文章正文內(nèi)容,下面案例可供參考 這部分有很多大佬已經(jīng)寫的很成熟了,我就不贅述了 安裝包在這里硬件資源 右上角可將

    2024年02月12日
    瀏覽(54)
  • STM32移植LVGL8.0.2超詳細(xì)的保姆級(jí)教程附移植好的工程文件

    STM32移植LVGL8.0.2超詳細(xì)的保姆級(jí)教程附移植好的工程文件

    網(wǎng)上教程那么多,為什么你要寫這個(gè)教程? 問的好,csnd上很多類似的教程,他們寫的都很好,但是有些過于簡(jiǎn)潔,對(duì)剛上手的小伙伴不太友好,移植到一半遇到bug就想放棄。一些第三方的教程很詳細(xì),但是由于lvgl的版本迭代很快,移植的過程有了一些變化,所謂失之毫厘差

    2024年02月03日
    瀏覽(43)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包