<i id="u3evg"></i>
      1. <i id="u3evg"></i>

        嵌入式心得體會

        時間:2024-09-04 15:36:02 心得體會 我要投稿

        嵌入式心得體會

          心中有不少心得體會時,馬上將其記錄下來,這樣我們就可以提高對思維的訓練。那么如何寫心得體會才能更有感染力呢?下面是小編為大家整理的嵌入式心得體會,歡迎大家借鑒與參考,希望對大家有所幫助。

        嵌入式心得體會

        嵌入式心得體會1

          從實習到現在搞嵌入式開發快一年了,驀然回首好像一年過得挺快,挺順利的。細細品味,發現這一年還是有很多值得回憶和總結的東西。至少這一年看書挺多,大概二十幾本,當然和那些一年看一百多本書的人沒法比,但是我已經超越了自己。這是我大學畢業的第一年,初次走上社會,很想一展身手,可是.....其實也不用可是了,和很多朋友一樣碰了很多釘子,現在我和老板的關系就挺一般的,只是我性格還不錯。呵呵~~,做優秀員工看來還得慢慢學。

          今年最大的收獲就是做了一個半項目,是在uClinux下面跑的。半個是SNMP-Agent的實現,因為我去的時候snmpd已經跑起來了,我只是實現部分管理功能;一個是基于Web的管理系統,使公司的主打產品微波通信設備上網。這個項目是我一手策劃,一手實現(界面設計是一位女同事,很優秀的程序員),從中學到的東西也最多,感情不可謂不深。

          SNMP即簡單網絡管理協議,其實一點都不簡單。在我所知的網絡協議里面,它僅僅比OSI的CMIP簡單一點,而CMIP直到現在還沒得到廣泛應用。我們能夠實現SNMP-Agent不能不感謝CarnegieMellon大學免費發布的ucd-snmp軟件包。它使得開發人員專注于實現對特定設備的管理功能。

          我在項目中的工作主要是擴展MIB,實現相應的管理功能以及網絡功能的擴展。我們公司的MIB庫比較龐大,但是程序運行還是挺快的。因為ucd-snmp軟件包中大量使用回調函數,而且它將MIB樹以二叉樹形式表示,但是每個結點不是單個的MIB結點,而是一個表,包括了多個結點;卣{函數和兩層表示法的使用是操作快速的主要因素。

          基于Web的管理系統我原本是打算在設備外實現SNMP-Manager的功能,因為設備中已經嵌入了Agent。這樣管理人員可以在世界各地通過WWW登錄公司的管理平臺,實現對所有設備的管理。但是老板想在設備中嵌入一個管理系統,可以通過www管理單個設備就行。呵呵~~,這樣工作又輕松了一點,就按老板的意思做了。

          我用的http服務器是BOA,它比現在市場占有率第一的.Apache速度要快。目前還只支持CGI,我就用C寫CGI程序,古老了點。但是在開發過程中感覺用CGI比用現在流行的ASP,JSP要爽,可以隨心所欲,哈哈~~,而且這也是用CC++語言的優點。CGI程序很簡單,它的輸入就是標準輸入,它的輸出就是標準輸出。BOA在uClinux上面跑總要出點問題的,出問題好,出了問題我就能找到問題,一來一往,我對socket編程,I/O多路等編程技術了解也就越來越深了。

          在Linux下面搞了一年,不愛上Linux都難,個人認為軟件開發人員在Linux下面進步是最快的。那么多優秀的開源代碼供我們研究,猶如每天與世界上最優秀的程序員打交道,進步于不經意間。哈哈~~。正所謂“熟讀唐詩三百首,不會作詩也會吟”。GCC編譯器的優秀不用多說,我覺得寫Makefile也是很件開心的事。不推薦程序員搞開發都用IDE,隔靴捎癢很不爽。但是Linux缺點也很明顯,聽歌、看碟、玩游戲不如Windows。恰巧公司的電腦沒音箱,干脆我就懶得用Windows了。

          用Linux而不講開源是不道德的,我們程序員享受著開源的好處,自然也要為開源做點貢獻。我開發的所有軟件都開源,但是我也有個“怪癖”:不喜歡別人在我代碼未完成的時候問我要源代碼。

          做嵌入式開發一年,稍稍有點心得?偨Y了一下,有以下幾點經驗:

          1.不要玩Linux。這一點主要是對像我這樣在Linux下面開發的程序員來說的。因為Linux對程序員的吸引力很大,但它下面可以直接用的軟件還是比較少。于是我們總想到網上找一些開源的軟件裝到我們的機器上,從無到有讓人很有成就感的,呵呵~~。要是裝上的不是最新版本的還不滿意,于是又開始忙升級。在Windows下這個過程大概沒什么意思,全都next了。在Linux下就不一樣了,直接拿過來的源代碼很多編譯都不能通過,最新版本更是這樣,得我們自己改,而且往往時改了又改。這個過程很花時間,我就在這方面浪費了很多時間,本來有個月工作比較輕松,打算閱讀Linuxkernel代碼(也想成高手,呵呵~~),當時我機子上沒有好的閱讀工具,于是先弄了個sourcenavigator,覺得不夠又裝了個openoffice,然后又找來了幾份不同版本的kernel代碼。結果一個月過去了,一個文件夾還沒看完。后面工作緊了,只能把看kernel當休息,直到現在才粗略看完fs,mm兩個文件夾。

          2.不要滿足于C語言。C語言很優秀,也很簡單。程序設計能力不等同于用C語言能力。嵌入式開發程序員要有扎實的數據結構基礎,要積極的學習操作系統,積極的學習網絡編程,要是想進行驅動開發還需要積極的學習硬件知識。

          3.了解幾種芯片體系結構。嵌入式不像PC領域x86一統天下,在嵌入式領域ARM、MIPS、M68k等各顯神通。例如ARM7是沒有MMU的,uClinux在它上面跑是最合適了,但是沒有MMU我們也必須實現簡單的MM功能,同時沒有MMU一些常用庫函數是不能實現的,這些嵌入式開發程序員必須要了解。

          4.編寫無錯的C程序。關于這一點建議閱讀SteveMaguire的《WritingCleanCode》。我對MS沒有好感,但這不影響我對MS里面大牛們的尊敬。嵌入式的調試是非常麻煩的,很耗時。雖然有gdbserver這類工具,但是你用的開發工具鏈中不一定包括它,而且就算用上了調試仍然是很花時間的。所以要是不想天天通宵調程序呢,那就要時時以編寫無錯程序為目標。

          5.了解一點編譯知識。這對編寫高性能程序很有幫助。

          6.學習設計模式。設計模式一般在高級語言中討論較多,但是好東西應該大家一起分享。學習設計模式對提高我們的設計能力非常有幫助。用C語言也可以實現一些模式思想,例如我們常用的回調函數,就可看作是Command模式的C語言版本。

          7.要有前瞻性,要積極學習新技術。目前的嵌入式開發一般都是將PC應用加以剪裁,移植到嵌入式系統中。但是隨著通信技術的發展,IPv6的廣泛應用,設備上網是大勢所趨。許多新技術有可能在嵌入式領域率先應用。把握住這個趨勢,嵌入式程序員大有可為。

          現在很多公司招程序員要求有嵌入式開發經驗,其實本質上嵌入式開發和我們平常的開發沒什么不同,只是要求嚴格一點。我寫下這些希望對學習嵌入式開發的朋友們有所幫助。

          嵌入式ARM軟件開發設計流程

          一.項目總體任務描述:

          設計GPS/北斗接收顯示終端平臺,為數據的接收(NEMA格式),處理,圖形顯示等后端應用軟件提供平臺支持。

          二.項目功能要求:

          1.以PXA270微處理器配合LCD模塊開發出獨立的接收顯示終端硬件平臺;

          2.在該硬件平臺架構LINUX,

          3.WINCE操作系統

          三.嵌入式軟件開發上手知識儲備和開發流程

          (注:由于我們開發時買了一個樣機,這樣可以節省我們項目開發中的許多時間和降低了開發的復雜度,我們在看資料的時候,作為學習時,可以認真仔細的看每個細節,但作為開發時,有時會碰到一些無關緊要的細節問題,這時可以采用黑匣子辦法,只要會用就行了,我的理解是做項目時并不一定需要知道每個具體細節,要學會分清“系統學習”和“實踐應用”的范疇。比方說,操作系統,我們只需要拿別人的一個樣板來修改達到自己需要的要求就可以,而沒必要自己去編操作系統,一般來講,一個人自己去編寫那東西是不大現實的。所以以下我都是從實用的角度出發,總節我這段時間ARM的學習體會,從而讓對嵌入式不了解的新手如何迅速掌握開發中的重點以及達到開發的能力?傊业睦斫馐歉汩_發就是大量廣泛看好的資料,一份好的資料可以節省你開發中的好多時間。不必等資料都看完再動手,那樣時間不夠,可以一邊動手一邊學習資料,需要什么方面的知識,不懂的當即查下看懂即可。)

          嵌入式軟件開發整體流程:

          Uboot啟動代碼的編寫->各模塊驅動程序的開發->操作系統的移植->應用程序的開發

          以下是上手的一些基本知識儲備:

          1)匯編語言的學習可參見文件夾“我的ARM”->“ARM匯編指令”集,不需要都掌握,只要知道有哪些指令功能,用的時候查閱就可以了。這部分的學習對用匯編編寫的“uboot”啟動代碼的理解比較重要,啟動代碼的詳細介紹可參見“StudyARMboot”這本書,里面講的非常詳細。(注:如沒特殊說明,資料指的是都是“我的ARM”文件夾里的資料)

          2)C語言只需我們本科學的就夠用了,大致過一遍應用時去查就可以了。沒必要再深入系統的學習。搞Wince操作系統移植的同學有必要把C++快速學一遍,掌握C++的三大特性(抽象性,繼承和派生,多態),因為操作系統Wince的程序代碼都是按C++的編程格式組織起來的,如果不懂C++的那些特性,比較難看懂程序。這方面的資料請看見文件夾“VC++學習”,里面資料相當詳細。

          3)各模塊驅動程序的開發。這方面首先要熟讀芯片資料,要理解軟件程序是怎樣控制硬件的。(簡單的理解就是往寄存器里寫不同的值以驅使硬件實現不同的功能。)剛開始不必把芯片中的每個模塊都搞透,只需熟悉一些常用的模塊即可,比方說串口,I/O口,IIC總線,LCD驅動控制和顯示等等,這些跟我們當前的項目都是緊密聯系的。看各個模塊芯片資料的時候可以對照示例程序結合起來看,首先要理解這個模塊的工作原理,然后看程序中每個寄存器所設的參數,邊看邊思考這些程序如果我用在其他的地方該如何修改。其他的模塊的學習都是觸類旁通的,關鍵是思路,可以把本科我們所做的單片機,DSP等實驗聯想結合起來。資料可參見文件夾“44b0實驗資料”和“實驗指導書”。

          4)操作系統的移植。主要是理解操作系統的一些基本概念(如對信號量,鎖,進程同步,進程間的通信,臨界資源使用,驅動管理,文件存儲等等),然后知道這些概念在程序中是如何反映出它們的功能的。我們以UCOS-II這個操作系統作為理解學習,具體資料參見文件夾“uCOSII-en”,里面資料講得非常詳細。項目中要求的是用Wince和Linux兩套操作系統,由于我們買了成套開發板,代碼都有,我們要做的工作就是對它們進行修改和移植,所以只有當你了解了操作系統的一些基本概念,你才可能對它們進行修改。Linux開發難度要大些,不僅操作復雜些,而且開發用的命令行的方式,這方面的資料可參考文件夾“linux學習”和“ucLinux核心(中文手冊)”,由于嵌入式大部分用的是嵌入式linux操作系統,從學習的角度來講,這方面要多下功夫。

          至于應用程序的開發,那就要看具體的應用了,這個難度不是很大。

        嵌入式心得體會2

          嵌入式學習心得時間過的緊快,在粵嵌教育已經培訓,有5個月了培訓期間贏來很多,也認識了班上的自學大神,經過系統的學習,老師的細心指導,我的付出努力,對于嵌入式上,學到很多實用的知識在動手操作能力也加強了,不僅在專業領域技術方而有了很大進步,而且在實踐操作方面我也對嵌入式有了更深入的了解。也許這5個月是這兒我在外而學習和生活最寶貴的時間。

          在校兩年,讀于電子信息韋爾泰宗工程技術專業的我,就覺得這研習專業領域學的知識太廣了,不管基礎還是動手操作,都要比較靈活。在校期間,學習單片機,傳感器,C語言,嵌入式應用技術等課程。感覺學起來,對我來說接受還是比較快的`,那時就有想過:學的多不如學的短萼,也許高中學生對課程多于理論為主,理解它的原理和基本計算機程序方法方式。其實,我還是有努力去學的,可以說,在?迫卫蠋煻冀虝液芏鄬I知識,為我將來的學習和發展打好基礎。

          在大三期間,為了更為拉著明確自己要走的方向,去培訓嵌入式軟件技術開發。也許將要投身嵌入式行業的我,就注定代價這條路要付出不少時間和精力,但如果我好求比較強,接受還行,就不停給自己送祝福,努力!要去培訓嵌入式,時,我從網上也對它有更加的想像也看下大學的嵌入式應用技術書,嵌入式系統是軟件和硬件的綜合體,以應用為中心,以科學計算為基礎,軟硬件可裁剪,改變應用系統對功能、可靠性、成本、體積、功耗等嚴格要求的專用負載計算機系統。

          剛開始嵌入式學習,對Linux系統的專業知識加于鞏固。一些簡單的代碼,C語言,對于嵌入式軟件還是硬件開發的人員,對C語言的掌握這個是沃蘇什,卡的,特別是對于以后致力于嵌入式軟件開發的人現在絕大部分全都是用C語言。在下來兩個月就對Linux系統,數據結構、系統移植的方法、A8的體系結構、Linux內核及驅動設計、 android> C+Java的JNI應用編程的系統學習。在每學個階段就作一個考試,基本知識對前面所學的知識進行復習,有些會做一個簡單的小項目,學以致用。知識量還是比較多,但教學也比較快,有些知識還沒消化完,第二天又接受新知識,對于能在課上基本上就可以對知識完全懂的并不多,晚上都用一個半小時來復習。經過5個月系統的學習,嵌入式技術方面有了很大進步,實踐操作方而也對嵌入式有了更深入的了解。在最后一個月,基于A8(S5PV210)的嵌入式智能家居系統制作。

          下而我談談在粵疊砌教育的培訓感受,我培訓的地點是在科學城粵嵌教育培訓中心的多媒體課室里,這里有研習環境非常好,在緊張的學習的整個過程中,你可以得到名師的督促,也可以體會到第一流企業高質量的培訓。在課堂上,老師們認真的演說,以及手把手地教導,使每個學生都能夠扎實地掌握到嵌入式的各方而的知識。而粵嵌幼兒教育教育的老師也是操作實踐為主,實踐是非常重要的,只有把知識掌握到位,才能達到學習的目的。

          感謝粵嵌教育機構,感謝粵嵌教育老師。

        嵌入式心得體會3

          就在昨天3月9日,學校規定實習時間已經到期了。從上個月的13日到現在已經近一個月,雖然與公司的實習時間還沒有結束,但是為了完成學校交待的任務,在此對這段時間的實習做一個總結。

          首先,我先來簡單介紹下實習單位。我實習的單位全稱——上海寶信軟件股份有限公司廈門分公司。其作為上海寶信軟件中的重要一員,是寶信軟件在全國多網點支持服務的延伸,具備與寶信軟件上?偛肯嗤募夹g服務能力,并可無限制調用總部專家資源,秉承寶信軟件“IT服務,提升信息價值”的經營理念,致力于IT服務,主營業務包括網絡安全產品銷售、系統集成、運維服務、軟件工程等。

          其次,向大家介紹是我的實習內容。這里要先介紹我的實習崗位——嵌入式軟件開發工程師。實習內容大致分為兩塊,一是軟件測試,二是編碼。在我們剛來的前兩周,我的實習內容就是軟件測試。軟件測試的主要內容是UnitTest也就是單元測試。但是,在實習剛開始的階段,我并沒有就馬上做測試。而是有前輩給我發了一份我們要做的產品的功能書給我看。功能書文檔是日文版的,我要把它看懂,才知道我們這里到底是做什么。后面的測試工作就是做單元測試了。

          我們在做測試是有測試環境的,整個單元測試過程是有前人經驗的。所以只要按照規則來就沒有問題,也相對比較簡單。就這樣單元測試做了近8天左右,測試了51個c++函數。其實,單元測試比較簡單,但是碰到函數的輸入輸出的值及路徑多的時候,特別的煩,會影響測試效率。實習的另一個內容就是編碼,其實說的確切一點,是看代碼。一個剛來不到3周的新員工,以前又沒有經驗,公司怎么會放心讓你寫代碼。有前輩給我安裝了秀丸和Source Insight軟件,然后給了我一代碼,讓我按上面看,有問題可以問組里的前輩。C++代碼是看的懂,但是太多的函數,被調用的關系也不清楚,也不了解決函數的意義,所以感到很無趣。也許是在考驗我的耐心或者是讓我熟悉代碼編寫的規范。不管是什么目的,至少自己可以鞏固下c++的基礎。不過真的要感謝前輩的細心指導,使我大概了解程序的調用關系。

          再次,向大學介紹下我的實習階段的工作過程。每的8小時的上班時間,但是一般會比這個時間長的。早上8點45分到9點15分不等上班,晚上5點30分到6點不等下班,中午11點可以去吃飯、1點之前上班。這個時間還是比較人性化的。當然也有時候也要加班,如有時候日本客戶來這里的時候,發現我們的人都很早下班的時候,他就會和我們的上級說,然后我們就得加班。這也是一種非常情況,但是加班是可以調休的。每天的上班時間基本上是跟電腦打交道。

          前期實習階段都是打開電子表格看日語版功能說明書,后面做測試的時間就是各種軟件一起用了。每天做單元測試的時候,其實感覺特別煩。有時候一天做7到8個,有時候一天2個做不到。但是整個過程自己還是堅持下來了,雖然很累,自己還是很好強的。后期基本上是學習編程了。由于后面項目已經交互,所以每天都不沒有加班了。每天的工作主要就是學習代碼規范,如那里怎么縮進、命名之類的事。至于邏輯什么的,還是很不清楚,還需要努力多問多想。

          再次,與大家分享下我的實習收獲。雖然與原計劃5個月的實習還差很遠,但自己還是很有收獲。其一,對于歌樂Audio項目有一定的了解。具體的表現在,分了幾層。我個人是分配到app層,也就是業務應用層。雖然對業務的熟悉不夠深,但大概知道,每一天前輩們都在做什么事。其二,日語方面的加強。因為客戶方面基本上是日本人,所以加強日語學習是必須的。有了這樣的一種壓力,自動會轉化為一種動力,促使我去學習。我想這樣多少可以提高下我的日語能力。還有就是,常常有很多日本客戶就做在我的旁邊。感情還是很緊張,因為不知道怎么跟他交流。結果每一天他來的時候,我只能和他說聲早上好。希望自己在今

          后的時間里要多多加強日語學習,爭取與日本客戶交流,才能提升自己的能力。其三,交流溝通能力的提高。其實自習也一直覺得溝通能力對成功貢獻是最大,要把一件做成肯定不是一個人的事情,我們需要與別人溝通。在溝通中互相了解相聯系的部分,這樣才能夠避免摩擦帶來不必要時間與精力的浪費。而我自己的溝通能力提高表現在自我意識的提高。當遇到問題的時候,會主動的想想,是哪個具體的點不懂,然后列出問題,再向前輩請教。這樣大腦里就會有一個邏輯過程。通過這樣就可以把自己的意思清楚的傳達給別人。在別人向自己傳達信息的時候,我會邊思考邊聽,遇到不了解的地方,講明白自己的不解之處。這樣這個溝通過程就會比較流暢。其四,職場意識的提高。可以說來實習就意味我們提前畢業了,提前進入社會。所以,由學生到社會職業人的過渡期就被實習給填充了。經過一個月實習,我發現自己已經很習慣在公司工作。對于自己能做什么,未來能做什么也有了一定的思考。不管畢業,我還是留在這個公司還是去其他的公司,我想我心中已經有了這份意識,這對我將來的職業生涯都是有幫助的。其五,時間管理。很多人工作的時候就忘記了生活的存在,我們的生活是多彩的,并不是只有工作。其中,有一項轉變的比較大,就是很多人不喜歡運動了。對于這些,我都是不太認可的。我還是會抽出時間出去運動一下。我覺得運動可以帶給我健康,同時會讓我的精神更好,工作更有效率。其實,運動并不會浪費我們時間,而是會給生活帶更美好。

          最后,與大家分享一下我這個月實習的心得與體會。通過這段時間的學習,從無知到認知,到深入了解,漸漸的我喜歡上這份工作,讓我深刻的體會到學習的過程是最美的。在整個實習過程中,我每天都有很多的新的體會,新的想法,想說的很多,我總結下來主要有以下幾點:

          1、持之以恒

          既然選擇了自己的這份工作,不管工作本身怎么樣,我們都要堅持往下走。因為我相信每一家公司的工作原理都是差不多的。如果你在這家公司做不住的話,我想你在另外一家公司也是做不住的。只有我們改變自己的態度,才可能戰勝心中的浮躁。我們新人一來到公司我,一開始都不會立刻給工作我們做,-一般也都是先讓我們看看文檔或代碼,時間短的`要幾天,時間長的要幾周,在這段時間里很多人會覺得很無聊,沒事可做,便覺沒有發展空間,于是產生想走的念頭。恰恰在這個關鍵的時候更需要我們的堅持,輕易放棄只會讓自己后悔。

          2、不怕做小事,那是一種考驗

          我們一來到公司實習的時候,很多組里的前輩多數還是把我們當學生看待。他們不會也不敢讓我們直接參考到一個真正的項目中去。在這個其間一般會給我們看一些過去做過項目的文檔和代碼,其實不可小看這些小事,也許是為了考驗我們,也許是讓我們先了解業務。作為一人新人,一定要積極面對這些,勇于擔當做小事,喜歡做小事。這樣公司同事才會更快的接受你,慢慢地才會讓你做一些重要的工作。

          3 、態度端正,一定要多主動

          我們到公司工作以后,要知道自己能否勝任這份工作,關鍵是看你自己對待工作的態度,態度對了,即使自己以前沒學過的知識也可以在工作中逐漸的掌握。態度不好,就算自己有知識基礎也不會把工作做好,四多一少就是我的態度,我剛到這個崗位工作,根本不清楚該做些什么,并且這和我在學校讀的專業與這里做的東西還是不太一樣的,剛開始我覺得很頭痛,可經過工作過程中多看別人怎樣做,多聽別人怎樣說,多想自己應該怎樣做,然后自己親自動手去多做,終于在這一個月里對工作有了一個較系統的認識,慢慢的自己也可以完成相關的工作了,光用嘴巴去說是不行的,所以,我們今后不管干什么都要端正自己的態度,這樣才能把事情做好。

          4.不要報怨

          其實在做單元測試的那個時候,有時候覺的特別的煩。有時候做了半天連一個函數都沒有把弄出來,那種感覺真的是非常的難受,心中也有委屈?墒沁@是我的工作,我報怨也沒有用。只能一步一個腳印走過來。直到后面把函數測完,心中還是很有成就感的。其實有的人會覺得公司這里不好那里不好,同事也不好相處工作也不如愿,經常埋怨。我覺這樣只會影響自己的工作情緒,不但做不好工作,還增加了自己的壓力。所以,我們應該少埋怨,要看到公司好的一面,對存在的問題應該想辦法去解決而不是去報怨,這樣才能保持工作的激情。

          5、虛心學習

          由于我們是新手,而且又還沒有從學校里完全走出來。所以在工作過程中,我們會碰到很多問題,有的問題我們可以有我們所學的解決,有的有很大業務性的問題,我們就無法解決。這個時候不要不懂裝懂,應該虛心地向前輩們請教。請不要害怕,因為前輩肯教我們肯定是我們的福氣,對我們以后在工作中都有幫助的。同時請教的時候也是一個鍛煉溝通的過程。在前輩給我們解惑的時候,我們也應該虛心的接受,不要裝著一副不屑的樣子。

          6、知錯能改

          作為一名新人,不管在學校有多么的優秀,來到公司,我們頂多就只有點基礎,其他什么的都得重新開始。在學習的過程當中,犯錯是不可避免的。知錯能改是我們唯一的選擇。明知自己有錯,還理直氣壯那是不應該的。我認為這種行為是可恥的。在犯錯的時候來銘記于心,不要第二次在犯同樣的錯了。當前輩或其他人指出我們的錯誤時,我們要虛心聽教,坦誠改錯。這樣我們才會進步,才會在組里與同事相處融洽。

          7、團隊合作

          重要的不是我,是我們。在一個項目組里,我并不是一個人。我只能說我是組里的一個部分。我們每一人都不是神,我們不可能一個來完成所有的工作,因此,必須分工。但是,分工并不是都很明確的。每個人分到的工作,多多少少都會和別人的工作的有交集。這是因為,作為一個項目的每個部分,最終還是整合形成整體。我們還是需要這些部分與部分交集作為連接點組合起來。因此,每個雖是分工,但更多是合作。我們中的我必須明白這些,要有團隊觀,做好自己的同時,更重要也要做好與別人的溝通。這樣才會避免工作的重復,意見的不同等負能量。

          8、溝通能力

          在上一點的體會團隊合作中,其實我已經說了,團隊合作的基礎就是溝通。一個有效率的團隊,我認為它的成功就在于成員之間良好的溝通能力。因為,人與人的溝通是信息傳遞的媒介。沒有良好的溝通基礎,信息在傳遞的時候就會被曲解。在軟件開發的整個過程,團隊合作是至關重要。每一環節,都離不開溝通。需求變更帶來的問題,尤其需要在溝通中解決問題。所以,讓自己把信息傳遞的正確和有效,提高溝通能力是必不可少的。

          9.做人做事講究原則

          其實在公司上下班是一個很大的學問。同事都已經來上班了,你才來。或者是同事還沒下班,你人就都先走了。其實要把這些看成一種常態。在公司上班不是比誰先來,也不是比誰晚走的,比得是自己的工作的效率。有時候,我們工作做完,是可以先走。你想想,你走了之后,估計別人也敢走了。從這一點上,可以說你是幫助了大家。當然這只是開玩笑,做人做事要有點原則。工作沒完成當然不能跑回去,這是沒有責任的表現,以后主管怎么能把事情交給你。工作做完,想先走就走了,不必當擔心這擔心那的。我相信一個好的主管,不會以一些無所謂的因素來衡量一個人的。只要自己身體正,就不怕別人說。

          10.做好職業生涯規劃

          每個人在來實習之前,肯定會想我來這家公司是做什么。當你想好,并決定來的時候,你已經做了第一步職業生涯規劃了。實習也是成了我們檢驗計劃的時候,如果你發現這個工作不適合你,畢業前你還有機會可以做換。如果感覺這個工作適合你,那么你就可以做下一步

          的規劃了。我當初選擇這個工作,是因為嵌入式軟件開發在近幾年會發展會比較快,而且本人對c++和c比較感興趣。同時,目前做的工作是對日外包,對于我日語的提高也是很有幫助的,F在實習給我感覺是,不出現什么其他狀況,應該畢業后會留在這個公司。至少今后的職業規劃以日語和編程提高為主,以管理為輔。

          在這里,我要感謝上海寶信軟件股份分司給我這次寶貴的實習機會。同時,也要感謝組員對我有直接幫助的前輩。當然還要感謝學校和畢業指導王老師的關心與指導。

          總而言之,這次實習是我大學四年來最正式的一次。我想通過這次的實習,我將從學生走向社會職業人的轉變。一個月的時間過的太快了,但是我們的實習并沒有結束。通過這次的總結,我對這次實習的意義有了深刻地認識。自己在今后的學習與工作中,一定會更加努力做的更好。

        嵌入式心得體會4

          首先,我們學習的課本是嵌入式系統應用教程。我學習的體會是這樣的:開始時,由于是剛剛入門,對老師書的好多東西是好奇的,好多名詞也是新鮮的,不過不太懂什么意思。但是慢慢的,了解的深入讓我有了更深的感觸和體會。

          在嵌入式的學習過程中,讓我了解了什么是嵌入式系統。它就是以應用為中心,以計算機技術為基礎,軟硬件可定制,適用于不同應用場合,對功能、可靠性、成本、體積、功耗有嚴格要求的計算機系統。他一般由嵌入式微處理器、外圍硬件設備、嵌入式操作系統、用戶應用程序四個部分組成,用于實現對其他設備的控制、監視或管理功能。嵌入式系統已經應用于科學研究、工業控制、軍事技術、交通通信、醫療衛生、消費娛樂等領域,人們日常使用的手機、PDA、汽車、智能家電、GPS等均是嵌入式系統的典型代表。

          一開始我們就學習嵌入式的系統的基礎部分,那很簡單,就是一些定義或是介紹之類的.。在進入第二章時,就開始學習了嵌入式開發過程中的主要操作系統——linux,在接下來的課程中,我發現嵌入式的學習過程還是蠻有趣的。在對linux的學習中,我們對它有了一點點的了解,接著就是學習一虛擬機的方式安裝linux。對我來說有趣的就是安裝的過程了,首先我們跟著老師的腳步走,學會了怎么安裝,在自己動手進行對它的安裝,這個過程是簡單而有趣的。這樣的開始讓我對它充滿了興趣,也對以后的學習充滿了信心。

          其次就是安裝好了之后,老師就更深一步的教我們應用了。在這是老師首先交給我們的是一些簡單的命令應用,Linux具有很豐富的命令,絕大多數命令具有大量的參數。

          在學習命令的過程中,只要你認真的看著老師操作還有認真聽著他講,你就會發現有些命令的操作還是很簡單的,不過在操作的過程中,我也有遇到有些困難,會出現你按照書上學習的例子,將命令輸入終端時會出現你不想要的結果,也就是錯誤的結果。這是問問旁邊的同學或是懂的同學就可以解決了。

          在對于這部分的學習中,讓我知道了命令對于嵌入式的重要性。它是linux的重要內容,linux中所有的功能都是通過命令執行。在實際應用中,為了減少系統開銷,經常不使用圖形界面,此時,對系統的所有操作都需要以命令方式來執行。在嵌入式系統開發過程中,由于目標機的性能和配置比較低,因此,一般情況下目標機僅具有命令窗口而沒有圖形界面,對目標機的所有操作都通過命令來實現。

          還有的那就是進一步學習與嵌入式系統開發相關的linux的服務,他們的啟動、設置等的操作和應用。而在學習之中,我們主要介紹的是嵌入式系統中開發工程使用的TFTP、Telent和NFS服務。第一個實現的事上機位與下機位之間文件的傳輸、無磁盤網絡的設備的啟動等功能;第二個實現的事遠程登錄功能;第三個實現的是網絡文件系統功能。

          從以上的內容之中,并不難感受到我們的學習過程是由淺入深的,這對于我們的學習也有了較好的幫助。

          當然,我們學習的不僅僅是這么幾個內容,其中還有相關的實驗內容。在我們基礎的學習的過程之中,我有了這么一點的感受,總的來說就是概念加專業名詞還有介紹加實驗。不過你絕對不能小看那些概念和介紹,它對我們有著很重要的指導作用哦!實驗那就更不用說了,它提高我們的動手能力,在實驗的過程中還能讓你更加理解書中的理念,這就是我學習嵌入式的感受。

        嵌入式心得體會5

          4月10號,為期一個階段的Linux開發基礎培訓課程圓滿結束,回首這些天所留下的點點滴滴,感觸深深,學習上知識點的積累,靈活運用的過程中感受到了Linux操作的快速高效性能,這也是我所追求的效率!

          當初初涉培訓課程的第一門課程時,都說Linux操作很繁瑣復雜,心里總有些顧忌,帶著種。種不安與些許拼博的決心,開始了自我提升階段的.“充電”,由徐海兵老師教授我們基礎課程的培訓,我們則像著小學生般認真的記著筆記,仔細聽著并學會如何去在實踐中運用所學的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的,懂得了如何設置虛擬機的網卡設置、暫停、恢復、全屏等。

        嵌入式心得體會6

          我們學習的課本是嵌入式系統應用教程。我學習的體會是這樣的:

          開始時,由于是剛剛入門,對老師說的好多東西很好奇,列如C語言也是新鮮的,不過不太懂什么意思。但是慢慢的,了解深入后讓我有了更深的感觸和體會。在嵌入式的學習過程中,讓我了解了什么是嵌入式系統。它就是以應用為中心,以計算機技術為基礎,軟硬件可定制,適用于不同應用場合,對功能、可靠性、成本、體積、功耗有嚴格要求的計算機系統。他一般由嵌入式微處理器、外圍硬件設備、嵌入式操作系統、用戶應用程序四個部分組成,用于實現對其他設備的控制、監視或管理功能。嵌入式系統已經應用于科學研究、工業控制、軍事技術、交通通信、醫療衛生、消費娛樂等領域,人們日常使用的手機、PDA、汽車、智能家電、GPS等均是嵌入式系統的典型代表。

          在學習命令的過程中,只要你認真的看著老師操作還有認真聽著他講,你就會發現有些命令的`操作還是很簡單的,不過在操作的過程中,有時也會遇到困難,有時你按照書上學習的例子,命令輸入終端時會出現你不想要的結果,也就是錯誤的結果。這是問問旁邊的同學或是懂得的同學就可以解決了。

          在對于這部分的學習中,讓我知道了命令對于嵌入式的重要性。它是linux的重要內容,linux中所有的功能都是通過命令執行。在實際應用中,為了減少系統開銷,經常不使用圖形界面,此時,對系統的所有操作都需要以命令方式來執行。在嵌入式系統開發過程中,由于目標機的性能和配置比較低,因此,一般情況下標機僅具有命令窗口而沒有圖形界面,對目標機的所有操作都通過命令來實現。還有的那就是進一步學習與嵌入式系統開發相關的linux的服務,他們的啟動、設置等的操作和應用。而在學習之中,我們主要介紹的是嵌入式系統中開發工程使用的TFTP、Telent和NFS服務。第一個實現的是上機位與下機位之間文件的傳輸、無磁盤網絡設備的啟動等功能;第二個實現的是遠程登錄功能;第三個實現的是網絡文件系統功能。

          從以上的內容之中,并不難感受到我們的學習過程是由淺入深的,這對于我們的學習也有了較好的幫助。當然,我們學習的不僅僅是這么幾個內容,其中還有相關的實驗內容。在我們基礎的學習過程之中,我有了這么一點的感受,總的來說就是概念加專業名詞還有介紹加實驗。不過你絕對不能小看那些概念和介紹,它對我們有著很重要的指導作用哦!實驗那就更不用說了,它提高我們的動手能力,在實驗的過程中還能讓你更加理解書中的理念,這就是我學習嵌入式的感受。

          學習是可貴的,培訓是精彩的。通過這次可貴而精彩的培訓學習,我們向嵌入式邁進了一步。感嘆與憧憬之余,我想我們只有靠自己的聰明與才智、努力與勤奮去追求我們的美好生活。

        嵌入式心得體會7

          嵌入式學習心得體會,4月10號,為期一個階段的Linux開發基礎培訓課程圓滿結束,回首這些天所留下的點點滴滴,感觸深深,學習上知識點的積累,靈活運用的過程中感受到了Linux操作的快速高效性能,這也是我所追求的效率!

          當初初涉培訓課程的第一門課程時,都說Linux操作很繁瑣復雜,心里總有些顧忌,帶著種種不安與些許拼博的決心,開始了自我提升階段的"充電",由徐海兵老師教授我們基礎課程的培訓,我們則像著小學生般認真的記著筆記,仔細聽著并學會如何去在實踐中運用所學的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的,懂得了如何設置虛擬機的網卡設置、暫停、恢復、全屏等。

          簡單的學習后進入Unit 2,

          命令行的句法讓我懂得了用法規則,一系列的命令功能強大:date顯示當前年月時間星期之類的;more指令與less重要但不常用;cat用于查看短小的文件內容,常用!mkdir命令用于在當前目錄下創建新的目錄;ls顯示當前目錄下所有文件;cd更改文件路徑,如cd 、cd .當前目錄;rmdir刪除空文件夾;rm指令很強大,用于刪除空目錄及非空目錄下的指定或全部文件;man真男人,幫助手冊;history指令用于顯示編寫過的命令集,以history序號可顯示序號所指命令;echo回寫命令,很重要,我需要繼續學習;exit指從多重SHELL退出來;Linux賬號下,可以增加用戶、刪除用戶、設置密碼:useradd、userdel、passwd。

          注:所有的用戶的家目錄都在/home下面,唯獨root的家是在/root.點文件都是些SHELL的腳本程序,也稱隱藏文件;環境變量常見的有:HOME PATH PWD,懂得了絕對路徑與相對路徑的對比概念。

          最后進入Unit 3、

          文件與文件處理的學習中,知道了Linux下支持的六種文件類型:普通文件、目錄、設備文件、命名管道、符號鏈接、socket;Linux下文件系統的組織:倒立的樹形結構:/ /bin /boot /dev /home /lib /proc等文件目錄,ls –l指令很好很強大,顯示文件類型與權限、所有者、字節大小、時間及文件名;touch可創建空文件,復制文件用指令cp,可選-i、-r等;重命名文件使用mv [-i];du顯示當前目錄所占空間大小;wc命令顯示列表中文件的行數、字數、字符數;追加:cat [文件列表] 》目標文件;find指令與grep重要,暫未學習,自己在實踐中學習,文件訪問權限有:r w x;chmod指令可修改訪問權限,如chmod 777 -R文件名。

          輸入輸出重定向每個命令默認打開三個文件:標準輸入stdin,標準輸出stdout,標準錯誤stderr,鍵盤為標準輸入,而控制臺則是標準輸出,文件描述符分別是0,1,2;最重要最常用的為輸出重定向>與錯誤重定向2> ;echo添加的內容>/ 》文件;Linux過濾器和管道:管道操作符:| ;即將某個命令的輸出與某個命令的標準輸入相連接,從而實現管道功能,例如ls –l |wc;管道和重定向操作符可同時用于一個命令行。

        嵌入式心得體會8

          學期開始,我們開始學習《嵌入式系統及應用》,由于初次接觸嵌入式系統,感覺蠻難的,所以收獲不是很大,很多的概念都比較模糊,等到學期結束開始做嵌入式課程設計時,真是茫然無從下手,自從拿到設計主題后,我就像熱鍋上的螞蟻,一個字"急"。最后實在沒有辦法,逼著自己去學習,查資料,總算對嵌入式有了淺層理解。

          嵌入式系統本身是一個相對模糊的定義,一個手持的Mp3和一個pC104的微型工業控制計算機都可以認為是嵌入式系統。總體來說,嵌入式系統是"用于控制,監視或者輔助操作機器和設備的裝備"。

          一個典型的桌面Linux系統包括3個主要的軟件層———linux內核、C庫和應用程序代碼。內核是唯一可以完全控制硬件的層,內核驅動程序代表應用程序與硬件之間進行會話。內核之上是C庫,負責把pOSIXApI轉換為內核可以識別的形式,然后調用內核,從應用程序向內核傳遞參數。應用程序依靠驅動內核來完成特定的任務。

          在了解了基礎知識之后,我開始進行上機操作,當然,其中遇到很多的難題,很多東西都是第一次接觸,又沒有別人在旁邊指導操作,完全憑借自己去摸索練習。其中的`困難可想而知。

          然而堅持就是勝利,牙一咬眼一閉堅持做下去,而通過本次實驗,我感覺收獲還是蠻多的。可能我對于嵌入式的知識學習的還是不太多,但是這之外的東西收獲頗豐。

          它讓我學會了如何通過自己的努力去認知一個新事物,更重要的是端正自己的學習態度,只有真正下功夫去學習,才能有收獲,正所謂"一份耕耘,一份收獲。"沒有付出,何談回報呢?

          再者,通過本次實驗,我也學會了如何去分析問題,如何找出自己設計中的不足,繼而去排除解決問題,這就是一個自我學習的過程。當我們通過實驗去學習理論知識時,自己動手得出的結論,不僅能加深我們對嵌入式的理解,更能加深我們對此的記憶。

          當然,在這其中,我也發現自己的許多不足之處,由于學期伊始我沒有好好學習,才落到如此地步,這也可以說是一個教訓吧!我相信在以后的學習工作中,我一定會端正自己的學習態度,一絲不茍的去對待每一件事。只有做好足夠的準備,才能事半功倍!

        嵌入式心得體會9

          現在嵌入式做為計算機發展的一個新的方向越來越得到社會的重視。隨之而來的是很多培訓班的誕生,但是如何能在琳瑯滿目的培訓機構中找到一個能真正學到東西的培訓班呢,這是擺在眾多想學嵌入式的人面前的第一個問題。我在了解了眾多培訓機構并且試聽之后,最終選擇了Tocore嵌入式培訓,之所以選擇,是因為我看重老師的實際能力和認真負責的態度。我非常榮幸能夠成為Tocore中的一員。

          嵌入式開發,做為一個新的計算機發展方向,已經越來越受到社會的重視,社會上的需要也十分巨大,可是真正懂得嵌入式開發的人才缺不是很多,歸結去原因主要是一下幾個方面:

          一:因為它是新興的一個發展方向,懂得的人自然不多。

          二:學習嵌入式需要比較龐雜的知識結構。操作系統、微機原理、C/C++語言、數據結構等。

          三:嵌入式學習,上手很困難,不知道從哪里著手去學習。

          在剛開始接觸的時候,我也是抱著本書,自己摸索,可是越看越迷茫,連很多書里的名詞都不知道是什么意思,去網上查也沒有得到答案。可是在Tocore我得到了很好的指點,在這里,由于老師都是十分有經驗的項目經理,他們懂得如何去學習,從哪里開始入手,這對于我這樣的背景知識比較薄弱又接觸時間比較短的人來說實在是太有幫助了。

          雖然課程還沒有完,可是在這段時間的.學習中,我按照老師的指導在完善的課程體系下進行系統的學習,已經掌握了U-boot、kernel以及linux移植的基本框架,(我想在今后的學習中一定會對這些知識更加熟悉以至精通。┻@對于2個月前什么都不懂的我來說已經是很大的提高了!用得是ARM9的板子,這也是市場上現在比較新的,比較流行的板子,很多公司在實際的產品開發中就用的是ARM9。在課堂上,老師的講解和我們的練習相結合,理論聯系實際。老師除了講解知識外,還結合了大量的實際案例和操作,這對于我對問題的理解和知識的記憶有很大幫助。

          最后談談對學習態度的一點看法。嵌入式學習,是比較耗時的,前期需要很多知識做鋪墊,有很多人在這個過程中走了不少彎路,于是開始失去耐心、失去信心,以至最終放棄學習。所以我想有必要強調一下問題,在剛開始的時候,自己什么都不懂,可是學習的愿望很強烈,每次上課都希望上完課就能如何如何,可是下來發現自己好像離自己原本的目標還很遠,于是心里著急,自己跑到網上搜了很多資料,每天亂看,可是并沒有很大的幫助。我想說的是,學習嵌入式一定要有耐心和毅力,不能急躁,按照課程的安排自己多做一些總結和練習,等到知識慢慢的積累下來就會有一種豁然開朗的感覺。

          最后希望每個想學習和熱愛linux的人都能學有所成!

        嵌入式心得體會10

          這個題目很大,給人一種感覺我好像很成功,其實不然。實際上自己水平不高,甚至很低,但是做過了一些曲折的學習道路,同時把自己真實的學習歷程表達出來,希望對后來者有借鑒的意義,甚幸!

          工作三年、幾成廢人!

          我XX年畢業于華中地區的一個理工科大學,專業是機械電子,我當時已經簽了一家內陸某個省級機關工作,家里八輩是農民,并且很偏遠,能夠進入這樣的地方是祖墳有風水。但在畢業前夕有個進入it的機會,我本想進去的,家里人極力反對,阻力可想而知。同時要交4000元的違約金,對我來說是天文數字。大學里的費用很多是借的,幾乎將近一半的費用是在大學勤工儉學掙的,為了省錢,高中一個學期回家一次,大學一年回去一次。并且我個人也有特殊的.人生背景(悲景更確切),這里不多說了,寫十篇也寫不完,同時偏離主題。這樣我就參加了工作。一張報紙一杯茶的日子,幾乎下班后有種很空虛和恐慌的感覺。在工作中雖然是與自己專業有點關系,但是很少。專業幾乎荒廢。我自己也思考,如果再不出去,自己將會成廢人,只好讓國家養了。兩年后決定出去,但是幾成廢人,誰要呢,只好到學校去鍍金。這是中國教育和社會的悲哀!

          至于專業就改為計算機方面,聽說好找工作,我說實話不是很對計算機特別感興趣,生存第一需要。不要笑我,哈哈!

          考研成績出來,超過了國家線幾十分。那個方向要兩個,我第三,但是那年非碘,不面試就按分數來排,自然我落選了。其實給我面試機會也不一定要我,哈哈,自己幾斤幾兩很清楚。

          最后調劑到另外一個學校,交錢,咬咬牙,交吧!現在仍然債臺高筑!

          進入學校前夕

          為什么要把這段列出,看后就知道了。

          單位有網絡,經常上網查些英語資料,在那里唯獨英語沒有丟很多。于是我就在網上查資料,學什么好呢,最后確定學嵌入式把,聽說跟硬件相對比較緊密!而我在大學里多少學習了數字電路,單片機等,所以多少也有所利用,不會真的一無所知。當然在這之

          前也自學過數據結構,計算機組成原理等。c 語言在大學就學了。哈哈這就是我的家底。

          我知道自己的基礎差,于是我就拿操作系統,數據庫、數據結構、c++來看,機關有這個好處,空余時間多,于是平常就看書,很痛苦,沒有人請教。

          另外就上網到論壇上去,我就到各個專業的技術論壇,其實是電子論壇和嵌入式論壇。我幾乎沒有發帖,幾乎把幾個大型的出名的論壇的帖子翻遍了,雖然有很多重復的,我才知道嵌入式是個什么東東。這些帖子對我以后的學習產生了極大的影響。

          最關鍵兩點:

          1、嵌入式是什么?

          2、嵌入式需要哪些知識?

          知道了這兩點,好辦!我就開始規劃學習路線。計算機的基本理論不能丟,于是重點看組成原理,數據機構,操作系統、c++。同時論壇上了解到,實時操作系統ucos是一個很好的嵌入式操作系統,對初學者很好。于是我就買了一本書,但是代碼在電腦里調不通,網上也有很多相同的問題,我就看書,分析代碼,一遍不行就兩遍,三遍,這樣才看了入了門,才知道什么是進程。原來看操作系統書時,根本就不知道進程是個什么東西。

          在這段時間掌握的東西不多,但是,對我以后的影響很大,我想起了大學時一個同學跟我說過了一句話:大學里最重要的不是學到了什么,最重要的是學會怎么學!大概是這個意思。

          進入我的避難所

          對我來講,再次進入大學不再是大學,而是避難所。希望這次進入給我喘氣和養精蓄銳的機會和時間。我是這樣認為和實踐的。

          在學校我有三件事:上課,上圖書館,上網。

          對于上課,學校開了很多課程,非常好,很多是名人名師講解,于是很多同學都想學,都去聽。我也考慮過,最后放棄。我是這樣認為的,時間是有限的,什么都想學,什么都學不成。于是我把我自己學的課進行了分化,一般的課程通過就行,重要的一定好好學。我希望不要什么爭論學習課程多和少的問題,這僅僅是我的看法。所以我的成績應該是很差的。分數低。好在后來的單位沒有要我的成績單,否則就慘了。

          我個人感覺是上圖書館的效率比在寢室里高多了,這是我的經驗。

        嵌入式心得體會11

          一、嵌入式的概述:

          隨著信息化技術的發展和數字化產品的普及,以計算機技術、芯片技術和軟件技術為核心的嵌入式系統再度成為當前研究和應用的熱點,通信、計算機、消費電子技術(3C)合一的趨勢正在逐步形成,無所不在的網絡和無所不在的計算(everything connecting, everywhere computing)正在將人類帶入一個嶄新的信息社會。

          二、實習目的

          學習和了解了嵌入式在生活中的重要作用和發展過程,熟練掌握ARM硬件體系結構,熟悉linux下的嵌入式編程流程,積累自己的軟件編寫經驗,能夠參與并實現一個真實和完整的嵌入式項目,為今后的學習和將從事的技術工作打下堅實的基礎

          三、實習任務

          第一階段Linux操作和編程基礎

          主要介紹Linux的基本命令和基礎編程知識,包括Linux的文件操作和目錄操作命令,VI編輯器,GCC編譯器,GDB調試器和Make項目管理工具等知識。

          第二階段 嵌入式C語言編程基礎

          主要介紹在嵌入式開發編程中C語言的重要概念和編程技巧中的重點難點,以復習串講和實例分析的形式,重點介紹包括函數與程序結構,指針、數組和鏈表,庫函數的使用等知識。

          第三階段Linux上C強化編程訓練

          主要包括整數算法訓練,遞歸和棧編程訓練,位操作訓練,指針訓練,字符串訓練和常用C庫函數編程接口實踐,強化學員對Linux下基本編程開發的理解和編碼調試的能力。

          第四階段 Linux環境高級編程及項目開發編程實踐

          主要包括系統編程(信號/系統調用/管道/FIFO/消息隊列/共享內存等),文件I/O編程(文件描述符/文件讀寫接口/原子操作/阻塞與非阻塞IO等,多任務和多線程編程(進程標識/ 用戶標識/fork與vfork/多線程概念/線程同步等),網絡編程(網絡基本概念/套接口編程/網絡字節次序/Client/Server結構/UDP編程);掌握Linux下Socket編程的開發流程,熟悉網絡編程的`調用接口函數和相關數據結構,使學員初步具備在Linux上進行系統編程開發的能力。同時綜合之前所學內容和編程技術,以小組為單位進行一個團隊合作項目的開發,考核內容包括文件I/O編程,多線程編程,網絡編程和項目文檔編寫。

          第五階段嵌入式處理器體系結構及編程實踐

          主要介紹ARM體系結構及其基本編程知識,包括指令分類,尋址方式、指令集、存儲系統、異常中斷處理、匯編語言以及CC++和匯編語言的混合編程等知識。同時結合ARM嵌入式開發板硬件設計原理和基本硬件設計流程,分析各種外設的工作原理和驅動機制,并自己動手實踐完成一個ARM開發板上的編程大作業。

          第六階段嵌入式Linux開發基礎及高級應用

          主要介紹嵌入式Linux開發應用程序的基本流程和知識,包括嵌入式Linux基本概念和開發流程、Bootloader工作原理、內核裁減配置和交叉編譯、根文件系統制作、網絡編程以及圖形界面和數據庫開發等知識。同時獨立完成一個基于嵌入式Linux GUI的應用編程大作業。

          第七階段嵌入式 Linux驅動理論及驅動程序開發實踐

          主要介紹嵌入式Linux上驅動程序開發規范,包括設備驅動程序概念、字符設備驅動程序、塊設備與網絡設備、網卡驅動以及常用嵌入式設備驅動開發等知識。同時獨立實現兩種嵌入式設備驅動程序的編寫,包括驅動模塊的調試和加載以及完整的項目開發文檔的編寫。

          第八階段嵌入式Linux項目團隊開發實踐鍛煉

          主要包括設計并實現一個真實和完整的嵌入式項目的開發流程,涉及到數據采集、網絡通訊、圖形用戶界面顯示以及嵌入式數據庫存儲系統等多種嵌入式Linux編程技術。要求學員建立起團隊開發和協同工作的企業項目開發模式的概念和流程,強化學員對編寫項目概要設計文檔和詳細設計文檔的理解,為就業前的職業技能和素質訓練做好充分準備。

          四、實習內容

          1、 嵌入式的歷史與現狀

          雖然嵌入式系統是近幾年才開始真正風靡起來的,但事實上嵌入式這個概念卻很早就已經存在了,從上個世紀70年代單片機的出現到今天各種嵌入式微處理器、微控制器的廣泛應用,嵌入式系統少說也有了近30年的歷史。縱觀嵌入式系統的發展歷程,大致經歷了以下四個階段:

          無操作系統階段

          嵌入式系統最初的應用是基于單片機的,大多以可編程控制器的形式出現,具有監測、伺服、設備指示等功能,通常應用于各類工業控制和飛機、導彈等武器裝備中,一般沒有操作系統的支持,只能通過匯編語言對系統進行直接控制,運行結束后再清除內存。這些裝置雖然已經初步具備了嵌入式的應用特點,但僅僅只是使用8位的CPU芯片來執行一些單線程的程序,因此嚴格地說還談不上"系統"的概念。

          這一階段嵌入式系統的主要特點是:系統結構和功能相對單一,處理效率較低,存儲容量較小,幾乎沒有用戶接口。由于這種嵌入式系統使用簡便、價格低廉,因而曾經在工業控制領域中得到了非常廣泛的應用,但卻無法滿足現今對執行效率、存儲容量都有較高要求的信息家電等場合的需要。

        嵌入式心得體會12

          嵌入式系統是一種強調專用功能的計算機系統,廣泛應用于各種領域。在我參與的嵌入式項目中,我從中學到了很多寶貴的經驗和教訓。下面我將通過五個方面來談一談我在嵌入式項目中的心得體會。

          首先,嵌入式項目的需求分析是至關重要的。在項目開始之前,我們需要對需求進行全面而準確的分析。這樣可以確保項目的方向和目標明確,在后續的開發過程中能夠更好地指導開發工作。在一個我參與的智能家居嵌入式項目中,我們在需求分析階段花費了大量的時間和精力,詳細討論了系統需要具備的各項功能和性能指標。這為后面的開發工作奠定了堅實的基礎。

          其次,良好的團隊合作是嵌入式項目成功的關鍵。嵌入式項目常常需要多個人員合作完成,而且項目周期通常較長。因此,團隊成員之間的默契配合和有效的溝通是至關重要的。在一個我參與的儀器儀表嵌入式項目中,我們團隊的成員來自不同的專業背景和技術領域,但是我們通過定期的討論會和項目管理工具的`運用,成功地解決了項目開發過程中出現的各種問題。

          另外,嵌入式項目中的軟硬件調試是一個重要的環節,需要耐心和細致的工作態度。在一個我參與的工控設備嵌入式項目中,由于硬件電路的復雜性,我們在軟硬件調試過程中遇到了很多問題。但是,通過仔細的排查和耐心的解決,我們最終克服了這些問題,并取得了圓滿的結果。這個過程教會了我勇往直前和不怕困難的精神。

          此外,對于嵌入式項目來說,對性能和功耗的優化是非常重要的。嵌入式系統往往資源有限,因此需要在保證性能的情況下盡量降低功耗。在一個我參與的智能穿戴設備嵌入式項目中,我們團隊通過調整算法和軟硬件優化等手段,大大提高了設備的性能,并成功降低了功耗。這個經驗告訴我,在開發嵌入式系統時,我們要關注系統的性能和功耗指標,并采取相應的優化策略。

          最后,嵌入式項目的開發需要注重項目管理和進度控制。由于嵌入式項目的特殊性,時間和成本的控制非常關鍵。在一個我參與的汽車電子控制嵌入式項目中,我們團隊制定了詳細的項目計劃,并嚴格按照里程碑進行了進度控制。這樣做不僅可以保證項目按時完成,還可以及時發現和解決項目中的問題。

          總的來說,嵌入式項目的開發需要在需求分析、團隊合作、軟硬件調試、性能功耗優化和項目管理五個方面進行充分考慮和實踐。通過這些方面的努力和實踐,我深刻體會到了嵌入式項目開發的艱辛和復雜性,也獲得了寶貴的經驗。我相信,在今后的實踐中,我會不斷積累經驗,不斷提升自己在嵌入式項目中的能力。

        嵌入式心得體會13

          4月10號,為期一個階段的Linux開發基礎培訓課程圓滿結束,回首這些天所留下的點點滴滴,感觸深深,學習上知識點的積累,靈活運用的過程中感受到了Linux操作的快速高效性能,這也是我所追求的效率!

          當初初涉培訓課程的第一門課程時,都說Linux操作很繁瑣復雜,心里總有些顧忌,帶著種種不安與些許拼博的決心,開始了自我提升階段的“充電”,由徐海兵老師教授我們基礎課程的培訓,我們則像著小學生般認真的記著筆記,仔細聽著并學會如何去在實踐中運用所學的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的,懂得了如何設置虛擬機的網卡設置、暫停、恢復、全屏等。

          簡單的學習后進入Unit 2,命令行的句法讓我懂得了用法規則,一系列的命令功能強大:

          date 顯示當前年月時間星期之類的;

          more指令與less重要但不常用;

          cat用于查看短小的文件內容,常用!

          mkdir命令用于在當前目錄下創建新的目錄;

          ls 顯示當前目錄下所有文件;cd 更改文件路徑,如cd 、cd . 當前目錄;

          rmdir 刪除空文件夾;

          rm指令很強大,用于刪除空目錄及非空目錄下的指定或全部文件;

          man 真男人,幫助手冊;

          history指令用于顯示編寫過的命令集,以history 序號 可顯示序號所指命令;

          echo回寫命令,很重要,我需要繼續學習;

          exit 指從多重SHELL退出來。

        嵌入式心得體會14

          本人本科學的是電子信息工程專業,其實這個專業和嵌入式沒有多大的關系,要說有關系就是簡單的講了下C語言語法,學完之后還不知道什么是C語言,只記住了char,int,long等占幾個字節,if, while,for循環什么的,感覺也就能算一些小學就會的題目,全國計算機二級C語言也就糊涂的過了。我這個專業沒學過C++,一開始不知道什么是面向對象,這可能會讓人笑話了。不過這說的是實話,本科的時候,學院安排的課程大部分偏硬件部分,動手機會比較多,自然而然比較喜歡硬件方面。

          在大二的時候就聽學長說,單片機很難學,那時候經學長介紹,淘寶買了本郭天祥老師出的書《51單片機C語言教程》,一開始還真是不怎么懂,感覺有點像是看天書,然后硬著頭皮去看,當我把51的結構看完了,就不像一開始那樣一頭霧水了,自己在紙上把51的結構圖默畫一遍,然后再把各個寄存器功能寫一下,各個功能口的結構粗略畫了下,然后覺得51整體已在我心中了,雖然沒有什么作用,但是至少懂得這門課要怎么去學習。其實有些時候不是這個東西你不會,而是在不會的時候自己先告訴自己這個太難了,自己先放棄了。

          在大三的時候,第一學期課比較少,我就經常待在圖書館,會去蠻看些專業相關的書籍,現在想想,那時候也是機緣巧合下,看到了一本書《從51到ARM》,講述的是從51系列單片機的一般知識出發,將arm處理器和51系列單片機進行對比,引導讀者去理解和學習arm處理器的知識。那個時候也有考慮到以后就業的問題,就想到一件事情,如果去應聘工作的話,每個工科院校電子信息類的畢業生都會異口同聲地說:我會51系列單片機。當他說這句話的時候,他和別人是站在同一起跑線上的?晌覀兺耆锌赡芎蛣e人不站在同一起跑線上。正是這本書給我開啟了另外一扇大門,讓我初步了解了嵌入式。后來去報考全國計算機等級考試三級教程——嵌入式系統開發技術,在圖書館奮斗了兩個月,最后取得優秀的成績,也讓我進一步了解嵌入式系統。

          在大四的時候,我們有嵌入式的選修課,不過當時因為考研的緣故,就沒有去上過這門課,好可惜呀!但是,在選擇讀研研究方向的時候我還是毅然選擇了嵌入式方向,我知道這將成為我未來三年研究的方向。這學期(研一下學期),很開心能夠再次接觸嵌入式系統這門課程,對于導師教的這門課程,我覺得自己上課還是蠻認真聽講的,當然也被師在臺上那講得頭頭是道,溫文儒雅的風姿所吸引。對于沒有學過微機8086的我,有些時候,老師用微機與嵌入式的對比讓我頭腦沒有相關概念...

          首先,我對嵌入式在概念上有了一個比較精確的了解。嵌入式是指以應用為中心,以計算機為基礎,并且軟硬件可裁剪,適用于對功能、可靠性、成本、體積和功耗有嚴格要求的專用計算機系統。它由硬件平臺和系統軟件組成。硬件平臺指嵌入式處理器和與之通過接口連接的外圍硬件平臺。系統軟件是指實時操作系統和用戶應用軟件。

          談到硬件部分,我首先想到的是嵌入式處理器那些外圍功能模塊。對于這部分的學習,我當初花了好長時間看《深入淺出ARM7——LPC2400》這本書,現在想想覺得自己學習方法沒用對,完全沒有那個必要,自己卻花了大把時間在看這些寄存器引腳的使用,因為單純的看過之后還是很容易忘的,之后在進行實驗的時候還是翻書來查就證明了這一點。不過一些最基本的模塊,例如通用輸入/輸出口(GPIO),通用異步收發器(UART),向量中斷控制器(VIC),外部中斷輸入和定時器/計數器還是需要看書認真去記住那些常用的引腳功能。對于CPU異常這部分,我一開始以為異常就是中斷,因為處理程序流程設計是相似的,都是請求處理器打斷正常的程序執行流程,進入特定程序的一種機制。當時還對老師提出的一個看法有點疑義,51可以處理中斷嵌套而ARM處理器卻不能?我當時腦子里面就在想:中斷不都是有硬件設備產生的,那按常理來講ARM處理器也可以處理的呀。后來在認真查書,發現CPU異常有7種:復位,數據中止,中斷,快中斷,預取中止,未定義,軟件中斷。而異常向量會使CPU轉入異常入口地址執行程序,開始了異常處理。同理的話,中斷向量使CPU轉入中斷入口地址執行程序,開始了中斷處理。即當發生IRQ中斷時,程序返回地址被存入該IRQ中斷模式下的LR,如果繼續發生IRQ中斷,那第二次的中斷返回地址也還是被存入該IRQ中斷模式下的LR中,那先前發生中斷時候存入的程序返回地址將被覆蓋掉,導致不能返回正確的位置。在我解決這個問題的期間,每次睡前思維準會定格在這問題上,久久不能繞出來,其實有時候查書還是最好的解決方案,因為網絡資源只能提供給我們部分的參考資料。

          對于ARM匯編語言這部分的學習,我認為是需要重視的,學匯編不是說用這語言做多牛逼的事情, 問題的關鍵在于, 學透了匯編會使你真正理解計算機。另外一方面,只要以后在嵌入式工作中你遲早會在某個陰暗的角落里遇到匯編。“不管你承認不承認, 現在的CPU沒有直接跑高級語言的, 哪怕是虛擬機也都是類似匯編的指令集.當遇到崩潰分析, 性能優化甚至編譯器抽風等等的時候, 匯編是你最后一根救命稻草(這句話是福來師兄講的)。”為此他給了我們一份資料,周立功lpc21xx/lpc22xx系列ARM7啟動代碼分析,主要講述的是startup.s文件的分析,看了下才發現老師上課講的那個啟動代碼分析很多不理解之處這里都有詳細的介紹,這分析太精辟了。

          學 ARM7這么久,我認為從硬件上講,一方面就是學習接口電路設計,另一方面就是學習匯編和C語言的板級編程。如果從軟件上講,就是要學習基于ARM處理器的操作系統層面 的驅動和移植。這些對于我們初學者來說必須明確,要么從硬件著手開始學,要么從操作系統的熟悉到應用開始學,但不管學什么,只要不是純的操作系統級,硬件的寄存器類的東西還是要能看懂的,基于板級的匯編和C編程還是要會的。

          μC/OS-II 是一種基于優先級的搶占式多任務實時操作系統,包含了實時內核、任務管理、時間管理、任務間通信同步(信號量,郵箱,消息隊列)和內存管理等功能。它可以使各個任務獨立工作,互不干涉,很容易實現準時而且無誤執行,使實時應用程序的設計和擴展變得容易,使應用程序的'設計過程大為減化。μC /OS-II是一個完整的、可移植、可固化、可裁剪的占先式實時多任務內核。μC/OS-II絕大部分的代碼是用ANSI的C語言編寫的,包含一小部分匯編代碼,使之可供不同架構的微處理器使用。

          μC/OS-II可以大致分成內核結構、任務管理、時間管理、任務之間通信與同步4個部分。內核結構是操作系統的處理核心,包括操作系統初始化、操作系統運行、中斷進出的前導、時鐘節拍、任務調度、事件處理等多部分。任務管理部分中的內容都是與任務的操作密切相關的。包括任務的建立、刪除、掛起、恢復等等。因為μC/OS-II是以任務為基本單位調度的,所以這部分內容也相當重要。μC/OS-II中的最小時鐘單位是timetick(時鐘節拍),任務延時等操作是在時間管理這部分完成的。任務之間通信與同步為事件處理部分,包括信號量、郵箱、郵箱隊列、事件標志等部分;主要用于任務間的互相聯系和對臨界資源的訪問。μC/OS-Ⅱ操作系統是在main()中建立的,首先要系統初始化,OSInit(),初始化系統所有的變量和數據結構。然后進行任務的創建,OSTaskCreate();之后進行多任務的啟動,OSStart()。在進行任務的并行處理的時候,一個任務的程序是順序執行的,而不同任務的程序卻是并行執行的。從應用程序的觀點來看,此處的并行處理只是一個假象。而實際上它是通過實時操作系統的內核控制任務之間的切換來實現的,也就是任務調度啦。

          μCOS-Ⅱ總是運行進入就緒態任務中優先級最高的那一個。當創建新任務時,或當前任務調用一些可能把自己掛起的系統函數(如OSMBoxPend)時,內核就要進行任務切換。在上述的場合,任務級的調度是由函數OSSched()完成的。

          在一個多任務的應用工程中,任務之間并不是完全獨立的,它們存在一些需相互配合的處理,這些相互配合是靠任務間的通訊或同步,信號量、郵箱、消息隊列可以實現這種任務與任務,任務與中斷服務函數間的通訊與同步。

          郵箱可以使一個任務或者中斷服務子程序向另一個任務發送一個指針型的變量。而信號量不可以,其只能發送信號量。消息隊列可以使一個任務或者中斷服務子程序向另一個任務發送以指針方式定義的變量。因具體的應用有所不同,每個指針指向的數據結構變量也有所不同,實際上,我們可以將消息隊列看作多個郵箱組成的數組,只是它們共用一個等待任務列表。

          我們實驗所用的ARM開發工具是ADS1.2。ARMADS全稱為ARM Developer Suite,是ARM公司推出的新一代ARM集成開發工具,F在ADS的最新版本是1.2,支持軟件調試及JTAG硬件仿真調試、支持匯編、C語言、C++源程序,具有編譯效率高、系統庫功能強等特點。在安裝ADS1.2的時候出現過小問題,當時我的電腦是64位的,安裝完之后顯示不了,后來百度查找到原因,竟然是文件夾放錯地方,應該放在Program Files(x86)這個文件夾中。后來有同學問我這方面的問題,但是發現他們的ADS1.2安裝不了的原因是因為Licence弄錯了。在打開CodeWarrior for ARM Developer Suite的時候,一定要記得選DebugInChipRAM,否則Make都出現很多error,而且那些幾乎都是未定義函數的錯誤。之后就進行Debug,調試成功之后會跳出AXD的界面,選擇Options里面的ConfigureTarget,再添加H-JTAG的文件,之后點擊GO,程序會跳出匯編語言的界面,再點擊下就跳到C語言程序入口地址,之后再點擊下GO,程序就開始跑起來。前面所述的這些步驟是理想情況下程序自身沒有發生錯誤,當然在調試過程中,還是有很多硬件上的問題,一方面是有些開發板可能用久了,用JTAG并口連接的時候接觸不良,很容易自動掉線,常出現未連接設備的的Error,還有一方面是跑程序過程常會出現兼容性的問題,導致程序AXD調試時候會出現卡在某個部分一直進入死循環,這個后來是解決了,但是偶爾還是會出現這個BUG。

          通過這學期對嵌入式的學習,我發現自己尚未掌握的知識點還是蠻多的,尤其是對μC/OS-II的移植方面,我只是理論上粗略了解,沒有經過實驗的操作。還有對存儲器加速模塊(MAM)這方面不夠了解,主要一方面當初在做消息隊列采集實驗(KeySem_SampdataQeue),這個模塊被代替掉,不需要使用它,所以后來也沒有去掌握相關知識點。對于任務就緒算法這部分,我只是上課的時候聽“懂”了,課后自己再看完全懵了。對于CAN總線調試的部分,老師上課沒有講到這部分的介紹與應用,但是后來通過自己對實驗室師兄們所做的課題初步了解,發現我自己有必要去弄懂它的構造和原理。

          “看書不要希望一次就會,一次就明白是什么意思,也不要死記硬背,看不明白也沒關系,以后遇到了知道去哪里去找就可以了,以后遇到的多了,也就記住了,遇到的少的,忘記也就忘記了!币廊挥浀卯敵醪欢趺唇鉀Q某個問題的時候請教李碩師兄,師兄對我說的這番話。自己在μC/OS-II這部分內容掙扎了好久,現在想想,覺得當初不應該一上來就直接閱讀內核源代碼,看了一些自己把頭撞破也想不明白的事,這樣直接正面打擊我學習嵌入式的積極性。學習啊,還是得要循序漸進。如果你想學習嵌入式一定要有塊學習板?丛俣嗟囊曨l,看再多的書,也不如自己動手試一下,看著很簡單的東西,做起來就可能遇到很多的問題,遇到問題找到原因,解決問題,只有這樣才能學到東西。記得我第一次仿寫led的驅動,想自己試一下,可是自己一試,就出了好多的問題,那個led弄了我一天才把led燈點亮。所以不要眼高手低。

          對于初學者,有一點小建議,我們拿到一個開發板,很興奮也很激動,想法自然也很多,想用開發板實現自己的這個想法,實現那個想法,然后又不知道從何下手,然后就去論壇中發一個貼,最后等著別人去回復,當見沒人回復就開始抱怨。這種做法是不可取的,有想法是好的,我們要實現自己的想法也是有前提的,首先,我們對這部分知識了解嗎?如果不了解就去google一下(最好別用百度,不太好用),了解了一些,也就大概知道要怎么做了。如果再遇到問題,再去發貼問,這樣也顯得咱們有水平。比如自己連串口是什么都不太清楚呢,就問串口通信怎么做啊,就是人家把代碼給咱,咱也不明白是怎么回事啊。見多識廣,熟能生巧。多看代碼,要從代碼中讀出代碼的意思來。自己平時也要多寫代碼,多練習(這一點我做的不好,寫的少)。

          最后,我想說的是嵌入式系統的學習和研究一旦我們達到了一定的水平后,其實很簡單,就是如何去看CPU和相關芯片的Datasheet!

        嵌入式心得體會15

          這學期才接觸嵌入式系統感覺還稱不上入門,我通過學習知道了嵌入式的發展前景很大,各個領域都用到了嵌入式,學好嵌入式不愁沒飯吃。

          廣義上講,凡是帶有微處理器的專用軟硬件系統都是嵌入式系統。如各類單片機和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 的代碼等等,麻雀雖

          小,五臟俱全,如果你全看完了,那我想你就是一名很成功的嵌入式工程師。

          以上就是我在本學期學習嵌入式后的心得及感想。

        【嵌入式心得體會】相關文章:

        嵌入式學習心得體會04-27

        嵌入式實訓心得體會03-18

        嵌入式學習心得體會8篇05-07

        嵌入式實訓心得體會9篇05-07

        嵌入式系統實習報告05-24

        嵌入式處理學習心得04-01

        高考心得體會 高考心得體會01-23

        心得體會:學習心得體會09-13

        心得體會 產黨員心得體會09-13

        的心得體會09-15

        午夜免费福利视频_日韩精品无码一区二区三区久久久_久久九九久精品国产88_国产资源网中文最新版

          <i id="u3evg"></i>
            1. <i id="u3evg"></i>
              午夜福利国产小视频在线 | 亚洲欧洲日本综合aⅴ在线 久夜色精品国产噜噜 | 欧美视频一区二区精品V | 日本精品在线不卡中文字幕 | 中文字幕亚洲日韩乱字幕 | 欧美亚洲日韩偷在线 |