嵌入式實(shí)訓(xùn)心得體會(huì)_嵌入式實(shí)習(xí)心得與感悟
嵌入式實(shí)訓(xùn)是什么?嵌入式可視電話系統(tǒng)的出現(xiàn)滿足了人們?cè)诘统杀?、低功耗的情況下進(jìn)行音視頻一體交流的愿望。下面是學(xué)習(xí)啦帶來(lái)的嵌入式實(shí)訓(xùn)心得體會(huì),希望可以幫到大家。
篇一:嵌入式實(shí)訓(xùn)心得體會(huì)
8月我參加了學(xué)校安排的課題實(shí)訓(xùn),基地在北京,學(xué)院安排我們集體坐火車(chē)一同前去,浩浩蕩蕩的隊(duì)伍開(kāi)始出發(fā)了。剛來(lái)北京的時(shí)候,映入眼綿的都是高樓大廈,一直想到的地方終于到了,好多以前的同學(xué)聽(tīng)說(shuō)我要去北京實(shí)訓(xùn)都很羨慕不已,我自己也隱隱感到自豪。
我參加的課題實(shí)訓(xùn)是嵌入式方向的,開(kāi)課的內(nèi)容主要是嵌入式開(kāi)發(fā)方面的,C語(yǔ)言,數(shù)據(jù)結(jié)構(gòu),LINUX基本操作,網(wǎng)絡(luò)編程,操作系統(tǒng)和匯編語(yǔ)言,這些都是嵌入式不可缺少的。每個(gè)專業(yè)技能都決定了你以后找工過(guò)。我們班分了很多小組,每組都有小組長(zhǎng),小組長(zhǎng)直接對(duì)我們負(fù)責(zé)。教課老師很認(rèn)真,都是從很基礎(chǔ)的開(kāi)始講;同學(xué)們聽(tīng)課也很認(rèn)真,由于代碼操作比較多,鍵盤(pán)的聲音源源不斷的在響。好久沒(méi)有感覺(jué)到這種濃重的學(xué)習(xí)氣氛了,而在這緊張而充實(shí)的學(xué)習(xí)氛圍中我獲益匪淺,感受頗多。
授課過(guò)程中老師們也傳授了一些找工作方面的經(jīng)驗(yàn),比如簡(jiǎn)介的樣式和寫(xiě)法,面試中的一些著裝,禮貌用語(yǔ)和技巧,對(duì)此基地的老師還精心的為我們安排了一場(chǎng)模擬面試,在其中我們學(xué)到了很多有關(guān)于面試方面的經(jīng)驗(yàn)。
通過(guò)這幾個(gè)月的實(shí)訓(xùn)我學(xué)到了很多,同時(shí)也讓我們意識(shí)到我們要學(xué)的更多。從程序的設(shè)計(jì)到編寫(xiě)、畫(huà)圖、調(diào)試、修改、完善、到最后的實(shí)訓(xùn)報(bào)告,每個(gè)人都付出了時(shí)間和精力去做好自己的任務(wù)幫助隊(duì)友,所以團(tuán)隊(duì)的合作和隊(duì)友之間的相互協(xié)助非常重要。通過(guò)實(shí)訓(xùn)讓我們更深一步的對(duì)自己的專業(yè),對(duì)自己的能力,對(duì)自己所學(xué)的有正確的認(rèn)識(shí),并且能在以后的學(xué)習(xí)工作中不斷提高和完善自己。特別是講C語(yǔ)言和進(jìn)程通信中老師給了我們每個(gè)小組的幾個(gè)小項(xiàng)目,讓我學(xué)到了更多項(xiàng)目經(jīng)驗(yàn),這在學(xué)校之前是沒(méi)有的。這次實(shí)訓(xùn)也碰到了些問(wèn)題,比如項(xiàng)目文檔的寫(xiě)法,代碼的規(guī)范,流程圖的畫(huà)法,這些都有講究,在老師和同學(xué)的幫助下,我不斷的提高了在這些方面的學(xué)習(xí)。
生活上班主任郭老師和王老師對(duì)我們關(guān)懷備至,讓我們沒(méi)有感覺(jué)在外面的那種不適感,同學(xué)們也互幫互助,所以生活上大致沒(méi)什么問(wèn)題,這讓我們更好的去學(xué)專業(yè)。很感謝學(xué)校有這樣的實(shí)訓(xùn)安排。
總的來(lái)說(shuō),這次實(shí)訓(xùn)還是比較成功的,無(wú)論是個(gè)人動(dòng)手能力還是團(tuán)隊(duì)協(xié)作能力都得到了很好的鍛煉。在實(shí)訓(xùn)過(guò)程中老師也交給我們很多簡(jiǎn)單實(shí)用的技巧。我們也學(xué)到了,做好做對(duì)一個(gè)項(xiàng)目固然重要,同時(shí)美觀程度也是必不可少的,無(wú)論是從參觀者的角度還是自己看的角度都很重要。
篇二:嵌入式實(shí)訓(xùn)心得體會(huì)
學(xué)期開(kāi)始,我們開(kāi)始學(xué)習(xí)《嵌入式系統(tǒng)及應(yīng)用》,由于初次接觸嵌入式系統(tǒng),感覺(jué)蠻難的,所以收獲不是很大,很多的概念都比較模糊,等到學(xué)期結(jié)束開(kāi)始做嵌入式課程設(shè)計(jì)時(shí),真是茫然無(wú)從下手,自從拿到設(shè)計(jì)主題后,我就像熱鍋上的螞蟻,一個(gè)字"急"。最后實(shí)在沒(méi)有辦法,逼著自己去學(xué)習(xí),查資料,總算對(duì)嵌入式有了淺層理解。
嵌入式系統(tǒng)本身是一個(gè)相對(duì)模糊的定義,一個(gè)手持的Mp3和一個(gè)pC104的微型工業(yè)控制計(jì)算機(jī)都可以認(rèn)為是嵌入式系統(tǒng)??傮w來(lái)說(shuō),嵌入式系統(tǒng)是"用于控制,監(jiān)視或者輔助操作機(jī)器和設(shè)備的裝備"。一個(gè)典型的桌面Linux系統(tǒng)包括3個(gè)主要的軟件層---linux內(nèi)核、C庫(kù)和應(yīng)用程序代碼。內(nèi)核是唯一可以完全控制硬件的層,內(nèi)核驅(qū)動(dòng)程序代表應(yīng)用程序與硬件之間進(jìn)行會(huì)話。內(nèi)核之上是C庫(kù),負(fù)責(zé)把pOSIXApI轉(zhuǎn)換為內(nèi)核可以識(shí)別的形式,然后調(diào)用內(nèi)核,從應(yīng)用程序向內(nèi)核傳遞參數(shù)。應(yīng)用程序依靠驅(qū)動(dòng)內(nèi)核來(lái)完成特定的任務(wù)。
在了解了基礎(chǔ)知識(shí)之后,我開(kāi)始進(jìn)行上機(jī)操作,當(dāng)然,其中遇到很多的難題,很多東西都是第一次接觸,又沒(méi)有別人在旁邊指導(dǎo)操作,完全憑借自己去摸索練習(xí)。其中的困難可想而知。然而堅(jiān)持就是勝利,牙一咬眼一閉堅(jiān)持做下去,而通過(guò)本次實(shí)驗(yàn),我感覺(jué)收獲還是蠻多的??赡芪覍?duì)于嵌入式的知識(shí)學(xué)習(xí)的還是不太多,但是這之外的東西收獲頗豐。它讓我學(xué)會(huì)了如何通過(guò)自己的努力去認(rèn)知一個(gè)新事物,更重要的是端正自己的學(xué)習(xí)態(tài)度,只有真正下功夫去學(xué)習(xí),才能有收獲,正所謂"一份耕耘,一份收獲。"沒(méi)有付出,何談回報(bào)呢?再者,通過(guò)本次實(shí)驗(yàn),我也學(xué)會(huì)了如何去分析問(wèn)題,如何找出自己設(shè)計(jì)中的不足,繼而去排除解決問(wèn)題,這就是一個(gè)自我學(xué)習(xí)的過(guò)程。當(dāng)我們通過(guò)實(shí)驗(yàn)去學(xué)習(xí)理論知識(shí)時(shí),自己動(dòng)手得出的結(jié)論,不僅能加深我們對(duì)嵌入式的理解,更能加深我們對(duì)此的記憶。
當(dāng)然,在這其中,我也發(fā)現(xiàn)自己的許多不足之處,由于學(xué)期伊始我沒(méi)有好好學(xué)習(xí),才落到如此地步,這也可以說(shuō)是一個(gè)教訓(xùn)吧!我相信在以后的學(xué)習(xí)工作中,我一定會(huì)端正自己的學(xué)習(xí)態(tài)度,一絲不茍的去對(duì)待每一件事。只有做好足夠的準(zhǔn)備,才能事半功倍!
篇三:嵌入式實(shí)訓(xùn)心得體會(huì)
4月10號(hào),為期一個(gè)階段的Linux開(kāi)發(fā)基礎(chǔ)培訓(xùn)課程圓滿結(jié)束,回首這些天所留下的點(diǎn)點(diǎn)滴滴,感觸深深,學(xué)習(xí)上知識(shí)點(diǎn)的積累,靈活運(yùn)用的過(guò)程中感受到了Linux操作的快速高效性能,這也是我所追求的效率!
當(dāng)初初涉培訓(xùn)課程的第一門(mén)課程時(shí),都說(shuō)Linux操作很繁瑣復(fù)雜,心里總有些顧忌,帶著種.種不安與些許拼博的決心,開(kāi)始了自我提升階段的“充電”,由徐海兵老師教授我們基礎(chǔ)課程的培訓(xùn),我們則像著小學(xué)生般認(rèn)真的記著筆記,仔細(xì)聽(tīng)著并學(xué)會(huì)如何去在實(shí)踐中運(yùn)用所學(xué)的Linux下的各種強(qiáng)大的命令集。
在Unit 1中,徐老師詳細(xì)生動(dòng)的為我們講述了有關(guān)Linux的誕生、初成長(zhǎng)以及輝煌的發(fā)展至今,今后應(yīng)用范圍則愈來(lái)愈廣泛,講解了為L(zhǎng)inux這個(gè)偉大的OS做出巨大貢獻(xiàn)的一位位出色的、偉大的人物,他們那種學(xué)習(xí)鉆研的精神、鍥而不舍的信念、勇于把握住難得的機(jī)會(huì),從小處著手,踏踏實(shí)實(shí)的創(chuàng)造出了對(duì)人類科技發(fā)展做出卓越貢獻(xiàn)的Linux(Unix)系統(tǒng),他們的種.種,都值得我們?nèi)ド羁谭词?、刻苦學(xué)習(xí)、傳承并永遠(yuǎn)發(fā)展下去。
查看ip地址和重啟網(wǎng)絡(luò)服務(wù)是我學(xué)的第一個(gè)命令: ifconfig eth0、ifconfig eth0 IP地址、service network restart。了解到遠(yuǎn)程登錄軟件可用xmanager。
secureCRT是我們常用的,安裝好后利用其登錄到了Red hat Linux,需要知道Linux主機(jī)的ip 地址。徐老師為我們介紹了重要內(nèi)容:SHELL,即運(yùn)行程序的程序,如echo $$SHELL可查看SHELL的環(huán)境變量是csh還是bash。指令pwd可查看當(dāng)前所在路徑,passwd:更改Linux下的密碼,僅限r(nóng)oot用戶有此權(quán)限,當(dāng)然我們是利用虛擬機(jī)VMware程序來(lái)運(yùn)行Linux OS的,懂得了如何設(shè)置虛擬機(jī)的網(wǎng)卡設(shè)置、暫停、恢復(fù)、全屏等。
篇四:嵌入式實(shí)訓(xùn)心得體會(huì)
我們學(xué)習(xí)的課本是嵌入式系統(tǒng)應(yīng)用教程。我學(xué)習(xí)的體會(huì)是這樣的:
開(kāi)始時(shí),由于是剛剛?cè)腴T(mén),對(duì)老師說(shuō)的好多東西很好奇,列如C語(yǔ)言也是新鮮的,不過(guò)不太懂什么意思。但是慢慢的,了解深入后讓我有了更深的感觸和體會(huì)。在嵌入式的學(xué)習(xí)過(guò)程中,讓我了解了什么是嵌入式系統(tǒng)。它就是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可定制,適用于不同應(yīng)用場(chǎng)合,對(duì)功能、可靠性、成本、體積、功耗有嚴(yán)格要求的計(jì)算機(jī)系統(tǒng)。他一般由嵌入式微處理器、外圍硬件設(shè)備、嵌入式操作系統(tǒng)、用戶應(yīng)用程序四個(gè)部分組成,用于實(shí)現(xiàn)對(duì)其他設(shè)備的控制、監(jiān)視或管理功能。嵌入式系統(tǒng)已經(jīng)應(yīng)用于科學(xué)研究、工業(yè)控制、軍事技術(shù)、交通通信、醫(yī)療衛(wèi)生、消費(fèi)娛樂(lè)等領(lǐng)域,人們?nèi)粘J褂玫氖謾C(jī)、PDA、汽車(chē)、智能家電、GPS等均是嵌入式系統(tǒng)的典型代表。
在學(xué)習(xí)命令的過(guò)程中,只要你認(rèn)真的看著老師操作還有認(rèn)真聽(tīng)著他講,你就會(huì)發(fā)現(xiàn)有些命令的操作還是很簡(jiǎn)單的,不過(guò)在操作的過(guò)程中,有時(shí)也會(huì)遇到困難,有時(shí)你按照書(shū)上學(xué)習(xí)的例子,命令輸入終端時(shí)會(huì)出現(xiàn)你不想要的結(jié)果,也就是錯(cuò)誤的結(jié)果。這是問(wèn)問(wèn)旁邊的同學(xué)或是懂得的同學(xué)就可以解決了。
在對(duì)于這部分的學(xué)習(xí)中,讓我知道了命令對(duì)于嵌入式的重要性。它是linux的重要內(nèi)容,linux中所有的功能都是通過(guò)命令執(zhí)行。在實(shí)際應(yīng)用中,為了減少系統(tǒng)開(kāi)銷(xiāo),經(jīng)常不使用圖形界面,此時(shí),對(duì)系統(tǒng)的所有操作都需要以命令方式來(lái)執(zhí)行。在嵌入式系統(tǒng)開(kāi)發(fā)過(guò)程中,由于目標(biāo)機(jī)的性能和配置比較低,因此,一般情況下標(biāo)機(jī)僅具有命令窗口而沒(méi)有圖形界面,對(duì)目標(biāo)機(jī)的所有操作都通過(guò)命令來(lái)實(shí)現(xiàn)。還有的那就是進(jìn)一步學(xué)習(xí)與嵌入式系統(tǒng)開(kāi)發(fā)相關(guān)的linux的服務(wù),他們的啟動(dòng)、設(shè)置等的操作和應(yīng)用。而在學(xué)習(xí)之中,我們主要介紹的是嵌入式系統(tǒng)中開(kāi)發(fā)工程使用的TFTP、Telent和NFS服務(wù)。第一個(gè)實(shí)現(xiàn)的是上機(jī)位與下機(jī)位之間文件的傳輸、無(wú)磁盤(pán)網(wǎng)絡(luò)設(shè)備的啟動(dòng)等功能;第二個(gè)實(shí)現(xiàn)的是遠(yuǎn)程登錄功能;第三個(gè)實(shí)現(xiàn)的是網(wǎng)絡(luò)文件系統(tǒng)功能。
從以上的內(nèi)容之中,并不難感受到我們的學(xué)習(xí)過(guò)程是由淺入深的,這對(duì)于我們的學(xué)習(xí)也有了較好的幫助。當(dāng)然,我們學(xué)習(xí)的不僅僅是這么幾個(gè)內(nèi)容,其中還有相關(guān)的實(shí)驗(yàn)內(nèi)容。在我們基礎(chǔ)的學(xué)習(xí)過(guò)程之中,我有了這么一點(diǎn)的感受,總的來(lái)說(shuō)就是概念加專業(yè)名詞還有介紹加實(shí)驗(yàn)。不過(guò)你絕對(duì)不能小看那些概念和介紹,它對(duì)我們有著很重要的指導(dǎo)作用哦!實(shí)驗(yàn)?zāi)蔷透挥谜f(shuō)了,它提高我們的動(dòng)手能力,在實(shí)驗(yàn)的過(guò)程中還能讓你更加理解書(shū)中的理念,這就是我學(xué)習(xí)嵌入式的感受。
學(xué)習(xí)是可貴的,培訓(xùn)是精彩的。通過(guò)這次可貴而精彩的培訓(xùn)學(xué)習(xí),我們向嵌入式邁進(jìn)了一步。感嘆與憧憬之余,我想我們只有靠自己的聰明與才智、努力與勤奮去追求我們的美好生活。
篇五:嵌入式實(shí)訓(xùn)心得體會(huì)
這學(xué)期才接觸嵌入式系統(tǒng)感覺(jué)還稱不上入門(mén),我通過(guò)學(xué)習(xí)知道了嵌入式的發(fā)展前景很大,各個(gè)領(lǐng)域都用到了嵌入式,學(xué)好嵌入式不愁沒(méi)飯吃。
廣義上講,凡是帶有微處理器的專用軟硬件系統(tǒng)都是嵌入式系統(tǒng)。如各類單片機(jī)和DSP系統(tǒng)。從狹義上講,那些使用嵌入式微處理器構(gòu)成獨(dú)立系統(tǒng),具有自己操作系統(tǒng),具有特定功能,用于特定場(chǎng)合的專用軟硬件系統(tǒng)稱為嵌入式系統(tǒng)。嵌入式系統(tǒng)由嵌入式硬件與嵌入式軟件組成; 嵌入式硬件以芯片、模板、組件、控制器形式埋藏于設(shè)備內(nèi)部。
理解“嵌入”的概念 主要從三個(gè)方面上來(lái)理解。
1、從硬件上,將基于CPU的處圍器件,整合到CPU芯片內(nèi)部,比如早期基于X86體系結(jié)構(gòu)下的計(jì)算機(jī),CPU只是有運(yùn)算器和累加器的功能,一切芯片要造外部橋路來(lái)擴(kuò)展實(shí)現(xiàn),象串口之類的都是靠外部的16C550/2的串口控制器芯片實(shí)現(xiàn),而目前的這種串口控制器芯片早已集成到CPU內(nèi)部,還有PC機(jī)有顯卡,而多數(shù)嵌入式處理器都帶有LCD控制器,但其種意義上就相當(dāng)于顯卡。比較高端的ARM類Intel Xscale架構(gòu)下的IXP網(wǎng)絡(luò)處理器CPU內(nèi)部集成PCI控制器(可配成支持4個(gè)PCI從設(shè)備或配成自身為CPI從設(shè)備);還集成3個(gè)NPE網(wǎng)絡(luò)處理器引擎,其中兩個(gè)對(duì)應(yīng)于兩個(gè)MAC地址,可用于網(wǎng)關(guān)交換用,而另外一個(gè)NPE網(wǎng)絡(luò)處理器引擎支持DSL,只要外面再加個(gè)PHY芯片即可以實(shí)現(xiàn)DSL上網(wǎng)功能。IXP系列最高主頻可以達(dá)到1.8G,支持2G內(nèi)存,1G×10或10G×1的以太網(wǎng)口或Febre channel的光通道。IXP系列應(yīng)該是目標(biāo)基于ARM體系統(tǒng)結(jié)構(gòu)下由intel進(jìn)行整合后成Xscale內(nèi)核的最高的處理器了。
2、從軟件上前,就是在定制操作系統(tǒng)內(nèi)核里將應(yīng)用一并選入,編譯后將內(nèi)核下載到ROM中。而在定制操作系統(tǒng)內(nèi)核時(shí)所選擇的應(yīng)用程序組件就是完成了軟件的“嵌入”,比如WinCE在內(nèi)核定制時(shí),會(huì)有相應(yīng)選擇,其中就是wordpad,PDF,MediaPlay等等選擇,如果我們選擇了,在CE啟動(dòng)后,就可以在界面中找到這些東西,如果是以前PC上將的windows操作系統(tǒng),多半的東西都需要我們得新再裝。
3、把軟件內(nèi)核或應(yīng)用文件系統(tǒng)等東西燒到嵌入式系統(tǒng)硬件平臺(tái)中的ROM中就實(shí)現(xiàn)了一個(gè)真正的“嵌入”。。
嵌入式系統(tǒng)分為4層,硬件層、驅(qū)動(dòng)層、操作系統(tǒng)層和應(yīng)用層
1、硬件層,是整個(gè)嵌入式系統(tǒng)的根本,如果現(xiàn)在單片機(jī)及接口這塊很熟悉,并且能用C和匯編語(yǔ)言來(lái)編程的話,從嵌入式系統(tǒng)的硬件層走起來(lái)相對(duì)容易,硬件層也是驅(qū)動(dòng)層的基礎(chǔ),一個(gè)優(yōu)秀的驅(qū)動(dòng)工程師是要能夠看懂硬件的電路圖和自行完成CPLD的邏輯設(shè)計(jì)的,同時(shí)還要對(duì)操作系統(tǒng)內(nèi)核及其調(diào)度性相當(dāng)?shù)氖煜さ摹5布脚_(tái)是基礎(chǔ),增值還要靠軟件。 硬件層比較適合于,電子、通信、自動(dòng)化、機(jī)電一體、信息工程類專業(yè)的人來(lái)搞,需要掌握的專業(yè)基礎(chǔ)知識(shí)有,單片機(jī)原理及接口技術(shù)、微機(jī)原理及接口技術(shù)、C語(yǔ)言。
2、驅(qū)動(dòng)層,這部分比較難,驅(qū)動(dòng)工程師不僅要能看懂電路圖還要能對(duì)操作系統(tǒng)內(nèi)核十分的精通,以便其所寫(xiě)的驅(qū)動(dòng)程序在系統(tǒng)調(diào)用時(shí),不會(huì)獨(dú)占操作系統(tǒng)時(shí)間片,而導(dǎo)至其它任務(wù)不能動(dòng)行,不懂操作系統(tǒng)內(nèi)核架構(gòu)和實(shí)時(shí)調(diào)度性,沒(méi)有良好的驅(qū)動(dòng)編寫(xiě)風(fēng)格,按大多數(shù)書(shū)上所說(shuō)添加的驅(qū)動(dòng)的方式,很多人都能做到,但可能連個(gè)初級(jí)的驅(qū)動(dòng)工程師的水平都達(dá)不到,這樣所寫(xiě)的驅(qū)動(dòng)在應(yīng)用調(diào)用時(shí)就如同windows下我們打開(kāi)一個(gè)程序運(yùn)行后,再打開(kāi)一個(gè)程序時(shí),要不就是中斷以前的程序,要不就是等上一會(huì)才能運(yùn)行后來(lái)打開(kāi)的程序。想做個(gè)好的驅(qū)動(dòng)人員沒(méi)有三、四年功底,操作系統(tǒng)內(nèi)核不研究上幾編,不是太容易成功的,但其工資在嵌入式系統(tǒng)四層中可是最高的。
驅(qū)動(dòng)層比較適合于電子、通信、自動(dòng)化、機(jī)電一體、信息工程類專業(yè)尤其是計(jì)算機(jī)偏體系結(jié)構(gòu)類專業(yè)的人來(lái)搞,除硬件層所具備的基礎(chǔ)學(xué)科外,還要對(duì)數(shù)據(jù)結(jié)構(gòu)與算法、操作系統(tǒng)原理、編譯原理都要十分精通了解。
3、操作系統(tǒng)層,對(duì)于操作系統(tǒng)層目前可能只能說(shuō)是簡(jiǎn)單的移植,而很少有人來(lái)自已寫(xiě)操作系統(tǒng),或者寫(xiě)出缺胳膊少腿的操作系統(tǒng)來(lái),這部分工作大都由驅(qū)動(dòng)工程師來(lái)完成。操作系統(tǒng)是負(fù)責(zé)系統(tǒng)任務(wù)的調(diào)試、磁盤(pán)和文件的管理,而嵌入式系統(tǒng)的實(shí)時(shí)性十分重要。據(jù)說(shuō),XP操作系統(tǒng)是微軟投入300人用兩年時(shí)間才搞定的,總時(shí)工時(shí)是600人年,中科院軟件所自己的女?huà)zHopen操作系統(tǒng)估計(jì)也得花遇幾百人年才能搞定。因此這部分工作相對(duì)來(lái)講沒(méi)有太大意義。
4、應(yīng)用層,相對(duì)來(lái)講較為容易的,如果會(huì)在windows下如何進(jìn)行編程接口函數(shù)調(diào)用,到操作系統(tǒng)下只是編譯和開(kāi)發(fā)環(huán)境有相應(yīng)的變化而已。如果涉及Java方面的編程也是如此的。嵌入式系統(tǒng)中涉及算法的由專業(yè)算法的人來(lái)處理的,不必歸結(jié)到嵌入式系統(tǒng)范疇內(nèi)。但如果涉及嵌入式系統(tǒng)下面嵌入式數(shù)據(jù)庫(kù)、基于嵌入式系統(tǒng)的網(wǎng)絡(luò)編程和基于某此應(yīng)用層面的協(xié)議應(yīng)用開(kāi)發(fā)(比如基于SIP、H.323、Astrisk)方面又較為復(fù)雜,并且有難度了。
通過(guò)網(wǎng)上查詢我發(fā)現(xiàn)目前國(guó)內(nèi)外這方面的人都很稀缺。一方面,是因?yàn)檫@一領(lǐng)域入門(mén)門(mén)檻較高,不僅要懂較底層軟件(例如操作系統(tǒng)級(jí)、驅(qū)動(dòng)程序級(jí)軟件),對(duì)軟件專業(yè)水平要求較高(嵌入式系統(tǒng)對(duì)軟件設(shè)計(jì)的時(shí)間和空間效率要求較高),而且必須懂得硬件的工作原理,所以非專業(yè)IT人員很難切入這一領(lǐng)域;另一方面,是因?yàn)檫@一領(lǐng)域較新,目前發(fā)展太快,很多軟硬件技術(shù)出現(xiàn)時(shí)間不長(zhǎng)或正在出現(xiàn)(如ARM處理器、嵌入式操作系統(tǒng)等),掌握這些新技術(shù)的人當(dāng)然很少。嵌入式人才稀缺,身價(jià)自然就高,越有經(jīng)驗(yàn)價(jià)格就越高。其實(shí)嵌入式人才稀少,根本原因可能是大多數(shù)人無(wú)條件接觸,這需要相應(yīng)的嵌入式開(kāi)發(fā)板和軟件,另外需要有經(jīng)驗(yàn)的人進(jìn)行指導(dǎo)開(kāi)發(fā)流程。我們軟件系的人學(xué)習(xí)嵌入式,顯然應(yīng)偏重于嵌入式軟件,特別是嵌入式操作系統(tǒng)方面。對(duì)于搞嵌入式軟件的人,最重要的技術(shù)顯然是掌握主流嵌入式微處理器的結(jié)構(gòu)與原理,必須掌握一個(gè)嵌入式操作系統(tǒng),必須熟悉嵌入式軟件開(kāi)發(fā)流程并至少做過(guò)一個(gè)嵌入式軟件項(xiàng)目。
然而我們都沒(méi)有做過(guò)一個(gè)嵌入式軟件項(xiàng)目,甚至連嵌入式的開(kāi)發(fā)流程我也不清楚,我只了解了使用簡(jiǎn)單工具做一個(gè)簡(jiǎn)單的實(shí)驗(yàn)。只有去專研才能在嵌入式的領(lǐng)域站住腳,只有知道的比別人多才會(huì)更有競(jìng)爭(zhēng)力。通過(guò)網(wǎng)上了解,我查詢了嵌入式的入門(mén)和所需要的知識(shí),其中C語(yǔ)言尤為重要,不管是做嵌入式軟件還是硬件開(kāi)發(fā)的人員,對(duì)C語(yǔ)言的掌握這個(gè)是必需的,特別是對(duì)于以后致力于嵌入式軟件開(kāi)發(fā)的人,現(xiàn)在絕大部分都是用C語(yǔ)言。其次,應(yīng)該對(duì)操作系統(tǒng)有所了解,這對(duì)你對(duì)硬件和軟件的理解,絕對(duì)有很大的幫助。應(yīng)該把系統(tǒng)的管理理解一下,比如進(jìn)程、線程,系統(tǒng)如何來(lái)分配資源的,系統(tǒng)如何來(lái)管理硬件的;知道了c語(yǔ)言和操作系統(tǒng)之后,再來(lái)看看嵌入式系統(tǒng),我們主要學(xué)的是ARM,用的是ARM7, 深入理解ARM不是件容易的事,只有在知道ARM相關(guān)知識(shí)之后才能稱得上嵌入式已經(jīng)入門(mén)了。 與嵌入式有關(guān)的知識(shí)我也學(xué)了不少就是不能夠綜合在一起運(yùn)用,組成原理,數(shù)據(jù)結(jié)構(gòu),操作系統(tǒng),C++,這3門(mén)與嵌入式密切相關(guān)的學(xué)科都系統(tǒng)的學(xué)了一遍,但由于長(zhǎng)時(shí)間沒(méi)用到都有點(diǎn)忘記了,從網(wǎng)上得知嵌入式的學(xué)習(xí)與這些書(shū)有很大關(guān)系之后,我把嵌入式與以前學(xué)過(guò)的知識(shí)結(jié)合起來(lái)發(fā)現(xiàn)嵌入式的實(shí)驗(yàn)中很多都是共通的,我對(duì)嵌入式有了初步的理解。
我以為學(xué)習(xí)嵌入式應(yīng)該分為2個(gè)部分:軟件和硬件。關(guān)于硬件方面我接觸到了數(shù)字電路教材和模擬電路方面的知識(shí),但由于沒(méi)有嵌入式CPU很難親自動(dòng)手來(lái)實(shí)現(xiàn)嵌入式的相關(guān)理論;嵌入式入門(mén)則需要不斷地實(shí)驗(yàn)與分析,我只在實(shí)驗(yàn)課時(shí)做幾個(gè)與所給的程序相關(guān)的小程序來(lái)實(shí)現(xiàn)一下;而軟件方面則學(xué)過(guò)C語(yǔ)言,里面通常的語(yǔ)法曾今熟悉過(guò);我通過(guò)下列方法來(lái)適應(yīng)C語(yǔ)言在嵌入式中應(yīng)用:首先重新翻看了下C的教材,看了些常見(jiàn)的語(yǔ)法,接著在編譯器的角度來(lái)看待C,編譯原理我剛學(xué)過(guò),其中將高級(jí)語(yǔ)言與低級(jí)語(yǔ)言的翻譯感覺(jué)在嵌入式中用到了很多;最后沖硬件的角度來(lái)看待C。嵌入式的核心包括嵌入式操作系統(tǒng),嵌入式軟件開(kāi)發(fā)平臺(tái)及工具以及嵌入式應(yīng)用軟件。這些決定怎樣才能開(kāi)發(fā)一個(gè)好的嵌入式系統(tǒng)。 下面談?wù)勎伊私獾那度胧降南嚓P(guān)知識(shí)與應(yīng)用:
首先,嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),且軟硬件可裁減,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗有嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。嵌入式有如下幾個(gè)突出的有點(diǎn)1.系統(tǒng)內(nèi)核小,2專用性強(qiáng),3系統(tǒng)精簡(jiǎn)4高實(shí)時(shí)性O(shè)S5嵌入式系統(tǒng)的應(yīng)用程序可以沒(méi)有操作系統(tǒng)直接在芯片上運(yùn)行,6嵌入式系統(tǒng)需要開(kāi)發(fā)工具和環(huán)境。
嵌入式系統(tǒng)是近幾年才風(fēng)靡起來(lái)的,但是這個(gè)概念并非新近才出現(xiàn)。從20世紀(jì)七十年代單片機(jī)(最早的單片機(jī)是Intel公司的 8048,出現(xiàn)在1976年)的出現(xiàn)到今天各式各樣的嵌入式微處理器,微控制器的大規(guī)模應(yīng)用,嵌入式系統(tǒng)已經(jīng)有了近30年的發(fā)展歷史。經(jīng)過(guò)30年的發(fā)展,嵌入式技術(shù)已經(jīng)日趨成熟,在中國(guó)嵌入式機(jī)一般由嵌入式微處理器、外圍硬件設(shè)備、嵌入式操作系統(tǒng)以及用戶的應(yīng)用程序等四個(gè)部分組成,用于實(shí)現(xiàn)對(duì)其他設(shè)備的控制、監(jiān)視或管理等功能。
其次,嵌入式系統(tǒng)無(wú)疑是當(dāng)前最熱門(mén)最有發(fā)展前途的IT應(yīng)用領(lǐng)域之一。嵌入式系統(tǒng)用在一些特定專用設(shè)備上,通常這些設(shè)備的硬件資源(如處理器、存儲(chǔ)器等)非常有限,并且對(duì)成本很敏感,有時(shí)對(duì)實(shí)時(shí)響應(yīng)要求很高等。特別是隨著消費(fèi)家電的智能化,嵌入式更顯重要。 嵌入式系統(tǒng)是軟硬結(jié)合的學(xué)科,通常有兩類人會(huì)去專研嵌入式:一類是學(xué)電子工程、通信工程等偏硬件專業(yè)的,另一類是學(xué)軟件、計(jì)算機(jī)專業(yè)出身的人,主要從事嵌入式操作系統(tǒng)和應(yīng)用軟件的開(kāi)發(fā)。我是軟件專業(yè)的學(xué)習(xí)嵌入式,越是智能設(shè)備越是復(fù)雜系統(tǒng),軟件越起關(guān)鍵作用,而且這是目前的趨勢(shì)。嵌入式應(yīng)用在很多方面,具體的可以分為工業(yè)控制,交通管理,信息家電,家庭智能管理系統(tǒng),POS網(wǎng)絡(luò)及電子商務(wù),環(huán)境工程與自然,機(jī)器人,機(jī)電產(chǎn)品方面應(yīng)用等方面。其中目前在服務(wù)領(lǐng)域,如遠(yuǎn)程點(diǎn)菜器等已經(jīng)體現(xiàn)了嵌入式系統(tǒng)的優(yōu)勢(shì)。例外還有很多地方用到了嵌入式系統(tǒng),最近飛利浦和ARM共同推出32位RISC嵌入式控制器,適用于工業(yè)控制,采用最先進(jìn)的0.18微米CMOS嵌入式閃存處理技術(shù),操作電壓可以低至1.2伏,它還能降低25%到30%的制造成本,在工業(yè)領(lǐng)域中對(duì)最終用戶而言是一套極具成本效益的解決方案。
那么該如何學(xué)好嵌入式我覺(jué)得應(yīng)該從以下幾點(diǎn)入手:
首先C語(yǔ)言,這個(gè)是毋庸置疑的,不管是做嵌入式軟件還是硬件開(kāi)發(fā)的人員,對(duì)C語(yǔ)言的掌握這個(gè)是必需的,特別是對(duì)于以后致力于嵌入式軟件開(kāi)發(fā)的人,現(xiàn)在絕大部分都是用C語(yǔ)言,你說(shuō)不掌握它可以嗎?至于如何學(xué)習(xí)C語(yǔ)言,我想這些基礎(chǔ)的知識(shí)每個(gè)人都有自己的方法,關(guān)鍵要去學(xué)習(xí),看書(shū)也好,網(wǎng)上找些視頻看也好。很多人會(huì)問(wèn),C語(yǔ)言要學(xué)到怎么樣,我覺(jué)得這沒(méi)有標(biāo)準(zhǔn)的答案。我想至少你在明白了一些基礎(chǔ)的概念后,就該寫(xiě)代碼了,動(dòng)手才是最重要的,當(dāng)你動(dòng)手了,遇到問(wèn)題了,再反過(guò)來(lái)學(xué)習(xí),反過(guò)來(lái)查查課本,那時(shí)的收獲就不是你死看書(shū)能得到的。
其次,應(yīng)該對(duì)操作系統(tǒng)有所了解,這對(duì)你對(duì)硬件和軟件的理解,絕對(duì)有很大的幫助。應(yīng)該把系統(tǒng)的管理理解一下,比如進(jìn)程、線程,系統(tǒng)如何來(lái)分配資源的,系統(tǒng)如何來(lái)管理硬件的,當(dāng)然,不是看書(shū)就能把這些理解透,如果不是一時(shí)能理解,沒(méi)關(guān)系,多看看,結(jié)合以后的項(xiàng)目經(jīng)驗(yàn),會(huì)有更好的理解的。
還有應(yīng)該學(xué)習(xí)下linux或者wince下的編程,這些對(duì)以后做應(yīng)用的編程很有幫助,當(dāng)然,如果做手機(jī)的話,那可以學(xué)習(xí)MTK、塞班、Android等操作系統(tǒng),Android是以后發(fā)展的趨勢(shì),現(xiàn)在很熱門(mén),Android也是基于linux系統(tǒng)封裝的,所以建議先學(xué)習(xí)下linux。
還有,應(yīng)該學(xué)習(xí)下單片機(jī)或者ARM或者M(jìn)IPS,很多人說(shuō)我沒(méi)有單片機(jī)的經(jīng)驗(yàn),直接學(xué)ARM可以嗎?我覺(jué)得那完全沒(méi)有問(wèn)題的,當(dāng)然如果你學(xué)習(xí)過(guò)單片機(jī),那最好不過(guò)了,以后學(xué)習(xí)ARM就更簡(jiǎn)單了。
最后如果你把以上的知識(shí)都有所了解后,就該去閱讀閱讀一些優(yōu)秀的代碼,比如結(jié)合arm芯片手冊(cè)學(xué)習(xí)去學(xué)習(xí)下UBOOT的源代碼,了解下最小的系統(tǒng)開(kāi)發(fā),那對(duì)你整個(gè)嵌入式開(kāi)發(fā)的非常有幫助的,可以的話,還可以學(xué)習(xí)下linux的源代碼,當(dāng)然如果你直接閱讀2.6的代碼,我想你會(huì)很痛苦的,可以先看看linux 代碼早期的版本,比如0.12 的代碼等等,麻雀雖小,五臟俱全,如果你全看完了,那我想你就是一名很成功的嵌入式工程師。
以上就是我在本學(xué)期學(xué)習(xí)嵌入式后的心得及感想。
猜你感興趣: