許多想要學習嵌入式的小白都會問,學了能干嘛?而正在學習的朋友或許還會問應該學習哪方面?其實感到迷茫,不知從何下手是非常正常的,針對這些情況,我們不妨看看到底學習嵌入式能干嘛,不同的方向需要學習什么。
嵌入式硬件開發(fā)
硬件開發(fā)最基礎的肯定就是電路、常用元器件、各種硬件等知識。同時設計和開發(fā)缺一不可,不但要熟悉熟悉ARM32位處理器嵌入式硬件平臺開發(fā)、還要具備產品開發(fā)經驗。
一般來說,你需要熟悉掌握Protel/PADS(PowerPCB)/Cadence/OrCad等硬件設計工具的運用,而高速PCB設計經驗至少要4-8層左右。
嵌入式驅動開發(fā)
同樣的需要熟悉嵌入式ARM開發(fā),Linux操作系統(tǒng)也是基礎中的基礎了,而系統(tǒng)結構、計算機組成原理、數(shù)據(jù)結構相關知識不用說也是要學習掌握的。
想要從事嵌入式驅動開發(fā)還要有單片機開發(fā)能力,硬件原理圖也要能理解,這就要求你要有扎實的硬件知識,而后就是需要你能獨立完成調試,寫程序了。
嵌入式系統(tǒng)開發(fā)
從事系統(tǒng)開發(fā)必須要熟悉嵌入式Linux啟動流程,熟悉Linux配置文件的修改。
相對其他方向,內核裁剪,移植,調試、啟動程序Bootloader編寫、根文件系統(tǒng)制作和集成部署Linux系統(tǒng)等整個流程等都要熟悉掌握,且能運用。
嵌入式軟件開發(fā)
C語言一直是嵌入式的根基,如要從事嵌入式軟件開發(fā),那就要精通C語言而不是入門那么簡單。
而Linux下的基本命令、管理配置和編輯器,包括VI編輯器,GCC編譯器,GDB調試器和Make項目管理工具等知也是重點學習對象。
精通嵌入式Linux下的程序設計,精通嵌入式Linux開發(fā)環(huán)境,包括系統(tǒng)編程、文件I/O、多進程和多線程、網絡編程、GUI圖形界面編程、數(shù)據(jù)庫;熟悉常用的圖形庫的編程,如QT、GTK、miniGUI、fltk、nano-x等。
其實,說了這么多大家可以看到雖然方向不同,但學習內容還是有重合的地方,比如C語言和Linux。
如果想要準確選擇自己后續(xù)的發(fā)展方向,不妨根據(jù)自己的興趣以及學習方向還有發(fā)展環(huán)境等來進行選擇。不管哪個方向,嵌入式都是未來發(fā)展的趨勢,尤其是在5G技術發(fā)展的現(xiàn)在。