嵌入式學習心得體會
嵌入式學習是將學習真正“嵌入”到日常工作中,使學習的知識能得到有效的轉(zhuǎn)化,極大的加強了學習的積極性,下面是小編整理的嵌入式學習心得體會,歡迎大家參閱。
嵌入式學習一:
這個題目很大,給人一種感覺我好像很成功,其實不然。實際上自己水平不高,甚至很低,但是做過了一些曲折的學習道路,同時把自己真實的學習歷程表達出來,希望對后來者有借鑒的意義,甚幸!
工作三年、幾成廢人!
我XX年畢業(yè)于華中地區(qū)的一個理工科大學,專業(yè)是機械電子,我當時已經(jīng)簽了一家內(nèi)陸某個省級機關(guān)工作,家里八輩是農(nóng)民,并且很偏遠,能夠進入這樣的地方是祖墳有風水。但在畢業(yè)前夕有個進入it的機會,我本想進去的,家里人極力反對,阻力可想而知。同時要交4000元的違約金,對我來說是天文數(shù)字。大學里的費用很多是借的,幾乎將近一半的費用是在大學勤工儉學掙的,為了省錢,高中一個學期回家一次,大學一年回去一次。并且我個人也有特殊的人生背景(悲景更確切),這里不多說了,寫十篇也寫不完,同時偏離主題。這樣我就參加了工作。一張報紙一杯茶的日子,幾乎下班后有種很空虛和恐慌的感覺。在工作中雖然是與自己專業(yè)有點關(guān)系,但是很少。專業(yè)幾乎荒廢。我自己也思考,如果再不出去,自己將會成廢人,只好讓國家養(yǎng)了。兩年后決定出去,但是幾成廢人,誰要呢,只好到學校去鍍金。這是中國教育和社會的悲哀!
至于專業(yè)就改為計算機方面,聽說好找工作,我說實話不是很對計算機特別感興趣,生存第一需要。不要笑我,哈哈!
考研成績出來,超過了國家線幾十分。那個方向要兩個,我第三,但是那年非碘,不面試就按分數(shù)來排,自然我落選了。其實給我面試機會也不一定要我,哈哈,自己幾斤幾兩很清楚。
最后調(diào)劑到另外一個學校,交錢,咬咬牙,交吧!現(xiàn)在仍然債臺高筑!
進入學校前夕
為什么要把這段列出,看后就知道了。
單位有網(wǎng)絡,經(jīng)常上網(wǎng)查些英語資料,在那里唯獨英語沒有丟很多。于是我就在網(wǎng)上查資料,學什么好呢,最后確定學嵌入式把,聽說跟硬件相對比較緊密!而我在大學里多少學習了數(shù)字電路,單片機等,所以多少也有所利用,不會真的一無所知。當然在這之
前也自學過數(shù)據(jù)結(jié)構(gòu),計算機組成原理等。c 語言在大學就學了。哈哈這就是我的家底。
我知道自己的基礎差,于是我就拿操作系統(tǒng),數(shù)據(jù)庫、數(shù)據(jù)結(jié)構(gòu)、c++來看,機關(guān)有這個好處,空余時間多,于是平常就看書,很痛苦,沒有人請教。
另外就上網(wǎng)到論壇上去,我就到各個專業(yè)的技術(shù)論壇,其實是電子論壇和嵌入式論壇。我?guī)缀鯖]有發(fā)帖,幾乎把幾個大型的出名的論壇的帖子翻遍了,雖然有很多重復的,我才知道嵌入式是個什么東東。這些帖子對我以后的學習產(chǎn)生了極大的影響。
最關(guān)鍵兩點:1、嵌入式是什么?
2、嵌入式需要哪些知識?
知道了這兩點,好辦!我就開始規(guī)劃學習路線。計算機的基本理論不能丟,于是重點看組成原理,數(shù)據(jù)機構(gòu),操作系統(tǒng)、c++。同時論壇上了解到,實時操作系統(tǒng)ucos是一個很好的嵌入式操作系統(tǒng),對初學者很好。于是我就買了一本書,但是代碼在電腦里調(diào)不通,網(wǎng)上也有很多相同的問題,我就看書,分析代碼,一遍不行就兩遍,三遍,這樣才看了入了門,才知道什么是進程。原來看操作系統(tǒng)書時,根本就不知道進程是個什么東西。
在這段時間掌握的東西不多,但是,對我以后的影響很大,我想起了大學時一個同學跟我說過了一句話:大學里最重要的不是學到了什么,最重要的是學會怎么學!大概是這個意思。
進入我的避難所
對我來講,再次進入大學不再是大學,而是避難所。希望這次進入給我喘氣和養(yǎng)精蓄銳的機會和時間。我是這樣認為和實踐的。
在學校我有三件事:上課,上圖書館,上網(wǎng)。
對于上課,學校開了很多課程,非常好,很多是名人名師講解,于是很多同學都想學,都去聽。我也考慮過,最后放棄。我是這樣認為的,時間是有限的,什么都想學,什么都學不成。于是我把我自己學的課進行了分化,一般的課程通過就行,重要的一定好好學。我希望不要什么爭論學習課程多和少的問題,這僅僅是我的看法。所以我的成績應該是很差的。分數(shù)低。好在后來的單位沒有要我的成績單,否則就慘了。
我個人感覺是上圖書館的效率比在寢室里高多了,這是我的經(jīng)驗。
嵌入式學習心得體會二:
目前最常見的嵌入式LINUX方面,我認為大概3個:
1.嵌入式LINUX上層的應用,包括QT的GUI開發(fā)
2. 嵌入式的LINUX系統(tǒng)開發(fā)
3.嵌入式的驅(qū)動開發(fā)
學習嵌入式:
第一.C語言要掌握(硬件略懂),C語言是所有編程語言中的強者,單片機,DSP,類似ARM的種種芯片的編程都可以用C語言搞定,因為它可移值性強,編譯效率高,運算速度快,便于實現(xiàn)理更復雜的的數(shù)據(jù)結(jié)構(gòu)。上層應用和數(shù)據(jù)存儲,我推薦使用C++語言。
第二.學習一種嵌入式的處理器架構(gòu),個人推薦32位的處理器,像ARM,因為嵌入式
開發(fā)8位的處理器顯得有點低端,大多數(shù)只能用作簡單的工控.
第三.學習一種嵌入式操作系統(tǒng),像LINUX,WINCE等都可以,LINUX更好。
三:ARM是一種微處理器,已遍及工業(yè)控制,消費類的電子產(chǎn)品,通信,網(wǎng)絡,無線等各類的產(chǎn)品基于
ARM技術(shù)的微處理器已占75%以上的市場份額,可見其技術(shù)已逐滲入到我們生活中的各個領域,像手機
就是用ARM7 ARM9 ARM11的微處理器技術(shù)開發(fā)的。嵌入式系統(tǒng)最常見的ARM系列,ARM7 ,ARM9,
ARM11,cortex-A8等。
我們都是曾經(jīng)從大學里走出來的迷茫羊羔,工作以后我才知道,在大學里不是學到了什么,而是學會怎么去學,相信自己,理清自己的思路,根據(jù)自己的性格,剖析自我適合往哪方面發(fā)展。
嵌入式學習心得體會三:
一,如果非常多人都想做Linux,那么就要對Linux要 比較熟悉。這個熟悉不是說對內(nèi)核,對代碼有多了解,而是至少要會基本的操作,非常難想象讓一個連編譯程式,編輯文本文件都非常困難的人去弄嵌入式的軟件吧??傊谶M入嵌入式這個領域之前要對自己評估一下,看看自己是不是準備好了去學習嵌入式相關(guān)的東西。
二,要舍得花錢買研發(fā)板。公欲善其技,必先利其器。也就是說,理論上可能掌控了非常多,不過不去實踐,那只能是紙上談兵,這樣是無法學好嵌入式的。弄個研 發(fā)板自己擺弄擺弄,即使什么都不懂,也能按照說明書把廠家給的程式下載到研發(fā)板上運行運行,先知其然,然后再通過具體的學習知其所以然,這樣能避免學習中 的枯燥。目前市場上研發(fā)板的種類繁多,相同CPU的板子價格卻相差非常多,令非常多人都不知道怎么選擇購買。我的看法是,盡量買大廠的產(chǎn)品。因為在初學階 段學習資料少是個非常頭疼的事,非常多時候都是無從下手,不知道怎么去做,那么隨研發(fā)板附送的資料就非常重要了。大廠技術(shù)比較強,附帶的程式都是能在板子 上運行的,例如我買的優(yōu)龍ST2410這個板子(不是廣告啊),光盤上帶了一個bootloader,個2.4.18的內(nèi)核,更有一個cramfs,這些 程式的原始碼都是廠家事先做好或修改好的,完全適用于初學者使用。而有些實力不行的小廠家的資料不齊全,我們學習的時候需要自己弄bootloader什 么的,那入門就非常難了。不過大廠的板子都非常貴,大家能根據(jù)預算來選擇適合自己的研發(fā)板,不過無論怎樣,在學習上投資都是值得的。
三,不要事無巨細的學習,要有明確的目標。我最開始給自己制定的學習是:學習arm體系結(jié)構(gòu) -> 學習arm匯編 -> 自己移植bootloader -> 自己移植kernel -> 做應用,不過不久就被我否決了,因為這個過程實在是太枯燥太痛苦了,在學習資料少,沒人指導的情況下根本無法進展。于是我決定使用廠家的代碼來“玩”研發(fā) 板,自己弄些應用上去。先是完全使用廠家給的bootloader,kernel,cramfs。之后發(fā)現(xiàn)cramfs中的一些控制Linux初始化的文 件不符合我的需求,于是修改cramfs,刪除了QT,修改了網(wǎng)卡初始的IP地址,安裝到板子上能運行了之后就開始嘗試做一些應用,比如hello world這樣的程式。最后移植了一個mpg123到板子上。完萬能在不知道原理的情況下來使用板子的一些功能,等熟悉板子了再回頭學習其中的道理,這樣 就容易一些。學習嵌入式就是這樣,根據(jù)問題來選擇學習的內(nèi)容,否則會非常盲目,最后就失去信心了。
四,要有耐心。不能否認,在學習一門自己完全不了解的技術(shù)是非常煩人的。嵌入式的復雜在于他的交叉性。也就是說為了研究某一個嵌入式的問題,你有可能得學 習非常多其他的知識,比如操作系統(tǒng),編譯,體系結(jié)構(gòu)等等,那么對于這種情況需要我們有足夠的耐心。我在交叉編譯mpg123的時候前幾次無論怎么修改 makefile都無法編譯成功,最后我發(fā)現(xiàn)我用的arm-linux-gcc是2.9版本的,比較老,于是我換成新的3.4.1版本,就ok了。
以上是我初學嵌入式所獲得的一些淺顯的經(jīng)驗,基本都是基于軟件方面的,硬件的DIY我就不行了。希望我的經(jīng)驗能給大家一些幫助。
剛剛和LUPA的嵌入式版主要了uboot的代碼,接下來的我想研究研究廠家的bootloader代碼然后移植一下uboot。
相關(guān)文章:
1.學習心得體會
5.心得體會范文