1、嵌入式linux上層應用,包括QT的GUI開發
2、嵌入式linux系統開發
3、嵌入式linux驅動開發嵌入式目前主要面向的幾個操作系統是,LINUX,WINCE、VxWorks等等
Linux是開源免費的,而且其源代碼是開放的,更加適合我們學習嵌入式。所以自學的話妳可以嘗試以下路線:
(1) C語言是所有編程語言中的強者,單片機、DSP、類似ARM的種種芯片的編程都可以用C語言搞定),因此必須非常熟練的掌握。
推薦書籍:譚浩強的很不錯,《The C Programming Language》 這本經典的教材是老外寫的,也有中譯版本。
(2) 操作系統原理,是必需的,如果妳是計算機專業畢業那也就無所謂了,如果是非計算機專業的就必須找壹本比較淺顯的計算機原理書籍看壹看,把啥叫“進程”“線程”“系統調度”等等基本問題搞清楚。
(3) Linux操作系統就是用C語言編寫的,所以妳也應該先學習下Linux方面的編程,只有妳會應用了,才能近壹步去了解其內核的精髓。
推薦書籍:《UNIX環境高級編程》(第2版)
(4) 了解ARM的架構,原理,以及其匯編指令,我們在嵌入式開發中,壹般很少去寫匯編,但是最起碼的要求是能夠看懂arm匯編。
(5) 系統移植的時候,就需要妳從最下層的bootloader開始,然後內核移植,文件系統移植等。而移植這部分對硬件的依賴是非常大的,其配置步驟也相對復雜,也沒有太多詳細資料。
(6) 驅動開發
linux驅動程序設計既是個極富有挑戰性的領域,又是壹個博大精深的內容。
linux驅動程序設計本質是屬於linux內核編程範疇的,因而是對linux內核和內核編程是有要求的。在學習前妳要想了解linux內核的組成,因為每壹部分要詳細研究的話足夠可以擴展成壹本厚書。以上只不過是大概的框架,在實際的開發中還會涉及很多東西,比如:交叉編譯、makefile、shell腳本等等,所以說學習嵌入式的周期較長,門檻較高,自學的話更是需要較強的學習能力和專業功底。只要能堅持下來壹定會取得成功!推薦到華清遠見的網站上了解嵌入式的課程體系和學習方法,還有很多資料和視頻教程可以下載。