<var id="fnfpo"><source id="fnfpo"></source></var>
<rp id="fnfpo"></rp>

<em id="fnfpo"><object id="fnfpo"><input id="fnfpo"></input></object></em>
<em id="fnfpo"><acronym id="fnfpo"></acronym></em>
  • <th id="fnfpo"><track id="fnfpo"></track></th>
  • <progress id="fnfpo"><track id="fnfpo"></track></progress>
  • <tbody id="fnfpo"><pre id="fnfpo"></pre></tbody>

  • x
    x

    嵌入式開發學習路線——寫給初入門的同仁

    發布時間:2018-7-26 10:31    發布者:xyd2018
    關鍵詞: 嵌入式、stm32
    一般的應用開發,例如桌面應用的開發,移動應用的開發,通常都是在一個IDE集成開發環境中完成。

    開發者,熟悉了IDE的使用,熟悉了相關應用編程接口API,就能開發應用了。不需要關心系統本身的太多東西。

    (當然,這并不是說,一般的應用開發,不需要了解很多的系統知識。如果開發者具有深厚的系統知識,那當然對于應用開發大有幫助)。

    嵌入式開發卻有所不同,他相當于是做系統集成。

    開發者可能需要自己確定使用什么cpu,什么內存,什么flash,使用什么外圍設備。

    同時,整個系統的軟件,包括boot、內核、文件系統、應用程序,可能有部分或全部需要自己去拼湊或開發。

    這樣的話,光靠一點點編程語言的知識,就難以搞定了。

    那怎么辦呢,當然要學習一些額外的東西了。

    好了,話歸正轉。下面給出相關的學習資料。資料出現的順序,也就是我們學習的順序。

    1. C程序設計語言

    C語言作者寫的書,超級精簡。因為精簡,所以,這本書要很認真的讀。不要求快,要細嚼慢咽,要多思考,要從頭到尾(包括附錄)的讀。

    2. Unix環境高級編程 第2版
    知名的Unix編程書籍。學完這本書,對一般的Linux應用開發,基本上可以達到得心應手的地步。

    3. Unix網絡編程 第3版 第1卷
    知名的Unix編程書籍。學完這本書,對一般的Linux網絡應用開發,基本上可以達到得心應手的地步。

    (說句題外話,如果自我要求不高的話,學完這3本書,出去混口飯吃已經不是大問題了。)

    (另外,如果想深入一點理解網絡,TCP/IP詳解 卷2 是一本非常好的書)

    4. 深入理解計算機系統
    注意,到這里,要進入關鍵的一步了。這本書,共分為3部分,我們只要看前2部分即可。

    這本書,要相當認真的學習。不僅要看,要思考,還要做完所有的練習題(做題非常重要,一定要堅持先做,再看答案)。

    同時,書中的內容不可能解答你全部的編程疑問。因此,在學習過程中,對自己以前不理解的概念(如C語法的含義,C++多態究竟是如何實現的等問題),要多寫小函數或者小代碼片段,多分析他們對應的匯編代碼(objdump這個最精確;當然,通過使用-S編譯選項也行,它的可讀性要好一點,但是可能會帶有宏指令)。另外,我的經驗是,寫小函數時,參與運算的變量,最好將它定義為入參(編譯器不敢優化)而不是局部變量或全局變量(容易被編譯器優化,導致未能生成你要想看的機器碼)。

    這本書學完,你將真正成為C語言(甚至C++)的專家。因為你將從機器碼的層次,理解C(及C++)的語義究竟是怎么實現的。你還會理解,從C語言代碼生成可執行程序的整個過程(預處理,編譯,鏈接,靜態庫,動態庫等)。你還將理解進程的概念,包括進程如何運行,進程如何與OS交互(中斷、異常、系統調用)。

    5. Linux內核設計與實現
    到這里,算是開始踏入Linux內核的大門了。這本書,從比較高的層次介紹Linux內核。是非常好的內核入門書籍。

    6. Linux內核源代碼情景分析
    華人寫的書,超級通俗易懂。從幫助讀者理解內核的角度來看,本書幾乎可以算是最好的一本書了。

    7. Linux設備驅動程序
    這本書非常注重實用。我們最終的開發,基本上,要么是開發驅動,要么是在內核中做些應用(并與用戶態做一定交互)。而這本書恰恰教給我們最老練的開發方法。

    8 u-boot學習
    這里推薦的不是書籍了,而是一篇網絡資料。
    http://www.cnblogs.com/heaad/archive/2010/07/17/1779829.html

    上面這篇文章,是一篇非常不錯的介紹u-boot工作機制的好文。

    另外,學習u-boot,最好還是買塊開發板,以便于實驗。

    開發板不用買高檔的,買個基本的arm9的就行了。因為我們是學習嵌入式系統原理,有個基本的arm9 CPU就足夠了。

    當然,如果是做產品,那還是需要根據產品本身的需求來做選型的。

    有了開發板,就可以修改、編譯、燒寫u-boot、內核、根文件系統了。

    有了開發板,就可以理解從CPU一通電開始,到Linux跑起來,到最后應用跑起來,在這整個過程中,機器里所發生的一切事情了。

    好了,在下能介紹的內容就這么多了。后面搞什么,怎么搞,就看大家自己的啦。

    免費試聽C語言、電子、PCB、STM32、Linux、FPGA、Python等。
    想學習的你和我聯系預約就可以免費聽課了。宋工Q35--24-65--90-88   Tel/WX:173--17--95--19--08


    本文地址:http://www.portaltwn.com/thread-542870-1-1.html     【打印本頁】

    本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
    您需要登錄后才可以發表評論 登錄 | 立即注冊

    廠商推薦

    • Microchip視頻專區
    • 想要避免發生災難,就用MPLAB SiC電源仿真器!
    • 我們是Microchip
    • 更佳設計的解決方案——Microchip模擬開發生態系統
    • Cortex-M4外設 —— TC&TCC結合事件系統&DMA優化任務培訓教程
    • 貿澤電子(Mouser)專區
    關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
    電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
    快速回復 返回頂部 返回列表
    精品一区二区三区自拍图片区_国产成人亚洲精品_亚洲Va欧美va国产综合888_久久亚洲国产精品五月天婷