ARM+LINUX路線主攻嵌入式Linux操作系統及其上應用軟件開發目標:
1、掌握主流嵌入式微處理器的結構與原理,可以arm9或者arm11,arm9資料豐富便于學習,arm11逐漸成為主流,所以學習arm11也是一個不錯的選擇,不過在很多的方面還是大同小異的,也有相通的地方。所以無論是2440還是6410都可以成為學習的對象。
2、必須掌握一個較新版本嵌入式l操作系統,學習linux版本選擇一個比較新的,穩定的版本,因為新的代碼修復了很多以前的bug,一些好的機制也被引入,不好的機制也會被去掉。
3、必須熟悉嵌入式軟件開發流程并至少做一個嵌入式軟件項目。從開頭先學習一個簡單的程序,比如led的點亮,驅動是如何加入的,應用程序是如何編譯的,如何放到開發板中而運行的,怎么調用底層驅動的。其實這個過程是很簡單的,并不復雜,只要有一個人指導,用不了半天就都弄明白了,然后慢慢地深入由簡單到復雜,不知不覺中就成為大師了。
4、如果想學上層的圖形界面的應用,那么學習一下QT,編一個我們開始學習的helloworld,放到開發板中運行,或者做一個led燈的,畫一個button,然后一點就實現led燈的亮滅,這都不難的,不要認為這個太簡單以后用不到,我們可以把這個led看成是一個開發量,一個繼電器,那樣就可以實現按一下就打開和關閉設備了。以后的工程項目也是這樣的一個個小程序疊加起來的。
5、現在的android系統很火,大家有目共睹,這個也是基于linux的,看看粵嵌的android2.3.4的代碼,就會明白android是如何實現按一個button點亮led的,雖然是一個很小的工程,可是會讓大家認清android的結構框架。每一層是如何調用的,如何注冊的服務,如何調用服務,如何通過java調用C++的程序。
從事嵌入式軟件開發的好處是:
1、目前國內外這方面的人都很稀缺。這一領域入門門檻較高,所以非專業IT人員很難切入這一領域;另一方面,是因為這一領域較新,目前發展太快,大多數人無條件接觸。
2、與企業計算等應用軟件不同,嵌入式領域人才的工作強度通常低一些(但收入不低)。做嵌入式軟件開發的薪水是普通工人工資的2-5倍。這也是嵌入式火的一個原因。
3、哪天若想創業,搞自已的產品,嵌入式不像應用軟件那樣容易被盜版。硬件設計一般都是請其它公司給訂做(這叫“貼牌”:OEM),都是通用的硬件,我們只管設計軟件就變成自己的產品了。
4、興趣所在,做嵌入式的人都有一股熱情,就是愛好,喜歡這個行業,喜歡做這個,每天都會遇到問題,解決問題,這個過程中會有一種成就感。
興趣的由來:
1、成功觀念不同,不虛度此生,就是我的成功。
2、喜歡思考,挑戰邏輯思維。
方法步驟:
1、基礎知識:
目的:能看懂硬件工作原理,但重點在嵌入式軟件,特別是操作系統級軟件,那將是優勢。語言基本功能扎實
2、學習嵌入式linux:
目的:掌握嵌入式處理器其及系統.
方法:
1、嵌入式微處理器結構與應用:直接arm原理及匯編即可,不要重復x86。
2、嵌入式操作系統類:ucOS/II簡單,開源,可供入門。而后深入研究uClinux。
3、必須有塊開發板(arm9以上),FL2440 TX2416 OK6410開發板的資料和代碼都非常的豐富,現在的開發板也便宜,幾百元就可以買個開發板,還有技術支持。比報一個班便宜多了,現在報一個班怎么也得上萬,太貴了而且效果也不太好
3、深入學習:
A、數字圖像壓縮技術:主要是應掌握MPEG、mp3等編解碼算法和技術。
B、通信協議及編程技術:TCP/IP協議、802.11,Bluetooth,GPRS、GSM、CDMA等。
C、網絡與信息安全技術:如加密技術,數字證書CA等。
D、DSP技術:DigitalSignalProcess,DSP處理器通過硬件實現數字信號處理算法。
按照工作需要和自己的興趣來有選擇的學習,不要期望把所有的都學會,那是不可能的事情,要有自己的行長,要精而不要雜,有一技之長要好過每個都會一點點的。