嵌入式開發都需要學習什麼

2021-04-13 09:30:07 字數 1578 閱讀 6264

剛剛開始學習嵌入式,感覺完全是不著邊際,連最基本的概念都沒有。涉及到什麼知識,該往哪個方向學習。但是在看了這篇文章以後感覺收穫不小。

這是乙個初學者常問的問題,也是初學者問嵌入式該如何入門的根源。我感覺有兩個方面,偏硬和偏軟.我不認為嵌入式開發軟體佔絕對比重,相反,軟硬體都懂,才是嵌入式高手所應該追求的,也是高手的必由之路。

硬體道路:第一步: pcb設計,一般為開發板的電路裁減和擴充,由開發板原理圖為基礎,畫出pcb和封裝庫,設計自己的電路。

第二步: sopc技術,一般為fpga,cpld開發,利用vhdl等硬體描述語言做專用晶元開發,寫出自己的邏輯電路,基於alter或xilinux的fpga做開發。

第三步: soc設計,分前端,後端實現,這是硬體設計的核心技術:晶元設計.能做到這步,已經不屬於平凡的技術人員。軟體道路:第一步:bootloader的編寫,修改, 通過這步熟悉arm硬體結構,學習arm組合語言,閱讀arm的晶元手冊,感覺就是像操作51微控制器一樣操作arm晶元.這一步最好的兩個參考資料就是:晶元手冊和bootloader源**。

第二步:系統移植, 驅動開發, 我只做過linux方向,所以也推薦學習嵌入式linux系統,作為標準體系,他開源而且可以獲得大量學習資料.作業系統是整個電腦科學的核心,熟悉 kernel實屬不易,kernel, 驅動開發的學習,沒有什麼捷徑,只有多讀**,多寫**,熟悉系統api.. understanding linux kernel, linux device driver 都是不可多得的好書,值得一看。

第三步:應用程式的編寫,各種gui的移植,qt,minigui都被大量採用,兩種思想都類似,熟悉一種就可以。

軟體道路中,驅動,系統應該是最深入的部分,不是短時間可以掌握的,需要有勇氣和耐心。嵌入式開發,軟硬結合,因為硬體條件比pc差很多,所以肯定會遇見不少問題,因此實踐的勇氣更加重要.有問題就解決問題,無數次的實驗,也許是解決問題的必由之路。

硬體道路方面,是乙個技術提公升,整體層次的提公升,致力於硬體開發的朋友可以關注下。

軟體道路方面,作者的三步基本是按照乙個嵌入式產品的開發過程來寫的,也就是說,乙個產品的成型基本是(在產品可行性分析通過後)先編寫好bootloader,然後完成作業系統的移植,接著把嵌入式產品需要的驅動程式開發出來,最後進行頂層的應用程式開發。開發過程中遇到問題可能需要回過頭來做某些修改,這就另當別論了。

但產品的開發過程是開發過程,初學者學習還是應該由易到難的,所以我們推薦按應用-系統-驅動這樣的步驟來學習。應用、系統、驅動可以說是嵌入式開發的三個方向,有的朋友工作中可能只接觸其中的某乙個方向(比如只做應用開發或者只做驅動開發...),這樣可以選擇某一方向針對性地學習一下,而有的朋友工作中可能需要負責多個方向的開發,那他需要多個方向全部掌握才行。但人都是往高處走的,即便你工作只針對某一方向,但你處於這個行業中,你對其他方向的知識就需要有基本的了解,這種了解對個人職業生涯的發展也會有很大幫助的。

嗯,有這樣的牛人,他會負責乙個嵌入式產品的整個開發過程,軟體硬體方面都乙個人包辦,而且軟硬方面的技術實力都很強。關於專才好還是通才好,這裡不做討論哈,但有能力,多學總是不吃虧的。根據自己的學習能力選擇自己的發展方向:)

新手看招 嵌入式開發都需要學習什麼

這是乙個初學者常問的問題,也是初學者問嵌入式該如何入門的根源。我感覺有兩個方面,偏硬和偏軟.我不認為嵌入式開發軟體佔絕對比重,相反,軟硬體都懂,才是嵌入式高手所應該追求的,也是高手的必由之路。硬體道路 第一步 pcb設計,一般為開發板的電路裁減和擴充,由開發板原理圖為基礎,畫出pcb和封裝庫,設計自...

新手看招 嵌入式開發都需要學習什麼

這是乙個初學者常問的問題,也是初學者問嵌入式該如何入門的根源。我感覺有兩個方面,偏硬和偏軟.我不認為嵌入式開發軟體佔絕對比重,相反,軟硬體都懂,才是嵌入式高手所應該追求的,也是高手的必由之路。硬體道路 第一步 pcb設計,一般為開發板的電路裁減和擴充,由開發板原理圖為基礎,畫出pcb和封裝庫,設計自...

嵌入式開發學習

始於興趣,因興趣而精緻 對於很多人聽到嵌入式這個詞的時候,會感覺到有些迷茫,嵌入式到底和常見的硬體電路學習,軟體程式設計,物聯網等有什麼區別?學習嵌入式到底按照怎樣的乙個思路才能最快的進入狀態,領略嵌入式之美,怎樣才能正確進行興趣匹配實現自己的學習目標。接下來,就讓我簡單的介紹一下我對嵌入式學習的理...