91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

列舉一些嵌入式Linux應用開發(fā)里經常使用的技巧和套路

工程師進階筆記 ? 來源:工程師進階筆記 ? 2023-11-14 10:44 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本篇文章,我們基于ELF 1S這一款開發(fā)板,來列舉一些嵌入式Linux應用開發(fā)里面,經常使用到的開發(fā)技巧和套路。

1-收到開發(fā)板,首先要做什么?

先欣賞一下包裝外觀,然后打開包裝盒,小心翼翼拿起來,觀賞一下開發(fā)板的顏值,還可以湊近點聞一下電路板的松香味和洗板水味。

如果開發(fā)板帶屏幕,還要看一下屏幕外觀是否有破損,如果有,馬上聯(lián)系開發(fā)板廠家進行處理。

2-開發(fā)板如何上電測試?

看這份文檔《01-0 ELF 1、ELF 1S開發(fā)板_快速啟動手冊_V1.pdf》,基本上,現(xiàn)在很多入門級的開發(fā)板,都會配套一份“快速啟動手冊”之類的文檔,旨在幫助初學者快速地把開發(fā)板通電使用起來。

至少通過這份手冊,你可以知道開發(fā)板有哪些硬件資源,以及如何通電讓開發(fā)板運行起來。

wKgaomVS31mAK7XOAADo37lFoNA410.jpg

**3-我暫時沒有硬件基礎,能學習嵌入式Linux開發(fā)嗎? **

嵌入式開發(fā)是必須要具備硬件電路知識的,不學硬件是不行的。但嵌入式軟件和硬件的學習次序,則可以靈活搭配,更何況ELF 1S這款開發(fā)板也提供了一系列的硬件學習文檔和視頻。

如果你是百分百的初學者,同時又對嵌入式技術存在執(zhí)念,那建議先從嵌入式Linux應用開發(fā)入手,這樣至少沒那么容易被勸退。

4-想學嵌入式Linux應用程序開發(fā),應該怎樣開始呢?

要想學嵌入式Linux應用程序,首先得了解什么是“Linux操作系統(tǒng)”?網絡上已經有一大堆的概念介紹了。

要先學會用一款桌面型的Linux系統(tǒng),比如Ubuntu。因為開發(fā)板上面的應用程序基本上都是在桌面型的Linux系統(tǒng)上進行開發(fā)的,然后經過交叉編譯后,再傳輸到開發(fā)板上面運行。

C語言編程是必學的,shell編程也最好打一下基礎,這兩門語言是嵌入式開發(fā)里面必不可少的兩大知識點。如果沒有這兩門語言的基礎,建議先不要碰開發(fā)板,先在網上找相關的課程,把這兩門語言的基礎先打一下。

基礎不牢,地動山搖!

編程語言學完后,就是搭建開發(fā)環(huán)境了。說得通俗一點,搭建開發(fā)環(huán)境其實就是在你的Windows或者Ubuntu系統(tǒng)上面,安裝各種軟件,使你的電腦能跟開發(fā)板連接起來,能在兩者之間互相傳輸文件。安裝各種軟件,我相信這活難不倒各位。

嵌入式Linux應用程序開發(fā),本質上就是在你的桌面PC上寫程序,然后交叉編譯,然后把程序傳到開發(fā)板上面運行起來。因為有些開發(fā)板的性能,不足以支撐你在其上面寫代碼編譯。但有些性能非常強大的開發(fā)板,是可以直接在上面編程和運行的,完全不需要交叉編譯。

記?。呵度胧絃inux開發(fā)板,本質上也是一臺電腦,本質上也是一臺電腦,本質上也是一臺電腦。

5-很多出學者都被搭建開發(fā)環(huán)境勸退了,搭建開發(fā)環(huán)境很難嗎?

嵌入式Linux開發(fā)板的開發(fā)環(huán)境,有兩種獲得方式:1-根據教程和網上的資料,自己折騰。2-開發(fā)板廠家搭建好,直接拿來使用。

建議沒有嵌入式基礎的初學者,先直接用開發(fā)板廠家搭建好的開發(fā)環(huán)境,這樣不會那么容易被勸退,到了后期掌握了一定的技巧后,再嘗試自己搭建開發(fā)環(huán)境。搭建開發(fā)環(huán)境,就是安裝ubuntu,以及在Ubuntu上面安裝軟件。

使用廠家搭建好的開發(fā)環(huán)境,看《01-1 ELF 1、ELF 1S開發(fā)板_軟件教程_V1.pdf》的第二章,第2.1.3節(jié),如下圖所示。

wKgaomVS31mASxXdAAGL6osTCnQ757.jpg

6-用什么軟件編寫嵌入式Linux應用程序代碼?

寫代碼的軟件多了去了,隨便簡單改點代碼的話,記事本也是可以的。初學者比較常用的,可以用vscode,QtCreator也是一款很不錯的編輯器,一開始入門學習,不太建議迷信Vim大法,編輯器只是工具,Vim這種略復雜的編輯工具,還不太適合初級入門的同學。

不用太迷信代碼編輯工具,用你自己平時用習慣的,以及覺得編輯效率最高的,如果你平時沒有用啥編輯器,那建議用vscode吧,這工具是真香。

wKgZomVS34eAPpYvAAE4ZTMYRbk158.jpg

7-編寫完代碼,怎樣把代碼轉化為開發(fā)板能運行的程序?

交叉編譯!前面提到,如果在開發(fā)板上面直接編寫代碼然后編譯,那個叫直接編譯運行。如果在桌面型PC上編寫代碼和編譯,然后在開發(fā)板上面運行,那就叫做交叉編譯。

可以查看《01-1 ELF 1、ELF 1S開發(fā)板_軟件教程_V1.pdf》這份文檔的第二章2.6.3章節(jié),如下圖所示。

wKgaomVS31mAMDbFAAEjX3u8r4s282.jpg

8-怎樣在桌面PC和開發(fā)板之間互相傳輸文件?

一般有兩種方式:1-通過TF卡或者U盤互相拷貝,就像在兩臺電腦直接互拷文件一樣。2-用網線把電腦跟開發(fā)板連起來,通過FTP協(xié)議或者NFS網絡文件系統(tǒng)進行傳輸。

我個人比較喜歡通過網絡的方式,在電腦和開發(fā)板直接互傳文件,F(xiàn)TP協(xié)議的方式,在快速啟動手冊里面的【附錄一】有介紹,如下圖所示。

wKgZomVS31mAQyO6AAEw_iF8-U8903.jpg

NFS網絡文件系統(tǒng),也是一種比較常用的方式,網上很多資料,可自行搜索學習,特別是需要經常修改文件系統(tǒng)配置的時候,通過NFS掛載文件系統(tǒng),可以起到事半功倍的作用。

TF卡一般用在產品批量生產時的固件燒錄,個人感覺,通過TF卡拷貝應用程序到開發(fā)板然后運行,略麻煩。

9-開發(fā)板的系統(tǒng)被搞壞了,怎樣恢復成出廠設置?

開發(fā)板廠家一般都會為板子配套出廠鏡像,在我們的開發(fā)過程中,如果不小心把原有的系統(tǒng)搞壞了,可以根據開發(fā)板廠家提供的方法,把開發(fā)板恢復成出廠時的狀態(tài),一般是通過特定的燒錄工具和TF卡進行燒錄。

快速啟動手冊里面的第四章,有講述如何為開發(fā)板恢復出廠設置,如下圖所示。

wKgZomVS31mAI5E0AAD-6yaUOJE861.jpg

10-我想進一步學習更復雜的嵌入式Linux系統(tǒng)移植和驅動開發(fā),應該怎樣開始?

看文檔和視頻,《01-1 ELF 1、ELF 1S開發(fā)板_軟件教程_V1.pdf》這份文檔的第五章至第九章,提供了Linux內核移植、驅動開發(fā)、u-boot介紹、文件系統(tǒng)移植,這幾大塊基本的知識點,如下圖所示。

wKgZomVS31mAEWlwAAGjI-EMpGg400.jpg







審核編輯:劉清

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

    關注

    5198

    文章

    20449

    瀏覽量

    334021
  • Linux系統(tǒng)

    關注

    4

    文章

    614

    瀏覽量

    29906
  • C語言
    +關注

    關注

    183

    文章

    7644

    瀏覽量

    145583
  • elf
    elf
    +關注

    關注

    0

    文章

    13

    瀏覽量

    2547

原文標題:嵌入式 Linux 開發(fā),常用的套路和技巧。

文章出處:【微信號:工程師進階筆記,微信公眾號:工程師進階筆記】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    嵌入式單片機開發(fā)學習路徑

    路徑,讓你的學習過程更加輕松有趣。 1. 入門基礎 1.1 了解嵌入式系統(tǒng) 在開始學習之前,首先需要了解什么是嵌入式系統(tǒng)以及它的基本構成和應用場景。可以閱讀一些基礎書籍和網上資源。 1.2
    發(fā)表于 02-09 15:42

    STM32開發(fā)中的五大嵌入式系統(tǒng)

    兼容性問題:由于uClinux是針對嵌入式環(huán)境進行優(yōu)化的,可能存在一些兼容性問題,需要開發(fā)者在使用過程中進行充分測試和驗證。
    發(fā)表于 01-21 10:48

    Linux開發(fā)嵌入式必備命令速查表

    管理等環(huán)節(jié)輕松應對各種問題。今天,我們整理了Linux嵌入式開發(fā)必備命令速查表,讓你篇文章就能快速查閱。、文件與目錄管理命令在
    的頭像 發(fā)表于 01-19 09:06 ?881次閱讀
    <b class='flag-5'>Linux</b> 下<b class='flag-5'>開發(fā)</b><b class='flag-5'>嵌入式</b>必備命令速查表

    什么是嵌入式應用開發(fā)?

    包括ARM7、ARM9、ARM11、PowerPC、MIPS等。這些處理器和編程語言的選擇取決于具體的硬件條件和開發(fā)需求?。 綜上所述,嵌入式應用開發(fā)個綜合性的技術領域,涉及硬件
    發(fā)表于 01-12 16:13

    迅為Hi3403開發(fā)板驅動教程全面上線,開啟嵌入式Linux開發(fā)新篇章!

    迅為iTOP-Hi3403開發(fā)linux驅動教程全面上線,開啟嵌入式Linux開發(fā)新篇章!
    的頭像 發(fā)表于 12-18 14:23 ?682次閱讀
    迅為Hi3403<b class='flag-5'>開發(fā)</b>板驅動教程全面上線,開啟<b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b><b class='flag-5'>開發(fā)</b>新篇章!

    從小白到大牛:Linux嵌入式系統(tǒng)開發(fā)的完整指南

    從小白到大牛:Linux嵌入式系統(tǒng)開發(fā)的完整指南 、小白入門:搭建 Linux 嵌入式開發(fā)的認
    發(fā)表于 12-16 10:42

    嵌入式應掌握的幾種能力

    1. 編程語言 基本掌握嵌入式必備的編程語言。C語言為主,C++為輔。在資源有限的情況下,大多數嵌入式產品還是使用C語言為主的,特別是底層驅動開發(fā)。上層應用開發(fā)大多用C,在
    發(fā)表于 12-08 06:05

    個面向單片機、事件驅動的嵌入式開發(fā)平臺介紹

    為核心,打造個統(tǒng)嵌入式技術生態(tài),為廣大企業(yè)用戶和嵌入式開發(fā)者們,提供搞可靠性的、高性能的、現(xiàn)代且高開發(fā)效率的
    發(fā)表于 12-05 06:26

    嵌入式開發(fā)的關鍵點介紹

    。 嵌入式系統(tǒng)的應用非常廣泛,例如:智能家居、智能手表、智能手機、智能汽車等等。嵌入式開發(fā)需要開發(fā)人員具備深入的硬件知識和編程經驗,但是也有一些嵌入
    發(fā)表于 11-13 08:12

    Linux嵌入式和單片機嵌入式的區(qū)別?

    :成本較低,適合預算有限的項目。 Linux嵌入式 :成本較高,適合對功能和性能有較高要求的項目。 8. 社區(qū)和支持 : 單片機嵌入式 :社區(qū)和支持相對較小,但也有一些專業(yè)的論壇
    發(fā)表于 06-20 09:46

    嵌入式開發(fā)入門指南:從零開始學習嵌入式

    基礎 3. 學習路徑推薦第階段:熟悉開發(fā)環(huán)境(如Keil、IAR、STM32)第二階段:掌握裸機編程與驅動開發(fā)第三階段:學習RTOS(實時操作系統(tǒng))如FreeRTOS第四階段:深入理解Lin
    發(fā)表于 05-15 09:29

    嵌入式適合自學嗎?

    ,學習者可能會因為缺乏專業(yè)的指導而走很多彎路。例如,在學習STM32時,可能會因為不了解正確的學習方法和順序,而花費大量時間在一些不必要的內容上。 2)難以解決實際問題:在嵌入式開發(fā)中,經常會遇到各種
    發(fā)表于 04-27 09:54

    為何嵌入式開發(fā)者覺得 MCU 開發(fā)無趣,更傾向 MPU(Linux)?

    嵌入式圈子,最近老能聽見有人念叨:“搞 MCU 開發(fā)越來越沒勁兒了,不如轉 MPU(Linux)有意思?!?作為在這行摸爬滾打二十多年的老兵,我也算看明白了 —— 這事兒就像程序員
    的頭像 發(fā)表于 04-25 10:48 ?798次閱讀
    為何<b class='flag-5'>嵌入式開發(fā)</b>者覺得 MCU <b class='flag-5'>開發(fā)</b>無趣,更傾向 MPU(<b class='flag-5'>Linux</b>)?

    硬核升級!華清遠見STM32MP157驅動開發(fā)課程助力嵌入式Linux底層開發(fā)入門進階

    嵌入式Linux系統(tǒng)開發(fā)中,驅動程序開發(fā)項關鍵技術,它作為硬件與軟件之間的橋梁,實現(xiàn)了操作系統(tǒng)對硬件設備的控制。相較于
    的頭像 發(fā)表于 04-03 16:40 ?1013次閱讀
    硬核升級!華清遠見STM32MP157驅動<b class='flag-5'>開發(fā)</b>課程助力<b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b>底層<b class='flag-5'>開發(fā)</b>入門進階

    Python在嵌入式系統(tǒng)中的應用場景

    你想把你的職業(yè)生涯提升到個新的水平?Python在嵌入式系統(tǒng)中正在成為股不可缺少的新力量。盡管傳統(tǒng)上嵌入式開發(fā)更多地依賴于C和C++語言,Python的優(yōu)勢在于其簡潔的語法、豐富的
    的頭像 發(fā)表于 03-19 14:10 ?1494次閱讀