嵌入式入門指導 學習嵌入式開發

怎樣才能快速熟練掌握嵌入式開發呢?成熟的嵌入式開發工程師需要做哪些事情?是很多新手朋友想要了解的,那麼今天我們來簡單的介紹一下

 

 

嵌入式入門指導 學習嵌入式開發 

某位高人曾經說過,成爲高手的路徑只有一條,那就是:多做,多思考。用到嵌入式開發,可以理解爲:多實踐,多總結經驗。我自己認爲,如果要做什麼行業,就一定要用全力把它做得最好。今天只是從大的層面上講講需要注意的一些方面,並不涉及具體的問題。且嵌入式開發也有很多具體的方面,某些工作可能和PC開發流程一模一樣,沒有什麼區別,這裏說的主要是和具體的硬件打交道比較多的開發工作。

興趣很重要

對某個行業有了興趣,才能全身心地投入它,發揮自己的最佳狀態。做嵌入式開發,培養對計算機和消費類電子的興趣是很必要的。有了興趣,才能夠自發地學習大量相關的知識,打好基礎;有了興趣,才能夠主動了解許多和嵌入式相關的產品、新聞,甚至是有關人物,並從這些東西引發自己的思考,也有可能在不經意之間做出影響自己的關鍵決定。我自己的經驗是,有興趣的東西可以過目不忘,沒有興趣的東西記十遍可能都記不住。

當你拿着一臺智能手機,能夠關注它用了什麼CPU,同時清楚常用軟件在它上面會跑出什麼樣的效果,是快是慢也能很快自己分析出原因,那就說明你對嵌入式有了真正的興趣。

你需要熟悉理論 

雖然這是一個實踐比理論更重要的行業,但是,嵌入式開發也不是每個人都可以做的,它對理論知識的要求也很高。很多學生都想畢業之後從事嵌入式開發,但是他們又缺少實踐的機會。怎麼辦?趁在學校的時間,多看書,掌握點理論基礎吧。計算機體系結構,C語言,數據結構等知識尤其重要。

學校一般會學x86的體系結構,但是畢業之後可能會從事ARM、51單片機等開發。但是,即使寄存器變了,即使指令變了,核心的內容都是一樣的,對x86很熟悉的話,學習起來ARM更容易,因爲ARM是RISC體系結構,更簡單。而且,學的過程當中,自己會不經意對比x86和ARM的異同,加深對體系結構的理解。

嵌入式開發一般都以C語言爲主,部分用匯編或者C++。所以掌握好C語言是相當重要的。學C語言不是拿着譚浩強的書翻來覆去地看就可以了,也不是能夠應付考試在卷子上寫一段代碼就可以了。一定要邊看書,邊練習。沒有嵌入式開發環境,就在PC上面寫一些小程序練手。比如,對下棋感興趣的人,就可以寫一個簡單的五子棋程序。

也許實際的開發當中,一般人都用不到多複雜的數據結構。比如,對於90%以上的開發人員來說,很少會用到樹和圖的,用得多的也就是數組和鏈表。但是掌握好數據結構和基礎算法很有必要,會讓你在看代碼的時候,理解得更快,自己寫代碼的時候,效率更好——做嵌入式軟件不光是堆砌代碼,也是在設計一個產品,當你在採用某種算法的時候,心裏也要清楚採用它的原因,拋棄其他算法的理由。

嵌入式設備上的操作系統紛繁複雜,簡單的只有連OS都談不上的控制程序,複雜的諸如智能手機上的複雜OS。大部分嵌入式產品,都需要自己設計或者移植OS的。幸好現在有Linux出現,讓一切都相對容易。沒事的時候,找本Linux的書來翻翻,裝個Linux來玩玩,還是大有裨益的。

必不可少的實踐

如同賣油翁倒油一樣,如果天天看他熟練倒油的過程,自己卻不練習,永遠也不會成爲這方面的高手。嵌入式開發雖然不僅僅是「無他,唯手熟爾」的過程,但是,光看理論的書也掌握點算是皮毛的概念,真正接手開發工作,做實際項目,纔是提高水平的正確途徑。

如果學生朋友想畢業之後就能順利從事這個行業的工作,最好是在校期間能夠找到一些實習機會。參加創客學院培訓也是一個方法,如果實在找不到,都要主動嘗試尋找更多的實踐機會。學校能夠學的東西畢竟是有限的。

 

嵌入式開發的工具,無論是硬件工具,還是軟件工具,都很多很多。接觸某個具體的工作,就會用到相應的各種工具。掌握工具需要一定的時間,但是總的來說,工具的使用掌握起來還是很容易,操作它們和操作普通軟件也差不了多少。知道什麼時候該用什麼工具,怎樣地充分利用它們來提高開發效率以及程序的運行效率,這纔是問題的關鍵。幾年工作經驗下來,我們需要提高的是對做的行業的瞭解,分析問題解決問題能力的提高,至於會用什麼什麼,這個雖然也比較重要,但是在這個工具更新和房價上漲並駕齊驅的時代,並不是誇獎炫耀的資本。

工作的過程當中,可以回過頭來聯繫以前學校學的知識,很多時候都會有恍然大悟的感覺——當初接受了大量的「是什麼」,現在要多多想想「爲什麼」。比如操作系統,課堂上面我們學了很多基本概念,知道啥叫進程,啥叫線程,知道它們的用途,似乎也知道有關它們的一切。如果自己要做嵌入式OS的移植開發,有時不得不深入分析內核代碼,才知道進程和線程遠比想象中的要複雜,光是描述它數據結構就一大堆;還有,不是有了進程這個概念,就一定要用多進程;有了線程,就一定要用多線程。還是一句話,知道什麼時候該用什麼,才用什麼。

不斷學習,不斷實踐,不斷總結,會有很大的收穫的。

多多交流

現在這個社會,做開發的寂寞高手越來越少了。重視交流,是提高自己的一個必要因素。

當你剛開始參與到一項工作中的時候,很多方面都不熟練,肯定會或多或少地請教其他同事。大家的關係好了,他們也很願意和你交流。有的時候,自己琢磨好幾天不如問別人一句話,所以,工作中如果遇到有問題的地方,還是多開口問問。

網上交流也應受到重視。技術更新太快,很可能所從事的方面,在公司中也只有自己掌握得最多。遇到了問題也不是獨孤求敗,因爲如今網絡發達,網上的技術論壇太多了。找一些人氣高的論壇,在上面提一些問題,經常情況下,很快就會有人回覆。說不定時間久了,你就是在論壇上經常解答別人問題的「大蝦」,還可以結交一些朋友。

學會英語

不管你喜歡不喜歡它,都得重視它。沒有其他什麼原因,只因爲大部分技術文檔都是英文的。這是現在獲得技術資料的重要工具。所以,快速閱讀英文文獻的能力還是很重要的。如果你要進入外企,口語和聽力也得同步提升。

以上就是老師們總結的知識點,只要是學會了這些就能快速入門嵌入式的,如果還有不太瞭解的,建議可以多關注下創客學院,有什麼不懂的問題可以隨時諮詢。