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

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

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

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

嵌入式Linux驅(qū)動(dòng)底層開發(fā)工程師的建議學(xué)習(xí)路線

工程師人生 ? 來源:工程師吳畏 ? 2019-06-26 17:03 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

不請自來。做電賽出身的程序猿一名,目前從事嵌入式Linux驅(qū)動(dòng)開發(fā)。還有單片機(jī)從51到意法Ti都做過,DSP只用過TI的,主要是在開關(guān)電源控制方面的應(yīng)用。建議學(xué)習(xí)路線:

1 學(xué)習(xí)51單片機(jī),這個(gè)階段你只需要跟著郭天翔的視頻去學(xué),只要求實(shí)現(xiàn)功能,不求甚解。但建議能夠提出問題,比如“為什么往IO控制寄存器寫入特定值能點(diǎn)亮LED燈?”“IO口的電路結(jié)構(gòu)是什么樣子的?”“什么是上拉下啦,灌電流拉電流?”,這一階段主要是熟悉單片機(jī)的使用,并且在使用中思考發(fā)現(xiàn)問題,還能熟悉一些基本概念。

2 開始查資料看書,看模擬電路數(shù)字電路等等,開始去弄明白1中所提出的問題。這時(shí)候問題主要集中在電路方面。

3 開始學(xué)習(xí)STM32,隨便買個(gè)板子,看原子的書跟著一步步去做。這時(shí)候你會(huì)遇到很多計(jì)算機(jī)方面的問題,這時(shí)候一邊學(xué)習(xí)教程,一邊學(xué)習(xí):微機(jī)原理,編譯原理,操作系統(tǒng)。你要弄清楚ARM架構(gòu),弄明白CPU如何取指,譯碼,執(zhí)行,知道地址總線,控制總線,數(shù)據(jù)總線如何工作。要弄明白你編譯各個(gè)階段產(chǎn)生的各個(gè)文件是什么,什么是分散加載,什么是重定位,什么是代碼段,什么是數(shù)據(jù)段,等等。還要能弄明白CPU如何啟動(dòng),程序鏡像在內(nèi)存中如何布局。要知道中斷的原理,以及現(xiàn)場保護(hù)等等。最后你了解了各個(gè)知識點(diǎn)之后,轉(zhuǎn)向GCC開發(fā)STM32,這時(shí)候你如果知識掌握得不錯(cuò),你應(yīng)該可以很快地學(xué)會(huì)編寫鏈接器腳本并且明白每一條語句所代表的含義。

4 開始增強(qiáng)C語言,深入挖掘C語言的各個(gè)死角。最好可以做到當(dāng)你寫下一條語句的時(shí)候知道編譯器會(huì)如何處理。還需要數(shù)據(jù)結(jié)構(gòu)和軟件工程,建議最好還要學(xué)習(xí)一下設(shè)計(jì)模式。開始學(xué)習(xí)養(yǎng)成良好的代碼風(fēng)格,開始思考代碼的結(jié)構(gòu)??梢哉f設(shè)計(jì)模式如果能學(xué)好,在往后學(xué)習(xí)LINUX內(nèi)核時(shí)大有裨益。你會(huì)發(fā)現(xiàn)LINUX的輸入子系統(tǒng)有點(diǎn)像職責(zé)鏈模式,會(huì)發(fā)現(xiàn)ASOC音頻系統(tǒng)有點(diǎn)像模板方法模式。私以為,如果能在兩個(gè)以上不同方面考察同一種編程思想,你會(huì)得到更加深刻的理解,更能領(lǐng)會(huì)其精華。

5 認(rèn)真研讀OS方面的書,各個(gè)知識點(diǎn)都要弄明白,進(jìn)程是什么程序是什么線程是什么,競爭死鎖優(yōu)先級反轉(zhuǎn),虛擬地址空間物理地址空間,用戶空間內(nèi)核空間等等。開始學(xué)習(xí)ucos,這個(gè)沒什么可說的,如果在2中能熟練掌握各種知識點(diǎn),知道CPU如何中斷如何保護(hù)恢復(fù)現(xiàn)場,那么讀ucos的源碼時(shí)候,在原理上就不會(huì)有什么疑惑。如果能在4中養(yǎng)成把握代碼整體結(jié)構(gòu)的能力并且學(xué)習(xí)好數(shù)據(jù)結(jié)構(gòu)和基本的算法,讀源碼就沒有什么障礙。一旦原理弄通了,源碼也能讀懂,那么吃透ucos就是順理成章的事情。

6 自己仿照ucos寫一個(gè)stm32上的實(shí)時(shí)os出來。

7 進(jìn)軍LINUX。學(xué)習(xí)LINUX的基本使用,看趙炯那本內(nèi)核剖析,啃LINUX內(nèi)核設(shè)計(jì)與實(shí)現(xiàn),把握總體的內(nèi)核架構(gòu)。之后可以學(xué)習(xí)驅(qū)動(dòng),看建議陳學(xué)松老師的書,弄明白基本的驅(qū)動(dòng)架構(gòu)和如何編寫簡單的驅(qū)動(dòng),認(rèn)真對待,這里強(qiáng)調(diào)一下設(shè)備驅(qū)動(dòng)模型。最后啃LINUX內(nèi)核源碼情景分析,上下兩冊用心讀,這里著重強(qiáng)調(diào)一下內(nèi)核中的VFS部分。之后就是看宋寶華老師的書,進(jìn)一步學(xué)習(xí)驅(qū)動(dòng)開發(fā)。最后。。。。。。??磧?nèi)核源碼看內(nèi)核源碼看內(nèi)核源碼。

8 其它的什么SPI,IIC,什么DMA,都只是技能問題,只要知識學(xué)的好,技能想咋點(diǎn)就咋點(diǎn)。

9 暫時(shí)沒想到其它的了。想到再說

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

    關(guān)注

    5200

    文章

    20481

    瀏覽量

    334534
  • Linux
    +關(guān)注

    關(guān)注

    88

    文章

    11772

    瀏覽量

    219121
  • 開發(fā)工程師
    +關(guān)注

    關(guān)注

    1

    文章

    91

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    什么是BSP工程師

    ,全稱Board Support Package,漢語意思即板級支持包。BSP工程師,顧名思義就是負(fù)責(zé)板級支持包的開發(fā)、調(diào)試和維護(hù)工作。那么什么是板級支持包呢?前面我們講過,嵌入式硬件工程師
    發(fā)表于 01-13 06:54

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

    從小白到大牛:Linux嵌入式系統(tǒng)開發(fā)的完整指南 一、小白入門:搭建 Linux 嵌入式開發(fā)的認(rèn)知地基? 對于零基礎(chǔ)
    發(fā)表于 12-16 10:42

    系統(tǒng)嵌入式學(xué)習(xí)路線

    到搞的很精通,我要學(xué)會(huì)抓住重點(diǎn),學(xué)會(huì)取舍,達(dá)到一通百通,事半功倍的學(xué)習(xí)效果。 首先嵌入式技術(shù)主要分為嵌入式軟件和嵌入式硬件2大方向。 嵌入式
    發(fā)表于 12-16 07:49

    分享一個(gè)嵌入式開發(fā)學(xué)習(xí)路線

    如果你想要學(xué)習(xí)嵌入式開發(fā),我建議按照這個(gè)學(xué)習(xí)路線準(zhǔn)備: 1. 基礎(chǔ)鋪墊期(1-2個(gè)月) 理解嵌入式
    發(fā)表于 12-04 11:01

    嵌入式就業(yè)形勢好不好?

    STM32等基礎(chǔ)單片機(jī)技術(shù)的工程師便能找到一份不錯(cuò)的工作,而如今,企業(yè)更傾向于招聘那些不僅精通硬件,還具備Linux驅(qū)動(dòng)開發(fā)、AI模型調(diào)試乃至無線通信能力的復(fù)合型人才。這種變化,無疑給
    發(fā)表于 11-10 11:48

    為什么嵌入式驅(qū)動(dòng)開發(fā)工程師可以拿高薪

    嵌入式驅(qū)動(dòng)開發(fā)工程師能拿到高薪,核心在于這個(gè)崗位剛好踩中了行業(yè)剛需、技術(shù)壁壘高、人才缺口大這三個(gè)關(guān)鍵節(jié)點(diǎn),而且這種需求還在隨著智能硬件的普及持續(xù)擴(kuò)大。首先得明確,
    的頭像 發(fā)表于 10-30 16:37 ?781次閱讀
    為什么<b class='flag-5'>嵌入式</b><b class='flag-5'>驅(qū)動(dòng)</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>工程師</b>可以拿高薪

    嵌入式 STM32 零基礎(chǔ)入門:「降維打擊學(xué)習(xí)法」適配零基礎(chǔ),高效進(jìn)階全棧工程師

    嵌入式學(xué)習(xí)難嗎?今天就為你揭秘顛覆傳統(tǒng)的——“降維打擊嵌入式學(xué)習(xí)法”!初學(xué)嵌入式會(huì)感覺難,為什
    的頭像 發(fā)表于 08-25 15:24 ?775次閱讀
    <b class='flag-5'>嵌入式</b> STM32 零基礎(chǔ)入門:「降維打擊<b class='flag-5'>式</b><b class='flag-5'>學(xué)習(xí)</b>法」適配零基礎(chǔ),高效進(jìn)階全棧<b class='flag-5'>工程師</b>

    嵌入式工程師為什么要學(xué)QT?

    、車載系統(tǒng)和消費(fèi)電子等領(lǐng)域尤為突出。其跨平臺特性、豐富的庫和工具、高性能以及強(qiáng)大的GUI支持,讓Qt成為嵌入式開發(fā)最理想的選擇。 嵌入式工程師學(xué)習(xí)Qt有很多好處。 跨平臺支持 Qt支持多種操作系統(tǒng),如
    發(fā)表于 08-14 15:15

    嵌入式工程師的進(jìn)階之路

    嵌入式工程師的進(jìn)階之路 (一)初級工程師(0-3 年)核心技能: 單片機(jī)開發(fā):STM32F103系列 GPIO/USART/SPI 外設(shè)驅(qū)動(dòng)
    發(fā)表于 08-13 11:08

    盤點(diǎn)嵌入式就業(yè)所需要的技能有哪些?

    良好的溝通能力和團(tuán)隊(duì)合作精神,能夠與不同領(lǐng)域的工程師協(xié)作。 綜上所述,嵌入式行業(yè)的就業(yè)方向豐富多樣,不同行業(yè)對嵌入式技術(shù)的需求也各有側(cè)重。因此,嵌入式
    發(fā)表于 08-11 15:43

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

    新的應(yīng)用程序和驅(qū)動(dòng)程序來擴(kuò)展功能。 6. 開發(fā)難度 : 單片機(jī)嵌入式開發(fā)難度相對較低,適合初學(xué)者入門。 Linux
    發(fā)表于 06-20 09:46

    物聯(lián)網(wǎng)工程師為什么要學(xué)Linux?

    物聯(lián)網(wǎng)工程師需要掌握Linux的主要原因可以從技術(shù)生態(tài)、開發(fā)需求、行業(yè)應(yīng)用及就業(yè)競爭力四個(gè)角度來分析: 一、技術(shù)生態(tài)與行業(yè)適配性 1)嵌入式開發(fā)的主流平臺 物聯(lián)網(wǎng)設(shè)備往往基于
    發(fā)表于 05-26 10:32

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

    基礎(chǔ) 3. 學(xué)習(xí)路徑推薦第一階段:熟悉開發(fā)環(huán)境(如Keil、IAR、STM32)第二階段:掌握裸機(jī)編程與驅(qū)動(dòng)開發(fā)第三階段:學(xué)習(xí)RTOS(實(shí)時(shí)
    發(fā)表于 05-15 09:29

    如何成為一名嵌入式軟件工程師?

    軟件工程師保持持續(xù)學(xué)習(xí)的態(tài)度,緊跟技術(shù)發(fā)展趨勢;同時(shí),注重實(shí)踐經(jīng)驗(yàn)的積累,積極參與實(shí)際項(xiàng)目的開發(fā)和調(diào)試工作。 此外,還應(yīng)不斷提升自己的溝通能力和團(tuán)隊(duì)協(xié)作能力,以適應(yīng)日益復(fù)雜的工作環(huán)境。 嵌入
    發(fā)表于 04-15 14:37

    硬核升級!華清遠(yuǎn)見STM32MP157驅(qū)動(dòng)開發(fā)課程助力嵌入式Linux底層開發(fā)入門進(jìn)階

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