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