學習嵌入式之后,就會開始擔心嵌入式的發展前景,還有就是薪資方面的事情了,這些在你學習嵌入式之前其實就應該去了解清楚,還有就是如果你學的不好的話,那么嵌入式薪資再高你也拿不到!下面一起來了解下嵌入式系統主要做什么工作吧。
在互聯網行業中,嵌入式技術后來居上,因為物聯網和人工智能的發展,嵌入式技術越來越值錢,學嵌入式的人也越來越多。
國內嵌入式公司(si)主(zhu)要(yao)有兩種(zhong):偏(pian)底(di)層芯片公司(si),偏(pian)應用(yong)層業務(wu)需求公司(si)。實際上大多數(shu)公司(si)都(dou)是做(zuo)(zuo)(zuo)(zuo)應用(yong)層業務(wu)需求;比(bi)如做(zuo)(zuo)(zuo)(zuo)人(ren)臉識別打(da)卡機的(de),做(zuo)(zuo)(zuo)(zuo)GPS導航的(de),做(zuo)(zuo)(zuo)(zuo)云終端設(she)備的(de)公司(si)等。這類(lei)的(de)公司(si),除非(fei)已經(jing)是非(fei)常(chang)大規模(mo)的(de),正(zheng)常(chang)是幾十號研發在(zai)運(yun)作。
人臉打(da)卡:人臉識別模塊是(shi)核心,但是(shi)硬件和軟件是(shi)買的,公司可能制作c++,QT實(shi)現上班打(da)卡業務(wu)的工(gong)作使用場景,數據傳輸,導出導入等相關編程。
GPS導(dao)航:GPS模塊(kuai),核(he)心(xin)驅動,Linux,WinCE的,都不(bu)需要(yao)此公司的開發(fa)者(zhe)去(qu)做(zuo)開發(fa)。云(yun)終端的,核(he)心(xin)接入協(xie)議可能是買思杰的方(fang)案,也有(you)可能買Vmware的方(fang)案,再不(bu)行的就搞個山寨(zhai)的spice協(xie)議,rdp協(xie)議這些免費開源的。
那嵌入式系(xi)統主(zhu)要做什么工作?一般有以下這幾(ji)種:
1.嵌(qian)入式系統開(kai)發設計工作
在系(xi)(xi)(xi)(xi)統的設計階段,系(xi)(xi)(xi)(xi)統分析師將根據(ju)需求(qiu)確定(ding)系(xi)(xi)(xi)(xi)統的硬件的基(ji)本構成,根據(ju)系(xi)(xi)(xi)(xi)統的需求(qiu)選擇使(shi)用那種(zhong)處理器,使(shi)用哪種(zhong)操作系(xi)(xi)(xi)(xi)統,使(shi)用那些軟件開發(fa)工具。系(xi)(xi)(xi)(xi)統分析師往往是較為完整的參與過嵌入(ru)式系(xi)(xi)(xi)(xi)統設計的全過程,對于系(xi)(xi)(xi)(xi)統應用的行(xing)業較為了解(jie),對于嵌入(ru)式系(xi)(xi)(xi)(xi)統本身的開發(fa)流程十分清楚的人。
2.嵌入式(shi)硬件設(she)計工作
系(xi)統(tong)(tong)(tong)硬(ying)件(jian)(jian)設計(ji)人員需要(yao)根據(ju)系(xi)統(tong)(tong)(tong)分析師的(de)設計(ji)結果,進行(xing)硬(ying)件(jian)(jian)原(yuan)理(li)圖(tu)的(de)設計(ji)。通常(chang)需要(yao)硬(ying)件(jian)(jian)設計(ji)人員熟悉嵌入(ru)式(shi)系(xi)統(tong)(tong)(tong)的(de)硬(ying)件(jian)(jian)構(gou)(gou)成。硬(ying)件(jian)(jian)設計(ji)人員需要(yao)了(le)解常(chang)用(yong)(yong)的(de)嵌入(ru)式(shi)系(xi)統(tong)(tong)(tong)處理(li)器(qi),存儲器(qi)(Flash,SDRAM),以太網MAC芯片,音(yin)頻/視頻編解碼芯片,電(dian)源管(guan)理(li)芯片,總線接口電(dian)路(lu) (USB,PCI),液晶顯示模(mo)塊(kuai),可編程邏輯器(qi)件(jian)(jian)(FPGA/CPLD),無線網絡通信模(mo)塊(kuai)(Bluetooth,WLAN,GPRS)等(deng)(deng)硬(ying)件(jian)(jian)電(dian)路(lu)構(gou)(gou)成元(yuan)素的(de)基(ji)本(ben)工作原(yuan)理(li),連接使用(yong)(yong)方(fang)(fang)法,使用(yong)(yong)注意事項,基(ji)本(ben)調試方(fang)(fang)法等(deng)(deng)內容。在網絡上能(neng)找到很多公司的(de)評估板的(de)原(yuan)理(li)圖(tu),對于這些(xie)原(yuan)理(li)圖(tu)要(yao)仔細(xi)研(yan)究(jiu),摸清處理(li)器(qi)同存儲器(qi),網卡,液晶模(mo)塊(kuai)等(deng)(deng)器(qi)件(jian)(jian)的(de)連接方(fang)(fang)法和(he)原(yuan)因。通過對這些(xie)電(dian)路(lu)的(de)研(yan)究(jiu),能(neng)夠較快地了(le)解整個嵌入(ru)式(shi)系(xi)統(tong)(tong)(tong)的(de)構(gou)(gou)成,這些(xie)電(dian)路(lu)同實(shi)際(ji)產品中(zhong)的(de)電(dian)路(lu)雖有一定差別(bie)的(de),特(te)別(bie)是對于手持設備,但這些(xie)差別(bie)不影(ying)響初(chu)學者學習嵌入(ru)式(shi)系(xi)統(tong)(tong)(tong)的(de)硬(ying)件(jian)(jian)設計(ji)基(ji)本(ben)構(gou)(gou)成。
3.驅(qu)動程(cheng)序和(he)操作系統移植工(gong)作
現代嵌入(ru)(ru)式(shi)系(xi)(xi)(xi)統(tong)(tong)(tong)的(de)(de)(de)開發(fa)(fa)同(tong)傳統(tong)(tong)(tong)8位單片機系(xi)(xi)(xi)統(tong)(tong)(tong)的(de)(de)(de)開發(fa)(fa)相(xiang)比,一個顯著的(de)(de)(de)區別就是嵌入(ru)(ru)式(shi)操作(zuo)(zuo)系(xi)(xi)(xi)統(tong)(tong)(tong)的(de)(de)(de)廣泛使用。在拿到(dao)焊接完畢(bi)的(de)(de)(de)電(dian)路(lu)板,并(bing)進行(xing)基本的(de)(de)(de)測(ce)試(shi)后,就要(yao)進行(xing)驅動程序(xu)和(he)操作(zuo)(zuo)系(xi)(xi)(xi)統(tong)(tong)(tong)的(de)(de)(de)移植工作(zuo)(zuo)了(le)。首先要(yao)進行(xing)的(de)(de)(de)Bootloader的(de)(de)(de)編寫和(he)移植工作(zuo)(zuo)。Bootloader相(xiang)當于(yu)PC系(xi)(xi)(xi)統(tong)(tong)(tong)的(de)(de)(de)BIOS。對于(yu)有些嵌入(ru)(ru)式(shi)操作(zuo)(zuo)系(xi)(xi)(xi)統(tong)(tong)(tong),如uc/OSII沒有bootloader同(tong)樣可以開發(fa)(fa)調試(shi)。但是對于(yu)WindowsCE和(he)嵌入(ru)(ru)式(shi)linux系(xi)(xi)(xi)統(tong)(tong)(tong)而(er)言Bootloader就是必須(xu)的(de)(de)(de)了(le)。
4.嵌(qian)入式應用程序的開發
嵌入(ru)式(shi)系統(tong)(tong)的應用(yong)(yong)程序開發(fa)(fa)(fa)同(tong)(tong)在(zai)PC 機上開發(fa)(fa)(fa)應用(yong)(yong)程序的區別不是很(hen)(hen)大。對于Windows CE系統(tong)(tong)而言,Microsoft已經提供了較為(wei)完善的開發(fa)(fa)(fa)工(gong)具。開發(fa)(fa)(fa)人員(yuan)可(ke)以(yi)使用(yong)(yong)Windows 的C# 語言直接在(zai)PC上進(jin)行應用(yong)(yong)程序的開發(fa)(fa)(fa)和模(mo)擬調試,也可(ke)將目標(biao)系統(tong)(tong)同(tong)(tong)PC 機相連,進(jin)行聯機調試。現在(zai)有(you)很(hen)(hen)多系統(tong)(tong)支持J2ME(JAVA的嵌入(ru)式(shi)系統(tong)(tong)版本) ,這使得JAVA 在(zai)嵌入(ru)式(shi)系統(tong)(tong)應用(yong)(yong)開發(fa)(fa)(fa)中(zhong)占有(you)較大的優(you)勢。另(ling)外,作為(wei)專業(ye)的嵌入(ru)式(shi)系統(tong)(tong)軟件開發(fa)(fa)(fa)人員(yuan),還需(xu)要(yao)充分了解面(mian)向對象技術和設計模(mo)式(shi)等方面(mian)的知識,當然作為(wei)初學者可(ke)以(yi)先不深入(ru)研究這方面(mian)的內容。同(tong)(tong)學們(men)在(zai)學習嵌入(ru)式(shi)的過程中(zhong)要(yao)不斷進(jin)行知識的探索,在(zai)一步(bu)(bu)一步(bu)(bu)學習之后就會有(you)一個很(hen)(hen)大的進(jin)步(bu)(bu)。
以上介紹的就是嵌入式系統主要做什么工作了,其實嵌入式能選擇的還是挺多的,畢竟嵌入式是技術崗,如果你的技術要是不過關的話,那么再多的職位你也不能勝任,所以大家在學習的時候希望能認真起來。