首先我們要知道嵌入式工作大致上可以分為4個方向:
1、硬件
2、驅(qū)動
3、內(nèi)核
4、應(yīng)用
嵌入式工作是做什么的?
就目前的嵌入式行業(yè)來說,嵌入式系統(tǒng)用在一些特定專用設(shè)備上,通常這些設(shè)備的硬件資源(如處理器、存儲器等)非常有限,并且對成本很敏感,有時對實時響應(yīng)要求很高等。特別是隨著消費家電的智能化,嵌入式更顯重要。像我們平常常見到的手機、PDA、電子字典、可視電話、VCD/DVD/MP3Player、數(shù)字相機(DC)、數(shù)字?jǐn)z像機(DV)、U-Disk、機頂盒(SetTopBox)、高清電視(HDTV)、游戲機、智能玩具、交換機、路由器、數(shù)控設(shè)備或儀表、汽車電子、家電控制系統(tǒng)、醫(yī)療儀器、航天航空設(shè)備等等都是典型的嵌入式系統(tǒng)。這些都是嵌入式的工作。
當(dāng)然還有在系統(tǒng)方面的話可以分為下面幾種工作性質(zhì):
1.系統(tǒng)集成與設(shè)計
要求熟悉各類操作系統(tǒng)和相關(guān)工具,對硬件、操作系統(tǒng)及應(yīng)用軟件設(shè)計均有較深研究,參與并主持過產(chǎn)品開發(fā),熟悉開發(fā)過程,熟練使用調(diào)試工具,對解決調(diào)試中出現(xiàn)的問題較有心得。具有較強的專業(yè)基礎(chǔ)知識,解決問題的思路清晰。而這一切應(yīng)該是在專業(yè)學(xué)習(xí)過程中,通過大量的實踐訓(xùn)練逐步培養(yǎng)出來的。
2、驅(qū)動程序開發(fā)
編寫設(shè)備驅(qū)動程序會耗費嵌入式開發(fā)人員的很多時間,這是由于嵌入式系統(tǒng)是一種量身定制的系統(tǒng),應(yīng)用可能會面對不同的硬件環(huán)境。對不同的配置需要,應(yīng)用要求也就不同。系統(tǒng)中每增加一種設(shè)備,就需要為其編寫相應(yīng)的驅(qū)動程序,所以其工作量也比較大。有些公司在開發(fā)程序過程中并不設(shè)置專門的驅(qū)動程序開發(fā)人員,而是把相關(guān)工作交由其他公司來做,其好處是編寫的驅(qū)動程序更專業(yè),與操作系統(tǒng)的配合更理想,但為此也要花費不菲的費用。
3、應(yīng)用程序開發(fā)
應(yīng)用程序開發(fā)人員的工作是在嵌入式系統(tǒng)開發(fā)平臺上,編寫應(yīng)用程序。這類人員是嵌入式系統(tǒng)應(yīng)用開發(fā)的主力。產(chǎn)品的設(shè)計和功能的實現(xiàn)都是由他們來完成的。他們常常困惑于不知如何使產(chǎn)品有新的創(chuàng)意,而不是如何去實現(xiàn)它,所以需要能夠緊盯市場。從實際意義上來講,他們不僅僅是做應(yīng)用,更多的是做市場。
除了上面這些,你也是可以去自己創(chuàng)業(yè)的,掌握好嵌入式所有的知識,完全是可以自我創(chuàng)業(yè)的。
當(dāng)然做上面這些工作,都是需要有強大的技術(shù)來支撐的,所以學(xué)習(xí)嵌入式你需要掌握下面這些知識:
C語言;C++;操作系統(tǒng);計算機組成原理:linux編程;arm;硬件編程語言(FPGA);模擬電路&數(shù)字電路。
1.C/C++語言,可以說這是計算機行業(yè)的一門必修課,所以要扎扎實實掌握好。
2.操作系統(tǒng),要學(xué)習(xí)一下操作系統(tǒng)的基本原理,熟悉Linux環(huán)境下的開發(fā)環(huán)境,然后你就照著相關(guān)的資料寫一個操作系統(tǒng)試試看。
3.計算機組成原理,要能夠熟悉計算機的基本原理,看看你一個計算機的基本組成以及軟件實質(zhì)是如何來跑的。
4.可以選擇一些書籍來作為參考,達內(nèi)教育有很多專業(yè)的書籍,初學(xué)嵌入式的朋友可以作為參考。
5.arm,可以說是當(dāng)下很流行的微機,自己可以想辦法移植一個操作系統(tǒng)上去。
6.硬件編程語言,芯片到底是怎么做成的呢,學(xué)習(xí)完這門課程,你就很清楚了。
7.模擬電路&數(shù)字電路,硬件的基礎(chǔ),如果可以的話,學(xué)習(xí)下protel ,自己做個硬件pcb板試試。
這些都是你需要學(xué)的,我只是舉了其中幾點,還有很多,需要的是你有好的嵌入式學(xué)習(xí)方法,學(xué)習(xí)嵌入式達內(nèi)教育還是一個很不錯的選擇,會很具體的從淺到深,讓你更好的掌握學(xué)習(xí)方法,對嵌入式感興趣的可以來咨詢哦。