王小金Fighting
一、嵌入式開發(fā)待遇怎么樣從現(xiàn)在市場需求和走勢可以看出,在以后的幾年內(nèi)。市場對嵌入式Linux開發(fā)工程師的需求旺盛。而目前熟練的Linux應用人才很少。這意味著各大跨國公司及國內(nèi)消費類電子巨頭企業(yè)都面臨著人才嚴重短缺的挑戰(zhàn)。由于嵌入式Linux開發(fā)人才的缺乏也帶來了這個行業(yè)可觀的薪酬待遇,嵌入式Linux的從業(yè)者薪酬比其他IT業(yè)同行大約高出50%,華清遠見培訓完的學員一開始的平均月薪一般都能達到5000元左右,有三年以上經(jīng)驗的人員年薪都在10萬元以上,有10年工作經(jīng)驗的高級嵌入式軟件工程師年薪在30萬元左右。盡管待遇可觀,可是相關(guān)企業(yè)還是很難招到合適的員工。二、嵌入式培訓班好不好針對如今嵌入式Linux開發(fā)人才的市場缺口,可以通過兩種途徑來解決。一是從業(yè)者就讀于高校內(nèi)設(shè)置專門的嵌入式系統(tǒng)的專業(yè),二是對軟件專業(yè)的畢業(yè)生進行嵌入式Linux方面的職前培訓。高校的軟件教育普遍以應用軟件為主,開設(shè)嵌入式軟件專業(yè)的學校很少,而且學校不能向?qū)W生提供足夠的實踐機會?,F(xiàn)在從事嵌入式開發(fā)的人員,以自動控制、通信專業(yè)和計算機硬件的偏多,基本是通過工作實踐逐漸轉(zhuǎn)型而來。然而隨著今天嵌入式培訓行業(yè)的不斷發(fā)展,越來越多的嵌入式開發(fā)人員主要是通過參加相關(guān)的嵌入式培訓進入嵌入式行業(yè),最具代表性的是新生代的大學畢業(yè)生,越來越多的大學畢業(yè)生將眼光投向了嵌入式培訓機構(gòu),通過參加培訓提高自己的技能。行業(yè)專家分析:通過聯(lián)合高校、專業(yè)嵌入式培訓機構(gòu)和軟件企業(yè),為企業(yè)培養(yǎng)能夠直接使用的嵌入式軟件人才,這是嵌入式人才培養(yǎng)的必經(jīng)之路。
瑪雅家具
嵌入式開發(fā)培訓主要有以下4個方面的內(nèi)容:
入門:
(1)電路知識 首先你要學習電路、模電、數(shù)電,認識電阻、電容、三極管,基礎(chǔ)器件要知道,放大電路、集成運放、時序電路基本電路能看懂,不然看電路圖一定是云里霧里,也就無法進行后續(xù)的工作。硬件產(chǎn)品的設(shè)計實現(xiàn),包括器件選型、原理圖和PCB設(shè)計、電路調(diào)試,都需要過硬的電路基礎(chǔ)。(2)C語言C語言是嵌入式開發(fā)中最重要的編程語言,要對這門語言有深入的理解,畢竟不僅僅要會寫程序,看懂他人程序也很重要。最基本的數(shù)據(jù)類型、數(shù)組、指針、結(jié)構(gòu)體,鏈表、文件操作等都要會,掌握基本語法和語句,不然你要能區(qū)分指針數(shù)組與數(shù)組指針嗎?(3)單片機單片機入門相對簡單,通過單片機的學習可以熟悉單片機的硬件結(jié)構(gòu),包括I/O口、AD轉(zhuǎn)換、通信(串口、并口、I2C、CAN、USB、以太網(wǎng)、ZigBee技術(shù)等)、顯示(LED、LCD等)、控制(PWM等控制技術(shù))、數(shù)據(jù)處理(圖形、圖像、語音、視頻等的處理或識別)等,學好單片機可以為采用嵌入式系統(tǒng)奠定良好的基礎(chǔ)。(4)Linux基礎(chǔ)Linux的源碼和架構(gòu)都是開放的,在嵌入式系統(tǒng)中應用尤為廣泛,學習Linux對于系統(tǒng)的開發(fā)會有很大的幫助。詳細了解Linux下的目錄結(jié)構(gòu)、基本命令、編輯器VI、編譯器GCC、調(diào)試器GDB和Make 項目管理工具,Shell Makefile腳本編寫等知識,以及嵌入式開發(fā)環(huán)境的搭建。中級經(jīng)過第一個階段的學習,你已經(jīng)可以進行嵌入式開發(fā)工作了,但是要進階依舊還有很多知識要學,而這個階段也將是第一個分水嶺,使得優(yōu)秀的嵌入式工程師得以脫穎而出。此階段雖然只有三項,但涉及的知識非常廣,要想學好需要花費大量的精力。(1)Linux編程系統(tǒng)編程可以直接跟內(nèi)核及核心系統(tǒng)程序庫對話,深入了解Linux內(nèi)核。掌握Linux系統(tǒng)編程主要提升對Linux應用開發(fā)的理解和代碼調(diào)試的能力。由于網(wǎng)絡(luò)應用開發(fā)越來越廣泛,通過Linux網(wǎng)絡(luò)發(fā)展、TCP/IP協(xié)議、socket編程、TCP網(wǎng)絡(luò)編程、UDP網(wǎng)絡(luò)編程、Web編程開發(fā)等方面入手,可以全面了解Linux網(wǎng)絡(luò)應用程序開發(fā)。(2)數(shù)據(jù)結(jié)構(gòu)與算法數(shù)據(jù)結(jié)構(gòu)及算法在嵌入式底層驅(qū)動、通信協(xié)議及各種引擎開發(fā)中得到了廣泛的應用,語言編譯要使用棧、散列表以及語法樹;操作系統(tǒng)中用隊列、存儲管理表及目錄樹等;數(shù)據(jù)庫系統(tǒng)運用線型表、多鏈表及索引表進行數(shù)據(jù)管理等等,對其掌握的好壞直接影響程序的效率、簡潔及健壯性。(3)QT、DSP、FPGALinux沒有自己界面,學習QT編程可以創(chuàng)建藝術(shù)級的圖形用戶界面所需的所有功能,從而更好的實現(xiàn)人機交互控制。而如今用戶對于圖形圖像的要求也越來越高,這就需要DSP、FPGA技術(shù)來設(shè)計開發(fā)更好的嵌入式視覺系統(tǒng)。高級學習了前兩個階段的知識,你已經(jīng)可以勝任大部分嵌入式工作了,但是距離大咖仍有一定的差距,其實已經(jīng)到了第二個分水嶺。這部分更多涉及系統(tǒng)層面,沒有全方位的知識將會很難下手。(1)操作系統(tǒng)平臺開發(fā)除了Linux外,嵌入式操作系統(tǒng)還有ARM、WINCE、uC/OS II、Vxworks、uClinux等,不同的系統(tǒng)有著不同的使用環(huán)境,你需要學習掌握系統(tǒng)的各個模塊,為底層平臺搭建做好準備。熟悉各個操作系統(tǒng)的特點以及系統(tǒng)的內(nèi)核移植,確保操作系統(tǒng)能在某個微處理器或微控制器上運行。隨著手機智能硬件的快速興起,Android操作系統(tǒng)開發(fā)也越來越重要。(2)驅(qū)動開發(fā)驅(qū)動程序設(shè)計是嵌入式Linux開發(fā)工作中非常重要的一部分。不僅要熟悉Linux的內(nèi)核機制、驅(qū)動程序與用戶級應用程序的接口,掌握系統(tǒng)對設(shè)備的并發(fā)操作。還要具備ARM硬件接口的基礎(chǔ)知識,熟悉ARMCortex處理器各資源、掌握Linux設(shè)備驅(qū)動原理框架,以及工程中常見Linux高級字符設(shè)備、塊設(shè)備、網(wǎng)絡(luò)設(shè)備、USB設(shè)備的驅(qū)動開發(fā)。??〖??? ┓┑з?〗
當你到達這個位置的時候,可以說你已經(jīng)是一個人生贏家了,而真正的學習過程如同一場漫長的修行,在這個過程中,必定有各種各樣的困難。當然了,嵌入式工作中更多的需要實踐以及經(jīng)驗的積累,相信守得云開見月明,你也可成為一名優(yōu)秀的嵌入式工程師。需要嵌入式培訓,可以來到卓越工程師精英訓練營,專門培訓中高端嵌入式工程師。
希望我的答案能夠幫助到你
臻品之心
一般是4個月左右,價格左右。
個人總結(jié)的嵌入式學習步驟:
嵌入式學習步驟分為三個階段
1.:基礎(chǔ)與理論階段
主要包括一些理論知識,你至少了解這行業(yè)吧,基本的Linux系統(tǒng)使用;其次就是嵌入式核心開發(fā)語言C語言(必須精通);了解c語言數(shù)據(jù)結(jié)構(gòu)及經(jīng)典算法編程;最后就是要了解嵌入式產(chǎn)品的一個基本的開發(fā)流程,這對后續(xù)的開發(fā)有很大的幫助,不至于是那么的迷茫。
2.:嵌入式系統(tǒng)核心開發(fā)
整理了下,至少這些是你要學會的,當前企業(yè)招人,應用層的開發(fā)挺多,特別剛?cè)胄星捌冢耨R驅(qū)動的、移植的相關(guān)的可能你還不熟練,找工作就靠下面這些知識點了。
嵌入式linux應用編程;
嵌入式Linux并發(fā)程序設(shè)計;
嵌入式Linux網(wǎng)絡(luò)編程;
嵌入式數(shù)據(jù)庫開發(fā);
嵌入式Linux應用綜合項目;
ARM處理器編程;
ARM硬件接口開發(fā);
3.:底層
嵌入式底層一般會涉及到,如何把你寫的程序移植到開發(fā)板上運行,那么就會接觸到系統(tǒng)移植、內(nèi)核驅(qū)動開發(fā)等等,這是嵌入式工程師最高境界。主要要學以下這些:
嵌入式Linux系統(tǒng)開發(fā);
嵌入式Linux內(nèi)核開發(fā);
嵌入式Linux驅(qū)動開發(fā)基礎(chǔ);
嵌入式Linux驅(qū)動高級開發(fā);
嵌入式學習步驟就是這么多,除以上相關(guān)學習內(nèi)容外,對于嵌入式學習者來講還應該具備一些學習態(tài)度和學習方法。
1.在學習和工作中要腳踏實地
在對所學內(nèi)容有一定了解之后,在任何項目進行中就保留自己的想法,如果自己能夠解決更好,如果不能可以找其他朋友幫忙,共同探討遇到的問題,如果只懂執(zhí)行過程,沒有自己的想法,即使人家把代碼給咱,咱又能了解多少?
2.多看代碼、多寫代碼
3.及時對自己的知識進行充電。來華清遠見星創(chuàng)客精英訓練營,是一個不錯的進階提升的培訓班。
建議現(xiàn)在打算學習嵌入式的朋友們一定要多看、多練,見多識廣,熟能生巧。
以上嵌入式學習步驟主要涉及的內(nèi)容有嵌入式專業(yè)知識的學習和學習態(tài)度的一些小建議,希望以上內(nèi)容對你會有所幫助
優(yōu)質(zhì)工程師考試問答知識庫