第一篇:學習嵌入式心得體會Microsoft Word 文檔
10計本班
黃田麗
05111001021
學習嵌入式心得體會
首先,我們學習的課本是嵌入式系統應用教程。我學習的體會是這樣的: 開始時,由于是剛剛入門,對老師書的好多東西是好奇的,好多名詞也是新鮮的,不過不太懂什么意思。但是慢慢的,了解的深入讓我有了更深的感觸和體會。
在嵌入式的學習過程中,讓我了解了什么是嵌入式系統。它就是以應用為中心,以計算機技術為基礎,軟硬件可定制,適用于不同應用場合,對功能、可靠性、成本、體積、功耗有嚴格要求的計算機系統。他一般由嵌入式微處理器、外圍硬件設備、嵌入式操作系統、用戶應用程序四個部分組成,用于實現對其他設備的控制、監視或管理功能。嵌入式系統已經應用于科學研究、工業控制、軍事技術、交通通信、醫療衛生、消費娛樂等領域,人們日常使用的手機、PDA、汽車、智能家電、GPS等均是嵌入式系統的典型代表。
一開始我們就學習嵌入式的系統的基礎部分,那很簡單,就是一些定義或是介紹之類的。在進入第二章時,就開始學習了嵌入式開發過程中的主要操作系統——linux,在接下來的課程中,我發現嵌入式的學習過程還是蠻有趣的。在對linux的學習中,我們對它有了一點點的了解,接著就是學習一虛擬機的方式安裝linux。對我來說有趣的就是安裝的過程了,首先我們跟著老師的腳步走,學會了怎么安裝,在自己動手進行對它的安裝,這個過程是簡單而有趣的。這樣的開始讓我對它充滿了興趣,也對以后的學習充滿了信心。
其次就是安裝好了之后,老師就更深一步的教我們應用了。在這是老師首先交給我們的是一些簡單的命令應用,Linux具有很豐富的命令,絕大多數命令具有大量的參數。在學習命令的過程中,只要你認真的看著老師操作還有認真聽著他講,你就會發現有些命令的操作還是很簡單的,不過在操作的過程中,我也有遇到有些困難,會出現你按照書上學習的例子,將命令輸入終端時會出現你不想要的結果,也就是錯誤的結果。這是問問旁邊的同學或是懂的同學就可以解決了。在對于這部分的學習中,讓我知道了命令對于嵌入式的重要性。它是linux的重要內容,linux中所有的功能都是通過命令執行。在實際應用中,為了減少系統開銷,經常不使用圖形界面,此時,對系統的所有操作都需要以命令方式來執行。在嵌入式系統開發過程中,由于目標機的性能和配置比較低,因此,一般情況下目標機僅具有命令窗口而沒有圖形界面,對目標機的所有操作都通過命令來實現。
還有的那就是進一步學習與嵌入式系統開發相關的linux的服務,他們的啟動、設置等的操作和應用。而在學習之中,我們主要介紹的是嵌入式系統中開發工程使用的TFTP、Telent和NFS服務。第一個實現的事上機位與下機位之間文件的傳輸、無磁盤網絡的設備的啟動等功能;第二個實現的事遠程登錄功能;第三個實現的是網絡文件系統功能。
從以上的內容之中,并不難感受到我們的學習過程是由淺入深的,這對于我們的學習也有了較好的幫助。
當然,我們學習的不僅僅是這么幾個內容,其中還有相關的實驗內容。在我們基礎的學習的過程之中,我有了這么一點的感受,總的來說就是概念加專業名詞還有介紹加實驗。不過你絕對不能小看那些概念和介紹,它對我們有著很重要的指導作用哦!實驗那就更不用說了,它提高我們的動手能力,在實驗的過程中還能讓你更加理解書中的理念,這就是我學習嵌入式的感受。
第二篇:嵌入式學習心得體會(范文)
嵌入式學習心得體會
BAKYANNMYRADOV
20*** 這學期才接觸嵌入式系統感覺還稱不上入門,我通過學習知道了嵌入式的發展前景很大,各個領域都用到了嵌入式,學好嵌入式不愁沒飯吃。
廣義上講,凡是帶有微處理器的專用軟硬件系統都是嵌入式系統。如各類單片機和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下我們打開一個程序運行后,再打開一個程序時,要不就是中斷以前的程序,要不就是等上一會才能運行后來打開的程序。想做個好的驅動人員沒有三、四年功底,操作系統內核不研究上幾編,不是太容易成功的,但其工資在嵌入式系統四層中可是最高的。
驅動層比較適合于電子、通信、自動化、機電一體、信息工程類專業尤其是計算機偏體系結構類專業的人來搞,除硬件層所具備的基礎學科外,還要對數據結構與算法、操作系統原理、編譯原理都要十分精通了解。
作系統,或者寫出缺胳膊少腿的操作系統來,這部分工作大都由驅動工程師來完成。操作系統是負責系統任務的調試、磁盤和文件的管理,而嵌入式系統的實時性十分重要。據說,XP操作系統是微軟投入300人用兩年時間才搞定的,總時工時是600人年,中科院軟件所自己的女媧Hopen操作系統估計也得花遇幾百人年才能搞定。因此這部分工作相對來講沒有太大意義。
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 的代碼等等,麻雀雖小,五臟俱全,如果你全看完了,那我想你就是一名很成功的嵌入式工程師。以上就是我在本學期學習嵌入式后的心得及感想。
第三篇:嵌入式心得體會
這學期才接觸嵌入式系統感覺還稱不上入門,我通過學習知道了嵌入式的發展前景很大,各個領域都用到了嵌入式,學好嵌入式不愁沒飯吃。
廣義上講,凡是帶有微處理器的專用軟硬件系統都是嵌入式系統。如各類單片機和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 的代碼等等,麻雀雖
小,五臟俱全,如果你全看完了,那我想你就是一名很成功的嵌入式工程師。
以上就是我在本學期學習嵌入式后的心得及感想。
第四篇:嵌入式心得體會
對于電焊,雖然一點都不陌生,但親手操作的機會卻只有幾次,因此我很慶幸能夠有這樣的焊接機會,進行這樣的實踐。
焊接看似容易,實則需要長時間練習才能掌握。剛開始的時候,手一直在抖,尤其這次焊的還是貼片電容、電阻,原器件比以前焊的小好多,用鑷子的手一抖就夾不住了,拿著烙鐵的手抖得都不容易將器件焊上,焊出來的焊點也特別難看,在不斷嘗試,不斷挑戰自我的過程中,我的手不抖了,也基本能掌握錫的用量了,當焊點終于不再“丑不忍睹”的時候,對焊接也沒有當初的恐懼了。對自己的動手能力也有了信心。
在焊接的過程中我學到了許多以前我不知道的東西,比如,以前我只知道有電烙鐵,但不知道它還有好多種類,有單用式、兩用式、調溫式、恒溫式、直熱式、感應式、內熱式和外熱式。松香可以將多余的錫弄下來,用酒精可以把板擦的干凈些。通過視頻和查找資料,知道了在焊不同的器件時用的電烙鐵的頭不同,比如在焊引腳時要用尖頭,焊CPU時要用刀口,為防止錫將焊引腳的小孔堵住,用松香把紙條粘在小孔上,把小孔蓋住,把CPU的引腳對齊,用錫先涂滿兩邊,固定好芯片,在焊另外兩邊,然后用尖頭的電烙鐵沾著松香將多余的錫弄下來。
本次課程設計的是信號發生器,信號發生器在EDA課程,數字信號處理課程中都曾涉及,所以還是較為熟悉的,在設計之前查閱了一些相關書籍,也從網上查找了一些相關資料,程序代碼中運用到了C語言,將程序加入到嵌入式結構框架中,進行定義變量,端口,設定所用的GPIO參數等等。
在焊接的過程中我不僅學到了知識,而且讓我深深地體會到一個團隊中各成員合作的重要性,要善于團隊合作,在進行團隊合作的時候,還要耐心聽取每個成員的意見,每個人都有長處和短處,只有在包容別人的同時我們才可以取長補短,不斷完善和不斷進步,交到更多的朋友,學到更多的知識。同時還讓我明白:做任何事都要一心一意,嚴謹認真,反復琢磨,不能畏懼,要有信心和勇氣,一定要做好充分的準備。不能盲目去做,要堅持,還要學會反思跟總結,我們不是為了完成任務而完成,這還是一個學習跟提高的過程。
在大學里學的不是知識,而是一種叫做自學的能力。在這個知識爆炸的時代,知識更新太快,靠原有的一點知識肯定不行。以后的工作中肯定會用到一些新的知識對一些電子機器進行開發設計,我們只能在自己以前的基礎上努力自學盡快掌握知識。必須在工作中勤于動手慢慢琢磨,不斷學習,不斷積累。遇到不懂的地方,自己先想方設法解決,實在不行可以虛心請教他人,而沒有自學能力的人遲早要被企業和社會所淘汰。
第五篇:嵌入式心得體會
嵌入式心得體會
嵌入式心得體會1
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退出來。
嵌入式心得體會2
就在昨天3月9日,學校規定實習時間已經到期了。從上個月的13日到現在已經近一個月,雖然與公司的實習時間還沒有結束,但是為了完成學校交待的任務,在此對這段時間的實習做一個總結。
首先,我先來簡單介紹下實習單位。我實習的單位全稱——上海寶信軟件股份有限公司廈門分公司。其作為上海寶信軟件中的重要一員,是寶信軟件在全國多網點支持服務的延伸,具備與寶信軟件上海總部相同的技術服務能力,并可無限制調用總部專家資源,秉承寶信軟件“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比較感興趣。同時,目前做的工作是對日外包,對于我日語的提高也是很有幫助的。現在實習給我感覺是,不出現什么其他狀況,應該畢業后會留在這個公司。至少今后的職業規劃以日語和編程提高為主,以管理為輔。
在這里,我要感謝上海寶信軟件股份分司給我這次寶貴的實習機會。同時,也要感謝組員對我有直接幫助的前輩。當然還要感謝學校和畢業指導王老師的關心與指導。
總而言之,這次實習是我大學四年來最正式的一次。我想通過這次的實習,我將從學生走向社會職業人的轉變。一個月的時間過的太快了,但是我們的實習并沒有結束。通過這次的總結,我對這次實習的意義有了深刻地認識。自己在今后的學習與工作中,一定會更加努力做的更好。
嵌入式心得體會3
研究嵌入式系統已經有快兩年的時間了。很慶幸自己當初選擇了嵌入式系統作為自己的研究和職業方向,可以說它是一種催化劑,讓我自身的修養和研究能力都有了很大的提高。
在嵌入式系統的大門前,我只能算是剛剛看到這個大門的臺階,但這段小小的距離讓我受益頗多,現將其中心得奉獻出來,歡迎高手前輩們指正,以供剛接觸的新人參考。
在寫之前,想先寫一句話,千萬不要以為你是天才,所謂天才即勝別人N倍的人,如果你真認為你是天才,請以天才的標準來要求自己,將自己付出和別人的比例以N:1來進行。
(1)學習與生活心態
很多朋友都是在剛步入大學校門開始接觸計算機或者其他。大學是一個很讓人迷茫頹廢的地方,可能你在高中躊躇滿志,但在大學的管理機制下卻心態漸糜。能夠在大學(大一)里找到自己人生之志的同學有多少?目標要明確,不要得過且過,不要追逐熱門的東西。
不管在什么時候,心里都要有自己的信念和理想,不要被其他東西左右了自己。要從興趣和競爭出發,因為這才是你產生動力源的地方。學東西時,要讓自己先喜歡上它,要學會享受學習它的時間,喜歡喬XXX的都知道,喬老爺子最常說的一句就是要享受比賽的時間。
因為只有你喜歡上了它,享受了它,才不會被它所產生的壓力壓倒自己,不要產生一種厭惡的心理。而且心態要調整,不要一味的蠻學,死學,在沒有什么興趣學的時候可以先玩幾天,在回過頭來,或者用其他的方式來轉換。要抱著一種十年方能磨一劍的心理,扎扎實實從基礎開始,不要為高速開發的一些現象所迷惑,那些都只是軟件的功勞。
我個人認為搞編程,英語和數學很重要,大家一定要時時的抓,至于怎么抓那就是另外一回事了,當然其他的知識也要汲取,可以多接觸點天文,地理,人文方面的東西來補充自己。轉換的生活方式。要學會生活,在人的一生中,都會遇到一些很不開心的事,或者大大小小的意外,孫子兵法里面一句大意就是說,戰場上要會將劣勢轉成優勢,即最大的劣勢很可能就是你的優勢所在。
一個打擊你可以把他變為前進的動力,不必為了一點挫折和捶胸頓足,不必為了一點小事爭吵不休。空閑的時候可以躺下來看看天,你就會明白自強不息,厚德載物之理。(看到一些為了失戀或者其他而墮落的人真的很難受和可惜)。
要給人以幫助。別人有困難時或者一些舉手之勞在自己解決范圍內的盡力幫之,這對自己不會損失什么,相反在對方心里能夠樹立你的形象和增加好感。記住,給人之恩時也是給你自己鋪路,這個世界不是靠你一個人可改變的。
(2)編程語言的選擇語言的爭論。
很多初學擇,老是在學習何種語言上舉棋不定,試問,中國牌子有幾個不被罵的,試問,世界上哪部影片沒人說他壞話的?術業有專攻,各司其職,每個語言的出現肯定都有自己價值和領域的范圍,不同的只是價值和領域的高級和大小。
就像高,矮,胖,瘦組成一個“型”。但是技術是進步的,這個進步也是在舊的基礎上。放心,技術再飛躍也不會今天奔I,明天扣肉的迅速,在學習的同時也要時時關注整個語言界的走勢(貌似哪個偉人說的與時俱進),保持一種同步曲線的前進。語言能干什么?能問這句話,很欣慰。
表明你是從基礎學起才會問出這樣的話來。但換而言之你一開始對這門語言調查的信息不足。廟算者勝,對自己身邊的事物了解是非常重要的,這也能說明說你的教材或者教導你的人不夠充分。如果是我對新手交流,我會花足時間讓他明白這門語言是什么,能干什么,整個體系等等。
這樣在學的時候,對同一條語句上的理解你可能跟別人就不一樣了,因為你知道這門語言的體系架構,你可以從更多的特性角度去挖掘使用它。提高自己對語言閱讀能力。如何快速的進步?可以告訴你沒有一步登天的辦法,但是也可以告訴你如何讓你快速掌握你所學的技術。多讀他人代碼,多領悟他人思維,多給自己出難題,多幾種方法來解問題,多將語言的思想和身邊的事物聯系起來。想想你是怎么掌握普通話的,方法就不具體說了。
編程的思維。計算機是充滿誘惑的東西,很多人都說熱愛計算機,那只是它的表面,你熱愛的只是他的一種擴展性的東西。能學計算機我很高興,因為計算機從某種意義上來說將空間的距離給消除掉了。這里沒有流血,沒有犧牲。你可以以一種藝術家的思維來塑造它,可以以偵探的邏輯思維來解決它,可以以一種戰爭狂人的思維來摧毀它。
你可以將你的這種思維體現在代碼和整個布局里,不要驚異別人代碼思維的異風,你也有自己的思維風格,你也可以,你也可以用自己代碼讓別人驚異。記住你學東西時更多的要體會他的思維,比如數學,微積分,離散,無數的定理,你學完以后可能永遠都用不到,但是你可能有這種感覺,在你碰到某一問題時,這一問題的性質和你學到的東西很類似,但是中間就是差了一點東西,對了,這就是它思維上的一種運用,一種抽象,一種轉換。
嵌入式心得體會4
這學期才接觸嵌入式系統感覺還稱不上入門,我通過學習知道了嵌入式的發展前景很大,各個領域都用到了嵌入式,學好嵌入式不愁沒飯吃。
廣義上講,凡是帶有微處理器的專用軟硬件系統都是嵌入式系統。如各類單片機和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 的代碼等等,麻雀雖
小,五臟俱全,如果你全看完了,那我想你就是一名很成功的嵌入式工程師。
以上就是我在本學期學習嵌入式后的心得及感想。
嵌入式心得體會5
通過這次實習,在各方面我感覺自己都有了一定的收獲。這次實習主要是為了我們今后在工作及業務上能力的提高起到了促進的作用,增強了我們今后的競爭力,為我們能在以后立足增添了一塊基石。實習單位的老師也給了我很多機會參與他們的設計是我懂得了很多以前難以解決的問題,將來從事設計工作所要面對的問題,如:前期的策劃和后期的制作等等。這次實習豐富了我在這方面的知識,使我向更深的層次邁進,對我在今后的社會當中立足有一定的促進作用,但我也認識到,要想做好這方面的工作單靠這這幾天的實習是不行的,還需要我在平時的學習和工作中一點一點的積累,不斷豐富自己的經驗才行。我面前的路還是很漫長的,需要不斷的努力和奮斗才能真正地走好。
大學生活讓我對計算機理論知識有了一定的了解,但真正操作起來就沒有那么容易.紙上得來終覺淺, 絕知此事要躬行。經過過去兩個月的實習,我對自己有了新的認識及前進的方向。
經過過去半個月的實踐和實習,我對未來充滿了美好的憧憬,在未來的日子,我將努力做到以下幾點:
1.繼續學習,不斷提升理論素養。
在信息時代,學習是不斷地汲取新信息,獲得事業進步的動力。現在通過實習總感覺自己學的不夠,要用到知識時總感覺腦袋是空白的。很后悔自己當時在學校為什么不多學一點,多練習一點。總在后悔也沒有用,只能自己去努力學習。為了能更好的適應工作,我利用自己空閑時間去附近的書店去看書,希望能彌補不足。
2.加強信心,堅持下去
雖然在這個公司自己可能是學歷水平是最高的,但真的工作起來我的起點卻很低。有時候遇到事情總會著急,慌張。平常信心不足,總感覺自己做不好。大家說我很內向,其實只是自己有點自卑,不敢去表達。或許還需要一段時間的磨練吧。只有自己的知識和能力都在提升,相信自己總有一天會很勇敢的表現自己。
上學的時候大家都說,能珍惜現在的日子就好好珍惜。等工作了才真的領悟這句話。每天起早貪黑,忙忙碌碌,做了第一天就想回到學校接著做學生。感覺學生時代真是最美好的時間。可是既然踏出來了就要繼續走下去,因為這一天也終究要來到。
對給自己點信心,多給自己點贊賞,多給自己鼓鼓勁。相信總會走出一條寬敞大道的。
3、同事相處
感覺學生時代很美好,不僅僅是不需要去努力工作,而是在學生時代你可以有很好的同學,很好的朋友,大家相互噓寒問暖,不必勾心斗角。我感覺這里才真的有純潔的友誼。可踏上了社會,于存在著利益關系,又工作繁忙,就多了份人情世故。老板對你的頤指氣使,同事對你的多加防范,就更加想念自己的同學。可能自己還不能適應這樣的環境吧。但還是希望以后自己去努力,希望自己可以有個好朋友,希望自己可以有個團結的環境。
實習,是開端也是結束。在書本上學過很多理論,但從未付諸實踐過,也許等到真正運用時,才會體會到難度有多大。在今后的工作和生活中,自己需要更加努力的奮斗下去。
實習的同時也讓我了解到了自己的不足,我會繼續努力,完善自我。對于學校的精心安排和指導老師的用心輔導非常!
嵌入式心得體會6
學期開始,我們開始學習《嵌入式系統及應用》,由于初次接觸嵌入式系統,感覺蠻難的,所以收獲不是很大,很多的概念都比較模糊,等到學期結束開始做嵌入式課程設計時,真是茫然無從下手,自從拿到設計主題后,我就像熱鍋上的螞蟻,一個字“急”。最后實在沒有辦法,逼著自己去學習,查資料,總算對嵌入式有了淺層理解。
嵌入式系統本身是一個相對模糊的定義,一個手持的Mp3和一個pC104的微型工業控制計算機都可以認為是嵌入式系統。總體來說,嵌入式系統是“用于控制,監視或者輔助操作機器和設備的裝備”。
一個典型的桌面Linux系統包括3個主要的軟件層———linux內核、C庫和應用程序代碼。內核是唯一可以完全控制硬件的層,內核驅動程序代表應用程序與硬件之間進行會話。內核之上是C庫,負責把pOSIXApI轉換為內核可以識別的形式,然后調用內核,從應用程序向內核傳遞參數。應用程序依靠驅動內核來完成特定的任務。
在了解了基礎知識之后,我開始進行上機操作,當然,其中遇到很多的難題,很多東西都是第一次接觸,又沒有別人在旁邊指導操作,完全憑借自己去摸索練習。其中的困難可想而知。
然而堅持就是勝利,牙一咬眼一閉堅持做下去,而通過本次實驗,我感覺收獲還是蠻多的。可能我對于嵌入式的知識學習的還是不太多,但是這之外的東西收獲頗豐。
它讓我學會了如何通過自己的努力去認知一個新事物,更重要的是端正自己的學習態度,只有真正下功夫去學習,才能有收獲,正所謂“一份耕耘,一份收獲。”沒有付出,何談回報呢?
再者,通過本次實驗,我也學會了如何去分析問題,如何找出自己設計中的不足,繼而去排除解決問題,這就是一個自我學習的過程。當我們通過實驗去學習理論知識時,自己動手得出的結論,不僅能加深我們對嵌入式的理解,更能加深我們對此的記憶。
當然,在這其中,我也發現自己的許多不足之處,由于學期伊始我沒有好好學習,才落到如此地步,這也可以說是一個教訓吧!我相信在以后的學習工作中,我一定會端正自己的學習態度,一絲不茍的去對待每一件事。只有做好足夠的準備,才能事半功倍!
嵌入式心得體會7
首先,我們學習的課本是嵌入式系統應用教程。我學習的體會是這樣的:開始時,由于是剛剛入門,對老師書的好多東西是好奇的,好多名詞也是新鮮的,不過不太懂什么意思。但是慢慢的,了解的深入讓我有了更深的感觸和體會。
在嵌入式的學習過程中,讓我了解了什么是嵌入式系統。它就是以應用為中心,以計算機技術為基礎,軟硬件可定制,適用于不同應用場合,對功能、可靠性、成本、體積、功耗有嚴格要求的計算機系統。他一般由嵌入式微處理器、外圍硬件設備、嵌入式操作系統、用戶應用程序四個部分組成,用于實現對其他設備的控制、監視或管理功能。嵌入式系統已經應用于科學研究、工業控制、軍事技術、交通通信、醫療衛生、消費娛樂等領域,人們日常使用的手機、PDA、汽車、智能家電、GPS等均是嵌入式系統的典型代表。
一開始我們就學習嵌入式的系統的基礎部分,那很簡單,就是一些定義或是介紹之類的。在進入第二章時,就開始學習了嵌入式開發過程中的主要操作系統——linux,在接下來的課程中,我發現嵌入式的學習過程還是蠻有趣的。在對linux的學習中,我們對它有了一點點的了解,接著就是學習一虛擬機的方式安裝linux。對我來說有趣的就是安裝的過程了,首先我們跟著老師的腳步走,學會了怎么安裝,在自己動手進行對它的安裝,這個過程是簡單而有趣的。這樣的開始讓我對它充滿了興趣,也對以后的學習充滿了信心。
其次就是安裝好了之后,老師就更深一步的教我們應用了。在這是老師首先交給我們的是一些簡單的命令應用,Linux具有很豐富的命令,絕大多數命令具有大量的參數。
在學習命令的過程中,只要你認真的看著老師操作還有認真聽著他講,你就會發現有些命令的操作還是很簡單的,不過在操作的過程中,我也有遇到有些困難,會出現你按照書上學習的例子,將命令輸入終端時會出現你不想要的結果,也就是錯誤的結果。這是問問旁邊的同學或是懂的同學就可以解決了。
在對于這部分的學習中,讓我知道了命令對于嵌入式的重要性。它是linux的重要內容,linux中所有的功能都是通過命令執行。在實際應用中,為了減少系統開銷,經常不使用圖形界面,此時,對系統的所有操作都需要以命令方式來執行。在嵌入式系統開發過程中,由于目標機的性能和配置比較低,因此,一般情況下目標機僅具有命令窗口而沒有圖形界面,對目標機的所有操作都通過命令來實現。
還有的那就是進一步學習與嵌入式系統開發相關的linux的服務,他們的啟動、設置等的操作和應用。而在學習之中,我們主要介紹的是嵌入式系統中開發工程使用的TFTP、Telent和NFS服務。第一個實現的事上機位與下機位之間文件的傳輸、無磁盤網絡的設備的啟動等功能;第二個實現的事遠程登錄功能;第三個實現的是網絡文件系統功能。
從以上的內容之中,并不難感受到我們的學習過程是由淺入深的,這對于我們的學習也有了較好的幫助。
當然,我們學習的不僅僅是這么幾個內容,其中還有相關的實驗內容。在我們基礎的學習的過程之中,我有了這么一點的感受,總的來說就是概念加專業名詞還有介紹加實驗。不過你絕對不能小看那些概念和介紹,它對我們有著很重要的指導作用哦!實驗那就更不用說了,它提高我們的動手能力,在實驗的過程中還能讓你更加理解書中的理念,這就是我學習嵌入式的感受。
嵌入式心得體會8
目前最常見的嵌入式LINUX方面,我認為大概3個:
1.嵌入式LINUX上層的應用,包括QT的GUI開發
2.嵌入式的LINUX系統開發
3.嵌入式的驅動開發
學習嵌入式:
第一.C語言要掌握(硬件略懂),C語言是所有編程語言中的強者,單片機,DSP,類似ARM的種種芯片的編程都可以用C語言搞定,因為它可移值性強,編譯效率高,運算速度快,便于實現理更復雜的的數據結構。上層應用和數據存儲,我推薦使用C++語言。
第二.學習一種嵌入式的處理器架構,個人推薦32位的處理器,像ARM,因為嵌入式
開發8位的處理器顯得有點低端,大多數只能用作簡單的工控.
第三.學習一種嵌入式操作系統,像LINUX,WINCE等都可以,LINUX更好。
三:ARM是一種微處理器,已遍及工業控制,消費類的電子產品,通信,網絡,無線等各類的產品基于
ARM技術的微處理器已占75%以上的市場份額,可見其技術已逐滲入到我們生活中的各個領域,像手機就是用ARM7 ARM9 ARM11的微處理器技術開發的。嵌入式系統最常見的ARM系列,ARM7,ARM9,ARM11,cortex-A8等。
我們都是曾經從大學里走出來的迷茫羊羔,工作以后我才知道,在大學里不是學到了什么,而是學會怎么去學,相信自己,理清自己的思路,根據自己的性格,剖析自我適合往哪方面發展。
嵌入式心得體會9
一、 實習時間
20xx年4月12日-20xx年4月26日
二、 指導教師姓名
陳xx
三、 實習地點
長沙市牛耳服務外包實訓基地
四、 實習目的與內容
對于嵌入式項目進行學習培訓,掌握嵌入式的主要項目及相關技術
五、 實習收獲與體會
一轉眼半個月的實習生活過去了,現在我已經回到學校,回想起半個月的實習生活,自己學到了很多,懂得了很多。
真的說不出是什么感覺,伴著時間,就像是在和自己的影子賽跑,不可能從真實的兩面去看清它,只是經意不經意的感受著有種東西在過去,也許更適合的只有那句話:時不待我,怎可駐足。原以為實習對于我來說會是很長,但實際卻不同。想象收獲的東西,真的很多,看看我的工作筆記,一篇又一篇,記別人的事情比自己的還多,也許 實習,并不像我想象中的那樣輕松愜意,而是充滿了挑戰和艱辛。我給自己敲響了警鐘:“不要半途而廢,做事情切忌三分熱度。”我信心十足的回答到:“我一定會堅持到底!”
天下英雄皆我輩,一入江湖立馬催。” 從學校到社會的大環境的轉變,身邊接觸的人也完全換了角色,老師變成老板,同學變成同事,相處之道完全不同。在這巨大的轉變中,我們可能彷徨,迷茫,無法馬上適應新的環境,但在同學、同事的幫助和自己摸索的情況下,我還是完成了這次實習。但我發現,以我們的經驗,不學到一定的深度和廣度是難以在實際工作中應付自如的。因此反映出學習的還不夠,缺點疏漏。需在加以刻苦鉆研及學習,不斷開拓視野,增強自己的實踐操作技能,我們也許看不慣企業之間殘酷的競爭,無法忍受同事之間漠不關心的眼神和言語。很多時候覺得自己沒有受到領導重用,所干的只是一些無關重要的雜活,自己的提議或工作不能得到老板的肯定。
做不出成績時,會有來自各方面的壓力,老板的眼色同事的嘲諷。而在學校,有同學老師的關心和支持,每日只是上上課,很輕松。常言道:工作一兩年勝過十多年的讀書。兩個月的實習時間雖然不長,但是我從中學到了很多知識,關于做人,做事,做學問。只有擁有自信才能夠克服一切,去實現自己的理想,創造自己的人生。
實習是個人綜合能力的鍛煉。作為一名新時代的新青年更應該把學習作為保持工作積極性的重要途徑。像我這種文憑不高的人,心里就有一種很渴望的感覺,明白了自己與社會所需的要求,因為現在畢業求職,更多的時間是社會職業選擇自己面試,更多的不是自己去選擇職業,這應該就是所謂的先就業再擇業吧。所以自己會把心態放正,在公司的時候先全面發展,等過段再看看精于哪個方面,然后向那個方向努力發展。
“在大學里學的不是知識,而是一種叫做自學的能力”。參加工作后才能深刻體會這句話的含義。課本上學的理論知識用到的很少。在這個信息爆炸的時代,知識更新太快,靠原有的一點知識肯定是不行的。我們必須在工作中勤于動手慢慢琢磨,不斷學習不斷積累。遇到不懂的地方,自己先想方設法解決,實在不行可以虛心請教他人,而沒有自學能力的人遲早要被企業和社會所淘汰。所以我們還要繼續學習,不斷提升理論素養。
在信息時代,學習是不斷地汲取新信息,獲得事業進步的動力。作為一名年輕同志更應該把學習作為保持工作積極性的重要途徑。走上工作崗位后,我積極響應單位號召,結合工作實際,不斷學習理論、業務知識和社會知識,用先進的理論武裝頭腦,用精良的業務知識提升能力,以廣博的社會知識拓展視野。
我們還要努力實踐,自覺進行角色轉化。“理論是灰色的,生活之樹常青”,只有將理論付諸于實踐才能實現理論自身的價值,也只有將理論付諸于實踐才能使理論得以檢驗。同樣,一個人的價值也是通過實踐活動來實現的,也只有通過實踐才能鍛煉人的品質,彰現人的意志。
從學校走向社會,首要面臨的問題便是角色轉換的問題。從一個學生轉化為一個單位人,在思想的層面上,必須認識到二者的社會角色之間存在著較大的差異。學生時代只是單純的學習知識,而社會實踐則意味著繼續學習,并將知識應用于實踐,學生時代可以自己選擇交往的對象,而社會人則更多地被他人所選擇。諸此種種的差異。不勝枚舉。但僅僅在思想的層面上認識到這一點還是不夠的,而是必須在實際的工作和生活中潛心體會,并自覺的進行這種角色的轉換。
在今后的工作和生活中,我將繼續學習,深入實踐,不斷提升自我,努力創造業績,繼續在自己的工作領域創造更多的價值。
大學因實習而完整,而大學生活卻因實習而精彩。
總之,這次實習,自己確實學到了很多也成長了許多。在實習期間,每日重復單調繁瑣的工作,時間久了容易厭倦。但但是工作簡單也不能馬虎,你一個小小的錯誤可能會給公司帶來巨大的麻煩或損失,還是得認真完成。這段時間,我看到了自己本身存在著許多問題,也會遇到這樣那樣的問題,當前的時代日趨復雜,不學到一定的深度和廣度是難以在實際工作中應付自如的。因此反映出學習的還不夠,缺點疏漏。需再加以刻苦鉆研及學習,不斷開拓視野,增強自己的實踐操作技能,為以后的工作存儲更多的能力。
以上就是我的實習報告,可能并不是一份多么規范的報告,但確確實實我這工作中的感受。
嵌入式心得體會10
首先,嵌入式系統是以應用為中心,以計算機技術為基礎,且軟硬件可裁減,適應應用系統對功能、可靠性、成本、體積、功耗有嚴格要求的專用計算機系統。嵌入式有如下幾個突出的有點:
1、系統內核小。
2、專用性強。
3、系統精簡。
4、高實時性OS。
5、嵌入式系統的應用程序可以沒有操作系統直接在芯片上運行。
6、嵌入式系統需要開發工具和環境。
嵌入式系統是近幾年才風靡起來的,但是這個概念并非新近才出現。從20世紀七十年代單片機(最早的單片機是Intel公司的8048,出現在1976年)的出現到今天各式各樣的嵌入式微處理器,微控制器的大規模應用,嵌入式系統已經有了近30年的發展歷史。經過30年的發展,嵌入式技術已經日趨成熟,在中國嵌入式機一般由嵌入式微處理器、外圍硬件設備、嵌入式操作系統以及用戶的應用程序等四個部分組成,用于實現對其他設備的控制、監視或管理等功能。
其次,嵌入式系統無疑是當前最熱門最有發展前途的IT應用領域之一。嵌入式系統用在一些特定專用設備上,通常這些設備的硬件資源(如處理器、存儲器等)非常有限,并且對成本很敏感,有時對實時響應要求很高等。特別是隨著消費家電的智能化,嵌入式更顯重要。
嵌入式系統是軟硬結合的學科,通常有兩類人會去專研嵌入式:一類是學電子工程、通信工程等偏硬件專業的,另一類是學軟件、計算機專業出身的人,主要從事嵌入式操作系統和應用軟件的開發。我是軟件專業的學習嵌入式,越是智能設備越是復雜系統,軟件越起關鍵作用,而且這是目前的趨勢。嵌入式應用在很多方面,具體的可以分為工業控制,交通管理,信息家電,家庭智能管理系統,POS網絡及電子商務,環境工程與自然,機器人,機電產品方面應用等方面。其中目前在服務領域,如遠程點菜器等已經體現了嵌入式系統的優勢。例外還有很多地方用到了嵌入式系統,最近飛利浦和ARM共同推出32位RISC嵌入式控制器,適用于工業控制,采用最先進的0.18微米CMOS嵌入式閃存處理技術,操作電壓可以低至1.2伏,它還能降低25%到30%的制造成本,在工業領域中對最終用戶而言是一套極具成本效益的解決方案。
嵌入式心得體會11
我們學習的課本是嵌入式系統應用教程。我學習的體會是這樣的:
開始時,由于是剛剛入門,對老師說的好多東西很好奇,列如C語言也是新鮮的,不過不太懂什么意思。但是慢慢的,了解深入后讓我有了更深的感觸和體會。在嵌入式的學習過程中,讓我了解了什么是嵌入式系統。它就是以應用為中心,以計算機技術為基礎,軟硬件可定制,適用于不同應用場合,對功能、可靠性、成本、體積、功耗有嚴格要求的計算機系統。他一般由嵌入式微處理器、外圍硬件設備、嵌入式操作系統、用戶應用程序四個部分組成,用于實現對其他設備的控制、監視或管理功能。嵌入式系統已經應用于科學研究、工業控制、軍事技術、交通通信、醫療衛生、消費娛樂等領域,人們日常使用的手機、PDA、汽車、智能家電、GPS等均是嵌入式系統的典型代表。
在學習命令的過程中,只要你認真的看著老師操作還有認真聽著他講,你就會發現有些命令的操作還是很簡單的,不過在操作的過程中,有時也會遇到困難,有時你按照書上學習的例子,命令輸入終端時會出現你不想要的結果,也就是錯誤的結果。這是問問旁邊的同學或是懂得的同學就可以解決了。
在對于這部分的學習中,讓我知道了命令對于嵌入式的重要性。它是linux的重要內容,linux中所有的功能都是通過命令執行。在實際應用中,為了減少系統開銷,經常不使用圖形界面,此時,對系統的所有操作都需要以命令方式來執行。在嵌入式系統開發過程中,由于目標機的性能和配置比較低,因此,一般情況下標機僅具有命令窗口而沒有圖形界面,對目標機的所有操作都通過命令來實現。還有的那就是進一步學習與嵌入式系統開發相關的linux的服務,他們的啟動、設置等的操作和應用。而在學習之中,我們主要介紹的是嵌入式系統中開發工程使用的TFTP、Telent和NFS服務。第一個實現的是上機位與下機位之間文件的傳輸、無磁盤網絡設備的啟動等功能;第二個實現的是遠程登錄功能;第三個實現的是網絡文件系統功能。
從以上的內容之中,并不難感受到我們的學習過程是由淺入深的,這對于我們的學習也有了較好的幫助。當然,我們學習的不僅僅是這么幾個內容,其中還有相關的實驗內容。在我們基礎的學習過程之中,我有了這么一點的感受,總的來說就是概念加專業名詞還有介紹加實驗。不過你絕對不能小看那些概念和介紹,它對我們有著很重要的指導作用哦!實驗那就更不用說了,它提高我們的動手能力,在實驗的過程中還能讓你更加理解書中的理念,這就是我學習嵌入式的感受。
學習是可貴的,培訓是精彩的。通過這次可貴而精彩的培訓學習,我們向嵌入式邁進了一步。感嘆與憧憬之余,我想我們只有靠自己的聰明與才智、努力與勤奮去追求我們的美好生活。
嵌入式心得體會12
嵌入式學習心得體會,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;管道和重定向操作符可同時用于一個命令行。
嵌入式心得體會13
這個題目很大,給人一種感覺我好像很成功,其實不然。實際上自己水平不高,甚至很低,但是做過了一些曲折的學習道路,同時把自己真實的學習歷程表達出來,希望對后來者有借鑒的意義,甚幸!
工作三年、幾成廢人!
我XX年畢業于華中地區的一個理工科大學,專業是機械電子,我當時已經簽了一家內陸某個省級機關工作,家里八輩是農民,并且很偏遠,能夠進入這樣的地方是祖墳有風水。但在畢業前夕有個進入it的機會,我本想進去的,家里人極力反對,阻力可想而知。同時要交4000元的違約金,對我來說是天文數字。大學里的費用很多是借的,幾乎將近一半的費用是在大學勤工儉學掙的,為了省錢,高中一個學期回家一次,大學一年回去一次。并且我個人也有特殊的人生背景(悲景更確切),這里不多說了,寫十篇也寫不完,同時偏離主題。這樣我就參加了工作。一張報紙一杯茶的日子,幾乎下班后有種很空虛和恐慌的感覺。在工作中雖然是與自己專業有點關系,但是很少。專業幾乎荒廢。我自己也思考,如果再不出去,自己將會成廢人,只好讓國家養了。兩年后決定出去,但是幾成廢人,誰要呢,只好到學校去鍍金。這是中國教育和社會的悲哀!
至于專業就改為計算機方面,聽說好找工作,我說實話不是很對計算機特別感興趣,生存第一需要。不要笑我,哈哈!
考研成績出來,超過了國家線幾十分。那個方向要兩個,我第三,但是那年非碘,不面試就按分數來排,自然我落選了。其實給我面試機會也不一定要我,哈哈,自己幾斤幾兩很清楚。
最后調劑到另外一個學校,交錢,咬咬牙,交吧!現在仍然債臺高筑!
進入學校前夕
為什么要把這段列出,看后就知道了。
單位有網絡,經常上網查些英語資料,在那里唯獨英語沒有丟很多。于是我就在網上查資料,學什么好呢,最后確定學嵌入式把,聽說跟硬件相對比較緊密!而我在大學里多少學習了數字電路,單片機等,所以多少也有所利用,不會真的一無所知。當然在這之
前也自學過數據結構,計算機組成原理等。c 語言在大學就學了。哈哈這就是我的家底。
我知道自己的基礎差,于是我就拿操作系統,數據庫、數據結構、c++來看,機關有這個好處,空余時間多,于是平常就看書,很痛苦,沒有人請教。
另外就上網到論壇上去,我就到各個專業的技術論壇,其實是電子論壇和嵌入式論壇。我幾乎沒有發帖,幾乎把幾個大型的出名的論壇的帖子翻遍了,雖然有很多重復的,我才知道嵌入式是個什么東東。這些帖子對我以后的學習產生了極大的影響。
最關鍵兩點:
1、嵌入式是什么?
2、嵌入式需要哪些知識?
知道了這兩點,好辦!我就開始規劃學習路線。計算機的基本理論不能丟,于是重點看組成原理,數據機構,操作系統、c++。同時論壇上了解到,實時操作系統ucos是一個很好的嵌入式操作系統,對初學者很好。于是我就買了一本書,但是代碼在電腦里調不通,網上也有很多相同的問題,我就看書,分析代碼,一遍不行就兩遍,三遍,這樣才看了入了門,才知道什么是進程。原來看操作系統書時,根本就不知道進程是個什么東西。
在這段時間掌握的東西不多,但是,對我以后的影響很大,我想起了大學時一個同學跟我說過了一句話:大學里最重要的不是學到了什么,最重要的是學會怎么學!大概是這個意思。
進入我的避難所
對我來講,再次進入大學不再是大學,而是避難所。希望這次進入給我喘氣和養精蓄銳的機會和時間。我是這樣認為和實踐的。
在學校我有三件事:上課,上圖書館,上網。
對于上課,學校開了很多課程,非常好,很多是名人名師講解,于是很多同學都想學,都去聽。我也考慮過,最后放棄。我是這樣認為的,時間是有限的,什么都想學,什么都學不成。于是我把我自己學的課進行了分化,一般的課程通過就行,重要的一定好好學。我希望不要什么爭論學習課程多和少的問題,這僅僅是我的看法。所以我的成績應該是很差的。分數低。好在后來的單位沒有要我的成績單,否則就慘了。
我個人感覺是上圖書館的效率比在寢室里高多了,這是我的經驗。
嵌入式心得體會14
本人大學學的是電子信息科學與技術專業,其實這個專業和嵌入式沒有多大的關系,要說有關系就是簡單的講了下C語言語法,學完之后還不知道什么是C語言,只記住了,char,int,string等占幾個字節,if, for, while循環什么的,感覺也就能算一些小學就會的題目,全國計算機等級二級也就糊涂的過了。我這個專業沒學過C++,一開始不知道什么是向對象,什么叫面向過程,這可能讓大家笑話了。不過這說的是實話,大學的時候比較喜歡動手,喜歡硬件方面的東西,也喜歡看書。在大一的時候就聽學長說,單片機很難學,在沒事的時候就從圖書管借了本關于51的書,一開始還真是不怎么懂,然后硬著頭皮去看,當我把51的結構看完了,就不像一開始那樣一頭霧水了,自己在紙上把51的結構圖默畫一遍,然后再把各個寄存器功能寫一下,各個功能口的結構也畫一遍,然后就不覺得51有什么難了。其實有些時候不是這個東西你不會,而是在不會的時候自己先告訴自己這個太難了,自己先放棄了。我們學習51芯片,是為了以后的打基礎,知道是怎么通過配置寄存器來實現功能。
大二下學期的時候,我們開了51的課,這個課幾乎就沒怎么去,因為我認為沒有必要去聽自己會的東西了。后來聽別人說avr的資源會比51的豐富的很多,所以就想試試,看看有什么難的,就從網上買了本馬潮老師《AVR單片機嵌入式系統原理與應用實踐》,一邊看書,一邊想自己畫一個板了,一開始想實現一個點陣屏,實現滾動效果,后來想想做個板也花不少錢呢,為什么不多加一些功能呢,還能多學到些知識,所以就加了溫感,紅外,鐵電存儲器等并把所有的擴展口都擴展了出來,備以后用,那時還挺自豪的呢,同學們都很羨慕,不過現在想想其實也沒什么了。
大學也聽說過嵌入式這個詞,不過不太明白是什么意思,20xx年的時候從網上找到中嵌視頻,有四張DVD(大約13G),下載下來后,從頭到尾的看了一遍,沒什么印象,只記得講一些不知所云的函數,然后莫名其妙的講怎么使用那個44b0的開發板,不過聽完了,還是有很大收獲的,就有一種想裝一個linux的沖動,我是大二下學期才有的自己電腦,不過電腦的配置比較低,1g內存,跑虛擬機就像個蝸牛,所以就想著怎么才能裝個linux,自己用XP習慣了,如果全換了又舍不得,那時從書上知道linux的文件系統和windows不一樣,只有一個根分區,所以也害怕一裝linux全盤就被格式化了,不過最后還是欲望戰勝了擔心,買了張redhat 9的光盤,小心的裝這個系統,里邊的英文也不是太難,還是知道大概意思的,所以一步步的裝,最后裝到我的硬盤的最后空間,重新啟動,竟可以選擇進入哪一個系統了,從這之后,自己就不害怕怎么裝系統了,應了那句言,紙上得來終覺淺,絕知此事要躬行。所以我認為,買一個開發板是完全有必要的,拿到實物操作一下就不會感覺太抽象了。后來也想學學arm,但不知道arm是什么東西,所以就買了本《從51到arm》,講的是關于arm的大體結構,看完后感覺,原來arm就是一個速度更快,接口更豐富的單片機埃如果想做linux設備驅動的同學應該對arm硬件有一些了解。如果對驅動不感興趣,完全沒有必要去看。交叉編譯器會幫我們做好這些事情,他比我們更了解arm結構。
大三下學期開始準備考研了,所以自己這些興趣就先放下了,報的北郵的信通學院通信專業,當時就是想一定要上個好學校好專業,也沒想太多,結果考了的成績差了點,沒有被錄取,也不想調劑一個二流的學校,然后就參加工作了,工作中每天都用的到開發板,當我看到一個小板上還可以跑系統的時候感覺很不可思議,以為要很大工程。后來邊工作邊學習,每天都要看電腦看到眼發疼,晚上也都差不多十二點時才睡覺。感覺到累,不過也感覺到自己在進步。
閑話有點多了,說了很多都是自己大學那點破事。
聽很多的初學者說不知道從哪里開始,學習嵌入都要學哪些東西,從網上搜了一下,一大堆的東西要學,一下就推薦十幾本書,說看完這本書怎么怎么樣,看完那本書怎么怎么樣,一下子就給初學者給嚇住了,其實完全沒必要把網上的那些東西全部看一遍,那樣又費時,又感覺工程太大,讓初學者沒有信心去把每一種都看完。網上說的些方面都要知道,不一定全部都掌握,我們可以退成求其次,每一個都知道一些,當然會的越多越好。今天學點這個明天學點那,換著樣來也不會覺得煩。而且還能感覺到每天都有收獲。
下面給嵌入式初學者一些自己的我個人建議。
1嵌入式涉及到很多的基礎知識:
c語言,關于C語言要知道基本的語法,什么是結構體,什么是共用體,有什么區別,不用強記一些二級考的東西,因在實際中用的很少。
c++要知道什么是類,怎么定義,繼承,接口,要深刻理解,當然基本語法也是必不可少的。
操作系統原理也應該知道基本的原理的,我記得我大學沒這個課還是去電信學院蹭別的專業的課呢,后來學習發現很多的東西都是在這個課上學到的。什么時間片啊,任務調度啊,都是在那里知道的。
Linux基本命令的使用(vi編輯器必須會用,因為在終端改文件的時候只能用這個),我們現在很多的人都習慣用鼠標了,很少用到命令,我們學習嵌入linux可要改改這個習慣了,linux用命令操作一是效率高,二是功能非常強大,遠非圖形界面能比的了的,其實我們用圖形界面的操作都要轉化為命令傳給硬件的。
Linux文件系統的管理要清楚,哪個目錄存放是什么東西,有什么用,文件權限管理等Shell編程也要了解一些,在這給大家推薦一個教程,周朝劍的shell編程,也就七八講吧,講的很全面。初學者看前4講就可以了。
Linux設備驅動的架構要了解,初學者可以以飛凌的OK6410開發板上的led驅動分析一下,結合原理圖和linux設備驅動相關書籍把每一行代碼都分析明白。關于驅動給大家推薦一本書《LINUX社備驅動程序》中國電力出版社出版的,很經典的,初學者看可能看不太明白,不過要堅持看,最次也得把前6章看完了。
2看書不要希望一次就會,一次就明白是什么意思,也不要死記硬背,看不明白也沒關系,以后遇到了知道去哪里去找就可以了,以后遇到的多了,也就記住了,遇到的少的,忘記也就忘記了。還有,不要直接閱讀linux內核源代碼,看一些自己把頭撞破也想不明白的事,會打擊初學者的積極性,要循序漸進,今天學個做個led,明天做個串口,后天說不定就做硬件編解碼了。
3、你可以不接受培訓,但是不能不買開發板。
如果你想學習嵌入式一定要買塊學習板,現在的開發板很便宜了,給我們初學者減輕了很多經濟負擔。看再多的視頻,看再多的書,也不如自己動手試一下,看著很簡單的東西,做起來就可能遇到很多的問題,遇到問題找到原因,解決問題,只有這樣才能學到東西,記得我第一次寫led的驅動,想自己試一下,網上也有人寫過相關的代碼,可是自己一試,就出了好多的問題,那個led弄了我一天才把led燈點亮。所以不要眼高手低。
還有關于培訓,現在的培訓機構很多,講的也不錯,老師也很好,但是有一個問題,太集中了,而且學生動手的機會也不太多,記得我們公司還招了一個在北京某個培訓機構培訓半年的員工呢,花了一萬多,來了之后也沒感覺有多高,問他都學了什么,也就是我前邊說的那些基礎知識,很多的東西還是不知道的,照著書弄個helloworld模塊驅動兩天沒搞定。不是培訓不好,但我個人見解效果并不是很好。記住:只有自己動手做過的東西才是自己的。
現在買一塊開發板很便宜,飛凌的OK6410的開發板就不錯,源碼完全開放,而且資料也很豐富,完全能滿足初學者學習用,有人說友善的板子也不錯,我個人覺得友善的板子不
錯,但是不適合初學者,因為他的很多的東西是不給代碼的,用過友善的板子的同學經常有這樣的痛苦,想學一個東西,去找他的代碼的時候,卻找不到,很多友善提供的代碼中很多的都是封裝好的,只提供給客戶一個庫,初學者想要找代碼的時候就不知道怎么辦了。
4不要好高騖遠,要腳踏實地
對于初學者,還有一點小建議,我們拿到一個開發板,很興奮也很激動,想法自然也很多,想用開發板實現自己的這個想法,實現那個想法,然后又不知道從何下手,然后就去論壇中發一個貼,“那個什么什么怎么實現啊,哪位大俠能詳細說一下啊,跪求!1然后等著別人去回復。見沒人回復就抱怨。有想法是好的,我們要實現自己的想法也是有前提的,首先,我們對這部分知識了解嗎?如果不了解就去google一下(最好別用百度,不太好用),了解了一些,也就大概知道要怎么做了。如果再遇到問題,再去發貼問,這樣也顯得咱們有水平。比如自己連串口是什么都不太清楚呢,就問串口通信怎么做啊,就是人家把代碼給咱,咱也不明白是怎么回事埃
5多看代碼,多寫代碼
見多識廣,熟能生巧。多看代碼,要從代碼中讀出代碼的意思來。自己平時也要多寫代碼,多練習(這一點我做的不好,寫的少)。
寫完已經晚上兩點了,思路有些亂,有些也是個人的見解,在有些人看來可能是錯誤的,每個人有每個人的學習方法,但是我們的目的只有一個——希望我們學到更多的知識。
嵌入式心得體會15
現在嵌入式做為計算機發展的一個新的方向越來越得到社會的重視。隨之而來的是很多培訓班的誕生,但是如何能在琳瑯滿目的培訓機構中找到一個能真正學到東西的培訓班呢,這是擺在眾多想學嵌入式的人面前的第一個問題。我在了解了眾多培訓機構并且試聽之后,最終選擇了Tocore嵌入式培訓,之所以選擇,是因為我看重老師的實際能力和認真負責的態度。我非常榮幸能夠成為Tocore中的一員。
嵌入式開發,做為一個新的計算機發展方向,已經越來越受到社會的重視,社會上的需要也十分巨大,可是真正懂得嵌入式開發的人才缺不是很多,歸結去原因主要是一下幾個方面:
一:因為它是新興的一個發展方向,懂得的人自然不多。
二:學習嵌入式需要比較龐雜的知識結構。操作系統、微機原理、C/C++語言、數據結構等。
三:嵌入式學習,上手很困難,不知道從哪里著手去學習。
在剛開始接觸的時候,我也是抱著本書,自己摸索,可是越看越迷茫,連很多書里的名詞都不知道是什么意思,去網上查也沒有得到答案。可是在Tocore我得到了很好的指點,在這里,由于老師都是十分有經驗的項目經理,他們懂得如何去學習,從哪里開始入手,這對于我這樣的背景知識比較薄弱又接觸時間比較短的人來說實在是太有幫助了。
雖然課程還沒有完,可是在這段時間的學習中,我按照老師的指導在完善的課程體系下進行系統的學習,已經掌握了U-boot、kernel以及linux移植的基本框架,(我想在今后的學習中一定會對這些知識更加熟悉以至精通!)這對于2個月前什么都不懂的我來說已經是很大的提高了!用得是ARM9的板子,這也是市場上現在比較新的,比較流行的板子,很多公司在實際的產品開發中就用的是ARM9。在課堂上,老師的講解和我們的練習相結合,理論聯系實際。老師除了講解知識外,還結合了大量的實際案例和操作,這對于我對問題的理解和知識的記憶有很大幫助。
最后談談對學習態度的一點看法。嵌入式學習,是比較耗時的,前期需要很多知識做鋪墊,有很多人在這個過程中走了不少彎路,于是開始失去耐心、失去信心,以至最終放棄學習。所以我想有必要強調一下問題,在剛開始的時候,自己什么都不懂,可是學習的愿望很強烈,每次上課都希望上完課就能如何如何,可是下來發現自己好像離自己原本的目標還很遠,于是心里著急,自己跑到網上搜了很多資料,每天亂看,可是并沒有很大的幫助。我想說的是,學習嵌入式一定要有耐心和毅力,不能急躁,按照課程的安排自己多做一些總結和練習,等到知識慢慢的積累下來就會有一種豁然開朗的感覺。
最后希望每個想學習和熱愛linux的人都能學有所成!