1. gzyueqian
      13352868059
      首頁 > 新聞中心 > > 正文

      嵌入式領域的職業發展方向是什么?

      更新時間: 2014-06-10 09:25:59來源: 粵嵌教育瀏覽量:3459

      嵌入式開發的門檻相對較高,對程序員的要求一般都是對底層感興趣,學習能力、動手能力要強,對問題能夠從全局和細節去把握,有很強的系統分析和設計能力。 從工程師起步,一般有幾個發展方向,一個是成為技術方面的核心,領域內的專家;另一個是從項目中鍛煉起來,成為項目主管或是管理型人才;再有就是利用自己 的技術及行業經驗去創業。
      硬件和軟件的發展方向是不同的。說說軟件需要學習的知識。
      雖然說搞嵌入式軟件更多時候是在實際的工作中學習的,但一些重要的基礎知識不可或缺。
      1. 計算機組成/微機原理
      主要是為了了解微型計算機的硬件工作原理,明白CPU、總線、I/O、存儲器等一些關鍵結構是怎么工作的,雖然是很枯燥的知識,但是對熟悉外圍設備硬件工作方式,及操作系統,軟件架構的設計及優化相當關鍵。
      2. 操作系統
      嵌 入式產品應用比較廣泛的是Linux和WinCE。但操作系統的內部設計原理都是殊途同歸。首先要去學習的是操作系統原理,去了解進程通信、內存管理、文 件系統等幾個重要的部分,因為這些在軟件開發尤其是內核驅動開發時會用到。接下來可以去熟悉至少一種主流的操作系統,Linux是一個很好的選擇,去了解 它的內核架構,設備驅動架構,如何去編譯,裁剪,編寫應用程序,以及如何使用在具體的嵌入式產品上。
      3. 數字電路
      學習這方面的知識主要是了解一些基本的電路知識,如門電路、邏輯電路、存儲器、寄存器,為了更好的理解嵌入式芯片,存儲器,外圍設備等硬件的設計,但往往在軟件開發中未必能用的到。因為大部分硬件都提供了很完整的軟件接口。
      4. 編程語言:C語言和匯編
      對 于C語言本身的基礎來說,無非是把結構化,函數,數組,指針弄熟,但是嵌入式開發對C語言應用的要求會更高。要對內存分配,文件訪問,寄存器訪問,預處理 指令,中斷處理程序等等相當熟悉,這些都是在使用中要注意的細節問題。C語言對程序的優化也很重要,而這些往往是需要從全局去考慮。匯編一般是和處理器的 指令集相關的,可以更好的去理解處理器的工作原理,往往是用在一些需要效率的地方,如系統的初始化。
      5. 數據結構和算法
      數據結構在嵌入式開發中也很重要,比如說操作系統里的很多實現都用到了具體的算法。基本的數據結構需要掌握,如各種鏈表,樹,圖等等;而算法的學習需要數學知識作為鋪墊,用計算機語言去實現。對于軟件從業人員來說,算法終究是一個工具,在實際應用時再深入挖掘也可。
      6. 軟件工程/軟件測試/項目管理基礎
      這些是軟件開發人員的必備知識。
      7. 開發平臺
      嵌入式的開發平臺不局限于一種操作系統,因此要熟悉各種操作系統下的命令、編輯器及開發工具,這一點往往被很多人忽視。舉個例子,Linux下的程序員開發環境往往是按自己的習慣搭建,熟練掌握一種編輯器如Vim/Emacs可以大幅度提高工作效率。磨刀不誤砍柴工。

      嵌入式領域的方向是很多的,它所應用到的行業范圍也很廣。因此除了這些基礎的知識以外,在具體的應用中可能還需要一些其它的知識,這些知識的每一種都可以研究的很深,舉幾個例子。
      1. 內核,驅動及中間件
      內核開發和驅動本身就是一個方向,驅動和硬件接口相關,而內核的修改和移植更是需要對OS有很深的理解。至于中間件,一般是基于OS或存在于OS和應用程序之間的庫,典型的就是基于Linux的Android。
      2. 通信協議
      通信協議有很多種,經常用到的有網絡通信協議,無線通信協議,串口/USB通信協議等等。
      3. 音視頻技術
      牽涉到音頻視頻處理,壓縮,編解碼等等。
      4. 信息安全
      如加密技術,身份認證,數字證書等等。
      5. 行業知識
      和具體行業或領域相關的知識,如通訊、工控、電子等等。

      這里有一個我認為不錯的學習步驟:
      1. 基礎知識中,計算機組成、操作系統、編程語言和數據結構是必需的。
      2. 找一種CPU體系,了解其核心架構,學習指令集,比如說ARM。
      3. 找一種OS,如Linux,或是傳統RTOS,如Nucleus、eCos,讀源碼和文檔,理解OS內部實現,包括進程,任務,消息機制,內存管理,設備驅動,中斷等核心內容。
      4. 找一塊成熟的開發板,板級資料要齊全,熟悉嵌入式軟件開發流程。
      5. 在項目過程中深入學習其它的技術。

      總之,這些知識的學習不是一蹴而就的,過程會很漫長,也沒有什么特別的技巧。需要去看大量的技術文檔和源碼,而這些文檔大部分又都是英文的。在工作和做具體項目的過程中會學習的比較快,理論結合實踐才是王道。

      免費預約試聽課

      亚洲另类欧美综合久久图片区_亚洲中文字幕日产无码2020_欧美日本一区二区三区桃色视频_亚洲AⅤ天堂一区二区三区

      
      

      1. 日韩精品中文字幕第1页 | 亚洲Av不卡在线 | 日本一区二区三区精品电影 | 色婷婷综合缴情综图 | 在线免费AV观看大全 | 五月天综合缴情好婷婷网 |